newell-purdue / bitstamper

BitStamper, utility for provable timestamps by leveraging Bitcoin
MIT License
7 stars 4 forks source link

A better way #4

Open ghost opened 10 years ago

ghost commented 10 years ago

The general principal of stamping a hash of some data into the blockchain is fine, except it causes bitcoins to be sent to unredeemable addresses.

One could achieve the same result by using the hash of the data to create a private key (just like a brain wallet). You can then send coins to the bitcoin address of that, and be able to redeem the coins afterwards.

privateKey = brainwallet(hash(data))
address = get_address_from(privateKey)

Remember now have a minimum dust level which could rise later, bitcoin price is skyrocketing so this becomes expensive, and now we reduce the fee to 2 x miners fee which is more likely to go down over time.

ghost commented 10 years ago

Reference implementations:

Python

https://github.com/willwharton/pybrainwallet/blob/master/brainwallet.py or https://github.com/jgilmour/brainwallet-check/blob/master/brainwallet-check.py

Javascript

https://github.com/brainwallet/brainwallet.github.com/blob/master/js/brainwallet.js or https://github.com/pointbiz/bitaddress.org/blob/master/src/ninja.brainwallet.js