Trending
The most active specs across all ecosystems.
Most reviewed
New BIP: Ordinal Numbers
Ordinal numbers are serial numbers for sats, assigned when mined and preserved across transactions. I originally posted an earlier draft of the BIP to [bitcoin-dev](https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2022-February/019975.html) in February of last year. We've implemented a wallet and block explorer, with public instances on [mainnet](http://ordinals.com/), [signet](http://signet.ordinals.com/), and [testnet](https://testnet.ordinals.com), and a [wallet](https://github.com/c
BIP 129: Bitcoin Secure Multisig Setup (BSMS)
This PR proposes a standardized process for setting up Bitcoin multisig wallets securely. Original mailing list discussion: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2021-February/018385.html Original draft PR: https://github.com/nunchuk-io/bips/pull/1
Process: Activate BIP3
This is a first draft of applying the changes prescribed by BIP 3 in the section [Updates to Existing BIPs should this BIP be Activated](https://github.com/bitcoin/bips/blob/master/bip-0003.md#updates-to-existing-bips-should-this-bip-be-activated). It also updates the CI-scripts to align with the new formatting. ---- Resolved: - [x] @real-or-random’s proposal to update the Licensing scheme - [x] Enforce order of headers in Preamble and fix order in BIPs that don’t conform Planned for follow
BIP 110: Reduced Data Temporary Softfork
Mailing list thread at https://groups.google.com/g/bitcoindev/c/nOZim6FbuF8 --- Editor note: please post conceptual feedback and meta-commentary on the mailing list [thread](https://groups.google.com/g/bitcoindev/c/nOZim6FbuF8), and focus here on: - expert technical review of the specification - specific, concrete, helpful proposals for the other sections Please refrain from personal or heated commentary, trolling, pedantry, and repeating yourself. As this PR now has many comments, please on
BIP392: Silent Payment Output Script Descriptors
This builds on and provides an alternative to #2026, which references an [earlier discussion](https://btctranscripts.com/bitcoin-core-dev-tech/2024-04/silent-payment-descriptors). Instead of modifying BIP352, a new output descriptor format is proposed in the style of BIPs 381-387. Similar to #2026 key expressions starting with `spscan` and `spspend` are specified, but contain only version and key material information. The wallet birthday and additional labels are specified as optional addition
Promote Draft->Final BIPs: 60 and 64
Follow-up from #315 The following BIPs appear to meet the criteria for Final status, but have not been promoted to Accepted by their author yet, so theoretically need ACKs from the authors. Since @genjix is MIA, and @mikehearn ignores Bitcoin, we need to discuss how to handle such actions when BIP champions disappear - BIP 1 allows for me to assign an additional champion to take over, but I'm not sure anyone would necessarily want to do so in these cases. BIP 60: BIP 37 was apparently not clea
379: Miniscript
BIP 331: Ancestor Package Relay
ML thread: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2022-May/020493.html Supersedes #1324.
New BIP 351: Private Payments
I am submitting a new BIP following a discussion on the mailing list. Link: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2022-July/020812.html
[BIPs 380-386] Output Script Descriptors
Here are several BIPs specifying output script descriptors as implemented in Bitcoin Core. In order to make it easier for implementors to indicate which descriptors they support, I've split up the specifications into multiple BIPs. The first is a general BIP describing the philosophy, general structure, shared expressions, and the checksum. The rest of the BIPs specify each descriptor function itself and are grouped into categories of non-segwit (pk, pkh, p2sh), segwit (wpkh, wsh), multi (multi
Recently updated
Remove cross-codec conversion from HTTP Gateways
When sending an [Accept](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Accept) header or [format](https://specs.ipfs.tech/http-gateways/path-gateway/#format-request-query-parameter) query parameter to specify the response format of a request, the IPFS HTTP Gateway specs [allow translation](https://specs.ipfs.tech/http-gateways/path-gateway/#accept-request-header) of the reque
No reviewsPrefer format param over Accept header
The [`Accept`](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Accept) HTTP request header can be sent with an HTTP request to provide a prioritized list of response formats the client will accept for a given resource. The [`format`](https://specs.ipfs.tech/http-gateways/path-gateway/#format-request-query-parameter) URL query parameter can also be sent to an IPFS HTTP Gateway
No reviewsRouting V1 Returns 200 for Empty Results
The current Delegated Routing V1 HTTP API specification requires servers to return HTTP 404 (Not Found) when no matching records are found for a query. This creates two significant problems: 1. **Browser Console Errors**: When routing queries are made from web browsers and return 404s, browsers log error messages to the console that cannot be prevented programmatically. These error messages confu
No reviewsLimit Identity CID Size to 128 Bytes in UnixFS Contexts
Identity CIDs are unique in that they inline data directly into the CID itself rather than hashing it. Without clear limits, this creates several problems: 1. **Resource Exhaustion**: Poorly written clients could encode large payloads as identity CIDs and propagate them through the network, consuming bandwidth and resources without providing value. 2. **Security Vulnerabilities**: Identity CIDs
No reviewsUnixFS CID Profiles
While CIDs and UnixFS DAGs are cryptographically verifiable, the same file or directory can produce different CIDs across UnixFS implementations, because DAG construction parameters like chunk size, DAG width, and layout vary between tools. Often, these parameters are not even configurable by users. This creates two problems: - **Broken hash semantics:** Unlike standard hash functions where iden
No reviewsOpt-in Filtering in Routing V1 HTTP API
IPFS aims to allow ubiquitous data exchange across different runtimes and platforms. One of the most challenging aspects of this goal is the diversity of network conditions and capabilities across different environments. Web browsers have a very limited network stack, and most web browsers do not support the full range of network transport protocols that are commonly used in other IPFS implementat
No reviewsDelegated Routing DHT Closest Peers API
Browser nodes and other resource-constrained clients need to perform peer discovery operations without the overhead of being full DHT clients. The primary use case is for browser nodes performing random walks to find peers that they can make circuit relay reservations on. Currently, to find peers close to a particular key in the DHT keyspace, a node must: 1. Be a full DHT client with all the asso
No reviewsAllowing V2-Only Records in IPNS
IPNS record creation and validation is overly complex due to the legacy of decisions made in 2021. The "V1+V2" record creation and validation was reverse-engineered and documented the current state in [ipfs/specs#319](https://github.com/ipfs/specs/pull/319), which created a base for specifications to improve upon. A quick refresher on how IPNS Record lifecycle works today (2023 Q2): - _Record C
No reviewsDelegated Peer Routing HTTP API
The motivation of this IPIP extends the one of :cite[ipip-0337] and :cite[ipip-0379], which introduced delegated content routing and delegated naming, respectively. Now, we expand upon those basis to introduce peer routing, reducing the barrier for interaction across different systems.
No reviewsSignaling Block Order in CARs on HTTP Gateways
We want to make it easier to build light-clients for IPFS. We want them to have low memory footprints on arbitrary sized files. The main pain point preventing this is the fact that CAR ordering isn't specified. This requires keeping some kind of reference either on disk, or in memory to previously seen blocks for two reasons. 1. Blocks can arrive out of order, meaning when a block is consumed (d
No reviews