Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: BurtW on October 15, 2011, 03:16:30 PM



Title: 1BitcoinEaterAddressDontSend
Post by: BurtW on October 15, 2011, 03:16:30 PM
NEVERMIND - I understand now this is just a bogus (but honest) address which states exactly what will happen if you send any Bitcoins to it.

I have been playing around with vanity address generation.  For fun I ran http://firstbits.com/1bitcoin thinking to myself that surely someone had already claimed that address (if not I was going to get it).  What I got really shocked me:

1BitcoinEaterAddressDontSendf59kuE  :o

I find this amazing and a bit concerning.  

I was very concerned because my first thought was that someone has enough hashing power to almost reproduce an entire public key address.

I am less concerned now that I figure the search was some sort of regular expression of English words.

Still, I wonder how long this took and how much computational power was used.

This also leads to my main question:  assuming someone could reproduce an entire public key address would they be able to steal the BTC from the original account with that same public key address?

Maybe the owner of this address can tell us how long this took and how they did it.

 


Title: Re: 1BitcoinEaterAddressDontSend
Post by: jwzguy on October 15, 2011, 03:23:06 PM
Or maybe no one has the private key for this address.


Title: Re: 1BitcoinEaterAddressDontSend
Post by: etotheipi on October 15, 2011, 04:04:36 PM
The address does not correspond to an actual ECDSA public key.  Remember than an address is just a hash of an ECSDA public key, which means the address can look like anything.  So there's nothing stopping me from creating the address 1BitcoinEaterAddressDontSendf59kuE with the appropriate checksum to make it look like a valid address, but I don't have the public-private keypair needed to spend money sent to that address.

In otherwords, vanity gen creates public/private keypairs and turns them into addresses looking for one that has your target word/phrase in it.  The output is a real address for which you have the private key and can spend the money.   In this case, though, the person can just make the address directly, but has no idea if there is a public/private keypair associated with it, and certainly doesn't have it.  The checksum at the end guarantees the client sees it as valid, but no one will ever be able to provide a public key to the network that hashes to that, and thus any coins sent there will be unrecoverable.


Title: Re: 1BitcoinEaterAddressDontSend
Post by: BurtW on October 15, 2011, 04:12:59 PM
Thanks.  That explains it.


Title: Re: 1BitcoinEaterAddressDontSend
Post by: Ente on October 26, 2011, 05:40:34 PM
..what really makes me mad about this address is not that there are already coins being sent to it, which now are unrecoverable.
This address is the address for the firstbits "1bitcoin", which would have been an awesome address in my wallet, on the phone, on my business card! :-)

Ente


Title: Re: 1BitcoinEaterAddressDontSend
Post by: dayfall on October 26, 2011, 06:16:42 PM
For the data point,  the longest I have found so far is 1Britteny3ZqYR5GPHuamR8HNm93saeVXT.  Correct capitalization makes matching very slow.


Title: Re: 1BitcoinEaterAddressDontSend
Post by: BurtW on October 26, 2011, 06:27:55 PM
Just curious.  Did you use a CPU or GPU?  How long did it take?


Title: Re: 1BitcoinEaterAddressDontSend
Post by: MaxSan on October 27, 2011, 09:28:54 AM
I got 1MaxSan in around 7 minutes.

1Chemistry on my CPU said it would take 1.1years xD


Title: Re: 1BitcoinEaterAddressDontSend
Post by: BTCurious on October 27, 2011, 11:39:57 AM
..what really makes me mad about this address is not that there are already coins being sent to it, which now are unrecoverable.
Nonsense! Some lucky fucker years from now will create this private key and be instantly surprised to see that he has a wallet with money already in it!
This is unlikely on an astronomical scale :)


Title: Re: 1BitcoinEaterAddressDontSend
Post by: finway on October 27, 2011, 12:13:26 PM
1BTCmsgZo1ef9nkx1eQMy5DsiaNfRQMVuR
is a good Address too.


Title: Re: 1BitcoinEaterAddressDontSend
Post by: naima53 on December 08, 2012, 02:37:28 PM
The address does not correspond to an actual ECDSA public key.  Remember than an address is just a hash of an ECSDA public key, which means the address can look like anything.  So there's nothing stopping me from creating the address 1BitcoinEaterAddressDontSendf59kuE with the appropriate checksum to make it look like a valid address, but I don't have the public-private keypair needed to spend money sent to that address.

In otherwords, vanity gen creates public/private keypairs and turns them into addresses looking for one that has your target word/phrase in it.  The output is a real address for which you have the private key and can spend the money.   In this case, though, the person can just make the address directly, but has no idea if there is a public/private keypair associated with it, and certainly doesn't have it.  The checksum at the end guarantees the client sees it as valid, but no one will ever be able to provide a public key to the network that hashes to that, and thus any coins sent there will be unrecoverable.
http://blockchain.info/address/1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX
But this address is quite workable ... (it has an outgoing transaction). How to explain it?  ::)


Title: Re: 1BitcoinEaterAddressDontSend
Post by: CIYAM on December 08, 2012, 02:52:38 PM
http://blockchain.info/address/1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX
But this address is quite workable ... (it has an outgoing transaction). How to explain it?  ::)

You can use regular expressions with vanitygen - so the regex used probably was just [A-Z0-9]+* (or similar) which although difficult is not as difficult as a very long case sensitive specific prefix.


Title: Re: 1BitcoinEaterAddressDontSend
Post by: RoxxR on December 08, 2012, 03:21:07 PM
How do you explain those have owners?


http://blockchain.info/address/1ELECeJompinDox61L73eAUyaWpe3Q5HZB

http://blockchain.info/address/12345678googr7AWKah5kpLnx2h8zDS6NK


Title: Re: 1BitcoinEaterAddressDontSend
Post by: CIYAM on December 08, 2012, 03:25:01 PM
How do you explain those have owners?

http://blockchain.info/address/1ELECeJompinDox61L73eAUyaWpe3Q5HZB
http://blockchain.info/address/12345678googr7AWKah5kpLnx2h8zDS6NK


Once again regex's using vanitygen (assuming there are outgoing tx's from them which I haven't checked as I am assuming you have).

Understand that in the first case it could have been ^1ELEC* or perhaps *Jo*Dox* and the second case ^12345678*go* - unless you know exactly what regex the creator used it really is just speculation.

If you really think it is so easy to create any BTC address you like then please try creating 1hohohociyam1 (exact match) and I will send you 10 btc (after you've proved that you own the private key of course). ;)


Title: Re: 1BitcoinEaterAddressDontSend
Post by: BurtW on December 08, 2012, 03:28:41 PM
How do you explain those have owners?


http://blockchain.info/address/1ELECeJompinDox61L73eAUyaWpe3Q5HZB

http://blockchain.info/address/12345678googr7AWKah5kpLnx2h8zDS6NK

Vanity bitcoin address generation.

https://bitcointalk.org/index.php?topic=25804.0 (https://bitcointalk.org/index.php?topic=25804.0)

https://bitcointalk.org/index.php?topic=84569.0 (https://bitcointalk.org/index.php?topic=84569.0)

Just like this one:  1BurtWEejbnKeBRsvcydJvsNztB1bXV5iQ


Title: Re: 1BitcoinEaterAddressDontSend
Post by: naima53 on December 08, 2012, 03:32:50 PM
http://blockchain.info/address/1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX
But this address is quite workable ... (it has an outgoing transaction). How to explain it?  ::)

You can use regular expressions with vanitygen - so the regex used probably was just [A-Z0-9]+* (or similar) which although difficult is not as difficult as a very long case sensitive specific prefix.

But as it is fucking hard! (besides vanitigen not working full-length address)


Title: Re: 1BitcoinEaterAddressDontSend
Post by: CIYAM on December 08, 2012, 03:35:29 PM
But as it is fucking hard! (besides vanitigen not working full-length address)

I have already seen another all upper case vanitygen address in a sig on this forum so I think this must not be correct (at least with the current version).



Title: Re: 1BitcoinEaterAddressDontSend
Post by: mskwik on December 08, 2012, 08:58:01 PM
Length alone doesn't necessarily make an address that hard to find if you aren't as picky about what exactly makes up that length.  Noticed that one of my machines spit out 1MAG1CALTUXueDaGWq8ozLGL5sutu6DxFq yesterday while it had switched to vanitygen mining for a little while (not that it does me much good).  From recent observations 9 digits is fairly common and even 10 not that unusual when searching against a large enough dictionary, it's when you're looking for something more specific that difficulty starts to get higher.


Title: Re: 1BitcoinEaterAddressDontSend
Post by: etotheipi on December 08, 2012, 10:34:22 PM
But as it is fucking hard! (besides vanitigen not working full-length address)

I have already seen another all upper case vanitygen address in a sig on this forum so I think this must not be correct (at least with the current version).


That's my address :)   1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX

The problem is not length, it's how specific of an address you are looking for.  There are about 5833 possible address, so if you want to find a very specific one (such as 1BitcoinEaterAddressDontSend..), then you have a 1/5833 chance of finding it on each guess (infeasible*).  However, my address was not a search for a single address, it was any address of all capital letters.  There are about 2633 such addresses.  So the chances of finding one such address on each guess is 2633/5833 = (26/58)33.  That is actually in the realm of feasibility -- it is about 1/300billion

*  1/5833 = 1/15599970876632771988160814054146447252125923204784443097088


Title: Re: 1BitcoinEaterAddressDontSend
Post by: nibor on December 10, 2012, 09:44:13 AM
See https://bitcoinvanity.appspot.com to see how hard different addresses are to find...


Title: Re: 1BitcoinEaterAddressDontSend
Post by: walkerrrr on September 08, 2013, 11:25:19 AM
But as it is fucking hard! (besides vanitigen not working full-length address)

I have already seen another all upper case vanitygen address in a sig on this forum so I think this must not be correct (at least with the current version).


That's my address :)   1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX

The problem is not length, it's how specific of an address you are looking for.  There are about 5833 possible address, so if you want to find a very specific one (such as 1BitcoinEaterAddressDontSend..), then you have a 1/5833 chance of finding it on each guess (infeasible*).  However, my address was not a search for a single address, it was any address of all capital letters.  There are about 2633 such addresses.  So the chances of finding one such address on each guess is 2633/5833 = (26/58)33.  That is actually in the realm of feasibility -- it is about 1/300billion

*  1/5833 = 1/15599970876632771988160814054146447252125923204784443097088
why 58 ?
i think it's 62, 26 * 2 + 10 = 62


Title: Re: 1BitcoinEaterAddressDontSend
Post by: BurtW on September 08, 2013, 11:33:00 AM
Because it is not 62, it is 58:

https://en.bitcoin.it/wiki/Base58Check_encoding

'0' 'O' 'I' and 'l' are not used, 62 - 4 = 58.

So, in fact, his equation is in error.  We only use 24 of the captital letters so 2433/5833 = (24/58)33.

I am surprised no one else (including me) caught that the first time around.

It was interesting to read my OP in this old thread.  Man, all I can say is what a noob I was back then ;)


Title: Re: 1BitcoinEaterAddressDontSend
Post by: walkerrrr on September 09, 2013, 01:07:31 PM
Because it is not 62, it is 58:

https://en.bitcoin.it/wiki/Base58Check_encoding

'0' 'O' 'I' and 'l' are not used, 62 - 4 = 58.

So, in fact, his equation is in error.  We only use 24 of the captital letters so 2433/5833 = (24/58)33.

I am surprised no one else (including me) caught that the first time around.

It was interesting to read my OP in this old thread.  Man, all I can say is what a noob I was back then ;)

Thank you for your answer!

In bitcoin address, there are 4 bytes error checking code, so i think the formula shoud be (24/58)29, am i right?


Title: Re: 1BitcoinEaterAddressDontSend
Post by: jackjack on September 09, 2013, 07:51:16 PM
Because it is not 62, it is 58:

https://en.bitcoin.it/wiki/Base58Check_encoding

'0' 'O' 'I' and 'l' are not used, 62 - 4 = 58.

So, in fact, his equation is in error.  We only use 24 of the captital letters so 2433/5833 = (24/58)33.

I am surprised no one else (including me) caught that the first time around.

It was interesting to read my OP in this old thread.  Man, all I can say is what a noob I was back then ;)

Thank you for your answer!

In bitcoin address, there are 4 bytes error checking code, so i think the formula shoud be (24/58)29, am i right?

1 byte != 1 base58-digit

4 bytes = 256⁴ ~ 4 billions
and
58⁵ < 4 billions < 58⁶

So the signature is actually 6 base58-digits


Title: Re: 1BitcoinEaterAddressDontSend
Post by: BurtW on September 09, 2013, 11:05:48 PM
Because it is not 62, it is 58:

https://en.bitcoin.it/wiki/Base58Check_encoding

'0' 'O' 'I' and 'l' are not used, 62 - 4 = 58.

So, in fact, his equation is in error.  We only use 24 of the captital letters so 2433/5833 = (24/58)33.

I am surprised no one else (including me) caught that the first time around.

It was interesting to read my OP in this old thread.  Man, all I can say is what a noob I was back then ;)

Thank you for your answer!

In bitcoin address, there are 4 bytes error checking code, so i think the formula shoud be (24/58)29, am i right?

Notice that 1QBDLYTDFHHZAABYSKGKPWKLSXZWCCJQBX contains 33 captial letters, this include all the letters used for the error checking code.  Since all 33 characters are captials the estimate we are looking for is:

2433/5833 = (24/58)33