BIP-13 [combined summary]



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

Published on: 2012-02-22T16:43:53+00:00


Summary:

On February 22, 2012, Michael Grønager sent an email discussing SCRIPT_ADDRESS_TEST and PUBKEY_ADDRESS_TEST. The value for SCRIPT_ADDRESS_TEST was identified as 196 in decimal or (11000100) in binary. Grønager also mentioned that PUBKEY_ADDRESS_TEST had a value of 111 in decimal or (01101111) in binary. Gavin Andresen agreed with the information shared by Grønager but did not provide any additional comments.The context highlights an issue raised by Michael Gronager regarding Bitcoin Improvement Proposal (BIP) 13. Gronager attempted to implement a bitfield-based parsing of the version byte using Luke-jr's description but found it to be inconsistent with base58.h definitions. Gronager requested help from Gavin Andresen and Luke-jr to resolve this disparity and suggested consolidating discussions on the Bitcoin-dev mailing list. In response, Andresen pointed out a major flaw in Gronager's idea that could allow an attacker to create address collisions.A conversation between Gavin Andresen and another individual focused on distinguishing between the old and new schemes for base58-encoding Bitcoin addresses. It was suggested that if a 1 in 256 old address has a first-byte-of-checksum matching the new address class, the code would compare the 4-byte checksum to determine if it is a singlesig address. However, this scheme could be exploited as a major flaw. The discussion proposed implementing extensions for the next byte to improve the scheme.The context also mentions the importance of following the BIP process when proposing ideas. Steps include posting a rough draft, writing up a draft BIP, posting it for review, and requesting a BIP number from the editor. The author encourages implementing the proposed idea between steps 3 and 4.There is a discussion about the "version" portion of Bitcoin addresses being referred to as the "network id". However, it is noted that it has always been known as the "version" according to Satoshi's reference implementation. The technical background of Bitcoin addresses can be found on the Bitcoin Wiki page.On February 20, 2012, Michael Grønager suggested labeling the "version" portion of Bitcoin addresses as the "network id" to indicate the intended network and chain. However, it was pointed out that it has always been referred to as the "version" and confirmed to be the original intention. The proposal to change the label is currently being discussed on the BIP-13 wiki page.A proposal has been made to change the "network id" portion of Bitcoin addresses back to the original term "version". The proposed structure for Bitcoin addresses would reduce the possibility of using a faulty address from 1 in 4 billion to 1 in 24 million, increasing security. However, old clients would render new addresses useless while maintaining their familiar appearance. This proposal is currently under discussion on the BIP-13 wiki page.


Updated on: 2023-08-01T03:18:49.304289+00:00