This repo assigns unique identifiers to proposed changes to Bitcoin. Identifiers take the form "BIN-YYYY-NNNN" where YYYY is a four digit year, and NNNN is a four digit identifier. A particular revision of a proposal may be identified by appending ".RRR", the three digit revision number.
Proposal identifiers may be minified (generally to BINYY-N or BINYY-N.R) by omitting the leading dash, using a two digit year, and omitting leading zeroes, eg BIN-2024-0001 becomes BIN24-1, and its third revision, BIN-2024-0001.003 would become BIN24-1.3.
| Identifier | Status | Name |
|---|---|---|
| BIN-2016-0118 | Draft | SIGHASH_ANYPREVOUT for Taproot Scripts |
| BIN-2016-0119 | Draft | CHECKTEMPLATEVERIFY |
| BIN-2024-0001 | Draft | OP_CAT |
| BIN-2024-0002 | Deployed | Heretical Deployments |
| BIN-2024-0003 | Draft | CHECKSIGFROMSTACK |
| BIN-2024-0004 | Draft | OP_INTERNALKEY |
| BIN-2024-0005 | Complete | Bitcoin Related Specifications |
| BIN-2025-0001 | Draft | Consensus Cleanup |
| BIN-2025-0002 | Draft | Sharing Block Templates with Peers |
Proposal identifiers can be converted into a 27 bit numeric identifier as follows:
id = ((year % 32) << 22) | ((number % 16384) << 8) | (revision % 256)In general, identifiers will be assigned very liberally, with proposals only being rejected if they are spam, duplicates, or unrelated to Bitcoin. The assignment of an identifier does not indicate endorsement, or that a change would be an improvement, or even that a change is possible.
Status values should be one of:
- Draft -- most documents
- Complete -- believed to be complete with no further changes needed/expected
- Deployed -- actively in use on Bitcoin mainnet
- Closed -- no longer relevant; only of historical interest