🎉 The #CandyDrop Futures Challenge is live — join now to share a 6 BTC prize pool!
📢 Post your futures trading experience on Gate Square with the event hashtag — $25 × 20 rewards are waiting!
🎁 $500 in futures trial vouchers up for grabs — 20 standout posts will win!
📅 Event Period: August 1, 2025, 15:00 – August 15, 2025, 19:00 (UTC+8)
👉 Event Link: https://www.gate.com/candy-drop/detail/BTC-98
Dare to trade. Dare to win.
Bitcoin Repeated Transaction Vulnerability: A Historical Legacy Issue or a Potential Security Threat
Bitcoin Double Spending: An Interesting but Low-Risk Vulnerability
Bitcoin transactions typically use unspent outputs by referencing the ID of the previous transaction. These outputs can only be used once; otherwise, a double spending issue will arise. However, there have indeed been two sets of identical transactions in Bitcoin's history. This situation is possible because coinbase transactions do not have inputs but instead generate new coins. Therefore, two different coinbase transactions may send the same amount to the same address, constructed in exactly the same way, resulting in the same transaction ID.
These two sets of repeating transactions occurred between November 14 and 15, 2010, with a time span of about 16 hours. The first set of repeating transactions is sandwiched between the second set. We classify d5d2....8599 as the first repeating transaction, even though it first appeared on the blockchain later than the other repeating transaction e3bf....b468.
Block explorers handle these duplicate transactions differently. Some explorers default to displaying the earlier blocks, while others always show the latest version. Among the four blocks involved, only one block contains other transactions, merging 1 BTC and 19 BTC into 20 BTC.
The total amount involved in the duplicate transaction is 200 BTC, or it can be understood as 100 BTC. So far, these Bitcoins have not been used. Theoretically, the person who has the relevant private keys can spend these Bitcoins, but once used, the duplicated 50 BTC will not be able to be used again.
Duplicate transactions can create confusion for wallets and block explorers, and may also lead to some potential attacks and vulnerabilities. For example, attackers might exploit duplicate transactions to target exchanges, trying to cause issues with their funds.
To address this issue, the BIP30 soft fork proposal was introduced in February 2012, which prohibits the use of duplicate transaction IDs. Subsequently, BIP34 required that the coinbase transaction include the block height, further resolving this issue. However, there was still a potential risk of duplicate transactions in some blocks before BIP34 was activated.
The next block that may experience duplicate transactions is 1,983,702, which is expected to be generated around January 2046. However, the cost of exploiting this vulnerability is very high, requiring more than 170 BTC, which is approximately 15 million dollars at current prices. Considering the cost and difficulty, this vulnerability does not pose a major security threat to Bitcoin.
Although this issue still exists technically, the actual risk is very small due to high difficulty and large costs involved. Nevertheless, developers are still considering potential future fixes, such as enforcing SegWit commitments. Overall, this duplicate transaction vulnerability is more of an interesting historical legacy issue rather than a serious security concern.