Bitcoin Forum
April 27, 2018, 03:55:21 AM *
News: Latest stable version of Bitcoin Core: 0.16.0  [Torrent]. (New!)
 
   Home   Help Search Donate Login Register  
Pages: [1] 2 3 »  All
  Print  
Author Topic: [IDEA] - LockMyCoins  (Read 3581 times)
ripper234
Legendary
*
Offline Offline

Activity: 1274
Merit: 1000


Ron Gross


View Profile WWW
October 09, 2013, 05:47:58 PM
 #1

A cure for speculators - LockMyCoins™
(Just an idea, I don't have the time to develop it right now)

Client-side javascript that does the following:

1. Generates a new private/public key pair --> INCOMING_ADDRESS.
2. Accepts a RETURN_ADDRESS from the user.
3. When it detects an incoming transaction to INCOMING_ADDRESS, the service creates and broadcasts an nLockTime transaction 1 year into the future (configurable) to RETURN_ADDRESS.
4. When the browser window is closed, the private key is forgotten.

The purpose of the service is to allow someone to lock away a certain amount of coins for some time. This self-handicapping is done to prevent oneself from day-trading. It's meant for people who are long-term bitcoin bulls, and want to rest assured knowing their funds will be waiting for them in the future without being expose to the temptations of short term speculation and day-trading.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
1524801321
Hero Member
*
Offline Offline

Posts: 1524801321

View Profile Personal Message (Offline)

Ignore
1524801321
Reply with quote  #2

1524801321
Report to moderator
1524801321
Hero Member
*
Offline Offline

Posts: 1524801321

View Profile Personal Message (Offline)

Ignore
1524801321
Reply with quote  #2

1524801321
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction. Advertise here.
1524801321
Hero Member
*
Offline Offline

Posts: 1524801321

View Profile Personal Message (Offline)

Ignore
1524801321
Reply with quote  #2

1524801321
Report to moderator
1524801321
Hero Member
*
Offline Offline

Posts: 1524801321

View Profile Personal Message (Offline)

Ignore
1524801321
Reply with quote  #2

1524801321
Report to moderator
1524801321
Hero Member
*
Offline Offline

Posts: 1524801321

View Profile Personal Message (Offline)

Ignore
1524801321
Reply with quote  #2

1524801321
Report to moderator
600watt
Legendary
*
Offline Offline

Activity: 1750
Merit: 1116


View Profile
October 09, 2013, 07:08:33 PM
 #2

should include a five year and a 10 year option.

= solid retirement plan...    Wink
msc
Sr. Member
****
Offline Offline

Activity: 282
Merit: 250



View Profile
October 09, 2013, 07:34:56 PM
 #3

I'd rather just create a wallet, store the private keys in a safe, and watch the public addresses to know that the coins are actually there and in my possession.  Maybe you'll need them in an emergency, or maybe there will be a protocol change that requires a key rotation, etc.  Who knows?  Yes, it requires more will power, but only a little.
ripper234
Legendary
*
Offline Offline

Activity: 1274
Merit: 1000


Ron Gross


View Profile WWW
October 09, 2013, 09:06:11 PM
 #4

I'd rather just create a wallet, store the private keys in a safe, and watch the public addresses to know that the coins are actually there and in my possession.  Maybe you'll need them in an emergency, or maybe there will be a protocol change that requires a key rotation, etc.  Who knows?  Yes, it requires more will power, but only a little.


Well yeah, this solution isn't for everyone - if your will is strong enough, move along.

Although ... one actual use for this would be insurance against rubber-hose cryptoanalysis:



If you physically can't deliver the coins except at pre-allocated times ... and suppose you make sure to keep these times secret (say ... your coins open once every year for a window of 1 day, and you keep the choice of day private) ... you can't be extorted to send away your coins at gunpoint.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
theonewhowaskazu
Sr. Member
****
Offline Offline

Activity: 448
Merit: 250


View Profile
October 09, 2013, 10:49:10 PM
 #5

I'd rather just create a wallet, store the private keys in a safe, and watch the public addresses to know that the coins are actually there and in my possession.  Maybe you'll need them in an emergency, or maybe there will be a protocol change that requires a key rotation, etc.  Who knows?  Yes, it requires more will power, but only a little.


Well yeah, this solution isn't for everyone - if your will is strong enough, move along.

Although ... one actual use for this would be insurance against rubber-hose cryptoanalysis:



If you physically can't deliver the coins except at pre-allocated times ... and suppose you make sure to keep these times secret (say ... your coins open once every year for a window of 1 day, and you keep the choice of day private) ... you can't be extorted to send away your coins at gunpoint.

Legit

str4wm4n
Legendary
*
Offline Offline

Activity: 1616
Merit: 1000


View Profile
October 10, 2013, 02:01:19 AM
 #6

I would LOVE to see this get developed. As someone who likes to gamble...I really wish this existed about a month ago... Cry
michagogo
Member
**
Offline Offline

Activity: 80
Merit: 10


View Profile
October 10, 2013, 08:12:08 AM
 #7

This is an interesting idea, but there *is* one issue. You can't broadcast a transaction with nlocktime a year in the future and expect it to stick around in mempools -- you would need to keep the transaction somewhere safe, outside of the bitcoin network, and then broadcast it a year later.
ripper234
Legendary
*
Offline Offline

Activity: 1274
Merit: 1000


Ron Gross


View Profile WWW
October 10, 2013, 02:43:19 PM
 #8

This is an interesting idea, but there *is* one issue. You can't broadcast a transaction with nlocktime a year in the future and expect it to stick around in mempools -- you would need to keep the transaction somewhere safe, outside of the bitcoin network, and then broadcast it a year later.

Hmm - excellent point, I hadn't thought of that.
One thing you can do - send the client a signed copy of your transaction (in JSON format or encoded as a link).
You can also schedule a reminder to be sent to the client using a 3rd party service such as followupthen.com

This way the client can always rebroadcast the tx themselves in case something happens to your service.
Of course under ideal circumstances you would add a server to this setup that automatically broadcasts this tx itself after the time expired.


We were actually thinking of doing a quick hackathon and implement this at Bitblu just for fun's sake, but this technical complication you spotted might mean that it's now a bit too much work to hack up a working solution in a few hours ...

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
theonewhowaskazu
Sr. Member
****
Offline Offline

Activity: 448
Merit: 250


View Profile
October 10, 2013, 02:51:58 PM
 #9

So assuming you did broadcast a nlocktime a year in the future, and saved the transaction, you can't 'cash it in' early, can you? You'd just have to re-broadcast it in a year to get your Bitcoins, if you broadcasted it early, nothing would happen because everybody would just be sitting there waiting for the nlocktime to expire.

bitwhizz
Legendary
*
Offline Offline

Activity: 910
Merit: 1000



View Profile
October 10, 2013, 04:30:16 PM
 #10

buy the rare casascius coins, thats a way to not touch your bitcoins,
theonewhowaskazu
Sr. Member
****
Offline Offline

Activity: 448
Merit: 250


View Profile
October 10, 2013, 06:01:01 PM
 #11

buy the rare casascius coins, thats a way to not touch your bitcoins,

You have to pay a huge premium, for those, though. If nlocktime works as I think it does you could get a better result for free.

bitwhizz
Legendary
*
Offline Offline

Activity: 910
Merit: 1000



View Profile
October 10, 2013, 07:10:50 PM
 #12

i wasn't being that serious, nclock sounds like an awesome idea everyone could really benefit from,
ripper234
Legendary
*
Offline Offline

Activity: 1274
Merit: 1000


Ron Gross


View Profile WWW
October 10, 2013, 10:13:08 PM
 #13

So assuming you did broadcast a nlocktime a year in the future, and saved the transaction, you can't 'cash it in' early, can you? You'd just have to re-broadcast it in a year to get your Bitcoins, if you broadcasted it early, nothing would happen because everybody would just be sitting there waiting for the nlocktime to expire.

nLockTime means by definition the transaction isn't valid until a specific block number. You can't 'cash it in' early no matter what.

You have to re-broadcast the tx in the future to get your bitcoins.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
theonewhowaskazu
Sr. Member
****
Offline Offline

Activity: 448
Merit: 250


View Profile
October 10, 2013, 11:57:18 PM
 #14

So assuming you did broadcast a nlocktime a year in the future, and saved the transaction, you can't 'cash it in' early, can you? You'd just have to re-broadcast it in a year to get your Bitcoins, if you broadcasted it early, nothing would happen because everybody would just be sitting there waiting for the nlocktime to expire.

nLockTime means by definition the transaction isn't valid until a specific block number. You can't 'cash it in' early no matter what.

You have to re-broadcast the tx in the future to get your bitcoins.

So. then whats wrong with the nLockTime idea?

You broadcast & save a transaction with nLockTime of 144 blocks. 144 blocks later you either receive your transaction or rebroadcast  the tx and get your Bitcoins.

ripper234
Legendary
*
Offline Offline

Activity: 1274
Merit: 1000


Ron Gross


View Profile WWW
October 11, 2013, 12:04:55 AM
 #15

So assuming you did broadcast a nlocktime a year in the future, and saved the transaction, you can't 'cash it in' early, can you? You'd just have to re-broadcast it in a year to get your Bitcoins, if you broadcasted it early, nothing would happen because everybody would just be sitting there waiting for the nlocktime to expire.

nLockTime means by definition the transaction isn't valid until a specific block number. You can't 'cash it in' early no matter what.

You have to re-broadcast the tx in the future to get your bitcoins.

So. then whats wrong with the nLockTime idea?

You broadcast & save a transaction with nLockTime of 144 blocks. 144 blocks later you either receive your transaction or rebroadcast  the tx and get your Bitcoins.

Nothing wrong, the idea works - it's just a bit more time to implement properly than what we have at our disposal right now.
We were hoping to implement a complete solution in 4-5 hours of work, but I think that a good quality solution would just make time than that given the above. It's not a huge project, perhaps a few days, but we're just a bit too busy for that ourselves a.t.m.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
theonewhowaskazu
Sr. Member
****
Offline Offline

Activity: 448
Merit: 250


View Profile
October 11, 2013, 12:10:37 AM
 #16

So assuming you did broadcast a nlocktime a year in the future, and saved the transaction, you can't 'cash it in' early, can you? You'd just have to re-broadcast it in a year to get your Bitcoins, if you broadcasted it early, nothing would happen because everybody would just be sitting there waiting for the nlocktime to expire.

nLockTime means by definition the transaction isn't valid until a specific block number. You can't 'cash it in' early no matter what.

You have to re-broadcast the tx in the future to get your bitcoins.

So. then whats wrong with the nLockTime idea?

You broadcast & save a transaction with nLockTime of 144 blocks. 144 blocks later you either receive your transaction or rebroadcast  the tx and get your Bitcoins.

Nothing wrong, the idea works - it's just a bit more time to implement properly than what we have at our disposal right now.
We were hoping to implement a complete solution in 4-5 hours of work, but I think that a good quality solution would just make time than that given the above. It's not a huge project, perhaps a few days, but we're just a bit too busy for that ourselves a.t.m.

No, I'm just saying why does it even need to be done at all, if you can just usre nLockTime and your normal Bitcoin client to do it yourselves anyway?

ripper234
Legendary
*
Offline Offline

Activity: 1274
Merit: 1000


Ron Gross


View Profile WWW
October 11, 2013, 12:17:04 AM
 #17

No, I'm just saying why does it even need to be done at all, if you can just usre nLockTime and your normal Bitcoin client to do it yourselves anyway?

Providing an easy to use interface to this kind of operation is what it's about.
You can of course implement this using your normal client, but it's a bit difficult. E.g. you have to get it to forget your private key, otherwise your future self can always just spend the coins.

Just to make sure we all understand how it works: If you sign an nLockTime tx, until that time passes, and regardless if the transaction was broadcast or not, you can still send the bitcoins away to another address and essentially "double spend" the nLockTime tx. To fully implement my idea you need to create an nLockTime and then forget the private key, leaving the only option of getting your coins back as transmitting the nLockTime tx at the correct time.

Please do not pm me, use ron@bitcoin.org.il instead
Mastercoin Executive Director
Co-founder of the Israeli Bitcoin Association
prophetx
Legendary
*
Offline Offline

Activity: 1400
Merit: 1000


he who has the gold makes the rules


View Profile WWW
October 12, 2013, 11:17:42 AM
 #18

I think this could also be useful for enforcement of periodic payments. Or for transferring funds between addresses that are linked to an accounting system where one address accounts for future revenue, were payment has been been received, and the other for recognized revenue.  And yet nother address for committed funds which need to be sent out at some time period in the future.  Though one does not need to throw away the keys necessarily, just do the scheduling.

WINGS Beta is live - list your ICO for only 5000 WINGS at https://wings.ai - over $650 Million raised by ICOs with WINGS
str4wm4n
Legendary
*
Offline Offline

Activity: 1616
Merit: 1000


View Profile
October 15, 2013, 10:45:34 PM
 #19

this could have saved me so bad yesterday...  Cry
Mitchell
Moderator
Legendary
*
Offline Offline

Activity: 1792
Merit: 1128


Verified awesomeness ✔


View Profile WWW
October 15, 2013, 10:47:30 PM
 #20

Well, it would be nice to have something like this. Maybe a website like BlockChain.info (so that the server has no access) that locks up your coins until a certain time before you are able to spend it.

.FORTUNE.JACK.
      ▄▄███████▄▄
   ▄████▀▀ ▄ ██████▄
  ████ ▄▄███ ████████
 █████▌▐███▌ ▀▄ ▀█████
███████▄██▀▀▀▀▄████████
█████▀▄▄▄▄█████████████
████▄▄▄▄ █████████████
 ██████▌ ███▀████████
  ███████▄▀▄████████
   ▀█████▀▀███████▀
      ▀▀██████▀▀
         
         █
...FortuneJack.com                                             
...THE BIGGEST BITCOIN GAMBLING SITE
       ▄▄█████████▄▄
    ▄█████████████████▄
  ▄█████████████████████▄
 ▄██
█████████▀███████████▄
██████████▀   ▀██████████
█████████▀       ▀█████████
████████           ████████
████████▄   ▄ ▄   ▄████████
██████████▀   ▀██████████
 ▀██
█████████████████████▀
  ▀██
███████████████████▀
    ▀█████████████████▀
       ▀▀█████████▀▀
#JACKMATE
WIN 1 BTC
▄█████████████████████████▄
███████████████████████████
███████████████████████████
██████████▀█████▀██████████
███████▀░░▀░░░░░▀░░▀███████
██████▌░░░░░░░░░░░░░▐██████
██████░░░░██░░░██░░░░██████
█████▌░░░░▀▀░░░▀▀░░░░▐█████
██████▄░░▄▄▄░░░▄▄▄░░▄██████
████████▄▄███████▄▄████████

███████████████████████████
███████████████████████████
▀█████████████████████████▀
Pages: [1] 2 3 »  All
  Print  
 
Jump to:  

Sponsored by , a Bitcoin-accepting VPN.
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!