Skip to content

BIP324: Fix features bitmask for decoding-case selection#2016

Merged
jonatack merged 2 commits into
bitcoin:masterfrom
real-or-random:202510-fix-gen-test-vectors
Oct 24, 2025
Merged

BIP324: Fix features bitmask for decoding-case selection#2016
jonatack merged 2 commits into
bitcoin:masterfrom
real-or-random:202510-fix-gen-test-vectors

Conversation

@real-or-random

@real-or-random real-or-random commented Oct 23, 2025

Copy link
Copy Markdown
Contributor

Supersedes #1969.
On top of #1969.

I'm one of the authors of BIP324 but let's wait for an ACK from @sipa, please.

@real-or-random real-or-random force-pushed the 202510-fix-gen-test-vectors branch from 50a6e6a to 31f1e57 Compare October 23, 2025 12:16
@real-or-random real-or-random force-pushed the 202510-fix-gen-test-vectors branch from 31f1e57 to 713f000 Compare October 23, 2025 12:18
@jonatack jonatack added Proposed BIP modification PR by non-owner to update BIP content Pending acceptance This BIP modification requires sign-off by the champion of the BIP being modified labels Oct 23, 2025

@jonatack jonatack left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ACK 713f000

The first commit is the same as the change I previously reviewed and ACKed in #1969, but I didn't previously verify by re-generating the test vectors, which generates the diff we see in the second commit. Re-verified the second commit by running gen_test_vectors.py on it and seeing no change, and ran run_test_vectors.py to sanity-check that the tests pass.

@sipa

sipa commented Oct 23, 2025

Copy link
Copy Markdown
Member

ACK code changes; I did not verify the generated output.

@jonatack jonatack removed the Pending acceptance This BIP modification requires sign-off by the champion of the BIP being modified label Oct 23, 2025
@real-or-random real-or-random marked this pull request as ready for review October 24, 2025 06:12
@real-or-random

Copy link
Copy Markdown
Contributor Author

Ready for merge then :)

@jonatack jonatack merged commit fd7fe26 into bitcoin:master Oct 24, 2025
4 checks passed
fanquake pushed a commit to bitcoin/bitcoin that referenced this pull request Oct 27, 2025
fanquake added a commit to bitcoin/bitcoin that referenced this pull request Oct 27, 2025
51877f2 test: Update BIP324 test vectors (Tim Ruffing)

Pull request description:

  This updates the hardcoded test vectors from BIP324. The test vectors had to be regenerated (in the aux files of the BIP) because there was a bug in the script used for generating them (bitcoin/bips#2016).

ACKs for top commit:
  jonatack:
    ACK 51877f2
  theStack:
    ACK 51877f2

Tree-SHA512: 59f4075e286067b11fce98667c860f3083b6cca8a2e49da8783ccdce8e32c34fd3e1943191d24dcf5bb68d8a2540726d99f7c29e8b0f104032ccb82423ca8d82
0xB10C added a commit to 0xB10C/bip324 that referenced this pull request Jan 9, 2026
As noted in rust-bitcoin#158, the BIP-324 test vectors were updated in
bitcoin/bips#2016. The previous test vectors
were not incorrect, but they didn't cover all the cases that they
were intended to.

To make this less error prone, make these changes verifyable, and
automate it, I generated the following Python script with an LLM:

```python
import csv

def read_csv(path):
    with open(path, newline="", encoding="utf-8") as f:
        reader = csv.reader(f)
        header = next(reader)
        rows = list(reader)
    return header, rows

old_header, old_rows = read_csv("old.csv")
new_header, new_rows = read_csv("new.csv")

if old_header != new_header:
    raise ValueError("CSV headers differ")

if len(old_rows) != len(new_rows):
    raise ValueError("CSV row counts differ")

for row_idx, (old_row, new_row) in enumerate(zip(old_rows, new_rows), start=1):
    changes = []
    seds = []

    for col_idx, (old_val, new_val) in enumerate(zip(old_row, new_row)):
        if old_val != new_val:
            col_name = old_header[col_idx]
            changes.append(
                f"{col_name}: '{old_val}' → '{new_val}'"
            )
            seds.append(
                f"sed -i 's/{old_val}/{new_val}/g' protocol/src/lib.rs"
            )

    if changes:
        print(f"Row {row_idx}:")
        for change in changes:
            print(f"  {change}")
        print()
        print()
        for sed in seds:
            print(f"{sed}")
        print()
        print()
```

and downloaded the new and old test-vectors into the same dir:

- new: d51f2dcaeb69473f0199ad8daf36eee3b1ceb1b5
- old: 713f000a20421a54b29cd8ab89e711eef1fbccb9

```bash
wget https://raw.githubusercontent.com/bitcoin/bips/d51f2dcaeb69473f0199ad8daf36eee3b1ceb1b5/bip-0324/packet_encoding_test_vectors.csv -O old.csv
wget https://raw.githubusercontent.com/bitcoin/bips/713f000a20421a54b29cd8ab89e711eef1fbccb9/bip-0324/packet_encoding_test_vectors.csv -O new.csv
```

I then ran the `sed` statements to replace the old vectors with the
changed ones. Output on my side:

```
Row 2:
  in_priv_ours: '1f9c581b35231838f0f17cf0c979835baccb7f3abbbb96ffcc318ab71e6e126f' → '6f312890ec83bbb26798abaadd574684a53e74ccef7953b790fcc29409080246'
  in_ellswift_ours: 'a1855e10e94e00baa23041d916e259f7044e491da6171269694763f018c7e63693d29575dcb464ac816baa1be353ba12e3876cba7628bd0bd8e755e721eb0140' → 'a8785af31c029efc82fa9fc677d7118031358d7c6a25b5779a9b900e5ccd94aac97eb36a3c5dbcdb2ca5843cc4c2fe0aaa46d10eb3d233a81c3dde476da00eef'
  mid_x_ours: '45b6f1f684fd9f2b16e2651ddc47156c0695c8c5cd2c0c9df6d79a1056c61120' → 'd4b65faa965b31fe2d9faaeb806c6449a50fe3679555c3518f7a0885f572457f'
  mid_x_shared: 'c40eb6190caf399c9007254ad5e5fa20d64af2b41696599c59b2191d16992955' → '13c1bf6a3ca37da9ffc7f45ec1810fa935c45454c03dc0144c1a9755bb52f81f'
  mid_shared_secret: 'a0138f564f74d0ad70bc337dacc9d0bf1d2349364caf1188a1e6e8ddb3b7b184' → 'a6f79eb08243b6f65dbe42bfe4a6cf3f131d6963fa5d06c770a18f7b9c489b78'
  mid_initiator_l: 'b82a0a7ce7219777f914d2ab873c5c487c56bd7b68622594d67fe029a8fa7def' → 'efc938c88c925459a9c837238716cfadfb1c3016f60d12923933710b5fcc9b55'
  mid_initiator_p: 'd760ba8f62dd3d29d7d5584e310caf2540285edc6b51c640f9497e99c3536fd2' → '91702f3cbd33b3c4a0b29b40548aea1ab01e43582db194afee70637d247aa036'
  mid_responder_l: '9db0c6f9a903cbab5d7b3c58273a3421eec0001814ec53236bd405131a0d8e90' → '7f457572e4260c611a6858acc8f325d87a3c8af8a59ce1da26ef6041f35715e8'
  mid_responder_p: '23d2b5e653e6a3a8db160a2ca03d11cb5a79983babba861fcb57c38413323c0c' → '1fe4d56334f5b0a5bd3c71ce4e338f40fc7e194925daa7ee6ce98aecf1766d7c'
  mid_send_garbage_terminator: 'efb64fd80acd3825ac9bc2a67216535a' → '44737108aec5f8b6c1c277b31bbce9c1'
  mid_recv_garbage_terminator: 'b3cb553453bceb002897e751ff7588bf' → 'ca29b3a35237f8212bd13ed187a1da2e'
  out_session_id: '9267c54560607de73f18c563b76a2442718879c52dd39852885d4a3c9912c9ea' → 'b0490e26111cb2d55bbff2ace00f7f644f64006539abb4e7513f05107bb10608'
  out_ciphertext: '1da1bcf589f9b61872f45b7fa5371dd3f8bdf5d515b0c5f9fe9f0044afb8dc0aa1cd39a8c4' → 'd78adbcba0eebfb15cfbd8142c84dc729d233d0dc11b1d851e46a114122b8d5b96b7d59317'

sed -i 's/1f9c581b35231838f0f17cf0c979835baccb7f3abbbb96ffcc318ab71e6e126f/6f312890ec83bbb26798abaadd574684a53e74ccef7953b790fcc29409080246/g' protocol/src/lib.rs
sed -i 's/a1855e10e94e00baa23041d916e259f7044e491da6171269694763f018c7e63693d29575dcb464ac816baa1be353ba12e3876cba7628bd0bd8e755e721eb0140/a8785af31c029efc82fa9fc677d7118031358d7c6a25b5779a9b900e5ccd94aac97eb36a3c5dbcdb2ca5843cc4c2fe0aaa46d10eb3d233a81c3dde476da00eef/g' protocol/src/lib.rs
sed -i 's/45b6f1f684fd9f2b16e2651ddc47156c0695c8c5cd2c0c9df6d79a1056c61120/d4b65faa965b31fe2d9faaeb806c6449a50fe3679555c3518f7a0885f572457f/g' protocol/src/lib.rs
sed -i 's/c40eb6190caf399c9007254ad5e5fa20d64af2b41696599c59b2191d16992955/13c1bf6a3ca37da9ffc7f45ec1810fa935c45454c03dc0144c1a9755bb52f81f/g' protocol/src/lib.rs
sed -i 's/a0138f564f74d0ad70bc337dacc9d0bf1d2349364caf1188a1e6e8ddb3b7b184/a6f79eb08243b6f65dbe42bfe4a6cf3f131d6963fa5d06c770a18f7b9c489b78/g' protocol/src/lib.rs
sed -i 's/b82a0a7ce7219777f914d2ab873c5c487c56bd7b68622594d67fe029a8fa7def/efc938c88c925459a9c837238716cfadfb1c3016f60d12923933710b5fcc9b55/g' protocol/src/lib.rs
sed -i 's/d760ba8f62dd3d29d7d5584e310caf2540285edc6b51c640f9497e99c3536fd2/91702f3cbd33b3c4a0b29b40548aea1ab01e43582db194afee70637d247aa036/g' protocol/src/lib.rs
sed -i 's/9db0c6f9a903cbab5d7b3c58273a3421eec0001814ec53236bd405131a0d8e90/7f457572e4260c611a6858acc8f325d87a3c8af8a59ce1da26ef6041f35715e8/g' protocol/src/lib.rs
sed -i 's/23d2b5e653e6a3a8db160a2ca03d11cb5a79983babba861fcb57c38413323c0c/1fe4d56334f5b0a5bd3c71ce4e338f40fc7e194925daa7ee6ce98aecf1766d7c/g' protocol/src/lib.rs
sed -i 's/efb64fd80acd3825ac9bc2a67216535a/44737108aec5f8b6c1c277b31bbce9c1/g' protocol/src/lib.rs
sed -i 's/b3cb553453bceb002897e751ff7588bf/ca29b3a35237f8212bd13ed187a1da2e/g' protocol/src/lib.rs
sed -i 's/9267c54560607de73f18c563b76a2442718879c52dd39852885d4a3c9912c9ea/b0490e26111cb2d55bbff2ace00f7f644f64006539abb4e7513f05107bb10608/g' protocol/src/lib.rs
sed -i 's/1da1bcf589f9b61872f45b7fa5371dd3f8bdf5d515b0c5f9fe9f0044afb8dc0aa1cd39a8c4/d78adbcba0eebfb15cfbd8142c84dc729d233d0dc11b1d851e46a114122b8d5b96b7d59317/g' protocol/src/lib.rs

Row 3:
  in_priv_ours: '0286c41cd30913db0fdff7a64ebda5c8e3e7cef10f2aebc00a7650443cf4c60d' → '846a784f1a03dea59cc679754a60a7145542fa130e3efbd815c81e909ce32933'
  in_ellswift_ours: 'd1ee8a93a01130cbf299249a258f94feb5f469e7d0f2f28f69ee5e9aa8f9b54a60f2c3ff2d023634ec7f4127a96cc11662e402894cf1f694fb9a7eaa5f1d9244' → '480eacf1536b52257bf8ce78d8f4ce09395d744767c6c129e7838947ee625af3245592c111275e877d5baae22584cb5f1153e67c16bcd7da767726cd0d0c846a'
  mid_x_ours: '33a32d10066fa3963a9518a14d1bd1cb5ccaceaeaaeddb4d7aead90c08395bfd' → '014e5bdbb1d7eb34a88a016ab3dd45e343dc703fafa8266907ab67a76c5eb2d6'
  mid_x_shared: 'a1017beaa8784f283dee185cd847ae3a327a981e62ae21e8c5face175fc97e9b' → '10578110283044630bc13a9f12b00eb0af7cba9f53506add2b57ae07b3987ced'
  mid_shared_secret: '250b93570d411149105ab8cb0bc5079914906306368c23e9d77c2a33265b994c' → 'e500c670f1b32f60e05009bddcdbfa7153afb19c20479583a54b43d85b3433a8'
  mid_initiator_l: '4ec7daf7294a4a2c717442dd21cf2f052a3bfe9d535b55da0f66fecf87a27534' → '67b155367abf65d45a60412e16bd5ef5e862aa0a4a7a56366cfcc602072176b8'
  mid_initiator_p: '52ab4db9c4b06621f8ded3405691eb32465b1360d15a6b127ded4d15f9cde466' → '93f5b4c59038c16c3f09793976c75e522bf994635e3f1ef9f04e628281e0d5f7'
  mid_responder_l: 'ba9906da802407ddedf6733e29f3996c62425e79d3cbfeebbd6ec4cdc7c976a8' → '08fe46857ab4e62d7463c00ac510e041d28dbfc21853e8f4db971890c7330098'
  mid_responder_p: 'ee661e18c97319ad071106bf35fe1085034832f70718d92f887932128b6100c7' → '2271d5f5351a91ca768a83c5aa7f45fb2b2742e89351d93a680f51a030f9255c'
  mid_send_garbage_terminator: 'd4e3f18ac2e2095edb5c3b94236118ad' → '3ba1f51de6272aa28fd21059b91d3893'
  mid_recv_garbage_terminator: '4faa6c4233d9fd53d170ede4172142a8' → 'faf3b317340de00e29f2181db270ff81'
  out_session_id: '23f154ac43cfc59c4243e9fc68aeec8f19ad3942d74108e833b36f0dd3dcd357' → 'd083d09c1bdf71795b39a9534601cf7c7a7e767e578c44a17dfaf43a3c18f98c'
  out_ciphertext: '8da7de6ea7bf2a81a396a42880ba1f5756734c4821309ac9aeffa2a26ce86873b9dc4935a772de6ec5162c6d075b14536800fb174841153511bfb597e992e2fe8a450c4bce102cc550bb37fd564c4d60bf884e' → '6aa28bc4b6719eca144ac33a3f17859317d5450e4978db9365ce61e7085a617dd386ec18eb436c9056aa1d2d4736c9bffd25803d967fcae916ce1647ccae3d5258b17dfa1cdc7eb99581c48ff2898ef92d3aa1'

sed -i 's/0286c41cd30913db0fdff7a64ebda5c8e3e7cef10f2aebc00a7650443cf4c60d/846a784f1a03dea59cc679754a60a7145542fa130e3efbd815c81e909ce32933/g' protocol/src/lib.rs
sed -i 's/d1ee8a93a01130cbf299249a258f94feb5f469e7d0f2f28f69ee5e9aa8f9b54a60f2c3ff2d023634ec7f4127a96cc11662e402894cf1f694fb9a7eaa5f1d9244/480eacf1536b52257bf8ce78d8f4ce09395d744767c6c129e7838947ee625af3245592c111275e877d5baae22584cb5f1153e67c16bcd7da767726cd0d0c846a/g' protocol/src/lib.rs
sed -i 's/33a32d10066fa3963a9518a14d1bd1cb5ccaceaeaaeddb4d7aead90c08395bfd/014e5bdbb1d7eb34a88a016ab3dd45e343dc703fafa8266907ab67a76c5eb2d6/g' protocol/src/lib.rs
sed -i 's/a1017beaa8784f283dee185cd847ae3a327a981e62ae21e8c5face175fc97e9b/10578110283044630bc13a9f12b00eb0af7cba9f53506add2b57ae07b3987ced/g' protocol/src/lib.rs
sed -i 's/250b93570d411149105ab8cb0bc5079914906306368c23e9d77c2a33265b994c/e500c670f1b32f60e05009bddcdbfa7153afb19c20479583a54b43d85b3433a8/g' protocol/src/lib.rs
sed -i 's/4ec7daf7294a4a2c717442dd21cf2f052a3bfe9d535b55da0f66fecf87a27534/67b155367abf65d45a60412e16bd5ef5e862aa0a4a7a56366cfcc602072176b8/g' protocol/src/lib.rs
sed -i 's/52ab4db9c4b06621f8ded3405691eb32465b1360d15a6b127ded4d15f9cde466/93f5b4c59038c16c3f09793976c75e522bf994635e3f1ef9f04e628281e0d5f7/g' protocol/src/lib.rs
sed -i 's/ba9906da802407ddedf6733e29f3996c62425e79d3cbfeebbd6ec4cdc7c976a8/08fe46857ab4e62d7463c00ac510e041d28dbfc21853e8f4db971890c7330098/g' protocol/src/lib.rs
sed -i 's/ee661e18c97319ad071106bf35fe1085034832f70718d92f887932128b6100c7/2271d5f5351a91ca768a83c5aa7f45fb2b2742e89351d93a680f51a030f9255c/g' protocol/src/lib.rs
sed -i 's/d4e3f18ac2e2095edb5c3b94236118ad/3ba1f51de6272aa28fd21059b91d3893/g' protocol/src/lib.rs
sed -i 's/4faa6c4233d9fd53d170ede4172142a8/faf3b317340de00e29f2181db270ff81/g' protocol/src/lib.rs
sed -i 's/23f154ac43cfc59c4243e9fc68aeec8f19ad3942d74108e833b36f0dd3dcd357/d083d09c1bdf71795b39a9534601cf7c7a7e767e578c44a17dfaf43a3c18f98c/g' protocol/src/lib.rs
sed -i 's/8da7de6ea7bf2a81a396a42880ba1f5756734c4821309ac9aeffa2a26ce86873b9dc4935a772de6ec5162c6d075b14536800fb174841153511bfb597e992e2fe8a450c4bce102cc550bb37fd564c4d60bf884e/6aa28bc4b6719eca144ac33a3f17859317d5450e4978db9365ce61e7085a617dd386ec18eb436c9056aa1d2d4736c9bffd25803d967fcae916ce1647ccae3d5258b17dfa1cdc7eb99581c48ff2898ef92d3aa1/g' protocol/src/lib.rs

Row 4:
  in_priv_ours: '6c77432d1fda31e9f942f8af44607e10f3ad38a65f8a4bddae823e5eff90dc38' → 'c0f15820459f64d98e5c48681d13340572c574533dd9f7161b85fcc8224fdf30'
  in_ellswift_ours: 'd2685070c1e6376e633e825296634fd461fa9e5bdf2109bcebd735e5a91f3e587c5cb782abb797fbf6bb5074fd1542a474f2a45b673763ec2db7fb99b737bbb9' → '682871104d694baca8b9c7990ae6288f49e1ff4feb21dd5cffad67db7752fdfb6c3608d6996c54be04b35feef037da09ee4d9dca2363b343bc2d4f6d0ea609da'
  mid_x_ours: '193d019db571162e52567e0cfdf9dd6964394f32769ae2edc4933b03b502d771' → '5d673dd0a75ccacf4e1310e9402ecdacdd474d8bbfa6eeefdde2e1b216d41dbe'
  mid_x_shared: '5e35f94adfd57976833bffec48ef6dde983d18a55501154191ea352ef06732ee' → '1c229ba46fadced7217df782d410961c1399375135e4aa718fa3424ec36539cc'
  mid_shared_secret: '1918b741ef5f9d1d7670b050c152b4a4ead2c31be9aecb0681c0cd4324150853' → 'b764f617cf8c8dcf6018e4f5e8ee603a086498a3732621c9b0fc0a485ea0d2f0'
  mid_initiator_l: '97124c56236425d792b1ec85e34b846e8d88c9b9f1d4f23ac6cdcc4c177055a0' → 'e25747c749e78c7a0102352378f7c15566145b57f082f7e10b10a0606b323996'
  mid_initiator_p: '8c71b468c61119415e3c1dfdd184134211951e2f623199629a46bff9673611f2' → 'c0547fbf3082c7a0377b4e709b982ecb4710012dcf3b0c073ed3811a2b7c1309'
  mid_responder_l: 'b43b8791b51ed682f56d64351601be28e478264411dcf963b14ee60b9ae427fa' → '5bb291885bf5b08a4218c2bf3498d3591be93a47412c770b60299c8e740ac560'
  mid_responder_p: '794dde4b38ef04250c534a7fa638f2e8cc8b6d2c6110ec290ab0171fdf277d51' → 'fdf5a3e3e75afc15a924373e58af505052731efa75c76a1fa3546954d60b50b1'
  mid_send_garbage_terminator: 'cf2e25f23501399f30738d7eee652b90' → '8461c1dc173be7e6a2316d09710ebd8d'
  mid_recv_garbage_terminator: '225a477a28a54ea7671d2b217a9c29db' → 'dfa2d33623fe80e2347999e6de0f96fd'
  out_session_id: '7ec02fea8c1484e3d0875f978c5f36d63545e2e4acf56311394422f4b66af612' → '279a96e6ce08e5074608fcad77d6a78f90c8b618a4520575435b1a37b1c56df9'
  out_ciphertext_endswith: '729847a3e9eba7a5bff454b5de3b393431ee360736b6c030d7a5bd01d1203d2e98f528543fd2bf886ccaa1ada5e215a730a36b3f4abfc4e252c89eb01d9512f94916dae8a76bf16e4da28986ffe159090fe5267ee3394300b7ccf4dfad389a26321b3a3423e4594a82ccfbad16d6561ecb8772b0cb040280ff999a29e3d9d4fd' → '5afbd61f6e989833df2f12ff70c98f1a20ebe84acba2a05429cc6a57238dba87cdc432474f378889b2d0e95ade9f892eb1a1f6b03b73f903682476537f653f738f7a9f1cc9856ed75f3d69122bdeb00af48e66a64872f639a67fc109ee5ca124d0ee183da3c2b8f2da828850b50976b491f1add78d7f01e07565570621266852'

sed -i 's/6c77432d1fda31e9f942f8af44607e10f3ad38a65f8a4bddae823e5eff90dc38/c0f15820459f64d98e5c48681d13340572c574533dd9f7161b85fcc8224fdf30/g' protocol/src/lib.rs
sed -i 's/d2685070c1e6376e633e825296634fd461fa9e5bdf2109bcebd735e5a91f3e587c5cb782abb797fbf6bb5074fd1542a474f2a45b673763ec2db7fb99b737bbb9/682871104d694baca8b9c7990ae6288f49e1ff4feb21dd5cffad67db7752fdfb6c3608d6996c54be04b35feef037da09ee4d9dca2363b343bc2d4f6d0ea609da/g' protocol/src/lib.rs
sed -i 's/193d019db571162e52567e0cfdf9dd6964394f32769ae2edc4933b03b502d771/5d673dd0a75ccacf4e1310e9402ecdacdd474d8bbfa6eeefdde2e1b216d41dbe/g' protocol/src/lib.rs
sed -i 's/5e35f94adfd57976833bffec48ef6dde983d18a55501154191ea352ef06732ee/1c229ba46fadced7217df782d410961c1399375135e4aa718fa3424ec36539cc/g' protocol/src/lib.rs
sed -i 's/1918b741ef5f9d1d7670b050c152b4a4ead2c31be9aecb0681c0cd4324150853/b764f617cf8c8dcf6018e4f5e8ee603a086498a3732621c9b0fc0a485ea0d2f0/g' protocol/src/lib.rs
sed -i 's/97124c56236425d792b1ec85e34b846e8d88c9b9f1d4f23ac6cdcc4c177055a0/e25747c749e78c7a0102352378f7c15566145b57f082f7e10b10a0606b323996/g' protocol/src/lib.rs
sed -i 's/8c71b468c61119415e3c1dfdd184134211951e2f623199629a46bff9673611f2/c0547fbf3082c7a0377b4e709b982ecb4710012dcf3b0c073ed3811a2b7c1309/g' protocol/src/lib.rs
sed -i 's/b43b8791b51ed682f56d64351601be28e478264411dcf963b14ee60b9ae427fa/5bb291885bf5b08a4218c2bf3498d3591be93a47412c770b60299c8e740ac560/g' protocol/src/lib.rs
sed -i 's/794dde4b38ef04250c534a7fa638f2e8cc8b6d2c6110ec290ab0171fdf277d51/fdf5a3e3e75afc15a924373e58af505052731efa75c76a1fa3546954d60b50b1/g' protocol/src/lib.rs
sed -i 's/cf2e25f23501399f30738d7eee652b90/8461c1dc173be7e6a2316d09710ebd8d/g' protocol/src/lib.rs
sed -i 's/225a477a28a54ea7671d2b217a9c29db/dfa2d33623fe80e2347999e6de0f96fd/g' protocol/src/lib.rs
sed -i 's/7ec02fea8c1484e3d0875f978c5f36d63545e2e4acf56311394422f4b66af612/279a96e6ce08e5074608fcad77d6a78f90c8b618a4520575435b1a37b1c56df9/g' protocol/src/lib.rs
sed -i 's/729847a3e9eba7a5bff454b5de3b393431ee360736b6c030d7a5bd01d1203d2e98f528543fd2bf886ccaa1ada5e215a730a36b3f4abfc4e252c89eb01d9512f94916dae8a76bf16e4da28986ffe159090fe5267ee3394300b7ccf4dfad389a26321b3a3423e4594a82ccfbad16d6561ecb8772b0cb040280ff999a29e3d9d4fd/5afbd61f6e989833df2f12ff70c98f1a20ebe84acba2a05429cc6a57238dba87cdc432474f378889b2d0e95ade9f892eb1a1f6b03b73f903682476537f653f738f7a9f1cc9856ed75f3d69122bdeb00af48e66a64872f639a67fc109ee5ca124d0ee183da3c2b8f2da828850b50976b491f1add78d7f01e07565570621266852/g' protocol/src/lib.rs

Row 5:
  in_priv_ours: 'a6ec25127ca1aa4cf16b20084ba1e6516baae4d32422288e9b36d8bddd2de35a' → '96cb391886681d1d3e23948e51987771a8ec3001b640c18fb994a855cea66b6e'
  in_ellswift_ours: 'ffffffffffffffffffffffffffffffffffffffffffffffffffffffff053d7ecca53e33e185a8b9be4e7699a97c6ff4c795522e5918ab7cd6b6884f67e683f3dc' → 'ffffffffffffffffffffffffffffffffffffffffffffffffffffffffdde3a077a6fd73711a27250c439ba78ef63d89cd0918c0a0a75f301ed96aa2a43ecf3f61'
  mid_x_ours: '02b225089255f7b02b20276cfe9779144df8fb1957b477bff3239d802d1256e9' → 'f7561c791f6f4aa73dcef3cac32f2433b4cfa4ab0666e93552b7cbc7249fb2de'
  mid_x_shared: '379223d2f1ea7f8a22043c4ce4122623098309e15b1ce58286ebe3d3bf40f4e1' → '2651a46a622f79e2ab18819587e7f897e3f8351b1e1b66d8ed4543a1e40bc569'
  mid_shared_secret: 'dd210aa6629f20bb328e5d89daa6eb2ac3d1c658a725536ff154f31b536c23b2' → '779a18107756169a6b369d043f3ef9a90178c7ab8c8c37b4edcd9b5397e41eca'
  mid_initiator_l: '393472f85a5cc6b0f02c4bd466db7a2dc5b91fc9dcb15c0dd6dc21116ece8bca' → '368c7283e088e40b79e6214046beab64cbac30a89940acbc30d430f941fe7d35'
  mid_initiator_p: 'c80b87b793db47320b2795db66d331bd3021cc24e360d59d0fa8974f54687e0c' → '224065c728d5cdabbe209cd52621324471ce8dc229907c018cec05781a9c770d'
  mid_responder_l: 'ef16a43d77e2b270b0a145ee1618d35f3c943cc7877d6cfcff2287d41692be39' → '9ce33c019a081e5f8b62e1f12d652f0b036ed65f5de195d931dfcd92043b5eb2'
  mid_responder_p: '20d4b62e2d982c61bb0cc39a93283d98af36530ef12331d44b2477b0e521b490' → '001e576d8828a6d84913b01cb88e8f5532207f34275017b61650ba1383646cbc'
  mid_send_garbage_terminator: 'fead69be77825a23daec377c362aa560' → '7bf55f6b58f73cdff19ee3292607239f'
  mid_recv_garbage_terminator: '511d4980526c5e64aa7187462faeafdd' → 'd121874372c61a48fd87da6d01d89da4'
  out_session_id: 'acb8f084ea763ddd1b92ac4ed23bf44de20b84ab677d4e4e6666a6090d40353d' → 'e9515794acced50e0550a3ebd95c170d2abd48b5f23fccca73bc597f00c88cf2'
  out_ciphertext_endswith: '77b4656934a82de1a593d8481f020194ddafd8cac441f9d72aeb8721e6a14f49698ca6d9b2b6d59d07a01aa552fd4d5b68d0d1617574c77dea10bfadbaa31b83885b7ceac2fd45e3e4a331c51a74e7b1698d81b64c87c73c5b9258b4d83297f9debc2e9aa07f8572ff434dc792b83ecf07b3197de8dc9cf7be56acb59c66cff5' → '33953941be2682da1c6d1b167cbf180d7cb8159c94c6ea1c52356716f1057af4df53321f18894c285f7b2fd85b2edc44a13c9295f310962fdfc8d944bd77c5500b10ca68ca5d0977d19d183a7def742c41cfeee763dc09ef985c96ab6e74e464f66992f752c9368e42082ad338705062ddfcad4ca1c9c54004b9345d8df25953'

sed -i 's/a6ec25127ca1aa4cf16b20084ba1e6516baae4d32422288e9b36d8bddd2de35a/96cb391886681d1d3e23948e51987771a8ec3001b640c18fb994a855cea66b6e/g' protocol/src/lib.rs
sed -i 's/ffffffffffffffffffffffffffffffffffffffffffffffffffffffff053d7ecca53e33e185a8b9be4e7699a97c6ff4c795522e5918ab7cd6b6884f67e683f3dc/ffffffffffffffffffffffffffffffffffffffffffffffffffffffffdde3a077a6fd73711a27250c439ba78ef63d89cd0918c0a0a75f301ed96aa2a43ecf3f61/g' protocol/src/lib.rs
sed -i 's/02b225089255f7b02b20276cfe9779144df8fb1957b477bff3239d802d1256e9/f7561c791f6f4aa73dcef3cac32f2433b4cfa4ab0666e93552b7cbc7249fb2de/g' protocol/src/lib.rs
sed -i 's/379223d2f1ea7f8a22043c4ce4122623098309e15b1ce58286ebe3d3bf40f4e1/2651a46a622f79e2ab18819587e7f897e3f8351b1e1b66d8ed4543a1e40bc569/g' protocol/src/lib.rs
sed -i 's/dd210aa6629f20bb328e5d89daa6eb2ac3d1c658a725536ff154f31b536c23b2/779a18107756169a6b369d043f3ef9a90178c7ab8c8c37b4edcd9b5397e41eca/g' protocol/src/lib.rs
sed -i 's/393472f85a5cc6b0f02c4bd466db7a2dc5b91fc9dcb15c0dd6dc21116ece8bca/368c7283e088e40b79e6214046beab64cbac30a89940acbc30d430f941fe7d35/g' protocol/src/lib.rs
sed -i 's/c80b87b793db47320b2795db66d331bd3021cc24e360d59d0fa8974f54687e0c/224065c728d5cdabbe209cd52621324471ce8dc229907c018cec05781a9c770d/g' protocol/src/lib.rs
sed -i 's/ef16a43d77e2b270b0a145ee1618d35f3c943cc7877d6cfcff2287d41692be39/9ce33c019a081e5f8b62e1f12d652f0b036ed65f5de195d931dfcd92043b5eb2/g' protocol/src/lib.rs
sed -i 's/20d4b62e2d982c61bb0cc39a93283d98af36530ef12331d44b2477b0e521b490/001e576d8828a6d84913b01cb88e8f5532207f34275017b61650ba1383646cbc/g' protocol/src/lib.rs
sed -i 's/fead69be77825a23daec377c362aa560/7bf55f6b58f73cdff19ee3292607239f/g' protocol/src/lib.rs
sed -i 's/511d4980526c5e64aa7187462faeafdd/d121874372c61a48fd87da6d01d89da4/g' protocol/src/lib.rs
sed -i 's/acb8f084ea763ddd1b92ac4ed23bf44de20b84ab677d4e4e6666a6090d40353d/e9515794acced50e0550a3ebd95c170d2abd48b5f23fccca73bc597f00c88cf2/g' protocol/src/lib.rs
sed -i 's/77b4656934a82de1a593d8481f020194ddafd8cac441f9d72aeb8721e6a14f49698ca6d9b2b6d59d07a01aa552fd4d5b68d0d1617574c77dea10bfadbaa31b83885b7ceac2fd45e3e4a331c51a74e7b1698d81b64c87c73c5b9258b4d83297f9debc2e9aa07f8572ff434dc792b83ecf07b3197de8dc9cf7be56acb59c66cff5/33953941be2682da1c6d1b167cbf180d7cb8159c94c6ea1c52356716f1057af4df53321f18894c285f7b2fd85b2edc44a13c9295f310962fdfc8d944bd77c5500b10ca68ca5d0977d19d183a7def742c41cfeee763dc09ef985c96ab6e74e464f66992f752c9368e42082ad338705062ddfcad4ca1c9c54004b9345d8df25953/g' protocol/src/lib.rs

Row 6:
  in_priv_ours: '0af952659ed76f80f585966b95ab6e6fd68654672827878684c8b547b1b94f5a' → '4a7065c3ddbf84e29b8e20da0da3aaae1f708eae8ad1af4c4c00f46a7cda7b6b'
  in_ellswift_ours: 'ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc81017fd92fd31637c26c906b42092e11cc0d3afae8d9019d2578af22735ce7bc469c72d' → 'ffffffffffffffffffffffffffffffffffffffffffffffffffffffff450012ec3aeecf516f4b374af2e7fbb040e92dc3c0f12eafd00c729a137f4e892e5293c3'
  mid_x_ours: '4b1767466fe2fb8deddf2dc52cc19c7e2032007e19bfb420b30a80152d0f22d6' → 'a0ff3dd41ca11036eea75ea08993c938894c7eebca99354ac2e0daa8a1a6b2ca'
  mid_x_shared: '5bcfeac98d87e87e158bf839f1269705429f7af2a25b566a25811b5f9aef9560' → 'ca3f58a228c530be63eec8a427d16496776aefb22e693152a3a9394b9a87d097'
  mid_shared_secret: '3568f2aea2e14ef4ee4a3c2a8b8d31bc5e3187ba86db10739b4ff8ec92ff6655' → 'a993062a328371beecae7e2b05a34355c1cefbad7f855ad48331dcf002972999'
  mid_initiator_l: 'c7df866a62b7d404eb530b2be245a7aece0fb4791402a1de8f33530cbf777cc1' → '24cdf9d8533696a5795cadcf5b94826ddbe5f047ba02c832b3495ac7c1110e31'
  mid_initiator_p: '8f732e4aae2ba9314e0982492fa47954de9c189d92fbc549763b27b1b47642ce' → '7b5d1c66668d20d57a4e0a6ba4d9aa3e3ba0f704697aa7edb9ce9471d46647da'
  mid_responder_l: '992085edfecb92c62a3a7f96ea416f853f34d0dfe065b966b6968b8b87a83081' → 'e6a808d35ee403b3f4bbcd8fd49fa005a40dfaaf36f9f504318bb94637067060'
  mid_responder_p: 'c5ba5eaf9e1c807154ebab3ea472499e815a7be56dfaf0c201cf6e91ffeca8e6' → 'd6ae42117344fb71cb1817a1dc192a4b5bb35d885005093c3e9bd4576069b217'
  mid_send_garbage_terminator: '5e2375ac629b8df1e4ff3617c6255a70' → '1fec304dcaacf1f5b088325306272d78'
  mid_recv_garbage_terminator: '70bcbffcb62e4d29d2605d30bceef137' → 'd2d16a8452807baa4f63b059b5804624'
  out_session_id: '7332e92a3f9d2792c4d444fac5ed888c39a073043a65eefb626318fd649328f8' → 'dccb606c4f2a0f64bc164dbc00eb0f6cf1474575e89d7928be6346720bb53610'
  out_ciphertext_endswith: '657a4a19711ce593c3844cb391b224f60124aba7e04266233bc50cafb971e26c7716b76e98376448f7d214dd11e629ef9a974d60e3770a695810a61c4ba66d78b936ee7892b98f0b48ddae9fcd8b599dca1c9b43e9b95e0226cf8d4459b8a7c2c4e6db80f1d58c7b20dd7208fa5c1057fb78734223ee801dbd851db601fee61e' → '58daef966f33c036740aeb3f6a4b31c0f0a070b25fd6a1abf82ef56fc2cb3ca8da8c434f23790c69349dd0cb4058f88a7bd0e333c8ceba3c80f21e951b9fdb1c84e2e7f49f43c21087566d58f1bcc42b041e0b462e37e927c0071caa9a2b650dccf448c9f88d73b62e80a3e5d5e4e46992e34b416ceb9590a7c8b7bfaccf37ab'

sed -i 's/0af952659ed76f80f585966b95ab6e6fd68654672827878684c8b547b1b94f5a/4a7065c3ddbf84e29b8e20da0da3aaae1f708eae8ad1af4c4c00f46a7cda7b6b/g' protocol/src/lib.rs
sed -i 's/ffffffffffffffffffffffffffffffffffffffffffffffffffffffffc81017fd92fd31637c26c906b42092e11cc0d3afae8d9019d2578af22735ce7bc469c72d/ffffffffffffffffffffffffffffffffffffffffffffffffffffffff450012ec3aeecf516f4b374af2e7fbb040e92dc3c0f12eafd00c729a137f4e892e5293c3/g' protocol/src/lib.rs
sed -i 's/4b1767466fe2fb8deddf2dc52cc19c7e2032007e19bfb420b30a80152d0f22d6/a0ff3dd41ca11036eea75ea08993c938894c7eebca99354ac2e0daa8a1a6b2ca/g' protocol/src/lib.rs
sed -i 's/5bcfeac98d87e87e158bf839f1269705429f7af2a25b566a25811b5f9aef9560/ca3f58a228c530be63eec8a427d16496776aefb22e693152a3a9394b9a87d097/g' protocol/src/lib.rs
sed -i 's/3568f2aea2e14ef4ee4a3c2a8b8d31bc5e3187ba86db10739b4ff8ec92ff6655/a993062a328371beecae7e2b05a34355c1cefbad7f855ad48331dcf002972999/g' protocol/src/lib.rs
sed -i 's/c7df866a62b7d404eb530b2be245a7aece0fb4791402a1de8f33530cbf777cc1/24cdf9d8533696a5795cadcf5b94826ddbe5f047ba02c832b3495ac7c1110e31/g' protocol/src/lib.rs
sed -i 's/8f732e4aae2ba9314e0982492fa47954de9c189d92fbc549763b27b1b47642ce/7b5d1c66668d20d57a4e0a6ba4d9aa3e3ba0f704697aa7edb9ce9471d46647da/g' protocol/src/lib.rs
sed -i 's/992085edfecb92c62a3a7f96ea416f853f34d0dfe065b966b6968b8b87a83081/e6a808d35ee403b3f4bbcd8fd49fa005a40dfaaf36f9f504318bb94637067060/g' protocol/src/lib.rs
sed -i 's/c5ba5eaf9e1c807154ebab3ea472499e815a7be56dfaf0c201cf6e91ffeca8e6/d6ae42117344fb71cb1817a1dc192a4b5bb35d885005093c3e9bd4576069b217/g' protocol/src/lib.rs
sed -i 's/5e2375ac629b8df1e4ff3617c6255a70/1fec304dcaacf1f5b088325306272d78/g' protocol/src/lib.rs
sed -i 's/70bcbffcb62e4d29d2605d30bceef137/d2d16a8452807baa4f63b059b5804624/g' protocol/src/lib.rs
sed -i 's/7332e92a3f9d2792c4d444fac5ed888c39a073043a65eefb626318fd649328f8/dccb606c4f2a0f64bc164dbc00eb0f6cf1474575e89d7928be6346720bb53610/g' protocol/src/lib.rs
sed -i 's/657a4a19711ce593c3844cb391b224f60124aba7e04266233bc50cafb971e26c7716b76e98376448f7d214dd11e629ef9a974d60e3770a695810a61c4ba66d78b936ee7892b98f0b48ddae9fcd8b599dca1c9b43e9b95e0226cf8d4459b8a7c2c4e6db80f1d58c7b20dd7208fa5c1057fb78734223ee801dbd851db601fee61e/58daef966f33c036740aeb3f6a4b31c0f0a070b25fd6a1abf82ef56fc2cb3ca8da8c434f23790c69349dd0cb4058f88a7bd0e333c8ceba3c80f21e951b9fdb1c84e2e7f49f43c21087566d58f1bcc42b041e0b462e37e927c0071caa9a2b650dccf448c9f88d73b62e80a3e5d5e4e46992e34b416ceb9590a7c8b7bfaccf37ab/g' protocol/src/lib.rs

Row 7:
  in_priv_ours: 'f90e080c64b05824c5a24b2501d5aeaf08af3872ee860aa80bdcd430f7b63494' → '0f69aeffeff6172647ee5aa80bfb418ee742f4e9f1a51b463ac7c120d620e37d'
  in_ellswift_ours: 'ffffffffffffffffffffffffffffffffffffffffffffffffffffffff115173765dc202cf029ad3f15479735d57697af12b0131dd21430d5772e4ef11474d58b9' → 'ffffffffffffffffffffffffffffffffffffffffffffffffffffffff04df0e67f9753e2cdb066b3b588a0069fde936a312e0d3f31acb335026b7072d8f2ad24c'
  mid_x_ours: '8b8de966150bf872b4b695c9983df519c909811954d5d76e99ed0d5f1860247b' → '115b298a52a9362706ddd1e493de09443dd8ac2b0c3e4e5e8b6bb295598db05d'
  mid_x_shared: '0a402d812314646ccc2565c315d1429ec1ed130ff92ff3f48d948f29c3762cf1' → '32e15c20a09591b6600c778752a582fed444444fd0d3317613555c6509ff4b8d'
  mid_shared_secret: 'e25461fb0e4c162e18123ecde88342d54d449631e9b75a266fd9260c2bb2f41d' → '1756deace376ece25da9825fe49f76a9272a89a7b746c83ca2c4016f5a30ead4'
  mid_initiator_l: '97771ce2ce17a25c3d65bf9f8e4acb830dce8d41392be3e4b8ed902a3106681a' → '15e26b12238d66ebc4cb72d16a62a8bb404c94d31bbe3b1d22a01b851e935010'
  mid_initiator_p: '2e7022b4eae9152942f68160a93e25d3e197a557385594aa587cb5e431bb470d' → 'c135367f39b24a9cc9b73ad628fba1887737f5686062c4c36146e76849828a50'
  mid_responder_l: '613f85a82d783ce450cfd7e91a027fcc4ad5610872f83e4dbe9e2202184c6d6e' → 'ffa25ddf7cd4cd10a47f6c3b32a54ee882837058e31677d3958539f4f23e4616'
  mid_responder_p: 'cb5de4ed1083222e381401cf88e3167796bc9ab5b8aa1f27b718f39d1e6c0e87' → '12f9b3ebbf743f6b93c7d0f4f20259fac2a27ea6735fd9ef2e2699049af60fcc'
  mid_send_garbage_terminator: 'b709dea25e0be287c50e3603482c2e98' → '4dfac3b0a99401f6aad1a8df3cd7dd05'
  mid_recv_garbage_terminator: '1f677e9d7392ebe3633fd82c9efb0f16' → 'e5d4905a8b6a5d18ec6cebbdecd703d3'
  out_session_id: '889f339285564fd868401fac8380bb9887925122ec8f31c8ae51ce067def103b' → 'fc2431beb9a666bf888df0662276a4b6a1af5061072992ef408f2b686c86a2ac'
  out_ciphertext_endswith: '7c4b9e1e6c1ce69da7b01513cdc4588fd93b04dafefaf87f31561763d906c672bac3dfceb751ebd126728ac017d4d580e931b8e5c7d5dfe0123be4dc9b2d2238b655c8a7fadaf8082c31e310909b5b731efc12f0a56e849eae6bfeedcc86dd27ef9b91d159256aa8e8d2b71a311f73350863d70f18d0d7302cf551e4303c7733' → '1a7f3fb83ad2b050b663b8df6b7c2cc2d8e169a869a58bf7ef5ab5db97a505c84a812e100d9445da4fc39a1176d6aed3995f6868631224b86f10603217c8d13270e0c6d054ad9e0d0b7dc0c8e59a37cd05a0a45faa14b4ffc8d12b641f62e6f1b71c1f72b737e9ce3fe74be779b25e70bf11d98766b3876d0fa28d3c669087fc'

sed -i 's/f90e080c64b05824c5a24b2501d5aeaf08af3872ee860aa80bdcd430f7b63494/0f69aeffeff6172647ee5aa80bfb418ee742f4e9f1a51b463ac7c120d620e37d/g' protocol/src/lib.rs
sed -i 's/ffffffffffffffffffffffffffffffffffffffffffffffffffffffff115173765dc202cf029ad3f15479735d57697af12b0131dd21430d5772e4ef11474d58b9/ffffffffffffffffffffffffffffffffffffffffffffffffffffffff04df0e67f9753e2cdb066b3b588a0069fde936a312e0d3f31acb335026b7072d8f2ad24c/g' protocol/src/lib.rs
sed -i 's/8b8de966150bf872b4b695c9983df519c909811954d5d76e99ed0d5f1860247b/115b298a52a9362706ddd1e493de09443dd8ac2b0c3e4e5e8b6bb295598db05d/g' protocol/src/lib.rs
sed -i 's/0a402d812314646ccc2565c315d1429ec1ed130ff92ff3f48d948f29c3762cf1/32e15c20a09591b6600c778752a582fed444444fd0d3317613555c6509ff4b8d/g' protocol/src/lib.rs
sed -i 's/e25461fb0e4c162e18123ecde88342d54d449631e9b75a266fd9260c2bb2f41d/1756deace376ece25da9825fe49f76a9272a89a7b746c83ca2c4016f5a30ead4/g' protocol/src/lib.rs
sed -i 's/97771ce2ce17a25c3d65bf9f8e4acb830dce8d41392be3e4b8ed902a3106681a/15e26b12238d66ebc4cb72d16a62a8bb404c94d31bbe3b1d22a01b851e935010/g' protocol/src/lib.rs
sed -i 's/2e7022b4eae9152942f68160a93e25d3e197a557385594aa587cb5e431bb470d/c135367f39b24a9cc9b73ad628fba1887737f5686062c4c36146e76849828a50/g' protocol/src/lib.rs
sed -i 's/613f85a82d783ce450cfd7e91a027fcc4ad5610872f83e4dbe9e2202184c6d6e/ffa25ddf7cd4cd10a47f6c3b32a54ee882837058e31677d3958539f4f23e4616/g' protocol/src/lib.rs
sed -i 's/cb5de4ed1083222e381401cf88e3167796bc9ab5b8aa1f27b718f39d1e6c0e87/12f9b3ebbf743f6b93c7d0f4f20259fac2a27ea6735fd9ef2e2699049af60fcc/g' protocol/src/lib.rs
sed -i 's/b709dea25e0be287c50e3603482c2e98/4dfac3b0a99401f6aad1a8df3cd7dd05/g' protocol/src/lib.rs
sed -i 's/1f677e9d7392ebe3633fd82c9efb0f16/e5d4905a8b6a5d18ec6cebbdecd703d3/g' protocol/src/lib.rs
sed -i 's/889f339285564fd868401fac8380bb9887925122ec8f31c8ae51ce067def103b/fc2431beb9a666bf888df0662276a4b6a1af5061072992ef408f2b686c86a2ac/g' protocol/src/lib.rs
sed -i 's/7c4b9e1e6c1ce69da7b01513cdc4588fd93b04dafefaf87f31561763d906c672bac3dfceb751ebd126728ac017d4d580e931b8e5c7d5dfe0123be4dc9b2d2238b655c8a7fadaf8082c31e310909b5b731efc12f0a56e849eae6bfeedcc86dd27ef9b91d159256aa8e8d2b71a311f73350863d70f18d0d7302cf551e4303c7733/1a7f3fb83ad2b050b663b8df6b7c2cc2d8e169a869a58bf7ef5ab5db97a505c84a812e100d9445da4fc39a1176d6aed3995f6868631224b86f10603217c8d13270e0c6d054ad9e0d0b7dc0c8e59a37cd05a0a45faa14b4ffc8d12b641f62e6f1b71c1f72b737e9ce3fe74be779b25e70bf11d98766b3876d0fa28d3c669087fc/g' protocol/src/lib.rs
```

Closes rust-bitcoin#158
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Proposed BIP modification PR by non-owner to update BIP content

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants