1
0
mirror of https://github.com/bitcoin/bips.git synced 2026-10-19 19:29:18 +00:00

4 Commits

Author SHA1 Message Date
Sjors Provoost
299442b7de bip138: exclude roots exposed by another expression
A root selected through a derived xpub can also appear bare or as a
literal key. Once a spend reveals it, anyone could decrypt the backup.
Exclude such cases.
2026-09-24 20:11:31 -07:00
Sjors Provoost
bde776ecb8 bip138: collect and deduplicate recipient keys across the backup 2026-09-24 20:11:28 -07:00
Sjors Provoost
11a3be7458 bip138: clarify MuSig participant eligibility
MuSig aggregation hides participant keys, so account xpubs do not need
individual trailing derivation.

Specify that encryption uses participant roots rather than the aggregate key.

Add MuSig2 test vectors: one for a bare aggregate and one for aggregate
derivation.
2026-09-24 20:11:20 -07:00
Sjors Provoost
5fc05e2b17 bip138: generalize key-selection test vectors
Rename keys_types.json to recipient_keys.json and generalize the format
to support multiple descriptors and multiple recipient keys:

- "key": a single key-expression string becomes "descriptors": an array
  of complete descriptor strings.
- "expected": an x-only key string becomes "expected_keys": an array
  containing that key; null remains null.

Convert the nine existing cases by wrapping each key expression in tr(),
except the uncompressed literal uses pk(), since tr() does not accept it.
Each case has one descriptor.
2026-09-24 20:09:33 -07:00