alikim (OP)
Member
Offline
Activity: 80
Merit: 11
|
|
October 20, 2013, 04:37:44 AM Last edit: October 20, 2013, 05:09:12 AM by alikim |
|
That shouldn't be very probable, should it? I used Bitcoin Qt client, pressed "New address" button to generate the address, sent a small amount to it and then checked on blockchain.info if the transaction was registered. To my surprise there are two other transactions made over a year ago using that address. https://blockchain.info/address/1J9UHx3q9D1ZxZ5KwV8VGWJd7ksyTJtLTB
|
|
|
|
mjc
|
|
October 20, 2013, 04:59:47 AM |
|
It should not happen but there is nothing stopping it from happening.
|
|
|
|
Liquid
|
|
October 20, 2013, 05:02:29 AM |
|
Surely not, show us the transaction
|
Bitcoin will show the world what hard money really is.
|
|
|
arklan
Legendary
Offline
Activity: 1778
Merit: 1008
|
|
October 20, 2013, 05:04:05 AM |
|
This should be so astronomically unlikely as to never happen...
Was there any btc stored on that address from before you used it?
|
i don't post much, but this space for rent.
|
|
|
ruletheworld
Legendary
Offline
Activity: 1386
Merit: 1045
|
|
October 20, 2013, 05:09:04 AM |
|
Wow this would be a first recorded case I am guessing. Can you share the public address? Theoretically, there's nothing stopping an address collision but the chances are extremely slim especially at such an early stage in the lifecycle.
|
|
|
|
alikim (OP)
Member
Offline
Activity: 80
Merit: 11
|
|
October 20, 2013, 05:11:38 AM |
|
Updated my first post with the address.
I had to enter a unique label before creating the address and enter a pass phrase for the wallet, so I'm pretty sure it's not one of my old addresses.
I'm not suffering from any memory lapses or hallucinations either.
When you create an address does it leave a timestamp in your wallet, like when it's been created, so as I could double check it's a brand new one?
|
|
|
|
gmaxwell
Staff
Legendary
Offline
Activity: 4242
Merit: 8654
|
|
October 20, 2013, 05:31:20 AM |
|
Updated my first post with the address.
I had to enter a unique label before creating the address and enter a pass phrase for the wallet, so I'm pretty sure it's not one of my old addresses.
Thats actually due to a bug which is fixed in git: it asks for the pass phrase totally unnecessarily when you request a new address. When you create an address does it leave a timestamp in your wallet, like when it's been created, so as I could double check it's a brand new one?
It is _always_ a old one from the keypool. Open up the debug console (help->debug window->console), type in: gettransaction 5aed0ce301ecd17b237be9bd0dda7fa8fb7e2eb7f453c2ca1f27de160a23c791 If it returns that old transaction then that key was already in the wallet when that transaction hit your client. There are ages on keys too, but off the top of my head the only way I think you can get them is if you dumpwallet and IIRC thats only in git. Other questions: have you restored a wallet from a backup at any point, used salvagewallet, or pywallet?
|
|
|
|
Tomatocage
Legendary
Offline
Activity: 1554
Merit: 1222
brb keeping up with the Kardashians
|
|
October 20, 2013, 05:35:27 AM |
|
Surely not, show us the transaction This. Edit nvm, I see it now!
|
|
|
|
alikim (OP)
Member
Offline
Activity: 80
Merit: 11
|
|
October 20, 2013, 05:44:33 AM |
|
Open up the debug console (help->debug window->console), type in:
gettransaction 5aed0ce301ecd17b237be9bd0dda7fa8fb7e2eb7f453c2ca1f27de160a23c791
If it returns that old transaction then that key was already in the wallet when that transaction hit your client.
When I do this, I see some transaction info. I didn't restore my wallet. Still, I don't understand what you mean by saying it's always an old address from the keypool. When I press "New address" button does it generate a brand new address that no one used before?
|
|
|
|
wachtwoord
Legendary
Offline
Activity: 2324
Merit: 1125
|
|
October 20, 2013, 05:48:51 AM |
|
Open up the debug console (help->debug window->console), type in:
gettransaction 5aed0ce301ecd17b237be9bd0dda7fa8fb7e2eb7f453c2ca1f27de160a23c791
If it returns that old transaction then that key was already in the wallet when that transaction hit your client.
When I do this, I see some transaction info. I didn't restore my wallet. Still, I don't understand what you mean by saying it's always an old address from the keypool. When I press "New address" button does it generate a brand new address that no one used before? Bitcoind always keeps a keypool with 100 (?) addresses which is pregenerates. Every time you request a new address it pulls it from this pool and adds a new one to the pool. The idea is to make backups more effective (but deterministic wallets such as Armory uses are way better for this).
|
|
|
|
frankenmint
Legendary
Offline
Activity: 1456
Merit: 1018
HoneybadgerOfMoney.com Weed4bitcoin.com
|
|
October 20, 2013, 06:11:32 AM |
|
Open up the debug console (help->debug window->console), type in:
gettransaction 5aed0ce301ecd17b237be9bd0dda7fa8fb7e2eb7f453c2ca1f27de160a23c791
If it returns that old transaction then that key was already in the wallet when that transaction hit your client.
When I do this, I see some transaction info. I didn't restore my wallet. Still, I don't understand what you mean by saying it's always an old address from the keypool. When I press "New address" button does it generate a brand new address that no one used before? Bitcoind always keeps a keypool with 100 (?) addresses which is pregenerates. Every time you request a new address it pulls it from this pool and adds a new one to the pool. The idea is to make backups more effective (but deterministic wallets such as Armory uses are way better for this). Couldn't I hypothetically create a script that systematically generates bitcoin addresses from the pregenerate pool and have the script lookup the generated address to see if the wallet is active with a balance then choose to spend this into a new wallet address?
|
|
|
|
gmaxwell
Staff
Legendary
Offline
Activity: 4242
Merit: 8654
|
|
October 20, 2013, 06:21:21 AM |
|
Open up the debug console (help->debug window->console), type in: gettransaction 5aed0ce301ecd17b237be9bd0dda7fa8fb7e2eb7f453c2ca1f27de160a23c791 If it returns that old transaction then that key was already in the wallet when that transaction hit your client.
When I do this, I see some transaction info. I didn't restore my wallet. Still, I don't understand what you mean by saying it's always an old address from the keypool. When I press "New address" button does it generate a brand new address that no one used before? No, it should return an address your own wallet previously generated that you've never used before. Unclean shutdowns, wallet corruption, salvagewallet, or restoring a backup could cause it to issue an address to you twice, however. I've never heard of a local replay before outside of these circumstances. Can you look back through your records and confirm that 78f929d6fd5461cea8a64b1867cbc45b39c3119495b18aff313e9024c025092c was really a transaction paying you and/or 5aed0ce301ecd17b237be9bd0dda7fa8fb7e2eb7f453c2ca1f27de160a23c791 was really a transaction with you paying some place? E.g. if you were selling coins at mtgox at that time, go look at your mtgox deposit records on 2012-07-07?
|
|
|
|
Taras
Legendary
Offline
Activity: 1386
Merit: 1053
Please do not PM me loan requests!
|
|
October 20, 2013, 06:26:24 AM |
|
If this IS an actual collision... Well, the next one probably won't be for a thousand years.
|
|
|
|
pengcqu
Newbie
Offline
Activity: 56
Merit: 0
|
|
October 20, 2013, 06:39:53 AM |
|
It‘s impossible.
|
|
|
|
Shogen
Legendary
Offline
Activity: 966
Merit: 1001
|
|
October 20, 2013, 07:08:47 AM |
|
It‘s impossible.
It is statistically possible, but the possibilty is so small that we don't expect to really see it happens.
|
|
|
|
mandelbert
Newbie
Offline
Activity: 26
Merit: 0
|
|
October 20, 2013, 07:56:51 AM |
|
Are you *sure* you didn't own that address already?
If not, it is VASTLY more probable you (and however generated this address before) just unearthed a bug in bitcoin's PRNG. Could you give more details - which OS and OpenSSL you have installed?
I find it *extremely* hard to believe you actually caused a collision. Not now, not in a 1000 years.
|
|
|
|
alikim (OP)
Member
Offline
Activity: 80
Merit: 11
|
|
October 20, 2013, 08:05:07 AM |
|
Open up the debug console (help->debug window->console), type in: gettransaction 5aed0ce301ecd17b237be9bd0dda7fa8fb7e2eb7f453c2ca1f27de160a23c791 If it returns that old transaction then that key was already in the wallet when that transaction hit your client.
When I do this, I see some transaction info. I didn't restore my wallet. Still, I don't understand what you mean by saying it's always an old address from the keypool. When I press "New address" button does it generate a brand new address that no one used before? No, it should return an address your own wallet previously generated that you've never used before. Unclean shutdowns, wallet corruption, salvagewallet, or restoring a backup could cause it to issue an address to you twice, however. I've never heard of a local replay before outside of these circumstances. Can you look back through your records and confirm that 78f929d6fd5461cea8a64b1867cbc45b39c3119495b18aff313e9024c025092c was really a transaction paying you and/or 5aed0ce301ecd17b237be9bd0dda7fa8fb7e2eb7f453c2ca1f27de160a23c791 was really a transaction with you paying some place? E.g. if you were selling coins at mtgox at that time, go look at your mtgox deposit records on 2012-07-07? My records go back to 2011 but I don't see any transactions made in Jun or Jul 2012 at all and I didn't use mtgox in 2012. I also do not see any mention of those two other addresses involved in previous transactions in my wallet. I will assume that some kind of glitch made the client to reuse that address twice, that's more probable than a collision I guess. Thank you!
|
|
|
|
Realpra
|
|
October 20, 2013, 08:13:31 AM |
|
Bad number generator anyone? Is that the second time for Bitcoin QT? Are they just using whatever the operating system spits out with no additional randomness added?
|
|
|
|
mufa23
Legendary
Offline
Activity: 1022
Merit: 1001
I'd fight Gandhi.
|
|
October 20, 2013, 08:21:03 AM |
|
Wow... didn't think it would ever happen
|
Positive rep with: pekv2, AzN1337c0d3r, Vince Torres, underworld07, Chimsley, omegaaf, Bogart, Gleason, SuperTramp, John K. and guitarplinker
|
|
|
flatfly
Legendary
Offline
Activity: 1092
Merit: 1016
760930
|
|
October 20, 2013, 08:23:22 AM |
|
That shouldn't be very probable, should it? I used Bitcoin Qt client, pressed "New address" button to generate the address, sent a small amount to it and then checked on blockchain.info if the transaction was registered. To my surprise there are two other transactions made over a year ago using that address. https://blockchain.info/address/1J9UHx3q9D1ZxZ5KwV8VGWJd7ksyTJtLTB1. What OS and version of the client are you using? Could be a previously unknown bug in the random number generator. 2. Also, verify that you do own the private key to that address. Try to send that 0.1 BTC to another address of yours.
|
|
|
|
|