Commit Graph
4780 Commits
Author SHA1 Message Date
notmike 2706a6181d bip360: Optional type removed / no longer needed 2026-06-26 19:35:32 -06:00
notmike 9fafbb712c Merge pull request #1 from conduition/360/p2mr-compute-control-block
bip360: simplify computing control blocks using explicit traversal paths
2026-06-26 19:32:28 -06:00
conduition 1325ccc7db return type is not optional anymore 2026-06-27 01:15:28 +00:00
conduition 86e7f9d4ca add new test case for duplicate script leaves 2026-06-27 01:12:47 +00:00
conduition 98c0289805 bip360: simplify computing control blocks using explicit traversal paths
This refactors `compute_control_block` to improve performance, and make
the function simpler to read (to me at least).

The previous version walked the entire script tree searching for the
first matching instance of the leaf node.

The new version expects the caller to pass in an explicit `path`
parameter, which tells us exactly where the leaf node lives, with
left/right steps encoded as bits in an integer. We walk down the
tree straight to that leaf node, and build the control block as we go.

This might not be the best DX for a real-world API or library, but this
is just reference code, so we can accept poor usage ergonomics if it makes
the code clearer and more explicit.
2026-06-27 01:11:26 +00:00
reflecttypefor 764f75e338 script: check link format in nested mediawiki files (#2199)
* script: check link format in nested mediawiki files

Signed-off-by: reflecttypefor <reflecttypefor@outlook.com>
2026-06-26 12:25:30 -07:00
notmike 29e1a158e7 bip-0360: added python reference example; test vector fixes
This commit adds a python reference example for construction of BIP-360 outputs and control blocks.
This commit also updates the test vectors.
2026-06-26 13:20:03 -06:00
Dathon Ohm 422fca742a BIP-110: Add Test vectors and Changelog sections 2026-06-25 21:44:45 -06:00
jbride 8d28eb4517 bip360 test vectors: control block now reflects use of non-standard
leaf version
2026-06-25 19:59:03 -06:00
jbride 907db20348 bip360 test vectors: non-standard leaf version should be allowed during construction of P2MR output (#46) 2026-06-25 19:59:03 -06:00
jbride 35b9ffe21b bip360 test vectors: elements in control block array should be ordered to match tree structure of test vectors (#45) 2026-06-25 19:59:03 -06:00
Jon Atack b9883fbb4b Merge pull request #2196 from fjahr/bip-t5-draft
BIP95: Testnet 5
2026-06-25 14:40:45 -07:00
Fabian Jahr c134c7db55 BIP95: Testnet 5 2026-06-25 23:30:46 +02:00
Dathon Ohm f952fd1fc0 BIP-110: advance to Complete status; emphasize UTXO grandfathering; restore OP_IF byte-saving note 2026-06-24 15:56:24 -06:00
Jon Atack 861e235e93 Merge pull request #2165 from murchandamus/bip52-closed
bip52: Update to Closed
2026-06-19 12:13:55 -07:00
Murch 4894bcc4eb bip52: Update to Closed
This proposal appears abandoned, as it has not had any updates in over
four years, and cursory search did not produce any public discussions of
it since it was published either. Attempts to contact the authors did
not receive a response within four weeks.
2026-06-18 21:11:57 -07:00
conduition 6740c533e8 bip360: depth-zero script trees should be anyone-can-spend (#2198)
* bip360: depth zero trees should be anyone-can-spend

* bip360: update changelog and bump version to 0.12.0
2026-06-18 18:14:23 -07:00
Jon Atack 40cd7b4dd6 Merge pull request #2197 from ajtowns/202606-434-complete
BIP-434: Add ref impl, mark complete / CI: add version check
2026-06-11 07:11:18 -07:00
Anthony Towns 50eaa0d730 process: Check for pre-1.0 versions in complete/deployed bips 2026-06-11 23:55:42 +10:00
Anthony Towns b14d7c34e5 BIP-434: Add reference implementation, bump to 1.0.0, mark complete 2026-06-11 23:47:57 +10:00
Jon Atack 4f17dbfa27 script: update Typos section in CONTRIBUTING.md (#2193) 2026-06-08 18:22:17 -07:00
Jon Atack 2125990370 Merge pull request #2189 from jonatack/2026-06-update-typos-exclusions
Update typos exclusions
2026-06-08 10:54:39 -07:00
Jon Atack c6c1559b3f Merge pull request #2186 from DanGould/dangould/bip77-issue-1487-v1-fallback
BIP 77: Specify v1-fallback response mechanism
2026-06-08 10:47:26 -07:00
DanGould 9997e00576 BIP 77: Specify v1-fallback response mechanism
The receiver-to-sender response section presented HPKE encryption and
POST as the only path, when v2 receivers servicing v1 (BIP 78) senders
in the wild send the cleartext base64 PSBT via PUT to their own mailbox.
Add a forward-reference from the v2 path to Backwards compatibility,
and specify the v1-fallback response (no HPKE; PUT method; UTF-8 body;
receiver's own mailbox as target) normatively in that section.

Addresses payjoin/rust-payjoin#1487. Partially addresses
payjoin/rust-payjoin#844 (PUT/POST gap).
2026-06-09 00:52:41 +08:00
Jon Atack 2ffcd9a4a1 Merge pull request #2190 from guggero/bip322-version-fix
BIP-0322: use MAJOR version for address optionality
2026-06-05 08:11:26 -07:00
Oli 4061a54418 BIP-0322: use MAJOR version for address optionality
Addresses a review comment in #2188:
https://github.com/bitcoin/bips/pull/2188#issuecomment-4623250085
2026-06-05 08:32:18 +02:00
Jon Atack c81d4236f3 Merge pull request #2188 from guggero/bip322-fix
BIP-0322: remove address optionality for PoF
2026-06-04 07:42:12 -07:00
Oli e94e3c5698 BIP-0322: clarify sequence semantics for Proof of Funds
This commit clarifies that even for Proof of Funds signatures the
sequence of the first input is considered as "age S".
The reasoning behind this is that only the first input is a synthetic
one that doesn't reference a real transaction to which the height could
be compared against. Even though the Proof of Funds inputs could have
higher sequence values, those heights might have already been long
reached and would make the sequence values irrelevant compared to the potential
restrictions in the challenge script.
2026-06-04 10:54:11 +02:00
Oli 2923854e7a BIP-0322: remove address optionality for PoF
This is cleaning up an artifact that was left over from #1352.
The alternative to removing the optionality of the address
would be to assume OP_TRUE in case of an empty address.
But that sounds like it could open up any number of potential
vulnerabilities.
And a user still has the ability to use an OP_TRUE script
in a p2wsh or p2tr address.
2026-06-04 10:54:11 +02:00
Jon Atack 291ba6803a Update typos exclusions 2026-06-03 09:33:53 -06:00
ShinobiandMurch b69b8fef21 bip343: change status from deployed to closed (#2187)
* Update bip-0343.mediawiki

As a co-author I would like to move this BIP's status to Closed due to its current irrelevance and lack of any known deployments on the network. 

If I could I would delete it fully, or better yet go back in time to prevent it from being written.

* bip343: Fix table entry for move to Closed

* bip343: Record Close reason

---------

Co-authored-by: Murch <murch@murch.one>
2026-06-01 17:56:45 -07:00
Jon Atack 42dc3270db Merge pull request #2168 from stevenroose/complete-127
BIP-0127: Prune some unfinished part and mark complete
2026-06-01 13:31:48 -07:00
Jon Atack d58e12ae83 Merge pull request #2160 from omipheo/bip-0352-class-method-annotations
BIP352: complete type annotations on bitcoin_utils class methods
2026-06-01 13:11:40 -07:00
Jon Atack e85e7ff2a7 Merge pull request #2185 from theStack/bip352-update-headers
BIP-352: sync "Version" header, add "Requires" header
2026-05-31 08:45:50 -07:00
Sebastian Falbesoner 46e7339e9c BIP-352: update "Version" header, add "Requires" header 2026-05-31 13:19:21 +02:00
Jon Atack 1495b684ff Merge pull request #2183 from evanlinjin/fix/174-explicitly-mention-proprietary-fields-as-unknown 2026-05-30 03:22:40 -07:00
志宇 a4668bb203 BIP174: Clarify proprietary fields are retained on finalization
Note that the Input Finalizer retains PSBT_IN_PROPRIETARY fields it does
not understand, treating them like unknown fields so it does not clear
proprietary data it cannot interpret.
2026-05-30 08:04:11 +00:00
Murch 790c777aeb Merge pull request #2178 from pythcoiner/bip_68
BIP68: fix wrong upper bound for nHeight
2026-05-29 16:22:11 -07:00
Murch fae52468c9 Merge pull request #2182 from evanlinjin/fix/174-input-finalizer-clarification
BIP174: Mention sighash type requirement in Input Finalizer section
2026-05-29 12:00:38 -07:00
Jon Atack b4241dc504 Merge pull request #2181 from ajtowns/202605-bip434-edits
BIP-434: Various rationale edits
2026-05-29 10:07:18 -07:00
志宇 9633048fc2 BIP174: Mention sighash type requirement in Input Finalizer section
This mirrors the existing PSBT_IN_SIGHASH_TYPE constraint from the
per-input field description. Added to the Input Finalizer section so it
is not missed.
2026-05-29 08:05:19 +00:00
Anthony Towns 18ff6bb77b BIP-434: Various rationale edits 2026-05-29 15:31:11 +10:00
Jon Atack 7f9434c9c8 Merge pull request #2093 from yyhrnk/fix/txfs-index-bounds
BIP-346: correct TxFieldSelector index upper bound
2026-05-28 12:15:54 -07:00
pythcoiner 6ac8c26870 BIP68: fix wrong upper bound for nHeight 2026-05-28 16:11:57 +02:00
Jeremy Rubin 76d434e5fc BIP449: OP_TWEAKADD (#1944)
* BIP: OP_TWEAKADD

* BIP TweakAdd: note on commutativity of tweaking and add test cases

* BIP TweakAdd: Invert Argument Order

* BIP Tweakadd: fix typo & add note on even-y tweaking

* BIP TweakAdd -- add mailing list discussion

* BIP TweakAdd: Add Alpen and MATT mentions

* BIP TweakAdd Formatting Edits

* BIP TWEAKADD remove conventions section

* BIP TWEAKADD formatting fix

* BIP TWEAKADD Move Vectors to end

* BIP TweakAdd: Condense compatibility section

* [BIP-0449] Updates post assignemnt

* [BIP-0449] Normalize Metadata

* Update bip-0449.md Link Text to point to OP of ML Thread
2026-05-23 07:03:53 -07:00
phrwlk 2d12e67b00 BIP-119: use self.stack[-1] in execute_bip_119 (#2043) 2026-05-22 17:22:38 -07:00
Murch 43a4941b37 Merge pull request #2172 from darosior/2605_bip54_complete
BIP 54: progress to Complete
2026-05-22 11:20:32 -07:00
Antoine Poinsot c47655654c bip-0054: move to complete 2026-05-22 13:53:51 -04:00
Antoine Poinsot 809ca9939a bip-0054: link to Bitcoin Core reference implementation rebased on latest version 2026-05-22 13:43:31 -04:00
Jon Atack 5b118aa337 Merge pull request #2171 from murchandamus/bip10-record-withdrawal
bip10: Record Withdrawal in Changelog
2026-05-21 12:51:38 -07:00