Skip to content

bitcoin/bips

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

People wishing to submit BIPs should first describe their idea to the https://groups.google.com/g/bitcoindev [email protected] mailing list to get feedback on viability and community interested before working on a formal description. Please open a pull request to this repository only when substantial progress on the draft has been made, preferably when the draft is nearing completion. Authors do not assign a number to their own proposal. After a proposal meets the editorial criteria, a BIP Editor will assign a number to it and publish the proposal by merging the pull request to the repository. Please see BIP 3: Updated BIP Process for the full process.

The BIPs repository serves as a publication medium and archive. Having a BIP published here indicates that the proposal is in scope and has met other formal criteria for this repository, but does not indicate that it is a good idea, has community consensus, or that it is about to be adopted. The BIP Editors are expected to be liberal with publishing BIPs and to try not to be too involved in decision-making on behalf of the community. Beyond the formal criteria, evaluation of the proposals is left to the audience of the repository. When a proposal is controversial and it cannot be agreed upon whether it should be published, the conservative option will always be preferred: the proposal will be closed.

Those proposing and opposing changes should consider that ultimately acceptance and adoption rests with the Bitcoin users (see also: economic majority).

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

About

Bitcoin Improvement Proposals

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages