BIPs bitcoin improvement proposals

Bitcoin Improvement Proposals

People wishing to submit BIPs, first should propose their idea or document to the bitcoin-dev@lists.linuxfoundation.org mailing list (do not assign a number - read BIP 2 for the full process). After discussion, please open a PR. After copy-editing and acceptance, it will be published here.

We are fairly liberal with approving BIPs, and try not to be too involved in decision making on behalf of the community. The exception is in very rare cases of dispute resolution when a decision is contentious and cannot be agreed upon. In those cases, the conservative option will always be preferred.

Having a BIP here does not make it a formally accepted standard until its status becomes Final or Active.

Those proposing changes should consider that ultimately consent may rest with the consensus of the Bitcoin users (see also: economic majority).

# Title Layer Status Type Owner
1 BIP Purpose and Guidelines Closed Process
2 BIP process, revised Closed Process
3 Updated BIP Process Deployed Process
8 Version bits with lock-in by height Draft Informational
9 Version bits with timeout and delay Deployed Informational
10 Multi-Sig Transaction Distribution Applications Closed Informational
11 M-of-N Standard Transactions Applications Deployed Specification
12 OP_EVAL Consensus (soft fork) Closed Specification
13 Address Format for pay-to-script-hash Applications Deployed Specification
14 Protocol Version and User Agent Peer Services Deployed Specification
15 Aliases Applications Closed Specification
16 Pay to Script Hash Consensus (soft fork) Deployed Specification
17 OP_CHECKHASHVERIFY (CHV) Consensus (soft fork) Closed Specification
18 hashScriptCheck Consensus (soft fork) Complete Specification
19 M-of-N Standard Transactions (Low SigOp) Applications Closed Specification
20 URI Scheme Applications Closed Specification
21 URI Scheme Applications Closed Specification
22 getblocktemplate - Fundamentals API/RPC Deployed Specification
23 getblocktemplate - Pooled Mining API/RPC Deployed Specification
30 Duplicate transactions Consensus (soft fork) Deployed Specification
31 Pong message Peer Services Deployed Specification
32 Hierarchical Deterministic Wallets Applications Deployed Informational
33 Stratized Nodes Peer Services Closed Specification
34 Block v2, Height in Coinbase Consensus (soft fork) Deployed Specification
35 mempool message Peer Services Deployed Specification
36 Custom Services Peer Services Closed Specification
37 Connection Bloom filtering Peer Services Deployed Specification
38 Passphrase-protected private key Applications Draft (Some confusion applies Specification
39 Mnemonic code for generating deterministic keys Applications Deployed Specification
42 A finite monetary supply for Bitcoin Consensus (soft fork) Deployed Specification
43 Purpose Field for Deterministic Wallets Applications Deployed Specification
44 Multi-Account Hierarchy for Deterministic Wallets Applications Deployed Specification
45 Structure for Deterministic P2SH Multisignature Wallets Applications Complete Specification
46 Address Scheme for Timelocked Fidelity Bonds Applications Draft Specification
47 Reusable Payment Codes for Hierarchical Deterministic Wallets Applications Deployed Informational
48 Multi-Script Hierarchy for Multi-Sig Wallets Applications Deployed Specification
49 Derivation scheme for P2WPKH-nested-in-P2SH based accounts Applications Deployed Specification
50 March 2013 Chain Fork Post-Mortem Deployed Informational
52 Durable, Low Energy Bitcoin PoW Consensus (hard fork) Draft Specification
53 Disallow 64-byte transactions Consensus (soft fork) Draft Specification
54 Consensus Cleanup Consensus (soft fork) Draft Specification
60 Fixed Length "version" Message (Relay-Transactions Field) Peer Services Closed Specification
61 Reject P2P message Peer Services Deployed Specification
62 Dealing with malleability Consensus (soft fork) Closed Specification
64 getutxo message Peer Services Closed Specification
65 OP_CHECKLOCKTIMEVERIFY Consensus (soft fork) Deployed Specification
66 Strict DER signatures Consensus (soft fork) Deployed Specification
67 Deterministic Pay-to-script-hash multi-signature addresses through public key sorting Applications Complete Specification
68 Relative lock-time using consensus-enforced sequence numbers Consensus (soft fork) Deployed Specification
69 Lexicographical Indexing of Transaction Inputs and Outputs Applications Complete Informational
70 Payment Protocol Applications Deployed Specification
71 Payment Protocol MIME types Applications Deployed Specification
72 bitcoin Applications Deployed Specification
73 Use "Accept" header for response type negotiation with Payment Request URLs Applications Deployed Specification
74 Allow zero value OP_RETURN in Payment Protocol Applications Closed Specification
75 Out of Band Address Exchange using Payment Protocol Encryption Applications Deployed Specification
77 Async Payjoin Applications Draft Specification
78 A Simple Payjoin Proposal Applications Draft Specification
79 Bustapay : Applications Closed Informational
80 Hierarchy for Non-Colored Voting Pool Deterministic Multisig Wallets Closed Informational
81 Hierarchy for Colored Voting Pool Deterministic Multisig Wallets Closed Informational
83 Dynamic Hierarchical Deterministic Key Trees Applications Closed Specification
84 Derivation scheme for P2WPKH based accounts Applications Deployed Specification
85 Deterministic Entropy From BIP32 Keychains Applications Deployed Informational
86 Key Derivation for Single Key P2TR Outputs Applications Deployed Specification
87 Hierarchy for Deterministic Multisig Wallets Applications Complete Specification
88 Hierarchical Deterministic Path Templates Applications Complete Informational
90 Buried Deployments Deployed Informational
91 Reduced threshold Segwit MASF Consensus (soft fork) Deployed Specification
93 codex32 Applications Draft Informational
94 Testnet 4 Applications Deployed Specification
98 Fast Merkle Trees Consensus (soft fork) Draft Specification
99 Motivation and deployment of consensus rule changes ([soft/hard]forks) Closed Informational
100 Dynamic maximum block size by miner vote Consensus (hard fork) Closed Specification
101 Increase maximum block size Consensus (hard fork) Closed Specification
102 Block size increase to 2MB Consensus (hard fork) Closed Specification
103 Block size following technological growth Consensus (hard fork) Closed Specification
104 'Block75' - Max block size like difficulty Consensus (hard fork) Closed Specification
105 Consensus based block size retargeting algorithm Consensus (hard fork) Closed Specification
106 Dynamically Controlled Bitcoin Block Size Max Cap Consensus (hard fork) Closed Specification
107 Dynamic limit on the block size Consensus (hard fork) Closed Specification
109 Two million byte size limit with sigop and sighash limits Consensus (hard fork) Closed Specification
111 NODE_BLOOM service bit Peer Services Deployed Specification
112 CHECKSEQUENCEVERIFY Consensus (soft fork) Deployed Specification
113 Median time-past as endpoint for lock-time calculations Consensus (soft fork) Deployed Specification
114 Merkelized Abstract Syntax Tree Consensus (soft fork) Closed Specification
115 Generic anti-replay protection using Script Consensus (soft fork) Closed Specification
116 MERKLEBRANCHVERIFY Consensus (soft fork) Draft Specification
117 Tail Call Execution Semantics Consensus (soft fork) Draft Specification
118 SIGHASH_ANYPREVOUT for Taproot Scripts Consensus (soft fork) Draft Specification
119 CHECKTEMPLATEVERIFY Consensus (soft fork) Draft Specification
120 Proof of Payment Applications Closed Specification
121 Proof of Payment URI scheme Applications Closed Specification
122 URI scheme for Blockchain references / exploration Applications Draft Specification
123 BIP Classification Deployed Process
124 Hierarchical Deterministic Script Templates Applications Closed Informational
125 Opt-in Full Replace-by-Fee Signaling Applications Deployed Specification
126 Best Practices for Heterogeneous Input Script Transactions Draft Informational
127 Simple Proof-of-Reserves Transactions Applications Draft Specification
129 Bitcoin Secure Multisig Setup (BSMS) Applications Complete Specification
130 sendheaders message Peer Services Deployed Specification
131 "Coalescing Transaction" Specification (wildcard inputs) Consensus (hard fork) Closed Specification
132 Committee-based BIP Acceptance Process Closed Process
133 feefilter message Peer Services Deployed Specification
134 Flexible Transactions Consensus (hard fork) Closed Specification
135 Generalized version bits voting Closed Informational
136 Bech32 Encoded Tx Position References Applications Draft Informational
137 Signatures of Messages using Private Keys Applications Deployed Specification
140 Normalized TXID Consensus (soft fork) Closed Specification
141 Segregated Witness (Consensus layer) Consensus (soft fork) Deployed Specification
142 Address Format for Segregated Witness Applications Closed Specification
143 Transaction Signature Verification for Version 0 Witness Program Consensus (soft fork) Deployed Specification
144 Segregated Witness (Peer Services) Peer Services Deployed Specification
145 getblocktemplate Updates for Segregated Witness API/RPC Deployed Specification
146 Dealing with signature encoding malleability Consensus (soft fork) Closed Specification
147 Dealing with dummy stack element malleability Consensus (soft fork) Deployed Specification
148 Mandatory activation of segwit deployment Consensus (soft fork) Deployed Specification
149 Segregated Witness (second deployment) Consensus (soft fork) Closed Specification
150 Peer Authentication Peer Services Closed Specification
151 Peer-to-Peer Communication Encryption Peer Services Closed Specification
152 Compact Block Relay Peer Services Deployed Specification
154 Rate Limiting via peer specified challenges Peer Services Closed Specification
155 addrv2 message Peer Services Deployed Specification
156 Dandelion - Privacy Enhancing Routing Peer Services Closed Specification
157 Client Side Block Filtering Peer Services Deployed Specification
158 Compact Block Filters for Light Clients Peer Services Deployed Specification
159 NODE_NETWORK_LIMITED service bit Peer Services Deployed Specification
171 Currency/exchange rate information API Applications Closed Specification
172 Define Bitcoin Subunits as Satoshis Applications Draft Informational
173 Base32 address format for native v0-16 witness outputs Applications Deployed Informational
174 Partially Signed Bitcoin Transaction Format Applications Deployed Specification
175 Pay to Contract Protocol Applications Closed Informational
176 Bits Denomination Draft Informational
177 Redefine Bitcoin's Base Unit Draft Informational
178 Version Extended WIF Applications Draft Specification
179 Name for payment recipient identifiers Draft Informational
180 Block size/weight fraud proof Peer Services Closed Specification
197 Hashed Time-Locked Collateral Contract Applications Draft Specification
199 Hashed Time-Locked Contract transactions Applications Closed Specification
300 Hashrate Escrows (Consensus layer) Consensus (soft fork) Draft Specification
301 Blind Merged Mining (Consensus layer) Consensus (soft fork) Draft Specification
310 Stratum protocol extensions Applications Draft Informational
320 nVersion bits for general purpose use Draft Specification
321 URI Scheme Applications Complete Specification
322 Generic Signed Message Format Applications Draft Specification
324 Version 2 P2P Encrypted Transport Protocol Peer Services Deployed Specification
325 Signet Applications Complete Specification
326 Anti-fee-sniping in taproot transactions Applications Draft Informational
327 MuSig2 for BIP340-compatible Multi-Signatures Deployed Informational
328 Derivation Scheme for MuSig2 Aggregate Keys Applications Complete Informational
329 Wallet Labels Export Format Applications Draft Informational
330 Transaction announcements reconciliation Peer Services Draft Specification
331 Ancestor Package Relay Peer Services Draft Specification
337 Compressed Transactions API/RPC Draft Specification
338 Disable transaction relay message Peer Services Closed Specification
339 WTXID-based transaction relay Peer Services Deployed Specification
340 Schnorr Signatures for secp256k1 Deployed Specification
341 Taproot Consensus (soft fork) Deployed Specification
342 Validation of Taproot Scripts Consensus (soft fork) Deployed Specification
343 Mandatory activation of taproot deployment Consensus (soft fork) Deployed Specification
345 OP_VAULT Consensus (soft fork) Closed Specification
347 OP_CAT in Tapscript Consensus (soft fork) Draft Specification
348 CHECKSIGFROMSTACK Consensus (soft fork) Draft Specification
349 OP_INTERNALKEY Consensus (soft fork) Draft Specification
350 Bech32m format for v1+ witness addresses Applications Deployed Specification
351 Private Payments Applications Draft Informational
352 Silent Payments Applications Complete Specification
353 DNS Payment Instructions Applications Complete Specification
370 PSBT Version 2 Applications Deployed Specification
371 Taproot Fields for PSBT Applications Deployed Specification
372 Pay-to-contract tweak fields for PSBT Applications Draft Specification
373 MuSig2 PSBT Fields Applications Complete Specification
374 Discrete Log Equality Proofs Applications Draft Specification
375 Sending Silent Payments with PSBTs Applications Draft Specification
379 Miniscript Applications Draft Informational
380 Output Script Descriptors General Operation Applications Deployed Informational
381 Non-Segwit Output Script Descriptors Applications Deployed Informational
382 Segwit Output Script Descriptors Applications Deployed Informational
383 Multisig Output Script Descriptors Applications Deployed Informational
384 combo() Output Script Descriptors Applications Deployed Informational
385 raw() and addr() Output Script Descriptors Applications Deployed Informational
386 tr() Output Script Descriptors Applications Deployed Informational
387 Tapscript Multisig Output Script Descriptors Applications Deployed Informational
388 Wallet Policies for Descriptor Wallets Applications Complete Specification
389 Multipath Descriptor Key Expressions Applications Draft Informational
390 musig() Descriptor Key Expression Applications Draft Informational
431 Topology Restrictions for Pinning Applications Draft Informational
433 Pay to Anchor (P2A) Applications Draft Informational
443 OP_CHECKCONTRACTVERIFY Consensus (soft fork) Draft Specification