People wishing to submit BIPs, first should propose their idea or document to the [email protected] 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).
Number | Layer | Title | Owner | Type | Status |
---|---|---|---|---|---|
1 | BIP Purpose and Guidelines | Amir Taaki | Process | Replaced | |
2 | BIP process, revised | Luke Dashjr | Process | Active | |
8 | Version bits with lock-in by height | Shaolin Fry, Luke Dashjr | Informational | Draft | |
9 | Version bits with timeout and delay | Pieter Wuille, Peter Todd, Greg Maxwell, Rusty Russell | Informational | Final | |
10 | Applications | Multi-Sig Transaction Distribution | Alan Reiner | Informational | Withdrawn |
11 | Applications | M-of-N Standard Transactions | Gavin Andresen | Standard | Final |
12 | Consensus (soft fork) | OP_EVAL | Gavin Andresen | Standard | Withdrawn |
13 | Applications | Address Format for pay-to-script-hash | Gavin Andresen | Standard | Final |
14 | Peer Services | Protocol Version and User Agent | Amir Taaki, Patrick Strateman | Standard | Final |
15 | Applications | Aliases | Amir Taaki | Standard | Deferred |
16 | Consensus (soft fork) | Pay to Script Hash | Gavin Andresen | Standard | Final |
17 | Consensus (soft fork) | OP_CHECKHASHVERIFY (CHV) | Luke Dashjr | Standard | Withdrawn |
18 | Consensus (soft fork) | hashScriptCheck | Luke Dashjr | Standard | Proposed |
19 | Applications | M-of-N Standard Transactions (Low SigOp) | Luke Dashjr | Standard | Rejected |
20 | Applications | URI Scheme | Luke Dashjr | Standard | Replaced |
21 | Applications | URI Scheme | Nils Schneider, Matt Corallo | Standard | Final |
22 | API/RPC | getblocktemplate - Fundamentals | Luke Dashjr | Standard | Final |
23 | API/RPC | getblocktemplate - Pooled Mining | Luke Dashjr | Standard | Final |
30 | Consensus (soft fork) | Duplicate transactions | Pieter Wuille | Standard | Final |
31 | Peer Services | Pong message | Mike Hearn | Standard | Final |
32 | Applications | Hierarchical Deterministic Wallets | Pieter Wuille | Informational | Final |
33 | Peer Services | Stratized Nodes | Amir Taaki | Standard | Rejected |
34 | Consensus (soft fork) | Block v2, Height in Coinbase | Gavin Andresen | Standard | Final |
35 | Peer Services | mempool message | Jeff Garzik | Standard | Final |
36 | Peer Services | Custom Services | Stefan Thomas | Standard | Rejected |
37 | Peer Services | Connection Bloom filtering | Mike Hearn, Matt Corallo | Standard | Final |
38 | Applications | Passphrase-protected private key | Mike Caldwell, Aaron Voisine | Standard | Draft |
39 | Applications | Mnemonic code for generating deterministic keys | Marek Palatinus, Pavol Rusnak, Aaron Voisine, Sean Bowe | Standard | Final |
40 | API/RPC | Stratum wire protocol | Marek Palatinus | Standard | BIP number allocated |
41 | API/RPC | Stratum mining protocol | Marek Palatinus | Standard | BIP number allocated |
42 | Consensus (soft fork) | A finite monetary supply for Bitcoin | Pieter Wuille | Standard | Final |
43 | Applications | Purpose Field for Deterministic Wallets | Marek Palatinus, Pavol Rusnak | Standard | Final |
44 | Applications | Multi-Account Hierarchy for Deterministic Wallets | Marek Palatinus, Pavol Rusnak | Standard | Final |
45 | Applications | Structure for Deterministic P2SH Multisignature Wallets | Manuel Araoz, Ryan X. Charles, Matias Alejo Garcia | Standard | Proposed |
46 | Applications | Address Scheme for Timelocked Fidelity Bonds | Chris Belcher, Thebora Kompanioni | Standard | Draft |
47 | Applications | Reusable Payment Codes for Hierarchical Deterministic Wallets | Justus Ranvier | Informational | Final |
48 | Applications | Multi-Script Hierarchy for Multi-Sig Wallets | Fontaine | Standard | Proposed |
49 | Applications | Derivation scheme for P2WPKH-nested-in-P2SH based accounts | Daniel Weigl | Standard | Final |
50 | March 2013 Chain Fork Post-Mortem | Gavin Andresen | Informational | Final | |
52 | Consensus (hard fork) | Durable, Low Energy Bitcoin PoW | Michael Dubrovsky, Bogdan Penkovsky | Standard | Draft |
60 | Peer Services | Fixed Length "version" Message (Relay-Transactions Field) | Amir Taaki | Standard | Draft |
61 | Peer Services | Reject P2P message | Gavin Andresen | Standard | Final |
62 | Consensus (soft fork) | Dealing with malleability | Pieter Wuille | Standard | Withdrawn |
63 | Applications | Stealth Addresses | Peter Todd | Standard | BIP number allocated |
64 | Peer Services | getutxo message | Mike Hearn | Standard | Obsolete |
65 | Consensus (soft fork) | OP_CHECKLOCKTIMEVERIFY | Peter Todd | Standard | Final |
66 | Consensus (soft fork) | Strict DER signatures | Pieter Wuille | Standard | Final |
67 | Applications | Deterministic Pay-to-script-hash multi-signature addresses through public key sorting | Thomas Kerin, Jean-Pierre Rupp, Ruben de Vries | Standard | Proposed |
68 | Consensus (soft fork) | Relative lock-time using consensus-enforced sequence numbers | Mark Friedenbach, BtcDrak, Nicolas Dorier, kinoshitajona | Standard | Final |
69 | Applications | Lexicographical Indexing of Transaction Inputs and Outputs | Kristov Atlas | Informational | Proposed |
70 | Applications | Payment Protocol | Gavin Andresen, Mike Hearn | Standard | Final |
71 | Applications | Payment Protocol MIME types | Gavin Andresen | Standard | Final |
72 | Applications | bitcoin: uri extensions for Payment Protocol | Gavin Andresen | Standard | Final |
73 | Applications | Use "Accept" header for response type negotiation with Payment Request URLs | Stephen Pair | Standard | Final |
74 | Applications | Allow zero value OP_RETURN in Payment Protocol | Toby Padilla | Standard | Rejected |
75 | Applications | Out of Band Address Exchange using Payment Protocol Encryption | Justin Newton, Matt David, Aaron Voisine, James MacWhyte | Standard | Final |
78 | Applications | A Simple Payjoin Proposal | Nicolas Dorier | Standard | Draft |
79 | Applications | Bustapay :: a practical coinjoin protocol | Ryan Havar | Informational | Replaced |
80 | Hierarchy for Non-Colored Voting Pool Deterministic Multisig Wallets | Justus Ranvier, Jimmy Song | Informational | Deferred | |
81 | Hierarchy for Colored Voting Pool Deterministic Multisig Wallets | Justus Ranvier, Jimmy Song | Informational | Deferred | |
83 | Applications | Dynamic Hierarchical Deterministic Key Trees | Eric Lombrozo | Standard | Rejected |
84 | Applications | Derivation scheme for P2WPKH based accounts | Pavol Rusnak | Standard | Final |
85 | Applications | Deterministic Entropy From BIP32 Keychains | Ethan Kosakovsky, Aneesh Karve | Informational | Final |
86 | Applications | Key Derivation for Single Key P2TR Outputs | Ava Chow | Standard | Final |
87 | Applications | Hierarchy for Deterministic Multisig Wallets | Robert Spigler | Standard | Proposed |
88 | Applications | Hierarchical Deterministic Path Templates | Dmitry Petukhov | Informational | Proposed |
90 | Buried Deployments | Suhas Daftuar | Informational | Final | |
91 | Consensus (soft fork) | Reduced threshold Segwit MASF | James Hilliard | Standard | Final |
93 | Applications | codex32: Checksummed SSSS-aware BIP32 seeds | Leon Olsson Curr, Pearlwort Sneed, Andrew Poelstra | Informational | Draft |
94 | Applications | Testnet 4 | Fabian Jahr | Standard | Draft |
98 | Consensus (soft fork) | Fast Merkle Trees | Mark Friedenbach, Kalle Alm, BtcDrak | Standard | Draft |
99 | Motivation and deployment of consensus rule changes ([soft/hard]forks) | Jorge Timón | Informational | Rejected | |
100 | Consensus (hard fork) | Dynamic maximum block size by miner vote | Jeff Garzik, Tom Harding, Dagur Valberg Johannsson | Standard | Rejected |
101 | Consensus (hard fork) | Increase maximum block size | Gavin Andresen | Standard | Withdrawn |
102 | Consensus (hard fork) | Block size increase to 2MB | Jeff Garzik | Standard | Rejected |
103 | Consensus (hard fork) | Block size following technological growth | Pieter Wuille | Standard | Withdrawn |
104 | Consensus (hard fork) | 'Block75' - Max block size like difficulty | t.khan | Standard | Rejected |
105 | Consensus (hard fork) | Consensus based block size retargeting algorithm | BtcDrak | Standard | Rejected |
106 | Consensus (hard fork) | Dynamically Controlled Bitcoin Block Size Max Cap | Upal Chakraborty | Standard | Rejected |
107 | Consensus (hard fork) | Dynamic limit on the block size | Washington Y. Sanchez | Standard | Rejected |
109 | Consensus (hard fork) | Two million byte size limit with sigop and sighash limits | Gavin Andresen | Standard | Rejected |
111 | Peer Services | NODE_BLOOM service bit | Matt Corallo, Peter Todd | Standard | Proposed |
112 | Consensus (soft fork) | CHECKSEQUENCEVERIFY | BtcDrak, Mark Friedenbach, Eric Lombrozo | Standard | Final |
113 | Consensus (soft fork) | Median time-past as endpoint for lock-time calculations | Thomas Kerin, Mark Friedenbach | Standard | Final |
114 | Consensus (soft fork) | Merkelized Abstract Syntax Tree | Johnson Lau | Standard | Rejected |
115 | Consensus (soft fork) | Generic anti-replay protection using Script | Luke Dashjr | Standard | Rejected |
116 | Consensus (soft fork) | MERKLEBRANCHVERIFY | Mark Friedenbach, Kalle Alm, BtcDrak | Standard | Draft |
117 | Consensus (soft fork) | Tail Call Execution Semantics | Mark Friedenbach, Kalle Alm, BtcDrak | Standard | Draft |
118 | Consensus (soft fork) | SIGHASH_ANYPREVOUT for Taproot Scripts | Christian Decker, Anthony Towns | Standard | Draft |
119 | Consensus (soft fork) | CHECKTEMPLATEVERIFY | Jeremy Rubin | Standard | Draft |
120 | Applications | Proof of Payment | Kalle Rosenbaum | Standard | Withdrawn |
121 | Applications | Proof of Payment URI scheme | Kalle Rosenbaum | Standard | Withdrawn |
122 | Applications | URI scheme for Blockchain references / exploration | Marco Pontello | Standard | Draft |
123 | BIP Classification | Eric Lombrozo | Process | Active | |
124 | Applications | Hierarchical Deterministic Script Templates | Eric Lombrozo, William Swanson | Informational | Rejected |
125 | Applications | Opt-in Full Replace-by-Fee Signaling | David A. Harding, Peter Todd | Standard | Final |
126 | Best Practices for Heterogeneous Input Script Transactions | Kristov Atlas | Informational | Draft | |
127 | Applications | Simple Proof-of-Reserves Transactions | Steven Roose | Standard | Draft |
129 | Applications | Bitcoin Secure Multisig Setup (BSMS) | Hugo Nguyen, Peter Gray, Marko Bencun, Aaron Chen, Rodolfo Novak | Standard | Proposed |
130 | Peer Services | sendheaders message | Suhas Daftuar | Standard | Final |
131 | Consensus (hard fork) | "Coalescing Transaction" Specification (wildcard inputs) | Chris Priest | Standard | Rejected |
132 | Committee-based BIP Acceptance Process | Andy Chase | Process | Withdrawn | |
133 | Peer Services | feefilter message | Alex Morcos | Standard | Final |
134 | Consensus (hard fork) | Flexible Transactions | Tom Zander | Standard | Rejected |
135 | Generalized version bits voting | Sancho Panza | Informational | Rejected | |
136 | Applications | Bech32 Encoded Tx Position References | Велеслав, Jonas Schnelli, Daniel Pape | Informational | Draft |
137 | Applications | Signatures of Messages using Private Keys | Christopher Gilliard | Standard | Final |
140 | Consensus (soft fork) | Normalized TXID | Christian Decker | Standard | Rejected |
141 | Consensus (soft fork) | Segregated Witness (Consensus layer) | Eric Lombrozo, Johnson Lau, Pieter Wuille | Standard | Final |
142 | Applications | Address Format for Segregated Witness | Johnson Lau | Standard | Withdrawn |
143 | Consensus (soft fork) | Transaction Signature Verification for Version 0 Witness Program | Johnson Lau, Pieter Wuille | Standard | Final |
144 | Peer Services | Segregated Witness (Peer Services) | Eric Lombrozo, Pieter Wuille | Standard | Final |
145 | API/RPC | getblocktemplate Updates for Segregated Witness | Luke Dashjr | Standard | Final |
146 | Consensus (soft fork) | Dealing with signature encoding malleability | Johnson Lau, Pieter Wuille | Standard | Withdrawn |
147 | Consensus (soft fork) | Dealing with dummy stack element malleability | Johnson Lau | Standard | Final |
148 | Consensus (soft fork) | Mandatory activation of segwit deployment | Shaolin Fry | Standard | Final |
149 | Consensus (soft fork) | Segregated Witness (second deployment) | Shaolin Fry | Standard | Withdrawn |
150 | Peer Services | Peer Authentication | Jonas Schnelli | Standard | Deferred |
151 | Peer Services | Peer-to-Peer Communication Encryption | Jonas Schnelli | Standard | Replaced |
152 | Peer Services | Compact Block Relay | Matt Corallo | Standard | Final |
154 | Peer Services | Rate Limiting via peer specified challenges | Karl-Johan Alm | Standard | Withdrawn |
155 | Peer Services | addrv2 message | Wladimir J. van der Laan | Standard | Draft |
156 | Peer Services | Dandelion - Privacy Enhancing Routing | Brad Denby, Andrew Miller, Giulia Fanti, Surya Bakshi, Shaileshh Bojja Venkatakrishnan, Pramod Viswanath | Standard | Rejected |
157 | Peer Services | Client Side Block Filtering | Olaoluwa Osuntokun, Alex Akselrod, Jim Posen | Standard | Draft |
158 | Peer Services | Compact Block Filters for Light Clients | Olaoluwa Osuntokun, Alex Akselrod | Standard | Draft |
159 | Peer Services | NODE_NETWORK_LIMITED service bit | Jonas Schnelli | Standard | Final |
171 | Applications | Currency/exchange rate information API | Luke Dashjr | Standard | Rejected |
173 | Applications | Base32 address format for native v0-16 witness outputs | Pieter Wuille, Greg Maxwell | Informational | Final |
174 | Applications | Partially Signed Bitcoin Transaction Format | Ava Chow | Standard | Final |
175 | Applications | Pay to Contract Protocol | Omar Shibli, Nicholas Gregory | Informational | Rejected |
176 | Bits Denomination | Jimmy Song | Informational | Draft | |
178 | Applications | Version Extended WIF | Karl-Johan Alm | Standard | Draft |
179 | Name for payment recipient identifiers | Emil Engler, Luke Dashjr | Informational | Draft | |
180 | Peer Services | Block size/weight fraud proof | Luke Dashjr | Standard | Rejected |
197 | Applications | Hashed Time-Locked Collateral Contract | Matthew Black, Tony Cai | Standard | Draft |
199 | Applications | Hashed Time-Locked Contract transactions | Sean Bowe, Daira Hopwood | Standard | Draft |
300 | Consensus (soft fork) | Hashrate Escrows (Consensus layer) | Paul Sztorc, CryptAxe | Standard | Draft |
301 | Consensus (soft fork) | Blind Merged Mining (Consensus layer) | Paul Sztorc, CryptAxe | Standard | Draft |
310 | Applications | Stratum protocol extensions | Pavel Moravec, Jan Čapek | Informational | Draft |
320 | nVersion bits for general purpose use | BtcDrak | Standard | Draft | |
322 | Applications | Generic Signed Message Format | Karl-Johan Alm | Standard | Draft |
324 | Peer Services | Version 2 P2P Encrypted Transport Protocol | Dhruv Mehta, Tim Ruffing, Jonas Schnelli, Pieter Wuille | Standard | Final |
325 | Applications | Signet | Karl-Johan Alm, Anthony Towns | Standard | Proposed |
326 | Applications | Anti-fee-sniping in taproot transactions | Chris Belcher | Informational | Draft |
327 | MuSig2 for BIP340-compatible Multi-Signatures | Jonas Nick, Tim Ruffing, Elliott Jin | Informational | Active | |
328 | Applications | Derivation Scheme for MuSig2 Aggregate Keys | Ava Chow | Informational | Draft |
329 | Applications | Wallet Labels Export Format | Craig Raw | Informational | Draft |
330 | Peer Services | Transaction announcements reconciliation | Gleb Naumenko, Pieter Wuille | Standard | Draft |
331 | Peer Services | Ancestor Package Relay | Gloria Zhao | Standard | Draft |
337 | API/RPC | Compressed Transactions | Tom Briar | Standard | Draft |
338 | Peer Services | Disable transaction relay message | Suhas Daftuar | Standard | Withdrawn |
339 | Peer Services | WTXID-based transaction relay | Suhas Daftuar | Standard | Final |
340 | Schnorr Signatures for secp256k1 | Pieter Wuille, Jonas Nick, Tim Ruffing | Standard | Final | |
341 | Consensus (soft fork) | Taproot: SegWit version 1 spending rules | Pieter Wuille, Jonas Nick, Anthony Towns | Standard | Final |
342 | Consensus (soft fork) | Validation of Taproot Scripts | Pieter Wuille, Jonas Nick, Anthony Towns | Standard | Final |
343 | Consensus (soft fork) | Mandatory activation of taproot deployment | Shinobius, Michael Folkson | Standard | Final |
345 | Consensus (soft fork) | OP_VAULT | James O'Beirne, Greg Sanders | Standard | Draft |
347 | Consensus (soft fork) | OP_CAT in Tapscript | Ethan Heilman, Armin Sabouri | Standard | Draft |
348 | Consensus (soft fork) | CHECKSIGFROMSTACK | Brandon Black, Jeremy Rubin | Standard | Draft |
349 | Consensus (soft fork) | OP_INTERNALKEY | Brandon Black, Jeremy Rubin | Standard | Draft |
350 | Applications | Bech32m format for v1+ witness addresses | Pieter Wuille | Standard | Final |
351 | Applications | Private Payments | Alfred Hodler, Clark Moody | Informational | Draft |
352 | Applications | Silent Payments | josibake, Ruben Somsen | Standard | Proposed |
353 | Applications | DNS Payment Instructions | Matt Corallo, Bastien Teinturier | Standard | Draft |
370 | Applications | PSBT Version 2 | Ava Chow | Standard | Final |
371 | Applications | Taproot Fields for PSBT | Ava Chow | Standard | Final |
372 | Applications | Pay-to-contract tweak fields for PSBT | Maxim Orlovsky | Standard | Draft |
373 | Applications | MuSig2 PSBT Fields | Ava Chow | Standard | Draft |
379 | Applications | Miniscript | Pieter Wuille, Andrew Poelstra, Sanket Kanjalkar, Antoine Poinsot, Ava Chow | Informational | Draft |
380 | Applications | Output Script Descriptors General Operation | Pieter Wuille, Ava Chow | Informational | Final |
381 | Applications | Non-Segwit Output Script Descriptors | Pieter Wuille, Ava Chow | Informational | Final |
382 | Applications | Segwit Output Script Descriptors | Pieter Wuille, Ava Chow | Informational | Final |
383 | Applications | Multisig Output Script Descriptors | Pieter Wuille, Ava Chow | Informational | Final |
384 | Applications | combo() Output Script Descriptors | Pieter Wuille, Ava Chow | Informational | Final |
385 | Applications | raw() and addr() Output Script Descriptors | Pieter Wuille, Ava Chow | Informational | Final |
386 | Applications | tr() Output Script Descriptors | Pieter Wuille, Ava Chow | Informational | Final |
387 | Applications | Tapscript Multisig Output Script Descriptors | Pieter Wuille, Ava Chow | Informational | Final |
388 | Applications | Wallet Policies for Descriptor Wallets | Salvatore Ingala | Standard | Proposed |
389 | Applications | Multipath Descriptor Key Expressions | Ava Chow | Informational | Draft |
390 | Applications | musig() Descriptor Key Expression | Ava Chow | Informational | Draft |
431 | Applications | Topology Restrictions for Pinning | Gloria Zhao | Informational | Draft |