BIP30 and BIP34 interaction (was Re: [BIP Proposal] Buried Deployments)



Summary:

The conversation between Eric Voskuil and Johnson Lau discusses the possibility of hash collisions in Bitcoin protocol, which could lead to a consensus failure. The scenario presented is where an attacker finds a valid or invalid transaction with the same SHA256 hash as a confirmed transaction from years ago, and replaces it in the blockchain. This could result in a different ledger for anyone downloading the blockchain from the beginning, leading to a permanent fork in the chain.Eric Voskuil argues that recent un-BIPped consensus changes in Core are the source of the problem. He also points out that transaction "replacement" is an implementation detail of Core and not a consensus/validation failure. Meanwhile, Johnson Lau suggests that the Bitcoin protocol is broken and that any implementation should assume SHA256 collision is impossible. Voskuil disagrees with Lau's suggestion of introducing an alternative hash algorithm and instead recommends fixing the problem by resolving the TX hash collision problem through the BIP30 rule. He believes that block hash check and signature validation caching splits caused by collision can easily be avoided without breaking consensus.


Updated on: 2023-05-20T00:08:40.003734+00:00