Author

Topic: Using the pubkey hash to generate other-chain addresses (Read 2148 times)

legendary
Activity: 1176
Merit: 1280
May Bitcoin be touched by his Noodly Appendage
There were not much altcoins back in 2011.
But back then there were discussions about how to retrieve namecoins sent to bitcoin addresses though so the question was indeed raised in 2011.
legendary
Activity: 1102
Merit: 1014
2013 whew! All too often when someone posts a thread in response to something being "new", that thread is from 2011.
legendary
Activity: 1176
Merit: 1280
May Bitcoin be touched by his Noodly Appendage
staff
Activity: 4326
Merit: 8951
If you think this is interesting, your mind is going to be blown when you start looking a bit deeper.

You shouldn't be surprised most of the altcoins are just copies with bitcoin with only very very minor changes.

A bunch of people use the same keys on multiple bitcoin clone chains.  E.g. Petertodd's ltc bounty payment stuff was setup that way.
legendary
Activity: 1102
Merit: 1014
The ripemd-160 hash of an ECDSA public key as used by Bitcoin has nothing to do with any version numbers and is therefore universal across Bitcoin, Litecoin, and probably nearly all altcoins. This means if I know your Bitcoin address, I can extract the hash and generate a corresponding address with my version number of choice.

On the receiving end, if I know a private key that has been encoded with Bitcoin's mainnet version number (0), I can re-encode that with Litecoin's version number (48) and spend litecoins that someone else, not knowing my private key, could assume I'd have been able to spend (as long as they know I have the actual private key). A merchant could even advertise this fact...that they are showing a Bitcoin address but will accept other coins sent to the same ECDSA keypair.

As a test, I modified a python script to generate a new keypair and show one line each for Bitcoin (address,privkey) and Litecoin (address,privkey). https://gist.github.com/weex/6435248  The output of this verifies that the same ECDSA private and public keys were used (check it on the last tab of bitaddress.org and liteaddress.org).

Maybe this is all pretty obvious but it was a surprise to me that I can't find it having been discussed before. Maybe because it takes someone looking at two chains to find it. Anyway, I'm interested to hear what the implications of this might be. A universal wallet? Software that looks for or generates actions across chains? Guerrilla marketing of altchains by donating coins to anyone with a known address in any other chain? Incredibly geeky parlor tricks?

-weex
Jump to: