Skip to main content
24 events
when toggle format what by license comment
Mar 1, 2023 at 20:21 comment added user4276 You state "Coincidentally it requires precisely the same kind of processing power that bitcoin mining requires and in almost every scenario it would be massively more profitable to mine than to hack.". With miner hashing so much higher than it was in 2011, is it still true today? Would it really be massively more profitable to mine than to try to find addresses (collisions?) that already have a balance and steal them?
Jun 15, 2012 at 18:15 comment added David Perry @Pacerier if quantum computing ever leaves the lab and becomes affordable, Bitcoin isn't the only encryption-reliant tech that's in trouble. Even then, new crypto will spring up that's resistant to Shor's algorithm and Bitcoin can switch from ECC to something else. The beauty is that it's flexible enough to avoid these kind of problems.
Jun 15, 2012 at 18:14 comment added David Perry @Pacerier just FYI, the value of a day's efforts generating privkeys is nua where n is the number of keys generated, u is the percent of all keys actually in use and a is the average balance of a given account. Right now n~=2,030,400,000,000 for a good Radeon card, u~=3.28*e-43, and a~=19.22 BTC which means that a full day cracking on a Radeon 5xxx card is worth ~1.28e-29 BTC, or 1.28e-21 of a satoshi - the security is in the sheer size of 2^160, no amount of addresses in use will likely ever represent any significant percentage of a number so large.
Jun 15, 2012 at 18:04 comment added Pacerier @DavidPerry Ic. But quantum computing won't stay stuck in the lab isn't it? Computers weren't stuck in labs for too long.
Jun 15, 2012 at 17:50 comment added David Perry @Pacerier while it's difficult to make predictions about future variables (number of keys holding a balance, etc) the odds of finding a privkey containing funds is outrageously low. Multiply the probability of finding such a key (effectively zero) by the average balance (impossible to guess at) and as long as that amount is less than the value of an equivalent time spent mining, we should all be safe - basically as long as quantum computing stays stuck in the lab.
Jun 15, 2012 at 17:41 comment added Pacerier @DavidPerry You said that it is more profitable to mine than to hack. But is that likely in the future when all coins are already mined and the only "profit" are transaction fees?
Feb 12, 2012 at 21:19 history edited David Perry CC BY-SA 3.0
added 570 characters in body
Feb 12, 2012 at 21:13 comment added David Perry Holy crap, people are still arguing over this question? Necromancy, people, it's a bad thing. I concede the point just to not have to argue over a 7-month old answer any more. Also because you're correct. It's still way more profitable to mine than hunt for keypairs anyway, and as long as that's true we can probably consider the system secure. Similar to how it's not impossible to rob a bank, but it's usually (in the long term) safer and more profitable to get a job that's legal.
Feb 12, 2012 at 20:59 comment added Chris Moore @DavidPerry Your error is in "to be able to spend the contents of address x we have to know privkey y and pubkey z". In order to spend the contents of an address you only need to satisfy the scriptPubKey which typically says: "OP_DUP OP_HASH160 <pubKeyHash> OP_EQUALVERIFY OP_CHECKSIG" - ie. make sure that the hash given in the input hashes to the same 160 bits as <pubKeyHash> and then verify that the given signature was produced by the given hash. At no point does it check that the "right" pubkey was used, since we don't even know what the "right" pubkey is, only its 160 bit hash.
Feb 12, 2012 at 16:13 comment added Chris Moore @DavidPerry I think you're missing the point. You don't have to find the private key. You only have to find a private key that corresponds to a public key with the correct 160 bit hash. That is 2^(256-160) times easier than finding a private key that corresponds to the correct public key. And while adding in the extra hashing step will make things take maybe twice as long, the 2^106 factor reducing the difficulty swamps that.
Nov 11, 2011 at 16:03 comment added David Perry What I'm saying is that to be able to spend the contents of address x we have to know privkey y and pubkey z. What I'm saying is that x = RIPEMD160(z) and that without computing RIPEMD160(z) there is no way to determine if a given pubkey x matches our target address. Since everything in the blockchain is stored in reference to x rather than y or z we must needs compute RIPEMD160(z) for each value of z in order to check its balance or compare it to a known address we intend to steal from. We would need to compute RIPEMD160(SHA256(z)) for each value of z, thus increasing power needed to BF.
Nov 4, 2011 at 16:48 comment added DeathAndTaxes @DavidPerry. The RIPEMD has a smaller address space than the public key (2^160 vs 2^256). It takes slightly longer for each attempt (private key -> public -> address) vs (private -> public) but the odds in finding a collision on each attempt are 79228162514264300000000000000x more likely (8E28). Now this is somewhat academic because 2^160 and 2^256 are both beyond our computatinal ability to brute force but the hashing of SHA-256 public key to RIPEMD-160 address lowers security. As an example imagine the public key is 256 bit but address was 8bit would it be difficult to find a collision?
Nov 4, 2011 at 16:36 comment added David Perry @theUnhandledException If we were attempting to create an address collision, all steps would be necessary as there could be multiple public keys that would RIPEMD into the same address - if the address is the only bit of data that an attacker has available, the RIPEMD-160 hash would be a necessary step since they can't derive the public key from the address.
Nov 4, 2011 at 16:23 comment added DeathAndTaxes @DavidPerry The RIPEMD hash of the public key doesn't provide security. I would update your answer (no need to leave an edit paragraph). The public key is the SHA256 of the private key. If an attacker compromises that he can generate the address (RIPEMD hash) from the public key trivially as it was his own key.
Sep 1, 2011 at 12:36 vote accept nmat
Aug 31, 2011 at 14:47 history edited eMansipater CC BY-SA 3.0
fixed "possible" wording
Aug 30, 2011 at 22:55 review Suggested edits
Aug 31, 2011 at 0:24
Aug 30, 2011 at 22:39 comment added David Perry Altered my opening sentence to indicate that "possible" is meant only in the strictest scientific sense of the word.
Aug 30, 2011 at 22:39 history edited David Perry CC BY-SA 3.0
added 65 characters in body
Aug 30, 2011 at 22:38 comment added eMansipater Downvoted because this use of "possible" is unlike that which any reader would suppose.
Aug 30, 2011 at 21:51 comment added Buckhead_Comp_Ser_Co Double check and repost what you find, this site is better then the wiki, lets put the information here instead of there.
Aug 30, 2011 at 21:41 comment added David Perry The address spec is located at en.bitcoin.it/wiki/Protocol_specification#Addresses if anyone cares to double-check my edits :)
Aug 30, 2011 at 21:40 history edited David Perry CC BY-SA 3.0
added 284 characters in body
Aug 30, 2011 at 21:32 history answered David Perry CC BY-SA 3.0