Double-Spending Fast Payments in Bitcoin due to Client versions 0.8.1 [combined summary]



Individual post summaries: Click here to read the original discussion on the bitcoin-dev mailing list

Published on: 2013-06-27T16:16:04+00:00


Summary:

In a 2013 email discussion, Arthur Gervais raised concerns about the signature encoding differences between different versions of Bitcoin and the potential consequences for merchants who accept zero-confirmation transactions. However, Jeff Garzik pointed out that it is becoming harder to relay older transaction versions due to changes in P2P network node distributions. Garzik also noted that merchants who accept zero confirmation transactions are likely already aware of the risks involved and make a business decision accordingly.Gervais also discussed the issue of double-spending in Bitcoin transactions in a June 2013 email conversation. He believes that his reported problem is complementary to other issues affecting the same Bitcoin version and does not require sending the two double-spending transactions at the same time. Double-spending can still occur if the second transaction is sent minutes later, before the first has been included in a block. Gervais aims to raise awareness among merchants who accept zero-confirmation transactions, but there is concern that his focus on signature encoding differences may create misunderstanding.Furthermore, Gervais informed Bitcoin developers about a vulnerability on June 27, 2013, which could lead to a double-spending attack in fast payment scenarios. The vulnerability arises from signature encoding incompatibilities between versions 0.8.2 (or 0.8.3) and earlier versions of Bitcoin. Gregory Maxwell suggested referring to prior discussions of this transaction pattern, highlighting the unsafe nature of taking non-reversible actions on unconfirmed transactions. Gervais clarified that their reported problem is not related to fees or dust and that the two double-spending transactions do not need to be sent simultaneously.It is worth noting that the Bitcoin community has already discussed this transaction pattern in prior discussions. This type of pattern is considered unsafe and is advised against by most of the Bitcoin community resources. The vulnerability can be achieved through means other than changes in the IsStandard rule, such as concurrent announcements where conflicting transactions are announced simultaneously to multiple nodes.In summary, a vulnerability has been discovered in Bitcoin that could potentially lead to double-spending attacks in fast payment scenarios. This vulnerability is caused by signature encoding incompatibilities between versions 0.8.2 and earlier versions of Bitcoin. Researchers have provided a detailed description of the vulnerability, and Bitcoin developers have been informed about it. Efforts are underway to address this vulnerability and mitigate its potential risks.


Updated on: 2023-08-01T05:12:09.866792+00:00