4097 Commits

Author SHA1 Message Date
siv2r
0d79b5eeb5 remove P = None check as cpoint never returns None 2024-07-19 23:52:53 +05:30
siv2r
1c6ac0c4cf bip327: minor fixes
- An error test vector doesn’t specify the InvalidContributionError type
- In *DeterministicSign*, use GetXonlyPubkey instead of GetPubkey
- The key_agg_and_tweak fn doesn’t specify the return type
- In partial_sig_verify_internal, the pubkey arg should be PlainPk
- Remove unused enumerate() fn calls
- In test_sign_verify, add an additional assert statement
2024-07-19 23:52:41 +05:30
Mark "Murch" Erhardt
812907c2b0
Merge pull request #1649 from jonasschnelli/bip_159_update
159: Mark as final
2024-07-17 16:41:44 -04:00
Jonas Schnelli
dfacb8de6a
159: Mark as final 2024-07-17 22:09:22 +02:00
Mark "Murch" Erhardt
99cf00cb85
Merge pull request #1648 from jonasschnelli/bip_150_update
BIP150: Deferred

More robust and private protocols have been drafted and need to be formalized into a BIP
2024-07-17 16:08:17 -04:00
Jonas Schnelli
29312fbe91
BIP150: Deferred 2024-07-17 21:56:18 +02:00
Mark "Murch" Erhardt
cd44ec8739
Merge pull request #1646 from pinheadmz/353-cat-txt
bip353: concatenate strings in TXT record
2024-07-17 08:56:22 -04:00
Salvatore Ingala
0b3c79c257
Apply suggestions from code review
Co-authored-by: Mark "Murch" Erhardt <murch@murch.one>
2024-07-17 10:18:53 +02:00
Matthew Zipkin
8ba081f472
bip353: concatenate strings in TXT 2024-07-15 20:37:10 -04:00
Jon Atack
af8f9e470b
Merge pull request #1633 from josibake/update-bip352-appendix
BIP352: Update appendix
2024-07-12 13:29:05 +00:00
Jon Atack
ee56747677
Merge pull request #1645 from Sjors/2024/07/bip353
bip353: improve ₿-prefix instructions
2024-07-12 13:19:27 +00:00
Mark "Murch" Erhardt
891bfc4095
Merge pull request #1599 from theborakompanioni/bip-46
bip-0046: Address Scheme for Timelocked Fidelity Bonds
2024-07-12 08:15:48 -04:00
Sjors Provoost
ceb4f332a4
bip353: improve ₿-prefix instructions 2024-07-12 09:11:17 +02:00
josibake
7a8bc14b80
bip352: update appendix
Numbers from the appendix were slightly innaccurate and out of date. Update to mention non-dust UTXOs
and update the numbers to reflect current usage.

Considering the appendix is purely informational and the corrections here are minor, Ive left of
adding a changelong entry.
2024-07-12 09:05:35 +02:00
Jon Atack
bcc892c646
Merge pull request #1641 from achow101/finalize-370
370: Mark as final
2024-07-11 19:00:57 +00:00
Ava Chow
968c4ee200 370: Mark as final 2024-07-11 14:25:43 -04:00
Ava Chow
e7286a5356 370: Set reference implementation to Bitcoin Core PR. 2024-07-11 14:25:19 -04:00
Jon Atack
bee19da78a
Merge pull request #1642 from achow101/finalize-371
371: Mark as final
2024-07-11 17:41:50 +00:00
Jon Atack
db5e548c8b
Merge pull request #1640 from achow101/finalize-86
86: Mark as final
2024-07-11 17:36:37 +00:00
Salvatore Ingala
0adf7c36e1
Nit: it's not 'two' descriptors if one uses the multipath expressions per BIP-389 2024-07-11 10:33:13 +02:00
Salvatore Ingala
8c2f54d33b
Add references to the miniscript BIP-379 2024-07-11 10:31:01 +02:00
Jon Atack
dd08b3eb95
Merge pull request #1643 from achow101/finalize-descriptors
380-387: Mark basic descriptor BIPs as final
2024-07-10 23:12:02 +00:00
Ava Chow
d71428ade5 380-387: Mark basic descriptor BIPs as final 2024-07-10 19:06:05 -04:00
Ava Chow
516fae6726 86: Mark as final 2024-07-10 19:05:02 -04:00
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
DanGould
bd01a269e5
BIP78: Doc amount parameter not required
It's an optional parameter in BIP 21 Bitcoin URIs, but it doesn't hurt
to make it explicit.

Co-authored-by: Martin Habovstiak <martin.habovstiak@gmail.com>
2024-07-08 13:57:30 -04:00
DanGould
72d8bb04b8
BIP78: Clarify output substitution
The original text is ambiguous to allowing transaction cut-through
or not. Transaction cut-through enables savings by posting multiple
transaction intents through a single 2-party payjoin and is used
in practice in payjoins today. Let's explicitly allow it in the text.

Co-authored-by: Martin Habovstiak <martin.habovstiak@gmail.com>
2024-07-08 13:57:30 -04:00
DanGould
539fd85498
BIP78: Allow mixed inputs
Disallowing mixed inputs was based on incorrect assumption that no
wallet supports mixed inputs and thus mixed inputs imply PayJoin.
However there are at least three wallets supporting mixed inputs.
(Confirmed: Bitcoin Core, LND, Coinomi) Thus it makes sense to enable
mixed inputs to avoid a payjoin-specific fingerptint. To avoid
compatibility issues a grace period is suggested.

Co-authored-by: Martin Habovstiak <martin.habovstiak@gmail.com>
2024-07-08 13:57:30 -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