Matt Corallo <lf-li...@mattcorallo.com> writes: > Indeed, anything which uses P2SH is obviously vulnerable if there is > an attack on RIPEMD160 which reduces it's security only marginally.
I don't think this is true? Even if you can generate a collision in RIPEMD160, that doesn't help you since you need to create a specific SHA256 hash for the RIPEMD160 preimage. Even a preimage attack only helps if it leads to more than one preimage fairly cheaply; that would make grinding out the SHA256 preimage easier. AFAICT even MD4 isn't this broken. But just with Moore's law (doubling every 18 months), we'll worry about economically viable attacks in 20 years.[1] That's far enough away that I would choose simplicity, and have all SW scriptPubKeys simply be "<0> RIPEMD(SHA256(WP))" for now, but it's not a no-brainer. Cheers, Rusty. [1] Assume bitcoin-network-level compute (collision in 19 days) costs $1B to build today. Assume there will be 100 million dollars a day in vulnerable txs, and you're on one end of all of them (or can MITM if you find a collision), *and* can delay them all by 10 seconds, and none are in parallel so you can attack all of them. IOW, just like a single $100M opportunity for 3650 seconds each year. Our machine has a 0.11% chance of finding a collision in 1 hour, so it's worth about $110,000. We can build it for that in about 20 years. _______________________________________________ bitcoin-dev mailing list bitcoin-dev@lists.linuxfoundation.org https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev