1
0
mirror of https://github.com/bitcoin/bips.git synced 2024-11-19 01:40:05 +01:00
Commit Graph

3919 Commits

Author SHA1 Message Date
Ava Chow
6b4a03bb5d 371: Mark as final 2024-07-10 19:04:46 -04:00
Mark "Murch" Erhardt
e766df42d3
Merge pull request #1636 from sdaftuar/patch-1
Move BIP 339 to Final
2024-07-10 15:49:10 -04:00
Suhas Daftuar
79e2d28efb Move BIP 339 to Final 2024-07-10 15:48:05 -04:00
Mark "Murch" Erhardt
96ddea3987
Merge pull request #1638 from sdaftuar/bip130-final
Move BIP 130 to Final
2024-07-10 15:44:34 -04:00
Mark "Murch" Erhardt
1dd09509df
Merge pull request #1637 from sipa/202407_bip324_final
Mark BIP324 as final
2024-07-10 15:43:03 -04:00
Mark "Murch" Erhardt
031e10f69e
Merge pull request #1639 from sdaftuar/bip338-withdrawn
Move BIP 338 to Withdrawn
2024-07-10 15:42:45 -04:00
Suhas Daftuar
56f7e70991 Move BIP 338 to Withdrawn
The PR implementing this BIP was never merged into Bitcoin Core,
in favor of an alternative approach.
2024-07-10 15:36:54 -04:00
Suhas Daftuar
729c44c4ea Move BIP 130 to Final 2024-07-10 15:19:47 -04:00
Jon Atack
0c0ae07b81
Merge pull request #1634 from achow101/389-no-dupes
389: Explicitly disallow duplicate multipath
2024-07-10 19:03:56 +00:00
Pieter Wuille
f3bd1eba67 Mark BIP324 as final 2024-07-10 14:59:46 -04:00
Salvatore Ingala
3fd971455a
Add paragraph on key reuse 2024-07-10 17:58:48 +02:00
Ava Chow
c88c3970ed 389: Explicitly disallow duplicate multipath 2024-07-09 15:15:13 -04:00
Mark "Murch" Erhardt
0a78fc10bd
Merge pull request #1632 from douglaz/patch-1
Fix typo in bip-0065
2024-07-08 12:02:31 -04:00
theborakompanioni
4f788d69f5
docs(bip-0046): add endpoint signing example 2024-07-08 12:25:37 +02:00
theborakompanioni
b916adebae
docs(bip-0046): add cert format and clarify expiry param 2024-07-08 11:01:26 +02:00
theborakompanioni
0cdb745ee0
docs(bip-0046): apply minor wording improvement suggestions
by @AdamISZ
2024-07-08 10:48:53 +02:00
douglaz
d3ff66e984
Fix typo in bip-0065 2024-07-07 01:01:03 +00:00
azuchi
7acfe207e0 BIP-0386: Fix uncompressed private key test vector 2024-07-06 21:49:37 +09:00
Jon Atack
5a4b5ad67a
Merge pull request #1623 from satsie/satsie-bip78
BIP78: spelling and grammar updates
2024-07-04 01:14:39 +00:00
Stacie
5700a230dc BIP78: spelling and grammar updates
Co-authored-by: Dan Gould <d@ngould.dev>
Co-authored-by: Jon Atack <jon@atack.com>
2024-07-03 21:00:05 -04:00
Jon Atack
4f5a081d82
Merge pull request #1619 from real-or-random/patch-20
bip-0327: Remove obsolete paragraph
2024-07-01 18:52:43 +00:00
Jon Atack
2218f69829
BIP352: Improve input_hash wording (#1629)
BIP352: Improve `input_hash` wording
2024-06-29 15:15:35 +00:00
Sebastian Falbesoner
2a99b8f925
BIP-352: use own ripemd160 for reference implementation (#1616)
On some operating systems, Python doesn't provide the expected ripemd160
implementation anymore, so the reference implementation fails to start.
E.g. in Ubuntu 22.04:

----------------------------------------------------------------------------------------------
$ ./reference.py send_and_receive_test_vectors.json
Simple send: two inputs
Traceback (most recent call last):
  File "/usr/lib/python3.10/hashlib.py", line 160, in __hash_new
    return _hashlib.new(name, data, **kwargs)
ValueError: [digital envelope routines] unsupported

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/thestack/bips/bip-0352/./reference.py", line 228, in <module>
    pubkey = get_pubkey_from_input(vin)
  File "/home/thestack/bips/bip-0352/./reference.py", line 46, in get_pubkey_from_input
    pubkey_hash = hash160(pubkey_bytes)
  File "/home/thestack/bips/bip-0352/bitcoin_utils.py", line 130, in hash160
    return hashlib.new("ripemd160", hashlib.sha256(s).digest()).digest()
  File "/usr/lib/python3.10/hashlib.py", line 166, in __hash_new
    return __get_builtin_constructor(name)(data)
  File "/usr/lib/python3.10/hashlib.py", line 123, in __get_builtin_constructor
    raise ValueError('unsupported hash type ' + name)
ValueError: unsupported hash type ripemd160
----------------------------------------------------------------------------------------------

Fix this by providing a manual implementation, taken from the functional test framework
of Bitcoin Core. See corresponding issue https://github.com/bitcoin/bitcoin/issues/23710 and
PR https://github.com/bitcoin/bitcoin/pull/23716
2024-06-29 07:08:49 -07:00
josibake
8ac84bd344
BIP352: improve input_hash wording
Since https://github.com/bitcoin/bips/pull/1622, it makes more sense
to define input_hash inline, vs having its own section.
2024-06-29 14:31:32 +02:00
Ava Chow
3b99594660 BIP 379: Specify Miniscript
Co-Authored-By: Antoine Poinsot <darosior@protonmail.com>
2024-06-27 11:08:49 -06:00
Mark "Murch" Erhardt
5d77440479
Merge pull request #1540 from achow101/musig2
328, 390, 373: BIPs for MuSig2 derivation, descriptors, and PSBT fields
2024-06-25 17:36:09 -04:00
Elias Rad
3d299b4eb0
BIP39: fix grammar in wordlists doc (#1626) 2024-06-25 10:26:19 -07:00
Jon Atack
62161fb705
Merge pull request #1625 from OrfeasLitos/typo
BIP143: fix typo
2024-06-25 16:28:48 +00:00
Orfeas Stefanos Thyfronitis Litos
a1590ca121 Fix typo 2024-06-25 17:24:41 +01:00
Jon Atack
e8664b28fb
Merge pull request #1620 from theStack/bip352-mention-input_pubkey_sum-infinity-case
BIP-352: handle invalid privkey / pubkey sums for sending / scanning, add changelog
2024-06-22 20:02:56 +00:00
Sebastian Falbesoner
496e4295e7 BIP-352: add change log (SemVer format)
The first paragraph is taken from BIP-327, with the sentence
about MAJOR version zero removed, as it's not relevant here
(we don't track the pre-merge history).
2024-06-22 20:30:50 +02:00
Sebastian Falbesoner
59cc43d727 BIP-352: scanning: add step to skip tx if input pubkeys sum A is point at infinity
The input data for the test vector is taken from the signet transaction
fe788cf6578d547819def43d79e6c8f0153d4885f5a343d12bd03f34507aabd6
which spends two P2WPKH inputs with negated pubkeys (x, y) and (x, -y)
from the funding transaction 3a286147b25e16ae80aff406f2673c6e565418c40f45c071245cdebc8a94174e
(see also https://github.com/bitcoin-core/secp256k1/pull/1519#issuecomment-2143167510
and the output from the script in the previous commit message).

Co-authored-by: josibake <josibake@protonmail.com>
2024-06-22 01:48:44 +02:00
Sebastian Falbesoner
47033c62dc BIP-352: sending: add step to fail if input privkeys sum a is zero
The test vector data was generated with a Python script
(see bc15ea8d0f/contrib/silentpayments/submit_input_pubkeys_infinity_tx.py),
leading to the following output:

---------------------------------------------------------------------------------------------------------
     Privkey 1: a6df6a0bb448992a301df4258e06a89fe7cf7146f59ac3bd5ff26083acb22ceb
     Privkey 2: 592095f44bb766d5cfe20bda71f9575ed2df6b9fb9addc7e5fdffe0923841456
      Pubkey 1: 02557ef3e55b0a52489b4454c1169e06bdea43687a69c1f190eb50781644ab6975
      Pubkey 2: 03557ef3e55b0a52489b4454c1169e06bdea43687a69c1f190eb50781644ab6975
scriptPubKey 1: 00149d9e24f9fab4e35bf1a6df4b46cb533296ac0792
scriptPubKey 2: 00149860538b5575962776ed0814ae222c7d60c72d7b
     Address 1: tb1qnk0zf706kn34hudxma95dj6nx2t2cpujz7j5t5
     Address 2: tb1qnps98z64wktzwahdpq22ug3v04svwttm7gs8wn
-> Funding tx submitted: 3a286147b25e16ae80aff406f2673c6e565418c40f45c071245cdebc8a94174e

Taproot output address for spending tx: tb1pqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqkgkkf5
-> Spending tx submitted: fe788cf6578d547819def43d79e6c8f0153d4885f5a343d12bd03f34507aabd6
---------------------------------------------------------------------------------------------------------
2024-06-22 01:40:19 +02:00
Jon Atack
70a714372f
Merge pull request #1622 from theStack/bip352-simplify_input-hash_flow
BIP-352: generate `input_hash` after summing up keys (simplification)
2024-06-21 14:03:39 +00:00
theborakompanioni
0f1eba2a60
docs(bip-0046): add test certificate for the 960th timelocked address 2024-06-20 17:29:37 +02:00
Sebastian Falbesoner
fe0f83531e BIP-352: generate input_hash after summing up keys (simplification)
For both sender and receiver, generating the input hash is currently
listed as the first step. This already involves summing up the public
keys, even though summing up key material (private keys for sender,
public keys of inputs for receiver) is then again listed explicitly
in later steps.

It seems to be more obvious and less redundant (and also hopefully less
confusing for readers) to reorder the instructions to calculate the
input_hash _after_ the key aggregation is done to reuse the result. In
case of the sender, the private key sum has to be multiplicated with G
in order to the get to the corresponding input pubkey sum.

This also corresponds to the current BIP352 implementation in the
secp256k1 library (https://github.com/bitcoin-core/secp256k1/pull/1519).
The reference implementation in Python here is adapted for the sender
side, the receiver side has already generated the input_hash after
summing up the pubkeys.
2024-06-20 00:33:14 +02:00
theborakompanioni
b7a5f9ce60
docs(bip-0046): apply minor wording improvement suggestions
by @murchandamus
2024-06-19 14:06:41 +02:00
Ava Chow
806b8b886f BIP 373: add MuSig2 PSBT Fields BIP 2024-06-18 20:09:26 -04:00
Ava Chow
6b9138c1a1 BIP 390: Add MuSig2 descriptor BIP 2024-06-18 20:09:26 -04:00
Ava Chow
48ebcb2191 BIP 328: add MuSig2 derivation BIP 2024-06-18 20:09:26 -04:00
Tim Ruffing
6a7af366a5
bip-0327: Remove obsolete paragraph 2024-06-13 20:54:57 +02:00
Glen Cooper
85cda4e225
BIP 15: Remove broken hyperlink to Vanitygen (#1618) 2024-06-11 14:23:48 -04:00
Jon Atack
e21bf40e0c
Merge pull request #1617 from 1440000bytes/bip301
Fix bip number in specification
2024-06-10 20:46:44 +00:00
/dev/fd0
14af3d6fe9
fix bip number 2024-06-10 20:05:49 +00:00
Mark "Murch" Erhardt
1f8ce57410
Merge pull request #1615 from satsie/satsie-more-repeat-words
BIP340: remove repeat words
2024-06-10 13:31:04 -04:00
Mark "Murch" Erhardt
9cfe3a4a90
Merge pull request #1551 from TheBlueMatt/2024-02-dns-payment-instructions
Add BIP 353: DNS Payment Instructions
2024-06-10 11:04:20 -04:00
Stacie
44984acde9 BIP340: remove repeat words 2024-06-09 21:56:51 -04:00
Jon Atack
bc520fade5
Merge pull request #1614 from satsie/satsie-bip79-edit
BIP79: remove repeat word
2024-06-09 03:23:04 +00:00
Stacie
b33c948f00 BIP79: remove repeat word 2024-06-08 23:00:17 -04:00
Murch
1957127894
Merge remote-tracking branch 'upstream/master' into bip-46
To fix the merge conflict caused by BIP 47 getting updated to final.
2024-06-07 11:16:51 -04:00