I can provide you with an article on this topic.
Why was the transaction plasticity event possible in October 2015 despite BIP62/66?
In October 2015, a significant event occurred in the Bitcoin network that revealed the vulnerability of the transaction plasticity protocol. The problem of plasticity of transactions, which was solved by the implementation of BIP62 and BIP66, still remained possible, despite the introduction of these new rules.
Backstory: BIP62/66
In 2014, the Bitcoin Core development team introduced two new protocols: BIP62 (Base-62) and BIP66 (Base-66) to improve the security and efficiency of Bitcoin transactions. These protocols were developed to provide a more secure way to encode and decode Bitcoin transaction data.
BIP62/66 allowed the use of base-62 and base-66 representations in Bitcoin transactions, which provides more efficient storage and transmission of transaction data. However, these new protocols did not eliminate all potential vulnerabilities that existed before their implementation.
Attack on plasticity
In October 2015, a plasticity attack was launched on the Bitcoin network that used a previously unknown vulnerability in the BIP62/66 implementation. The attack allowed the attacker to manipulate and change transaction data in such a way that it was impossible to detect by conventional means.
The attack involved altering transaction data using the BIP62/66 protocol, which could then be used to create fake or altered transactions. This vulnerability had significant consequences for the Bitcoin network, as it allowed attackers to spend (spend) tokens twice without being detected.
Why is plasticity possible despite BIP62/66?
Despite the introduction of BIP62 and BIP66, plasticity was still possible due to a combination of the following factors:
- Inadequate Testing: At the time, the Bitcoin Core development team did not thoroughly test their implementation of BIP62 and BIP66 against various attack vectors.
- Insufficient Security Measures: New protocols do not provide sufficient security measures to prevent plasticity-based attacks. For example, they did not include any additional cryptographic layers or security checks.
- Ignorance
: Many developers and users were unaware of potential vulnerabilities in the BIP62/66 implementation, allowing attackers to exploit them.
Conclusion
The transaction plasticity event of October 2015 revealed a significant vulnerability in the Bitcoin network’s transaction plasticity protocol, despite its implementation via BIP62 and BIP66. This event has become an alarm signal for the development community, emphasizing the need for further testing and security measures to prevent similar attacks in the future.
AMA Clinlin: Answer
In response to the plasticity problem, @amaclin posted C++ code on /r/Bitcoin that demonstrated how to use BIP62/66 to create fake transactions. The code also showed how attackers could exploit this vulnerability to double spend tokens without being detected.
The publication sparked a lively discussion on /r/Bitcoin, with many developers and users sharing their own experiences and advice on how to mitigate the plasticity problem.