From 4e3f4a95a74d31c0e0173bb00d07c018957cb00e Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Wed, 4 Nov 2026 15:55:47 +1000 Subject: [PATCH 1/2] BIP34: Add version header and changelog section --- bip-0034.mediawiki | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/bip-0034.mediawiki b/bip-0034.mediawiki index b7bfb45f..06be0c08 100644 --- a/bip-0034.mediawiki +++ b/bip-0034.mediawiki @@ -6,6 +6,7 @@ Status: Deployed Type: Specification Assigned: 2012-07-06 + Version: 1.0.3 ==Abstract== @@ -35,3 +36,10 @@ https://github.com/bitcoin/bitcoin/pull/1526 ==Result== Block number 227,835 (timestamp 2013-03-24 15:49:13 GMT) was the last version 1 block. + +==Changelog== + +* 1.0.3: 2020-11-18: clarify that encoding must be minimal +* 1.0.2: 2016-02-05: correction to format prediction regarding sign bit +* 1.0.1: 2016-02-01: updated to Final, logged activation block +* 1.0.0: 2012-07-06: proposed From d433c2e35de367f9dce3492ee9bf8d91c3cde96e Mon Sep 17 00:00:00 2001 From: Anthony Towns Date: Wed, 4 Nov 2026 02:57:50 +1000 Subject: [PATCH 2/2] BIP34: clarify encoding for early blocks --- bip-0034.mediawiki | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/bip-0034.mediawiki b/bip-0034.mediawiki index 06be0c08..2924fdb9 100644 --- a/bip-0034.mediawiki +++ b/bip-0034.mediawiki @@ -6,7 +6,7 @@ Status: Deployed Type: Specification Assigned: 2012-07-06 - Version: 1.0.3 + Version: 1.0.4 ==Abstract== @@ -22,6 +22,7 @@ Bitcoin blocks and transactions are versioned binary structures. Both currently # Treat transactions with a version greater than 1 as non-standard (official Satoshi client will not mine or relay them). # Add height as the first item in the coinbase transaction's scriptSig, and increase block version to 2. The format of the height is "minimally encoded serialized CScript" -- first byte is number of bytes in the number (will be 0x03 on main net for the next 150 or so years with 223-1 blocks), following bytes are little-endian representation of the number (including a sign bit). Height is the height of the mined block in the block chain, where the genesis block is height zero (0). +# For new chains (such as [[bip-0325.mediawiki|signet]] or [[bip-0094.mediawiki|testnet4]]) that enforce this rule immediately after the genesis block, "minimally encoded serialized CScript" results in a different encoding for blocks at heights 1-16: those values must be encoded as the single byte 0x51 to 0x60 (OP_1..OP_16), with no "number of bytes" prefix. Note that the minimum length of the coinbase transaction's scriptSig is two bytes, so the height push alone is insufficient for blocks 1-16. In addition, this BIP never applies to the genesis block. # 75% rule: If 750 of the last 1,000 blocks are version 2 or greater, reject invalid version 2 blocks. (testnet3: 51 of last 100) # 95% rule ("Point of no return"): If 950 of the last 1,000 blocks are version 2 or greater, reject all version 1 blocks. (testnet3: 75 of last 100) @@ -39,6 +40,7 @@ Block number 227,835 (timestamp 2013-03-24 15:49:13 GMT) was the last version 1 ==Changelog== +* 1.0.4: 2026-11-04: clarify encoding for early blocks * 1.0.3: 2020-11-18: clarify that encoding must be minimal * 1.0.2: 2016-02-05: correction to format prediction regarding sign bit * 1.0.1: 2016-02-01: updated to Final, logged activation block