Now PSBT_OUT_SP_V0_INFO provides labeled-spend public key not the base-spend
public key.
Modify test vector with labeled-spend key to the same recipient from:
two sp outputs - output 0 uses label=3 / output 1 uses label=1
to:
three sp outputs (same scan key) - output 0 uses label=1, outputs 1 and 2 uses label=2 (same spend key)
This vector excercises the BIP375 sorting outputs with same scan key properly.
The next commit will fix the validation logic and address this failing test.
bump ChangeLog to 0.1.3
"The PSBT_OUT_SP_V0_INFO should be serialized as a zero byte for the
version, followed by the 33 bytes of the scan key and then 33 bytes for
the spend key" names the field, and the field is 66 bytes: its table
entry is "<33 byte scan key> <33 byte spend key>", the test vectors carry
66, and the validator refuses anything else.
The sentence is in the Unique Identification section and was added with
it, so what it describes is the output script that stands in for a silent
payment output when building the unsigned transaction that identifies the
psbt -- 67 bytes there, and nothing about the field. Read as the field's
own serialization it contradicts the table, which is how it first read
here.
Only the wording changes.
correctly label witness_utxo vs non_witness_utxo key in supplementary inputs
Summary of test vector changes:
removed test:
- psbt structure: empty PSBT_OUT_SCRIPT field when sending to non-sp output
modified test:
- ecdh coverage: only one ineligible P2SH multisig input when PSBT_OUT_SCRIPT set for sp output
- can finalize: one P2PKH input single-signer
- can finalize: two inputs using per-input ECDH shares - only eligible inputs contribute shares (P2SH excluded)
added test:
- can finalize: two inputs using global ECDH share - only eligible inputs contribute shares (P2SH excluded)
```
sed -z -i 's/Author: /Authors: /' bip-0*.md
sed -z -i 's/Author: /Authors: /' bip-0*.mediawiki
```
Also align correctly in case of multiple authors.
Also line up with additional items in the lines below.
```
sed -i -z 's/ Post-History: / Discussion: /' bip-0*.md
sed -i -z 's/ Post-History: / Discussion: /' bip-0*.mediawiki
```
```
sed -z -i 's/Type: Standards Track/Type: Specification/' bip-0*.md
sed -z -i 's/Type: Standards Track/Type: Specification/' bip-0*.mediawiki
```
After the scripted changes, the changes to BIP-40, BIP-41, and BIP-63
were undone, because it breaks CI.
These three BIPs only exist conceptually and their proposal documents
are missing which causes changes to them ot break the CI. I defer the
changes to these BIPs to a separate pull request to get CI to pass.
Assuming a by one increment in the keytype of the silent payments output
fields, the following numeral to 0x09 in the hexadecimal system is 0x0a,
not 0x10.