From 81124cf612742c23f7994bdcae6e84a8e6ed78d5 Mon Sep 17 00:00:00 2001 From: Otto Allmendinger Date: Mon, 3 Nov 2025 11:49:52 +0100 Subject: [PATCH 1/5] feat(wasm-utxo): add lint command to Makefile Add lint target that runs cargo fmt and clippy checks Issue: BTC-2652 Co-authored-by: llm-git --- packages/wasm-utxo/Makefile | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/wasm-utxo/Makefile b/packages/wasm-utxo/Makefile index e9cdfc5..651eea2 100644 --- a/packages/wasm-utxo/Makefile +++ b/packages/wasm-utxo/Makefile @@ -43,4 +43,9 @@ dist/node/js/wasm/: .PHONY: dist/browser/js/wasm/ dist/browser/js/wasm/: - $(call BUILD,$@,browser) \ No newline at end of file + $(call BUILD,$@,browser) + +.PHONY: lint +lint: + cargo fmt --check + cargo clippy --all-targets --all-features -- -D warnings \ No newline at end of file From b76d671283568470d0520ed2a3a6b37cfd8bbec0 Mon Sep 17 00:00:00 2001 From: Otto Allmendinger Date: Mon, 3 Nov 2025 13:03:55 +0100 Subject: [PATCH 2/5] feat(wasm-utxo): add psbtBase64Finalized to fixtures Issue: BTC-2652 --- .../test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.dash.unsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json | 1 + .../fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoin.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt.dash.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt.dash.halfsigned.json | 1 + .../wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt.dogecoin.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt.ecash.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt.ecash.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt.ecash.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt.litecoin.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt.litecoin.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt.litecoin.unsigned.json | 1 + .../test/fixtures/fixed-script/psbt.zcash.fullsigned.json | 1 + .../test/fixtures/fixed-script/psbt.zcash.halfsigned.json | 1 + .../test/fixtures/fixed-script/psbt.zcash.unsigned.json | 1 + 48 files changed, 48 insertions(+) diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json index eced793..01c5692 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "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", "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json index 6547b2c..9897bb5 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAP3qAQEAAAAH2Z764Zn8TVTlglqOM2ijlenrMpkVz7XYjcMRUH0YSDYAAAAAAP////8eyXKaGyU3OjDw/m4IebMRNqVPL4yYYYxGhidIoIxeeAEAAAAA/////7sN++ulm7pp484HpUNG+ATFQ/pG2CjtU50RIxrbqot7AgAAAAD/////pmKl/+v1i/PmXlNFbGfAKcwVSiQJdA2M03/e51WcXv0DAAAAAP/////TlDdc7iOzuZUUiMBANSkVeoWwWO3ANRVG2etIB+ih0wQAAAAA/////w0vfzSG7a78arksIffK+QCFxN5K2sSREG/YoOT1Y96jBQAAAAD/////l0QdmajWbxJKs8neJrh70ArrFUcFHIQqiBZcGwie6QIGAAAAAP////8FhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4eEAwAAAAAAABepFAVBJxIdN/MiZs2WfEhUBJdqZ63wh4QDAAAAAAAAIgAgukjj+YdEY5Q/kBkqRfGuiVt3k2KnYpr3rWqdeoNePU+EAwAAAAAAACJRILJyJ/XK3AVq/qSwK0uXuaAVF4YjTCatWI3M8TTniTHGhAMAAAAAAAAiUSBPc7VWE5nrOXtatBPgkMwMSP9wOmGv5Hz31Hoj1DuXiwAAAABPAQSIsh4AAAAAAAAAAAA6ki4p8MjrDbKmBITL3LYx9rEHycquP/3PPn0uwfa80AMSFIcV82HatoWmadQkMeXW0/lzQE2rnJ/RuVCyea12NATMGK4ITwEEiLIeAAAAAAAAAAAAbR1lbT3dkcGUwEVlo2A3AqIQFs7RSiZfOJgtYnXme2QD07rCMTp8ayHLsRsUsNEDQfkiwKQDqL2Mh/Dcgg81r24E9lzYaU8BBIiyHgAAAAAAAAAAAMsE/WOrNNkP5kZriA4qAsz4qGM3QxKZGviRGxqqtEM0AzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVBPLvA4kAAQEg6AMAAAAAAAAXqRRWfNe0T586B8MTjze/mEtg+7ryQ4ciAgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+f0cwRAIgHnlUXAEeNLG4crSwV+ZiYthogdpqf4U+fleppNEsbcECIBpTiyF1x7cWHHbaGDlCIPNUricp/MHJArdMWc154BUxAQEDBAEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQOJrJdDOrm+c/z7azKoNGnDadgD4ciAgKlhfP6tJte+VNG2TIiGiIb1V7BkfFVM+DycLNYJXTwNUcwRAIgX3YMJ+dZip6Aoq2vHZJcZ9Lmwkrsdz5czlbSNBWaseUCIBzpfVZZaBq4geEKzJyAIVh/hDoVM2w6i2+y78BTkouFAQEDBAEAAAABBCIAIEbUgAoTkzMBlghTme1KFwC0wv04xSGIw6OpH3IfPJYAAQVpUiECpYXz+rSbXvlTRtkyIhoiG9VewZHxVTPg8nCzWCV08DUhAsT3hmz9WZa8EGipYxPKFenMtemEWDoHNA3drnrwFGBbIQIjRTG8kRmjanlG6VrrdJFd0IfHtE9Re47utz+JoP8amVOuIgYCI0UxvJEZo2p5Rula63SRXdCHx7RPUXuO7rc/iaD/GpkU9lzYaQAAAAAAAAAACwAAAAEAAAAiBgKlhfP6tJte+VNG2TIiGiIb1V7BkfFVM+DycLNYJXTwNRTy7wOJAAAAAAAAAAALAAAAAQAAACIGAsT3hmz9WZa8EGipYxPKFenMtemEWDoHNA3drnrwFGBbFMwYrggAAAAAAAAAAAsAAAABAAAAAAEBK+gDAAAAAAAAIgAg2wQn8YIrR3dnDmZzworwL22h1a/nGnH1yQZEcLIp+v0iAgNRnlcqtGhWDR+ND4dpnQmDCOFmkF9dyuQ5DwYPqo8c40gwRQIhANOwP7d1UxROFBccextRejvzPfhzcLZeM38KUIRFYiYeAiBYW8CRO1atloFh00PzIdd/X5T/PPYlRZMvFQkjmhWjjgEBAwQBAAAAAQVpUiEDUZ5XKrRoVg0fjQ+HaZ0JgwjhZpBfXcrkOQ8GD6qPHOMhA6BbwmORIh1oXhjar/NqHpXDT5lFElPBbNQmUNsninkRIQLoCgiIXDU2drggzcKQ5tgaCslaA+irv0u3ruv7cP60GFOuIgYC6AoIiFw1Nna4IM3CkObYGgrJWgPoq79Lt67r+3D+tBgU9lzYaQAAAAAAAAAAFQAAAAIAAAAiBgNRnlcqtGhWDR+ND4dpnQmDCOFmkF9dyuQ5DwYPqo8c4xTy7wOJAAAAAAAAAAAVAAAAAgAAACIGA6BbwmORIh1oXhjar/NqHpXDT5lFElPBbNQmUNsninkRFMwYrggAAAAAAAAAABUAAAACAAAAAAEBK+gDAAAAAAAAIlEgOUuU0GHXt3j+2KIEzgXtC0SVTsFiL5NPhBFOEXPzMCcBAwQAAAAAQRRzc9cjzgqH+P3WaEO+Etrp1Rk59oGI1a2WkgvvX1H0loPX+Y6e8Pczagb0oBFRg6n5lsusEijpqnY49EfwJJ8wQIOxu3xs5YaMinI8TTUFkYlICbEzVYb2DL/Mxt1OKLhjCnRjexskLlo4lUDblPI7y+3unHg4MMsq+v8fJ2Pb23tCFcC8F+orv2/0a9XAw3gL4qY4gOt7t4KznthvKbmfSIKZThsXixtV08aqx7A540It/bnJ111Nb8kI6XQ+iLZR5I2DRSBzc9cjzgqH+P3WaEO+Etrp1Rk59oGI1a2WkgvvX1H0lq0gqojKGU/aQ0hlBLhqybcfEPxB3nsXE4dIOUJ/dOeMLVqswCEWc3PXI84Kh/j91mhDvhLa6dUZOfaBiNWtlpIL719R9JY1AYPX+Y6e8Pczagb0oBFRg6n5lsusEijpqnY49EfwJJ8w8u8DiQAAAAAAAAAAHwAAAAMAAAAhFqqIyhlP2kNIZQS4asm3HxD8Qd57FxOHSDlCf3TnjC1aNQGD1/mOnvD3M2oG9KARUYOp+ZbLrBIo6ap2OPRH8CSfMPZc2GkAAAAAAAAAAB8AAAADAAAAAAEBK+gDAAAAAAAAIlEgKbv69DhbENwrvnq01Q6Jzr6PUHlocnsZaJ4mOAg8xVsBAwQAAAAAQRRkMVGrA/Ope7htNZLxL40lqAJtic1HNC/BtJxeLmNHi0KQacgyD/XxyKwqCxBH/xRQuMDTJeHRLxxSaE2Ro7n7QAoeAT9tV/uLJIsrGbCLNMGjzV/23krN8Z3Uzg4C1CFUhW3VafRmjyq6zLtQzoGp0vU+/ftifCyxTPksQYmjXadCFcGhB6QD96IH57H1UtP9P1X2SuQOFJ0NJvSGitf67JSet2N+N8rG5fIjR6to6Ha1WRF9lZfuezf7mDwqueUQI8l2RSBkMVGrA/Ope7htNZLxL40lqAJtic1HNC/BtJxeLmNHi60gA1ydYy2y3bj5DPPM/JMYIryx8kVisjrgQavxLlS8pk2swCEWA1ydYy2y3bj5DPPM/JMYIryx8kVisjrgQavxLlS8pk01AUKQacgyD/XxyKwqCxBH/xRQuMDTJeHRLxxSaE2Ro7n7zBiuCAAAAAAAAAAAKQAAAAQAAAAhFmQxUasD86l7uG01kvEvjSWoAm2JzUc0L8G0nF4uY0eLNQFCkGnIMg/18cisKgsQR/8UULjA0yXh0S8cUmhNkaO5+/LvA4kAAAAAAAAAACkAAAAEAAAAAAEBK+gDAAAAAAAAIlEgFcWBUCb2pUsQGU/GmA8YZqAtnsEoUzx5l820KJvz7xYBAwQAAAAAIRYP3qaeQKOt7zzcf6bzrwL0ydnjJUUDyWpqK0qmbneBcRUA9lzYaQAAAAAAAAAAKQAAAAUAAAAhFh2XihdIb/nkfIKZAmnlMfxjmBQZ1M5z7ovSyZZhxTlTFQDy7wOJAAAAAAAAAAApAAAABQAAAAEXIOta0pqFrtJN4ogOd0yq9iT5yxvgnGftSu+7m3vBLd8aARggsqSX6k0LUvUBGuE10Lvg2evXd7so5zPLzBMTS3MQahpI/AVCSVRHTwEVxYFQJvalSxAZT8aYDxhmoC2ewShTPHmXzbQom/PvFuta0pqFrtJN4ogOd0yq9iT5yxvgnGftSu+7m3vBLd8aQgIdl4oXSG/55HyCmQJp5TH8Y5gUGdTOc+6L0smWYcU5UwIP3qaeQKOt7zzcf6bzrwL0ydnjJUUDyWpqK0qmbneBcUn8BUJJVEdPAgIP3qaeQKOt7zzcf6bzrwL0ydnjJUUDyWpqK0qmbneBcRXFgVAm9qVLEBlPxpgPGGagLZ7BKFM8eZfNtCib8+8WQgKCaUl0Df9F1Aix8Z2UxyD1NBHgLFJbKKs8WTtrUw/gNwN0uKD/yqrua3ctrF98I+8zZwsy7HfG1B77PDbfIWWglEn8BUJJVEdPAgIdl4oXSG/55HyCmQJp5TH8Y5gUGdTOc+6L0smWYcU5UxXFgVAm9qVLEBlPxpgPGGagLZ7BKFM8eZfNtCib8+8WQgOkqvRvOgvDmnOFX6h1svLwS9sGI1r7rt+Fe1k93cY8tALNt/GpPsUmKCGY2DRCM3F1fo9Dky0DufQ8P3N4MArlCEn8BUJJVEdPAwIdl4oXSG/55HyCmQJp5TH8Y5gUGdTOc+6L0smWYcU5UxXFgVAm9qVLEBlPxpgPGGagLZ7BKFM8eZfNtCib8+8WIBzYoMBZiw2I+In9+aMUD48IjiGHgDovqu4/E8AWPrdsAAEBIOgDAAAAAAAAF6kUILNwlNgqUTRR/wzNnbI6ugW8XvOHIgIDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJVIMEUCIQDSp6u2wFY8MADjdBKpuX9jUtF+QJYEVv6DDSZPBHT4tgIgONXNvoijGd5de3249X0KklJL6yQnKbRqYXrbUw8voNABAQMEAQAAAAEEIyEDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJWsAAEAaVIhAsxND6QRysJESG+OssCOA1/3QQ9GCjWcp/iBCZG9O0IJIQLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqyEDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvFTriICAsxND6QRysJESG+OssCOA1/3QQ9GCjWcp/iBCZG9O0IJFPLvA4kAAAAAAAAAAAAAAAAAAAAAIgIC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqsUzBiuCAAAAAAAAAAAAAAAAAAAAAAiAgNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8RT2XNhpAAAAAAAAAAAAAAAAAAAAAAABACIAICkrBSNRo8b4DVG65kLMiCEYKJPb7tq8j10OlndHYCbBAQFpUiEDLhH5hVJoX+kH8x+ecmDJBujecA8MPJ8vFBBiPc39GcAhA1RXV841zx7fsTueLEovnOAKuMNr7hK8ojN85YP9KK7IIQKjz7ZmX+RPdSC2obTeGk1GZDs4XrH9Hgq3DvuWVCl1VFOuIgICo8+2Zl/kT3UgtqG03hpNRmQ7OF6x/R4Ktw77llQpdVQU9lzYaQAAAAAAAAAACgAAAAEAAAAiAgMuEfmFUmhf6QfzH55yYMkG6N5wDww8ny8UEGI9zf0ZwBTy7wOJAAAAAAAAAAAKAAAAAQAAACICA1RXV841zx7fsTueLEovnOAKuMNr7hK8ojN85YP9KK7IFMwYrggAAAAAAAAAAAoAAAABAAAAAAEBaVIhAtbRFAvSwPkUyzDJkqovzSg/RxqSgc7snsbFvESOaGkAIQO4Vah1jtpoY2SERanTz7lTiKyhdGIa2Y8JmhxPkyb+xyEClfe1J9LqU3pNQoMEEKv0NAcxv5sg5UlyABkzuaojU2xTriICApX3tSfS6lN6TUKDBBCr9DQHMb+bIOVJcgAZM7mqI1NsFPZc2GkAAAAAAAAAABQAAAACAAAAIgIC1tEUC9LA+RTLMMmSqi/NKD9HGpKBzuyexsW8RI5oaQAU8u8DiQAAAAAAAAAAFAAAAAIAAAAiAgO4Vah1jtpoY2SERanTz7lTiKyhdGIa2Y8JmhxPkyb+xxTMGK4IAAAAAAAAAAAUAAAAAgAAAAABBSCOpYAW7Kvjz4SQ7GXXeRQVcfueXBLqyQXRgPDhApQzlAEG1QHARCCZ5DZVws89lQNiu2o6RGOA6At6H3DlKITrV2sTVtxuQK0gqG1/5n9plBExQ8wWNEyx6Ze4zI4d7iNlG5fHnAmvmt2sAsBEIJnkNlXCzz2VA2K7ajpEY4DoC3ofcOUohOtXaxNW3G5ArSA6CTUw6hWdc8j/kwme4Km7npqjngsrhGQtR7T4DUh8u6wCwEQgOgk1MOoVnXPI/5MJnuCpu56ao54LK4RkLUe0+A1IfLutIKhtf+Z/aZQRMUPMFjRMsemXuMyOHe4jZRuXx5wJr5rdrCEHOgk1MOoVnXPI/5MJnuCpu56ao54LK4RkLUe0+A1IfLtVAs+WBcrsOCQ0e9cK1W53YJX6Y/O8aATQQwzs/+TiU9jOvA47fZUq2Va7d1neIXNYLHUA2PKf5MGt5nEbOdeTWBrMGK4IAAAAAAAAAAAeAAAAAwAAACEHmeQ2VcLPPZUDYrtqOkRjgOgLeh9w5SiE61drE1bcbkBVAo1mCbJUNTSBDhIZxXwbofscwrGnQnJsCqfzfQPQI0Aaz5YFyuw4JDR71wrVbndglfpj87xoBNBDDOz/5OJT2M7y7wOJAAAAAAAAAAAeAAAAAwAAACEHqG1/5n9plBExQ8wWNEyx6Ze4zI4d7iNlG5fHnAmvmt1VAo1mCbJUNTSBDhIZxXwbofscwrGnQnJsCqfzfQPQI0AavA47fZUq2Va7d1neIXNYLHUA2PKf5MGt5nEbOdeTWBr2XNhpAAAAAAAAAAAeAAAAAwAAAAABBSAxta8UEhx6mX4fWNxxePiyWJ4zD+Wp3IwWVJ+Qy76exQEGjgHARCBOjQ6DQf6Vczr8o9vxhS3ndpXih5WXl8bYFZ+/sCtItq0gwWDCevzEiIxZPxje4teYVldQjANwWrbw9jXTUsuvZJmsAcBEIMFgwnr8xIiMWT8Y3uLXmFZXUIwDcFq28PY101LLr2SZrSBoNgiQjIv+leOPCZBooXAUAzISnusDSAseSAbU9PQ8LKwhB06NDoNB/pVzOvyj2/GFLed2leKHlZeXxtgVn7+wK0i2NQEPOVAKVFIPru/oTlpPlZWUNSMwfvJTp93HExiab1oy8PLvA4kAAAAAAAAAACgAAAAEAAAAIQdoNgiQjIv+leOPCZBooXAUAzISnusDSAseSAbU9PQ8LDUB16NW+3exjkO8hhWA5FwARMCFfjGxvedgg9kIDDPT/8/2XNhpAAAAAAAAAAAoAAAABAAAACEHwWDCevzEiIxZPxje4teYVldQjANwWrbw9jXTUsuvZJlVAg85UApUUg+u7+hOWk+VlZQ1IzB+8lOn3ccTGJpvWjLw16NW+3exjkO8hhWA5FwARMCFfjGxvedgg9kIDDPT/8/MGK4IAAAAAAAAAAAoAAAABAAAAAA=", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json index dd10435..036c286 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json index f46604f..5c85dde 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHIgID4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tIMEUCIQDMd8sdfMIe+G7YRSF4GmNZVJul5tc25GtI44GB4E4R7wIgRIA+PNMfb31715EeqQe9CGFZjoJL3L6147AxFKr7LHRBIgID9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn9IMEUCIQCHYx9Uvql7pvsTWvwOaqUAD0BfjH9AdftEYk/LEAEQ8QIgPzwmpjLu8TGzLCNVN+jQjwBEsuz89HY7vO5Aqe4E4QxBAQMEQQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhyICAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVSDBFAiEAhk4utvMvq1+A5rMhVJ0LLSozXeZVvnxzS8L4m8HxCFoCIHt0jbPPC6nNTOVkyB2iD6nD4B95ds3AWjcEAEzmDpISQQEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAQf9/gAASDBFAiEAh2MfVL6pe6b7E1r8DmqlAA9AX4x/QHX7RGJPyxABEPECID88JqYy7vExsywjVTfo0I8ARLLs/PR2O7zuQKnuBOEMQUgwRQIhAMx3yx18wh74bthFIXgaY1lUm6Xm1zbka0jjgYHgThHvAiBEgD480x9vfXvXkR6pB70IYVmOgkvcvrXjsDEUqvssdEFMaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTrgABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwEHbUgwRQIhAIZOLrbzL6tfgOazIVSdCy0qM13mVb58c0vC+JvB8QhaAiB7dI2zzwupzUzlZMgdog+pw+AfeXbNwFo3BABM5g6SEkEjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json index 4ca118a..c2cd7a4 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHIgID9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn9IMEUCIQCHYx9Uvql7pvsTWvwOaqUAD0BfjH9AdftEYk/LEAEQ8QIgPzwmpjLu8TGzLCNVN+jQjwBEsuz89HY7vO5Aqe4E4QxBAQMEQQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhyICAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVSDBFAiEAhk4utvMvq1+A5rMhVJ0LLSozXeZVvnxzS8L4m8HxCFoCIHt0jbPPC6nNTOVkyB2iD6nD4B95ds3AWjcEAEzmDpISQQEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json index 484ec70..e04e123 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAQMEQQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json index f0ade96..1f5e671 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "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", "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json index e01baca..d471f49 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json index 7637b18..e4d3b88 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json index 98f2204..e31bef5 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHIgID4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tIMEUCIQC/se210An1bN0YjFZUzdyN3cyPRdA8inPCCOgQ+XGx4AIgBOijMLzWLH5NNIcd40FBUfqcYr5nhFPzXxTa24LTXeoBIgID9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn9IMEUCIQCO+pZccFVYiTnBW8PmM2utiw08zGgEKH7ltvty0Av+/AIgfGhafXFFx0LOicYnmLq/P4tBT+sNYKdVMfHkPpsp6NEBAQMEAQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhyICAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVSDBFAiEAuxRF10PbPIRrkm3EeuPBiryAEPe6VfOFx81wlLbSvbICIBn6uLAtSgEArC7ZpvPlaRL6pLZg1SYY+TzNKih6bltoAQEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAQf9/gAASDBFAiEAjvqWXHBVWIk5wVvD5jNrrYsNPMxoBCh+5bb7ctAL/vwCIHxoWn1xRcdCzonGJ5i6vz+LQU/rDWCnVTHx5D6bKejRAUgwRQIhAL+x7bXQCfVs3RiMVlTN3I3dzI9F0DyKc8II6BD5cbHgAiAE6KMwvNYsfk00hx3jQUFR+pxivmeEU/NfFNrbgtNd6gFMaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTrgABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwEHbUgwRQIhALsURddD2zyEa5JtxHrjwYq8gBD3ulXzhcfNcJS20r2yAiAZ+riwLUoBAKwu2abz5WkS+qS2YNUmGPk8zSooem5baAEjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json index 9db71f3..ae1a151 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHIgID9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn9IMEUCIQCO+pZccFVYiTnBW8PmM2utiw08zGgEKH7ltvty0Av+/AIgfGhafXFFx0LOicYnmLq/P4tBT+sNYKdVMfHkPpsp6NEBAQMEAQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhyICAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVSDBFAiEAuxRF10PbPIRrkm3EeuPBiryAEPe6VfOFx81wlLbSvbICIBn6uLAtSgEArC7ZpvPlaRL6pLZg1SYY+TzNKih6bltoAQEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.unsigned.json index 4eaa152..f6bad9e 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAQMEAQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json index e18d143..3a822cf 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHIgID4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tIMEUCIQC/se210An1bN0YjFZUzdyN3cyPRdA8inPCCOgQ+XGx4AIgBOijMLzWLH5NNIcd40FBUfqcYr5nhFPzXxTa24LTXeoBIgID9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn9IMEUCIQCO+pZccFVYiTnBW8PmM2utiw08zGgEKH7ltvty0Av+/AIgfGhafXFFx0LOicYnmLq/P4tBT+sNYKdVMfHkPpsp6NEBAQMEAQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhyICAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVSDBFAiEAuxRF10PbPIRrkm3EeuPBiryAEPe6VfOFx81wlLbSvbICIBn6uLAtSgEArC7ZpvPlaRL6pLZg1SYY+TzNKih6bltoAQEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAQf9/gAASDBFAiEAjvqWXHBVWIk5wVvD5jNrrYsNPMxoBCh+5bb7ctAL/vwCIHxoWn1xRcdCzonGJ5i6vz+LQU/rDWCnVTHx5D6bKejRAUgwRQIhAL+x7bXQCfVs3RiMVlTN3I3dzI9F0DyKc8II6BD5cbHgAiAE6KMwvNYsfk00hx3jQUFR+pxivmeEU/NfFNrbgtNd6gFMaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTrgABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwEHbUgwRQIhALsURddD2zyEa5JtxHrjwYq8gBD3ulXzhcfNcJS20r2yAiAZ+riwLUoBAKwu2abz5WkS+qS2YNUmGPk8zSooem5baAEjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json index 5a16239..8ded7bf 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHIgID9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn9IMEUCIQCO+pZccFVYiTnBW8PmM2utiw08zGgEKH7ltvty0Av+/AIgfGhafXFFx0LOicYnmLq/P4tBT+sNYKdVMfHkPpsp6NEBAQMEAQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhyICAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVSDBFAiEAuxRF10PbPIRrkm3EeuPBiryAEPe6VfOFx81wlLbSvbICIBn6uLAtSgEArC7ZpvPlaRL6pLZg1SYY+TzNKih6bltoAQEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json index 47af686..a709eee 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAQMEAQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json index f46604f..5c85dde 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHIgID4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tIMEUCIQDMd8sdfMIe+G7YRSF4GmNZVJul5tc25GtI44GB4E4R7wIgRIA+PNMfb31715EeqQe9CGFZjoJL3L6147AxFKr7LHRBIgID9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn9IMEUCIQCHYx9Uvql7pvsTWvwOaqUAD0BfjH9AdftEYk/LEAEQ8QIgPzwmpjLu8TGzLCNVN+jQjwBEsuz89HY7vO5Aqe4E4QxBAQMEQQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhyICAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVSDBFAiEAhk4utvMvq1+A5rMhVJ0LLSozXeZVvnxzS8L4m8HxCFoCIHt0jbPPC6nNTOVkyB2iD6nD4B95ds3AWjcEAEzmDpISQQEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAQf9/gAASDBFAiEAh2MfVL6pe6b7E1r8DmqlAA9AX4x/QHX7RGJPyxABEPECID88JqYy7vExsywjVTfo0I8ARLLs/PR2O7zuQKnuBOEMQUgwRQIhAMx3yx18wh74bthFIXgaY1lUm6Xm1zbka0jjgYHgThHvAiBEgD480x9vfXvXkR6pB70IYVmOgkvcvrXjsDEUqvssdEFMaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTrgABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwEHbUgwRQIhAIZOLrbzL6tfgOazIVSdCy0qM13mVb58c0vC+JvB8QhaAiB7dI2zzwupzUzlZMgdog+pw+AfeXbNwFo3BABM5g6SEkEjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json index 4ca118a..c2cd7a4 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHIgID9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn9IMEUCIQCHYx9Uvql7pvsTWvwOaqUAD0BfjH9AdftEYk/LEAEQ8QIgPzwmpjLu8TGzLCNVN+jQjwBEsuz89HY7vO5Aqe4E4QxBAQMEQQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhyICAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVSDBFAiEAhk4utvMvq1+A5rMhVJ0LLSozXeZVvnxzS8L4m8HxCFoCIHt0jbPPC6nNTOVkyB2iD6nD4B95ds3AWjcEAEzmDpISQQEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json index 484ec70..e04e123 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEBIOgDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAQMEQQAAAAEEaVIhA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/IQNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278iED4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1tTriIGA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyFMwYrggAAAAAAAAAAAEAAAAAAAAAIgYD4VJNf2/FerPqy7ZZt4cQZ4CkddHbSDlSwjELfpo4l1sU9lzYaQAAAAAAAAAAAQAAAAAAAAAiBgP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fxTy7wOJAAAAAAAAAAABAAAAAAAAAAABASDoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json index c1a51a2..c33722d 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "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", "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json index 733773f..90b3c27 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json index 54d6d05..475e298 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json index 287ec70..7c18110 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAI8EAACAhSAviQIBB9zNCDF0dfUWO8QpQQ9z3Z/LZm/Irya0Dt4Kb9gTWgAAAAAA/////9zG/5Z7pfP2yyTWKwtgO9K9CnmeqYqTLnAuKoKMdoA/AQAAAAD/////AYQDAAAAAAAAF6kU2QlHRATBJKPQTD+/9h+qSc9DxYuHAAAAAAAAAAAAAAAAAAAAAAAAAE8BBIiyHgAAAAAAAAAAADqSLinwyOsNsqYEhMvctjH2sQfJyq4//c8+fS7B9rzQAxIUhxXzYdq2haZp1CQx5dbT+XNATaucn9G5ULJ5rXY0BMwYrghPAQSIsh4AAAAAAAAAAABtHWVtPd2RwZTARWWjYDcCohAWztFKJl84mC1ideZ7ZAPTusIxOnxrIcuxGxSw0QNB+SLApAOovYyH8NyCDzWvbgT2XNhpTwEEiLIeAAAAAAAAAAAAywT9Y6s02Q/mRmuIDioCzPioYzdDEpka+JEbGqq0QzQDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJUE8u8DiQABASDoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhyICA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbSDBFAiEA8l0JX7fFIXphnq7n0jeMaonq7+IaCkkWGyXZcMl1l+QCIGwvnm1sL3/AX21b6v/D/UpaG00ASf1wJVHvUBnH3faaASICA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/SDBFAiEAkWXvn88VxZjdoK4DsAzGWAuhgPHNtxoH3B9UqDNMLk8CIBM5f78LkenZ/50WfxWuRaTjQ24Unoeq/jKB62Ued7Q2AQEDBAEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQgs3CU2CpRNFH/DM2dsjq6Bbxe84ciAgM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlUcwRAIgWeyxOotIYmnQMgWSTaHh35lPjBfHJU7uuRkTJ+3NwyACIAlB/co5zrBlVD8thq3Jiz59SIZzMgkf+SC+HMAg49L1AQEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": "cHNidP8BAI8EAACAhSAviQIBB9zNCDF0dfUWO8QpQQ9z3Z/LZm/Irya0Dt4Kb9gTWgAAAAAA/////9zG/5Z7pfP2yyTWKwtgO9K9CnmeqYqTLnAuKoKMdoA/AQAAAAD/////AYQDAAAAAAAAF6kU2QlHRATBJKPQTD+/9h+qSc9DxYuHAAAAAAAAAAAAAAAAAAAAAAAAAE8BBIiyHgAAAAAAAAAAADqSLinwyOsNsqYEhMvctjH2sQfJyq4//c8+fS7B9rzQAxIUhxXzYdq2haZp1CQx5dbT+XNATaucn9G5ULJ5rXY0BMwYrghPAQSIsh4AAAAAAAAAAABtHWVtPd2RwZTARWWjYDcCohAWztFKJl84mC1ideZ7ZAPTusIxOnxrIcuxGxSw0QNB+SLApAOovYyH8NyCDzWvbgT2XNhpTwEEiLIeAAAAAAAAAAAAywT9Y6s02Q/mRmuIDioCzPioYzdDEpka+JEbGqq0QzQDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJUE8u8DiQABASDoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhwEH/f4AAEgwRQIhAJFl75/PFcWY3aCuA7AMxlgLoYDxzbcaB9wfVKgzTC5PAiATOX+/C5Hp2f+dFn8VrkWk40NuFJ6Hqv4ygetlHne0NgFIMEUCIQDyXQlft8UhemGerufSN4xqierv4hoKSRYbJdlwyXWX5AIgbC+ebWwvf8BfbVvq/8P9SlobTQBJ/XAlUe9QGcfd9poBTGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64AAQEg6AMAAAAAAAAXqRQgs3CU2CpRNFH/DM2dsjq6Bbxe84cBB2xHMEQCIFnssTqLSGJp0DIFkk2h4d+ZT4wXxyVO7rkZEyftzcMgAiAJQf3KOc6wZVQ/LYatyYs+fUiGczIJH/kgvhzAIOPS9QEjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", "inputs": [ { "hash": "0107dccd08317475f5163bc429410f73dd9fcb666fc8af26b40ede0a6fd8135a", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json index fa0261a..9a4f3d9 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAI8EAACAhSAviQIBB9zNCDF0dfUWO8QpQQ9z3Z/LZm/Irya0Dt4Kb9gTWgAAAAAA/////9zG/5Z7pfP2yyTWKwtgO9K9CnmeqYqTLnAuKoKMdoA/AQAAAAD/////AYQDAAAAAAAAF6kU2QlHRATBJKPQTD+/9h+qSc9DxYuHAAAAAAAAAAAAAAAAAAAAAAAAAE8BBIiyHgAAAAAAAAAAADqSLinwyOsNsqYEhMvctjH2sQfJyq4//c8+fS7B9rzQAxIUhxXzYdq2haZp1CQx5dbT+XNATaucn9G5ULJ5rXY0BMwYrghPAQSIsh4AAAAAAAAAAABtHWVtPd2RwZTARWWjYDcCohAWztFKJl84mC1ideZ7ZAPTusIxOnxrIcuxGxSw0QNB+SLApAOovYyH8NyCDzWvbgT2XNhpTwEEiLIeAAAAAAAAAAAAywT9Y6s02Q/mRmuIDioCzPioYzdDEpka+JEbGqq0QzQDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJUE8u8DiQABASDoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhyICA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/SDBFAiEAkWXvn88VxZjdoK4DsAzGWAuhgPHNtxoH3B9UqDNMLk8CIBM5f78LkenZ/50WfxWuRaTjQ24Unoeq/jKB62Ued7Q2AQEDBAEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQgs3CU2CpRNFH/DM2dsjq6Bbxe84ciAgM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlUcwRAIgWeyxOotIYmnQMgWSTaHh35lPjBfHJU7uuRkTJ+3NwyACIAlB/co5zrBlVD8thq3Jiz59SIZzMgkf+SC+HMAg49L1AQEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "0107dccd08317475f5163bc429410f73dd9fcb666fc8af26b40ede0a6fd8135a", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json index a28e283..4ebd4e6 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAI8EAACAhSAviQIBB9zNCDF0dfUWO8QpQQ9z3Z/LZm/Irya0Dt4Kb9gTWgAAAAAA/////9zG/5Z7pfP2yyTWKwtgO9K9CnmeqYqTLnAuKoKMdoA/AQAAAAD/////AYQDAAAAAAAAF6kU2QlHRATBJKPQTD+/9h+qSc9DxYuHAAAAAAAAAAAAAAAAAAAAAAAAAE8BBIiyHgAAAAAAAAAAADqSLinwyOsNsqYEhMvctjH2sQfJyq4//c8+fS7B9rzQAxIUhxXzYdq2haZp1CQx5dbT+XNATaucn9G5ULJ5rXY0BMwYrghPAQSIsh4AAAAAAAAAAABtHWVtPd2RwZTARWWjYDcCohAWztFKJl84mC1ideZ7ZAPTusIxOnxrIcuxGxSw0QNB+SLApAOovYyH8NyCDzWvbgT2XNhpTwEEiLIeAAAAAAAAAAAAywT9Y6s02Q/mRmuIDioCzPioYzdDEpka+JEbGqq0QzQDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJUE8u8DiQABASDoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhwEDBAEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQgs3CU2CpRNFH/DM2dsjq6Bbxe84cBAwQBAAAAAQQjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", + "psbtBase64Finalized": null, "inputs": [ { "hash": "0107dccd08317475f5163bc429410f73dd9fcb666fc8af26b40ede0a6fd8135a", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json index b000185..c1ffe98 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "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", "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json index 4a1666d..2ac23da 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.unsigned.json index 237b0c9..01fe0aa 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAP3qAQEAAAAH2Z764Zn8TVTlglqOM2ijlenrMpkVz7XYjcMRUH0YSDYAAAAAAP////8eyXKaGyU3OjDw/m4IebMRNqVPL4yYYYxGhidIoIxeeAEAAAAA/////7sN++ulm7pp484HpUNG+ATFQ/pG2CjtU50RIxrbqot7AgAAAAD/////pmKl/+v1i/PmXlNFbGfAKcwVSiQJdA2M03/e51WcXv0DAAAAAP/////TlDdc7iOzuZUUiMBANSkVeoWwWO3ANRVG2etIB+ih0wQAAAAA/////w0vfzSG7a78arksIffK+QCFxN5K2sSREG/YoOT1Y96jBQAAAAD/////l0QdmajWbxJKs8neJrh70ArrFUcFHIQqiBZcGwie6QIGAAAAAP////8FhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4eEAwAAAAAAABepFAVBJxIdN/MiZs2WfEhUBJdqZ63wh4QDAAAAAAAAIgAgukjj+YdEY5Q/kBkqRfGuiVt3k2KnYpr3rWqdeoNePU+EAwAAAAAAACJRILJyJ/XK3AVq/qSwK0uXuaAVF4YjTCatWI3M8TTniTHGhAMAAAAAAAAiUSBPc7VWE5nrOXtatBPgkMwMSP9wOmGv5Hz31Hoj1DuXiwAAAABPAQSIsh4AAAAAAAAAAAA6ki4p8MjrDbKmBITL3LYx9rEHycquP/3PPn0uwfa80AMSFIcV82HatoWmadQkMeXW0/lzQE2rnJ/RuVCyea12NATMGK4ITwEEiLIeAAAAAAAAAAAAbR1lbT3dkcGUwEVlo2A3AqIQFs7RSiZfOJgtYnXme2QD07rCMTp8ayHLsRsUsNEDQfkiwKQDqL2Mh/Dcgg81r24E9lzYaU8BBIiyHgAAAAAAAAAAAMsE/WOrNNkP5kZriA4qAsz4qGM3QxKZGviRGxqqtEM0AzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVBPLvA4kAAQC+AQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAABrSDBFAiEAjXonDnk/0zb8oQtmEpxkwAgV3Z08RUaxLWmaszUgBzACIH1sXdRvXJxlwI/Slem059tFN3mSjHZRKAOWNLCO1GehASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AegDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAAAAAAEDBAEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQOJrJdDOrm+c/z7azKoNGnDadgD4cBAwQBAAAAAQQiACBG1IAKE5MzAZYIU5ntShcAtML9OMUhiMOjqR9yHzyWAAEFaVIhAqWF8/q0m175U0bZMiIaIhvVXsGR8VUz4PJws1gldPA1IQLE94Zs/VmWvBBoqWMTyhXpzLXphFg6BzQN3a568BRgWyECI0UxvJEZo2p5Rula63SRXdCHx7RPUXuO7rc/iaD/GplTriIGAiNFMbyRGaNqeUbpWut0kV3Qh8e0T1F7ju63P4mg/xqZFPZc2GkAAAAAAAAAAAsAAAABAAAAIgYCpYXz+rSbXvlTRtkyIhoiG9VewZHxVTPg8nCzWCV08DUU8u8DiQAAAAAAAAAACwAAAAEAAAAiBgLE94Zs/VmWvBBoqWMTyhXpzLXphFg6BzQN3a568BRgWxTMGK4IAAAAAAAAAAALAAAAAQAAAAABASvoAwAAAAAAACIAINsEJ/GCK0d3Zw5mc8KK8C9todWv5xpx9ckGRHCyKfr9AQMEAQAAAAEFaVIhA1GeVyq0aFYNH40Ph2mdCYMI4WaQX13K5DkPBg+qjxzjIQOgW8JjkSIdaF4Y2q/zah6Vw0+ZRRJTwWzUJlDbJ4p5ESEC6AoIiFw1Nna4IM3CkObYGgrJWgPoq79Lt67r+3D+tBhTriIGAugKCIhcNTZ2uCDNwpDm2BoKyVoD6Ku/S7eu6/tw/rQYFPZc2GkAAAAAAAAAABUAAAACAAAAIgYDUZ5XKrRoVg0fjQ+HaZ0JgwjhZpBfXcrkOQ8GD6qPHOMU8u8DiQAAAAAAAAAAFQAAAAIAAAAiBgOgW8JjkSIdaF4Y2q/zah6Vw0+ZRRJTwWzUJlDbJ4p5ERTMGK4IAAAAAAAAAAAVAAAAAgAAAAABASvoAwAAAAAAACJRIDlLlNBh17d4/tiiBM4F7QtElU7BYi+TT4QRThFz8zAnAQMEAAAAAEIVwLwX6iu/b/Rr1cDDeAvipjiA63u3grOe2G8puZ9IgplOGxeLG1XTxqrHsDnjQi39ucnXXU1vyQjpdD6ItlHkjYNFIHNz1yPOCof4/dZoQ74S2unVGTn2gYjVrZaSC+9fUfSWrSCqiMoZT9pDSGUEuGrJtx8Q/EHeexcTh0g5Qn9054wtWqzAIRZzc9cjzgqH+P3WaEO+Etrp1Rk59oGI1a2WkgvvX1H0ljUBg9f5jp7w9zNqBvSgEVGDqfmWy6wSKOmqdjj0R/AknzDy7wOJAAAAAAAAAAAfAAAAAwAAACEWqojKGU/aQ0hlBLhqybcfEPxB3nsXE4dIOUJ/dOeMLVo1AYPX+Y6e8Pczagb0oBFRg6n5lsusEijpqnY49EfwJJ8w9lzYaQAAAAAAAAAAHwAAAAMAAAAAAQEr6AMAAAAAAAAiUSApu/r0OFsQ3Cu+erTVDonOvo9QeWhyexloniY4CDzFWwEDBAAAAABCFcGhB6QD96IH57H1UtP9P1X2SuQOFJ0NJvSGitf67JSet2N+N8rG5fIjR6to6Ha1WRF9lZfuezf7mDwqueUQI8l2RSBkMVGrA/Ope7htNZLxL40lqAJtic1HNC/BtJxeLmNHi60gA1ydYy2y3bj5DPPM/JMYIryx8kVisjrgQavxLlS8pk2swCEWA1ydYy2y3bj5DPPM/JMYIryx8kVisjrgQavxLlS8pk01AUKQacgyD/XxyKwqCxBH/xRQuMDTJeHRLxxSaE2Ro7n7zBiuCAAAAAAAAAAAKQAAAAQAAAAhFmQxUasD86l7uG01kvEvjSWoAm2JzUc0L8G0nF4uY0eLNQFCkGnIMg/18cisKgsQR/8UULjA0yXh0S8cUmhNkaO5+/LvA4kAAAAAAAAAACkAAAAEAAAAAAEBK+gDAAAAAAAAIlEgFcWBUCb2pUsQGU/GmA8YZqAtnsEoUzx5l820KJvz7xYBAwQAAAAAIRYP3qaeQKOt7zzcf6bzrwL0ydnjJUUDyWpqK0qmbneBcRUA9lzYaQAAAAAAAAAAKQAAAAUAAAAhFh2XihdIb/nkfIKZAmnlMfxjmBQZ1M5z7ovSyZZhxTlTFQDy7wOJAAAAAAAAAAApAAAABQAAAAEXIOta0pqFrtJN4ogOd0yq9iT5yxvgnGftSu+7m3vBLd8aARggsqSX6k0LUvUBGuE10Lvg2evXd7so5zPLzBMTS3MQahpI/AVCSVRHTwEVxYFQJvalSxAZT8aYDxhmoC2ewShTPHmXzbQom/PvFuta0pqFrtJN4ogOd0yq9iT5yxvgnGftSu+7m3vBLd8aQgIdl4oXSG/55HyCmQJp5TH8Y5gUGdTOc+6L0smWYcU5UwIP3qaeQKOt7zzcf6bzrwL0ydnjJUUDyWpqK0qmbneBcQABAP2JAQEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgKpG65tXFQ6tRzNBAn1RGm1Od0uVp+QlJuL5jfqvTkCgCIG0489h7WYJ1vvbZEORhTkRSVzMgyj3eoVDkkBqjeB98ASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////B+gDAAAAAAAAGXapFIg62NGv/finPL2vcje1xauewsMmiKzoAwAAAAAAABl2qRSIOtjRr/34pzy9r3I3tcWrnsLDJois6AMAAAAAAAAZdqkUiDrY0a/9+Kc8va9yN7XFq57CwyaIrOgDAAAAAAAAGXapFIg62NGv/finPL2vcje1xauewsMmiKzoAwAAAAAAABl2qRSIOtjRr/34pzy9r3I3tcWrnsLDJois6AMAAAAAAAAZdqkUiDrY0a/9+Kc8va9yN7XFq57CwyaIrOgDAAAAAAAAF6kUILNwlNgqUTRR/wzNnbI6ugW8XvOHAAAAAAEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAAAQAiACApKwUjUaPG+A1RuuZCzIghGCiT2+7avI9dDpZ3R2AmwQEBaVIhAy4R+YVSaF/pB/MfnnJgyQbo3nAPDDyfLxQQYj3N/RnAIQNUV1fONc8e37E7nixKL5zgCrjDa+4SvKIzfOWD/SiuyCECo8+2Zl/kT3UgtqG03hpNRmQ7OF6x/R4Ktw77llQpdVRTriICAqPPtmZf5E91ILahtN4aTUZkOzhesf0eCrcO+5ZUKXVUFPZc2GkAAAAAAAAAAAoAAAABAAAAIgIDLhH5hVJoX+kH8x+ecmDJBujecA8MPJ8vFBBiPc39GcAU8u8DiQAAAAAAAAAACgAAAAEAAAAiAgNUV1fONc8e37E7nixKL5zgCrjDa+4SvKIzfOWD/SiuyBTMGK4IAAAAAAAAAAAKAAAAAQAAAAABAWlSIQLW0RQL0sD5FMswyZKqL80oP0cakoHO7J7GxbxEjmhpACEDuFWodY7aaGNkhEWp08+5U4isoXRiGtmPCZocT5Mm/schApX3tSfS6lN6TUKDBBCr9DQHMb+bIOVJcgAZM7mqI1NsU64iAgKV97Un0upTek1CgwQQq/Q0BzG/myDlSXIAGTO5qiNTbBT2XNhpAAAAAAAAAAAUAAAAAgAAACICAtbRFAvSwPkUyzDJkqovzSg/RxqSgc7snsbFvESOaGkAFPLvA4kAAAAAAAAAABQAAAACAAAAIgIDuFWodY7aaGNkhEWp08+5U4isoXRiGtmPCZocT5Mm/scUzBiuCAAAAAAAAAAAFAAAAAIAAAAAAQUgjqWAFuyr48+EkOxl13kUFXH7nlwS6skF0YDw4QKUM5QBBtUBwEQgmeQ2VcLPPZUDYrtqOkRjgOgLeh9w5SiE61drE1bcbkCtIKhtf+Z/aZQRMUPMFjRMsemXuMyOHe4jZRuXx5wJr5rdrALARCCZ5DZVws89lQNiu2o6RGOA6At6H3DlKITrV2sTVtxuQK0gOgk1MOoVnXPI/5MJnuCpu56ao54LK4RkLUe0+A1IfLusAsBEIDoJNTDqFZ1zyP+TCZ7gqbuemqOeCyuEZC1HtPgNSHy7rSCobX/mf2mUETFDzBY0TLHpl7jMjh3uI2Ubl8ecCa+a3awhBzoJNTDqFZ1zyP+TCZ7gqbuemqOeCyuEZC1HtPgNSHy7VQLPlgXK7DgkNHvXCtVud2CV+mPzvGgE0EMM7P/k4lPYzrwOO32VKtlWu3dZ3iFzWCx1ANjyn+TBreZxGznXk1gazBiuCAAAAAAAAAAAHgAAAAMAAAAhB5nkNlXCzz2VA2K7ajpEY4DoC3ofcOUohOtXaxNW3G5AVQKNZgmyVDU0gQ4SGcV8G6H7HMKxp0JybAqn830D0CNAGs+WBcrsOCQ0e9cK1W53YJX6Y/O8aATQQwzs/+TiU9jO8u8DiQAAAAAAAAAAHgAAAAMAAAAhB6htf+Z/aZQRMUPMFjRMsemXuMyOHe4jZRuXx5wJr5rdVQKNZgmyVDU0gQ4SGcV8G6H7HMKxp0JybAqn830D0CNAGrwOO32VKtlWu3dZ3iFzWCx1ANjyn+TBreZxGznXk1ga9lzYaQAAAAAAAAAAHgAAAAMAAAAAAQUgMbWvFBIcepl+H1jccXj4slieMw/lqdyMFlSfkMu+nsUBBo4BwEQgTo0Og0H+lXM6/KPb8YUt53aV4oeVl5fG2BWfv7ArSLatIMFgwnr8xIiMWT8Y3uLXmFZXUIwDcFq28PY101LLr2SZrAHARCDBYMJ6/MSIjFk/GN7i15hWV1CMA3BatvD2NdNSy69kma0gaDYIkIyL/pXjjwmQaKFwFAMyEp7rA0gLHkgG1PT0PCysIQdOjQ6DQf6Vczr8o9vxhS3ndpXih5WXl8bYFZ+/sCtItjUBDzlQClRSD67v6E5aT5WVlDUjMH7yU6fdxxMYmm9aMvDy7wOJAAAAAAAAAAAoAAAABAAAACEHaDYIkIyL/pXjjwmQaKFwFAMyEp7rA0gLHkgG1PT0PCw1AdejVvt3sY5DvIYVgORcAETAhX4xsb3nYIPZCAwz0//P9lzYaQAAAAAAAAAAKAAAAAQAAAAhB8Fgwnr8xIiMWT8Y3uLXmFZXUIwDcFq28PY101LLr2SZVQIPOVAKVFIPru/oTlpPlZWUNSMwfvJTp93HExiab1oy8NejVvt3sY5DvIYVgORcAETAhX4xsb3nYIPZCAwz0//PzBiuCAAAAAAAAAAAKAAAAAQAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json index 3bbcb84..b389eed 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvQIAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgHqWF/NB4uNG9Cdr663PVIIerF2/RZ//WCD58UnE55r4CIBonxwq68xAfzVMswOmRbYP+EmLi2xJYvm2WYaYWqmWDASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AegDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAAAAAAEH/f4AAEgwRQIhAIdjH1S+qXum+xNa/A5qpQAPQF+Mf0B1+0RiT8sQARDxAiA/PCamMu7xMbMsI1U36NCPAESy7Pz0dju87kCp7gThDEFIMEUCIQDMd8sdfMIe+G7YRSF4GmNZVJul5tc25GtI44GB4E4R7wIgRIA+PNMfb31715EeqQe9CGFZjoJL3L6147AxFKr7LHRBTGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64AAQDfAgAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAABqRzBEAiAUtzwIwBg3cJhto0qXV+rthn5i0RgYimSc4RNW2n8QwQIgLZHlpgzyLcJzb0+lIzOidvYO1tajMvtuj/yU3t27pEQBIQO9DDSyNz44dXXN2xA+wDkWwxBE8lCOJh/jWXomgOy9H/////8C6AMAAAAAAAAZdqkUiDrY0a/9+Kc8va9yN7XFq57CwyaIrOgDAAAAAAAAF6kUILNwlNgqUTRR/wzNnbI6ugW8XvOHAAAAAAEHbUgwRQIhAIZOLrbzL6tfgOazIVSdCy0qM13mVb58c0vC+JvB8QhaAiB7dI2zzwupzUzlZMgdog+pw+AfeXbNwFo3BABM5g6SEkEjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json index fe6edf2..da1fb64 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json index b63209e..82d2ce9 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvQIAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgHqWF/NB4uNG9Cdr663PVIIerF2/RZ//WCD58UnE55r4CIBonxwq68xAfzVMswOmRbYP+EmLi2xJYvm2WYaYWqmWDASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AegDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAAAAAAEDBEEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQDfAgAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAABqRzBEAiAUtzwIwBg3cJhto0qXV+rthn5i0RgYimSc4RNW2n8QwQIgLZHlpgzyLcJzb0+lIzOidvYO1tajMvtuj/yU3t27pEQBIQO9DDSyNz44dXXN2xA+wDkWwxBE8lCOJh/jWXomgOy9H/////8C6AMAAAAAAAAZdqkUiDrY0a/9+Kc8va9yN7XFq57CwyaIrOgDAAAAAAAAF6kUILNwlNgqUTRR/wzNnbI6ugW8XvOHAAAAAAEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json index 4ec2e1e..1e18b2d 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "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", "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json index 8727a99..3856701 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json index 6a3236e..471cc2b 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAP0ZAQIAAAAEXHl7JZuCciuE7AYqznYGwAktTG1xHrS3dWe+E7Rwxq8AAAAAAP////8w57CA8+oTQ5EOL6FfWb7OJVTPMKkj0zvCjx6/ugtrSQEAAAAA/////9QB0PHuoV0QUhdbprACPeye09XU48ta3KpUb+fP+syJAgAAAAD/////FExoOFOAMZV1idmrdt6ukrAf5jVo2r8aZCk+afJaeUEDAAAAAP////8DhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4eEAwAAAAAAABepFAVBJxIdN/MiZs2WfEhUBJdqZ63wh4QDAAAAAAAAIgAgukjj+YdEY5Q/kBkqRfGuiVt3k2KnYpr3rWqdeoNePU8AAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvQIAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgHqWF/NB4uNG9Cdr663PVIIerF2/RZ//WCD58UnE55r4CIBonxwq68xAfzVMswOmRbYP+EmLi2xJYvm2WYaYWqmWDASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AegDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAAAAAAEDBEEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQOJrJdDOrm+c/z7azKoNGnDadgD4cBAwRBAAAAAQQiACBG1IAKE5MzAZYIU5ntShcAtML9OMUhiMOjqR9yHzyWAAEFaVIhAqWF8/q0m175U0bZMiIaIhvVXsGR8VUz4PJws1gldPA1IQLE94Zs/VmWvBBoqWMTyhXpzLXphFg6BzQN3a568BRgWyECI0UxvJEZo2p5Rula63SRXdCHx7RPUXuO7rc/iaD/GplTriIGAiNFMbyRGaNqeUbpWut0kV3Qh8e0T1F7ju63P4mg/xqZFPZc2GkAAAAAAAAAAAsAAAABAAAAIgYCpYXz+rSbXvlTRtkyIhoiG9VewZHxVTPg8nCzWCV08DUU8u8DiQAAAAAAAAAACwAAAAEAAAAiBgLE94Zs/VmWvBBoqWMTyhXpzLXphFg6BzQN3a568BRgWxTMGK4IAAAAAAAAAAALAAAAAQAAAAABASvoAwAAAAAAACIAINsEJ/GCK0d3Zw5mc8KK8C9todWv5xpx9ckGRHCyKfr9AQMEQQAAAAEFaVIhA1GeVyq0aFYNH40Ph2mdCYMI4WaQX13K5DkPBg+qjxzjIQOgW8JjkSIdaF4Y2q/zah6Vw0+ZRRJTwWzUJlDbJ4p5ESEC6AoIiFw1Nna4IM3CkObYGgrJWgPoq79Lt67r+3D+tBhTriIGAugKCIhcNTZ2uCDNwpDm2BoKyVoD6Ku/S7eu6/tw/rQYFPZc2GkAAAAAAAAAABUAAAACAAAAIgYDUZ5XKrRoVg0fjQ+HaZ0JgwjhZpBfXcrkOQ8GD6qPHOMU8u8DiQAAAAAAAAAAFQAAAAIAAAAiBgOgW8JjkSIdaF4Y2q/zah6Vw0+ZRRJTwWzUJlDbJ4p5ERTMGK4IAAAAAAAAAAAVAAAAAgAAAAABAP0jAQIAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgUirAS2gwAEFWaD7EkS4MFRfx64AzfKZHWhQl+A8kjBACIA73mxlbjxs3rEKommcRHhRw66mNtWb5AY3SygGZv9HBASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////BOgDAAAAAAAAGXapFIg62NGv/finPL2vcje1xauewsMmiKzoAwAAAAAAABl2qRSIOtjRr/34pzy9r3I3tcWrnsLDJois6AMAAAAAAAAZdqkUiDrY0a/9+Kc8va9yN7XFq57CwyaIrOgDAAAAAAAAF6kUILNwlNgqUTRR/wzNnbI6ugW8XvOHAAAAAAEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAAAQAiACApKwUjUaPG+A1RuuZCzIghGCiT2+7avI9dDpZ3R2AmwQEBaVIhAy4R+YVSaF/pB/MfnnJgyQbo3nAPDDyfLxQQYj3N/RnAIQNUV1fONc8e37E7nixKL5zgCrjDa+4SvKIzfOWD/SiuyCECo8+2Zl/kT3UgtqG03hpNRmQ7OF6x/R4Ktw77llQpdVRTriICAqPPtmZf5E91ILahtN4aTUZkOzhesf0eCrcO+5ZUKXVUFPZc2GkAAAAAAAAAAAoAAAABAAAAIgIDLhH5hVJoX+kH8x+ecmDJBujecA8MPJ8vFBBiPc39GcAU8u8DiQAAAAAAAAAACgAAAAEAAAAiAgNUV1fONc8e37E7nixKL5zgCrjDa+4SvKIzfOWD/SiuyBTMGK4IAAAAAAAAAAAKAAAAAQAAAAABAWlSIQLW0RQL0sD5FMswyZKqL80oP0cakoHO7J7GxbxEjmhpACEDuFWodY7aaGNkhEWp08+5U4isoXRiGtmPCZocT5Mm/schApX3tSfS6lN6TUKDBBCr9DQHMb+bIOVJcgAZM7mqI1NsU64iAgKV97Un0upTek1CgwQQq/Q0BzG/myDlSXIAGTO5qiNTbBT2XNhpAAAAAAAAAAAUAAAAAgAAACICAtbRFAvSwPkUyzDJkqovzSg/RxqSgc7snsbFvESOaGkAFPLvA4kAAAAAAAAAABQAAAACAAAAIgIDuFWodY7aaGNkhEWp08+5U4isoXRiGtmPCZocT5Mm/scUzBiuCAAAAAAAAAAAFAAAAAIAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.fullsigned.json index 0a6086c..8ca85c1 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvgEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAa0gwRQIhAI16Jw55P9M2/KELZhKcZMAIFd2dPEVGsS1pmrM1IAcwAiB9bF3Ub1ycZcCP0pXptOfbRTd5kox2USgDljSwjtRnoQEhA70MNLI3Pjh1dc3bED7AORbDEETyUI4mH+NZeiaA7L0f/////wHoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhwAAAAABB/3+AABIMEUCIQCO+pZccFVYiTnBW8PmM2utiw08zGgEKH7ltvty0Av+/AIgfGhafXFFx0LOicYnmLq/P4tBT+sNYKdVMfHkPpsp6NEBSDBFAiEAv7HttdAJ9WzdGIxWVM3cjd3Mj0XQPIpzwgjoEPlxseACIAToozC81ix+TTSHHeNBQVH6nGK+Z4RT818U2tuC013qAUxpUiED9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8hA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyIQPhUk1/b8V6s+rLtlm3hxBngKR10dtIOVLCMQt+mjiXW1OuAAEA3wEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgaRdTon/jo7r/Jt3Gs8nNsgRpCcqw4iBGP5oKWNXh0j4CIAw9SsRRh8R97qKsQ360FdZUO7vohw5KUvK0xnHxTYMXASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AugDAAAAAAAAGXapFIg62NGv/finPL2vcje1xauewsMmiKzoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwAAAAABB21IMEUCIQC7FEXXQ9s8hGuSbcR648GKvIAQ97pV84XHzXCUttK9sgIgGfq4sC1KAQCsLtmm8+VpEvqktmDVJhj5PM0qKHpuW2gBIyEDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJWsAAEAaVIhAsxND6QRysJESG+OssCOA1/3QQ9GCjWcp/iBCZG9O0IJIQLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqyEDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvFTriICAsxND6QRysJESG+OssCOA1/3QQ9GCjWcp/iBCZG9O0IJFPLvA4kAAAAAAAAAAAAAAAAAAAAAIgIC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqsUzBiuCAAAAAAAAAAAAAAAAAAAAAAiAgNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8RT2XNhpAAAAAAAAAAAAAAAAAAAAAAA=", "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.halfsigned.json index a536163..1d7018a 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json index ed91507..5fd6bac 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvgEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAa0gwRQIhAI16Jw55P9M2/KELZhKcZMAIFd2dPEVGsS1pmrM1IAcwAiB9bF3Ub1ycZcCP0pXptOfbRTd5kox2USgDljSwjtRnoQEhA70MNLI3Pjh1dc3bED7AORbDEETyUI4mH+NZeiaA7L0f/////wHoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhwAAAAABAwQBAAAAAQRpUiED9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8hA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyIQPhUk1/b8V6s+rLtlm3hxBngKR10dtIOVLCMQt+mjiXW1OuIgYDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IUzBiuCAAAAAAAAAAAAQAAAAAAAAAiBgPhUk1/b8V6s+rLtlm3hxBngKR10dtIOVLCMQt+mjiXWxT2XNhpAAAAAAAAAAABAAAAAAAAACIGA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/FPLvA4kAAAAAAAAAAAEAAAAAAAAAAAEA3wEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgaRdTon/jo7r/Jt3Gs8nNsgRpCcqw4iBGP5oKWNXh0j4CIAw9SsRRh8R97qKsQ360FdZUO7vohw5KUvK0xnHxTYMXASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AugDAAAAAAAAGXapFIg62NGv/finPL2vcje1xauewsMmiKzoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwAAAAABAwQBAAAAAQQjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json index 259a93b..0d1fda4 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvgEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAa0gwRQIhAI16Jw55P9M2/KELZhKcZMAIFd2dPEVGsS1pmrM1IAcwAiB9bF3Ub1ycZcCP0pXptOfbRTd5kox2USgDljSwjtRnoQEhA70MNLI3Pjh1dc3bED7AORbDEETyUI4mH+NZeiaA7L0f/////wHoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhwAAAAABB/3+AABIMEUCIQCO+pZccFVYiTnBW8PmM2utiw08zGgEKH7ltvty0Av+/AIgfGhafXFFx0LOicYnmLq/P4tBT+sNYKdVMfHkPpsp6NEBSDBFAiEAv7HttdAJ9WzdGIxWVM3cjd3Mj0XQPIpzwgjoEPlxseACIAToozC81ix+TTSHHeNBQVH6nGK+Z4RT818U2tuC013qAUxpUiED9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8hA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyIQPhUk1/b8V6s+rLtlm3hxBngKR10dtIOVLCMQt+mjiXW1OuAAEA3wEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgaRdTon/jo7r/Jt3Gs8nNsgRpCcqw4iBGP5oKWNXh0j4CIAw9SsRRh8R97qKsQ360FdZUO7vohw5KUvK0xnHxTYMXASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AugDAAAAAAAAGXapFIg62NGv/finPL2vcje1xauewsMmiKzoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwAAAAABB21IMEUCIQC7FEXXQ9s8hGuSbcR648GKvIAQ97pV84XHzXCUttK9sgIgGfq4sC1KAQCsLtmm8+VpEvqktmDVJhj5PM0qKHpuW2gBIyEDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJWsAAEAaVIhAsxND6QRysJESG+OssCOA1/3QQ9GCjWcp/iBCZG9O0IJIQLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqyEDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvFTriICAsxND6QRysJESG+OssCOA1/3QQ9GCjWcp/iBCZG9O0IJFPLvA4kAAAAAAAAAAAAAAAAAAAAAIgIC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqsUzBiuCAAAAAAAAAAAAAAAAAAAAAAiAgNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8RT2XNhpAAAAAAAAAAAAAAAAAAAAAAA=", "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json index 33342ca..7966c7e 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.unsigned.json index 8e3d61b..78f7b49 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwBAAAAAtme+uGZ/E1U5YJajjNoo5Xp6zKZFc+12I3DEVB9GEg2AAAAAAD/////J50715OdJjBhFagFjUqI0QUVoLZ1/IpfiTEcLoYp/sYBAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvgEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAa0gwRQIhAI16Jw55P9M2/KELZhKcZMAIFd2dPEVGsS1pmrM1IAcwAiB9bF3Ub1ycZcCP0pXptOfbRTd5kox2USgDljSwjtRnoQEhA70MNLI3Pjh1dc3bED7AORbDEETyUI4mH+NZeiaA7L0f/////wHoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhwAAAAABAwQBAAAAAQRpUiED9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8hA1/7erxwFZ4EafS5iabV4XhaKQQWn/BQsvRo/l09XbvyIQPhUk1/b8V6s+rLtlm3hxBngKR10dtIOVLCMQt+mjiXW1OuIgYDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IUzBiuCAAAAAAAAAAAAQAAAAAAAAAiBgPhUk1/b8V6s+rLtlm3hxBngKR10dtIOVLCMQt+mjiXWxT2XNhpAAAAAAAAAAABAAAAAAAAACIGA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/FPLvA4kAAAAAAAAAAAEAAAAAAAAAAAEA3wEAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgaRdTon/jo7r/Jt3Gs8nNsgRpCcqw4iBGP5oKWNXh0j4CIAw9SsRRh8R97qKsQ360FdZUO7vohw5KUvK0xnHxTYMXASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AugDAAAAAAAAGXapFIg62NGv/finPL2vcje1xauewsMmiKzoAwAAAAAAABepFCCzcJTYKlE0Uf8MzZ2yOroFvF7zhwAAAAABAwQBAAAAAQQjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.fullsigned.json index 3bbcb84..b389eed 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvQIAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgHqWF/NB4uNG9Cdr663PVIIerF2/RZ//WCD58UnE55r4CIBonxwq68xAfzVMswOmRbYP+EmLi2xJYvm2WYaYWqmWDASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AegDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAAAAAAEH/f4AAEgwRQIhAIdjH1S+qXum+xNa/A5qpQAPQF+Mf0B1+0RiT8sQARDxAiA/PCamMu7xMbMsI1U36NCPAESy7Pz0dju87kCp7gThDEFIMEUCIQDMd8sdfMIe+G7YRSF4GmNZVJul5tc25GtI44GB4E4R7wIgRIA+PNMfb31715EeqQe9CGFZjoJL3L6147AxFKr7LHRBTGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64AAQDfAgAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAABqRzBEAiAUtzwIwBg3cJhto0qXV+rthn5i0RgYimSc4RNW2n8QwQIgLZHlpgzyLcJzb0+lIzOidvYO1tajMvtuj/yU3t27pEQBIQO9DDSyNz44dXXN2xA+wDkWwxBE8lCOJh/jWXomgOy9H/////8C6AMAAAAAAAAZdqkUiDrY0a/9+Kc8va9yN7XFq57CwyaIrOgDAAAAAAAAF6kUILNwlNgqUTRR/wzNnbI6ugW8XvOHAAAAAAEHbUgwRQIhAIZOLrbzL6tfgOazIVSdCy0qM13mVb58c0vC+JvB8QhaAiB7dI2zzwupzUzlZMgdog+pw+AfeXbNwFo3BABM5g6SEkEjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.halfsigned.json index fe6edf2..da1fb64 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.unsigned.json index b63209e..82d2ce9 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAHwCAAAAAlx5eyWbgnIrhOwGKs52BsAJLUxtcR60t3VnvhO0cMavAAAAAAD/////f7uvM8nANwD38dz5OjQDmJdlZkbCQouPqoi39X0dPZ8BAAAAAP////8BhAMAAAAAAAAXqRTZCUdEBMEko9BMP7/2H6pJz0PFi4cAAAAATwEEiLIeAAAAAAAAAAAAOpIuKfDI6w2ypgSEy9y2MfaxB8nKrj/9zz59LsH2vNADEhSHFfNh2raFpmnUJDHl1tP5c0BNq5yf0blQsnmtdjQEzBiuCE8BBIiyHgAAAAAAAAAAAG0dZW093ZHBlMBFZaNgNwKiEBbO0UomXziYLWJ15ntkA9O6wjE6fGshy7EbFLDRA0H5IsCkA6i9jIfw3IIPNa9uBPZc2GlPAQSIsh4AAAAAAAAAAADLBP1jqzTZD+ZGa4gOKgLM+KhjN0MSmRr4kRsaqrRDNAM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlQTy7wOJAAEAvQIAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAAAAakcwRAIgHqWF/NB4uNG9Cdr663PVIIerF2/RZ//WCD58UnE55r4CIBonxwq68xAfzVMswOmRbYP+EmLi2xJYvm2WYaYWqmWDASEDvQw0sjc+OHV1zdsQPsA5FsMQRPJQjiYf41l6JoDsvR//////AegDAAAAAAAAF6kUVnzXtE+fOgfDE483v5hLYPu68kOHAAAAAAEDBEEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQDfAgAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAABqRzBEAiAUtzwIwBg3cJhto0qXV+rthn5i0RgYimSc4RNW2n8QwQIgLZHlpgzyLcJzb0+lIzOidvYO1tajMvtuj/yU3t27pEQBIQO9DDSyNz44dXXN2xA+wDkWwxBE8lCOJh/jWXomgOy9H/////8C6AMAAAAAAAAZdqkUiDrY0a/9+Kc8va9yN7XFq57CwyaIrOgDAAAAAAAAF6kUILNwlNgqUTRR/wzNnbI6ugW8XvOHAAAAAAEDBEEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "5c797b259b82722b84ec062ace7606c0092d4c6d711eb4b77567be13b470c6af", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.fullsigned.json index 3011a0e..bc92558 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": "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", "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.halfsigned.json index cd94d64..ecb93d3 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.unsigned.json index dedeeaa..a171dc6 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "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", + "psbtBase64Finalized": null, "inputs": [ { "hash": "d99efae199fc4d54e5825a8e3368a395e9eb329915cfb5d88dc311507d184836", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.fullsigned.json index 1873395..a9992c5 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.fullsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAI8EAACAhSAviQIBB9zNCDF0dfUWO8QpQQ9z3Z/LZm/Irya0Dt4Kb9gTWgAAAAAA/////9zG/5Z7pfP2yyTWKwtgO9K9CnmeqYqTLnAuKoKMdoA/AQAAAAD/////AYQDAAAAAAAAF6kU2QlHRATBJKPQTD+/9h+qSc9DxYuHAAAAAAAAAAAAAAAAAAAAAAAAAE8BBIiyHgAAAAAAAAAAADqSLinwyOsNsqYEhMvctjH2sQfJyq4//c8+fS7B9rzQAxIUhxXzYdq2haZp1CQx5dbT+XNATaucn9G5ULJ5rXY0BMwYrghPAQSIsh4AAAAAAAAAAABtHWVtPd2RwZTARWWjYDcCohAWztFKJl84mC1ideZ7ZAPTusIxOnxrIcuxGxSw0QNB+SLApAOovYyH8NyCDzWvbgT2XNhpTwEEiLIeAAAAAAAAAAAAywT9Y6s02Q/mRmuIDioCzPioYzdDEpka+JEbGqq0QzQDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJUE8u8DiQABASDoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhyICA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbSDBFAiEA8l0JX7fFIXphnq7n0jeMaonq7+IaCkkWGyXZcMl1l+QCIGwvnm1sL3/AX21b6v/D/UpaG00ASf1wJVHvUBnH3faaASICA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/SDBFAiEAkWXvn88VxZjdoK4DsAzGWAuhgPHNtxoH3B9UqDNMLk8CIBM5f78LkenZ/50WfxWuRaTjQ24Unoeq/jKB62Ued7Q2AQEDBAEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQgs3CU2CpRNFH/DM2dsjq6Bbxe84ciAgM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlUcwRAIgWeyxOotIYmnQMgWSTaHh35lPjBfHJU7uuRkTJ+3NwyACIAlB/co5zrBlVD8thq3Jiz59SIZzMgkf+SC+HMAg49L1AQEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": "cHNidP8BAI8EAACAhSAviQIBB9zNCDF0dfUWO8QpQQ9z3Z/LZm/Irya0Dt4Kb9gTWgAAAAAA/////9zG/5Z7pfP2yyTWKwtgO9K9CnmeqYqTLnAuKoKMdoA/AQAAAAD/////AYQDAAAAAAAAF6kU2QlHRATBJKPQTD+/9h+qSc9DxYuHAAAAAAAAAAAAAAAAAAAAAAAAAE8BBIiyHgAAAAAAAAAAADqSLinwyOsNsqYEhMvctjH2sQfJyq4//c8+fS7B9rzQAxIUhxXzYdq2haZp1CQx5dbT+XNATaucn9G5ULJ5rXY0BMwYrghPAQSIsh4AAAAAAAAAAABtHWVtPd2RwZTARWWjYDcCohAWztFKJl84mC1ideZ7ZAPTusIxOnxrIcuxGxSw0QNB+SLApAOovYyH8NyCDzWvbgT2XNhpTwEEiLIeAAAAAAAAAAAAywT9Y6s02Q/mRmuIDioCzPioYzdDEpka+JEbGqq0QzQDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJUE8u8DiQABASDoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhwEH/f4AAEgwRQIhAJFl75/PFcWY3aCuA7AMxlgLoYDxzbcaB9wfVKgzTC5PAiATOX+/C5Hp2f+dFn8VrkWk40NuFJ6Hqv4ygetlHne0NgFIMEUCIQDyXQlft8UhemGerufSN4xqierv4hoKSRYbJdlwyXWX5AIgbC+ebWwvf8BfbVvq/8P9SlobTQBJ/XAlUe9QGcfd9poBTGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64AAQEg6AMAAAAAAAAXqRQgs3CU2CpRNFH/DM2dsjq6Bbxe84cBB2xHMEQCIFnssTqLSGJp0DIFkk2h4d+ZT4wXxyVO7rkZEyftzcMgAiAJQf3KOc6wZVQ/LYatyYs+fUiGczIJH/kgvhzAIOPS9QEjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", "inputs": [ { "hash": "0107dccd08317475f5163bc429410f73dd9fcb666fc8af26b40ede0a6fd8135a", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.halfsigned.json index ddebc6c..d01a621 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.halfsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAI8EAACAhSAviQIBB9zNCDF0dfUWO8QpQQ9z3Z/LZm/Irya0Dt4Kb9gTWgAAAAAA/////9zG/5Z7pfP2yyTWKwtgO9K9CnmeqYqTLnAuKoKMdoA/AQAAAAD/////AYQDAAAAAAAAF6kU2QlHRATBJKPQTD+/9h+qSc9DxYuHAAAAAAAAAAAAAAAAAAAAAAAAAE8BBIiyHgAAAAAAAAAAADqSLinwyOsNsqYEhMvctjH2sQfJyq4//c8+fS7B9rzQAxIUhxXzYdq2haZp1CQx5dbT+XNATaucn9G5ULJ5rXY0BMwYrghPAQSIsh4AAAAAAAAAAABtHWVtPd2RwZTARWWjYDcCohAWztFKJl84mC1ideZ7ZAPTusIxOnxrIcuxGxSw0QNB+SLApAOovYyH8NyCDzWvbgT2XNhpTwEEiLIeAAAAAAAAAAAAywT9Y6s02Q/mRmuIDioCzPioYzdDEpka+JEbGqq0QzQDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJUE8u8DiQABASDoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhyICA/b0B2S9XWPyAKJ3iIOs916W8VCVyZgmPAhycNDJfn5/SDBFAiEAkWXvn88VxZjdoK4DsAzGWAuhgPHNtxoH3B9UqDNMLk8CIBM5f78LkenZ/50WfxWuRaTjQ24Unoeq/jKB62Ued7Q2AQEDBAEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQgs3CU2CpRNFH/DM2dsjq6Bbxe84ciAgM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlUcwRAIgWeyxOotIYmnQMgWSTaHh35lPjBfHJU7uuRkTJ+3NwyACIAlB/co5zrBlVD8thq3Jiz59SIZzMgkf+SC+HMAg49L1AQEDBAEAAAABBCMhAzbvIo/+m47/+6BSwy0zRmDdH4Nmz4/kSuWqZytrYpCVrAABAGlSIQLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCSEC1y/Q0NkCk0NK1fyhYPJ44DxhRJeqTkJc9FTiwTMPlqshA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxU64iAgLMTQ+kEcrCREhvjrLAjgNf90EPRgo1nKf4gQmRvTtCCRTy7wOJAAAAAAAAAAAAAAAAAAAAACICAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arFMwYrggAAAAAAAAAAAAAAAAAAAAAIgIDRNiEE231UCAoZf+8YhjH+ciP5s45yUV5gZC62zinUvEU9lzYaQAAAAAAAAAAAAAAAAAAAAAA", + "psbtBase64Finalized": null, "inputs": [ { "hash": "0107dccd08317475f5163bc429410f73dd9fcb666fc8af26b40ede0a6fd8135a", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.unsigned.json index 55b3def..0856443 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.unsigned.json @@ -5,6 +5,7 @@ "xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv" ], "psbtBase64": "cHNidP8BAI8EAACAhSAviQIBB9zNCDF0dfUWO8QpQQ9z3Z/LZm/Irya0Dt4Kb9gTWgAAAAAA/////9zG/5Z7pfP2yyTWKwtgO9K9CnmeqYqTLnAuKoKMdoA/AQAAAAD/////AYQDAAAAAAAAF6kU2QlHRATBJKPQTD+/9h+qSc9DxYuHAAAAAAAAAAAAAAAAAAAAAAAAAE8BBIiyHgAAAAAAAAAAADqSLinwyOsNsqYEhMvctjH2sQfJyq4//c8+fS7B9rzQAxIUhxXzYdq2haZp1CQx5dbT+XNATaucn9G5ULJ5rXY0BMwYrghPAQSIsh4AAAAAAAAAAABtHWVtPd2RwZTARWWjYDcCohAWztFKJl84mC1ideZ7ZAPTusIxOnxrIcuxGxSw0QNB+SLApAOovYyH8NyCDzWvbgT2XNhpTwEEiLIeAAAAAAAAAAAAywT9Y6s02Q/mRmuIDioCzPioYzdDEpka+JEbGqq0QzQDNu8ij/6bjv/7oFLDLTNGYN0fg2bPj+RK5apnK2tikJUE8u8DiQABASDoAwAAAAAAABepFFZ817RPnzoHwxOPN7+YS2D7uvJDhwEDBAEAAAABBGlSIQP29AdkvV1j8gCid4iDrPdelvFQlcmYJjwIcnDQyX5+fyEDX/t6vHAVngRp9LmJptXheFopBBaf8FCy9Gj+XT1du/IhA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbU64iBgNf+3q8cBWeBGn0uYmm1eF4WikEFp/wULL0aP5dPV278hTMGK4IAAAAAAAAAAABAAAAAAAAACIGA+FSTX9vxXqz6su2WbeHEGeApHXR20g5UsIxC36aOJdbFPZc2GkAAAAAAAAAAAEAAAAAAAAAIgYD9vQHZL1dY/IAoneIg6z3XpbxUJXJmCY8CHJw0Ml+fn8U8u8DiQAAAAAAAAAAAQAAAAAAAAAAAQEg6AMAAAAAAAAXqRQgs3CU2CpRNFH/DM2dsjq6Bbxe84cBAwQBAAAAAQQjIQM27yKP/puO//ugUsMtM0Zg3R+DZs+P5Erlqmcra2KQlawAAQBpUiECzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkhAtcv0NDZApNDStX8oWDyeOA8YUSXqk5CXPRU4sEzD5arIQNE2IQTbfVQIChl/7xiGMf5yI/mzjnJRXmBkLrbOKdS8VOuIgICzE0PpBHKwkRIb46ywI4DX/dBD0YKNZyn+IEJkb07QgkU8u8DiQAAAAAAAAAAAAAAAAAAAAAiAgLXL9DQ2QKTQ0rV/KFg8njgPGFEl6pOQlz0VOLBMw+WqxTMGK4IAAAAAAAAAAAAAAAAAAAAACICA0TYhBNt9VAgKGX/vGIYx/nIj+bOOclFeYGQuts4p1LxFPZc2GkAAAAAAAAAAAAAAAAAAAAAAA==", + "psbtBase64Finalized": null, "inputs": [ { "hash": "0107dccd08317475f5163bc429410f73dd9fcb666fc8af26b40ede0a6fd8135a", From 3f744bd7a9792f1d8ad83974cd56ed6b1a213be0 Mon Sep 17 00:00:00 2001 From: Otto Allmendinger Date: Fri, 31 Oct 2025 08:54:17 +0100 Subject: [PATCH 3/5] feat(wasm-utxo): add detailed musig2 input data in fixtures Issue: BTC-2652 --- .../psbt-lite.bitcoin.fullsigned.json | 92 +++++++++++++++++++ .../psbt-lite.bitcoin.halfsigned.json | 28 ++++++ .../psbt-lite.bitcoin.unsigned.json | 11 ++- .../psbt-lite.bitcoincash.fullsigned.json | 18 ++++ .../psbt-lite.bitcoincash.halfsigned.json | 1 + .../psbt-lite.bitcoincash.unsigned.json | 1 + .../psbt-lite.bitcoingold.fullsigned.json | 35 +++++++ .../psbt-lite.bitcoingold.halfsigned.json | 1 + .../psbt-lite.bitcoingold.unsigned.json | 1 + .../psbt-lite.dash.fullsigned.json | 18 ++++ .../psbt-lite.dash.halfsigned.json | 1 + .../fixed-script/psbt-lite.dash.unsigned.json | 1 + .../psbt-lite.dogecoin.fullsigned.json | 18 ++++ .../psbt-lite.dogecoin.halfsigned.json | 1 + .../psbt-lite.dogecoin.unsigned.json | 1 + .../psbt-lite.ecash.fullsigned.json | 18 ++++ .../psbt-lite.ecash.halfsigned.json | 1 + .../psbt-lite.ecash.unsigned.json | 1 + .../psbt-lite.litecoin.fullsigned.json | 35 +++++++ .../psbt-lite.litecoin.halfsigned.json | 1 + .../psbt-lite.litecoin.unsigned.json | 1 + .../psbt-lite.zcash.fullsigned.json | 18 ++++ .../psbt-lite.zcash.halfsigned.json | 1 + .../psbt-lite.zcash.unsigned.json | 1 + .../fixed-script/psbt.bitcoin.fullsigned.json | 86 +++++++++++++++++ .../fixed-script/psbt.bitcoin.halfsigned.json | 28 ++++++ .../fixed-script/psbt.bitcoin.unsigned.json | 11 ++- .../psbt.bitcoincash.fullsigned.json | 12 +++ .../psbt.bitcoincash.halfsigned.json | 1 + .../psbt.bitcoincash.unsigned.json | 1 + .../psbt.bitcoingold.fullsigned.json | 29 ++++++ .../psbt.bitcoingold.halfsigned.json | 1 + .../psbt.bitcoingold.unsigned.json | 1 + .../fixed-script/psbt.dash.fullsigned.json | 12 +++ .../fixed-script/psbt.dash.halfsigned.json | 1 + .../fixed-script/psbt.dash.unsigned.json | 1 + .../psbt.dogecoin.fullsigned.json | 12 +++ .../psbt.dogecoin.halfsigned.json | 1 + .../fixed-script/psbt.dogecoin.unsigned.json | 1 + .../fixed-script/psbt.ecash.fullsigned.json | 12 +++ .../fixed-script/psbt.ecash.halfsigned.json | 1 + .../fixed-script/psbt.ecash.unsigned.json | 1 + .../psbt.litecoin.fullsigned.json | 29 ++++++ .../psbt.litecoin.halfsigned.json | 1 + .../fixed-script/psbt.litecoin.unsigned.json | 1 + .../fixed-script/psbt.zcash.fullsigned.json | 18 ++++ .../fixed-script/psbt.zcash.halfsigned.json | 1 + .../fixed-script/psbt.zcash.unsigned.json | 1 + 48 files changed, 566 insertions(+), 2 deletions(-) diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json index 01c5692..b77f442 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.fullsigned.json @@ -287,6 +287,38 @@ "key": "fc05424954474f03021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c5395315c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", "value": "1cd8a0c0598b0d88f889fdf9a3140f8f088e2187803a2faaee3f13c0163eb76c" } + ], + "musig2Participants": { + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "tapInternalKey": "eb5ad29a85aed24de2880e774caaf624f9cb1be09c67ed4aefbb9b7bc12ddf1a", + "participantPubKeys": [ + "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171" + ] + }, + "musig2Nonces": [ + { + "participantPubKey": "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "pubNonce": "02826949740dff45d408b1f19d94c720f53411e02c525b28ab3c593b6b530fe0370374b8a0ffcaaaee6b772dac5f7c23ef33670b32ec77c6d41efb3c36df2165a094" + }, + { + "participantPubKey": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "pubNonce": "03a4aaf46f3a0bc39a73855fa875b2f2f04bdb06235afbaedf857b593dddc63cb402cdb7f1a93ec526282198d834423371757e8f43932d03b9f43c3f7378300ae508" + } + ], + "musig2PartialSigs": [ + { + "participantPubKey": "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "partialSig": "fbdc39c3b8ffca4e6caf3298fa1a4be546b99163c2f21bd374d2254ec5b3c0f4" + }, + { + "participantPubKey": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "partialSig": "1cd8a0c0598b0d88f889fdf9a3140f8f088e2187803a2faaee3f13c0163eb76c" + } ] }, { @@ -305,6 +337,66 @@ } } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "0047304402201e79545c011e34b1b872b4b057e66262d86881da6a7f853e7e57a9a4d12c6dc102201a538b2175c7b7161c76da18394220f354ae2729fcc1c902b74c59cd79e0153101483045022100dd31a25d0ebea90e67910168ef7c2b383ca26192cd5c8709f02980b7ca90472802203795c65ee0f073b80644d0c8ffa1d428457ae2af3df5b5d8117949781d10c462014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2wsh", + "witnessUtxo": { + "script": "a9140e26b25d0ceae6f9cff3edaccaa0d1a70da7600f87", + "value": "1000" + }, + "finalScriptSig": "22002046d4800a1393330196085399ed4a1700b4c2fd38c52188c3a3a91f721f3c9600", + "finalScriptWitness": "040047304402205f760c27e7598a9e80a2adaf1d925c67d2e6c24aec773e5cce56d234159ab1e502201ce97d5659681ab881e10acc9c8021587f843a15336c3a8b6fb2efc053928b8501483045022100df41fbcbf3c7f77182627bcb7cd17973b8ca58c16b81de98e94c0293dcf33ac202206017171914fdfbc80f933ab3b5aae4e3d36e968757e6c0788ffbeaaebc68e21e0169522102a585f3fab49b5ef95346d932221a221bd55ec191f15533e0f270b3582574f0352102c4f7866cfd5996bc1068a96313ca15e9ccb5e984583a07340dddae7af014605b2102234531bc9119a36a7946e95aeb74915dd087c7b44f517b8eeeb73f89a0ff1a9953ae" + }, + { + "type": "p2wsh", + "witnessUtxo": { + "script": "0020db0427f1822b4777670e6673c28af02f6da1d5afe71a71f5c9064470b229fafd", + "value": "1000" + }, + "finalScriptWitness": "0400483045022100d3b03fb77553144e14171c7b1b517a3bf33df87370b65e337f0a50844562261e0220585bc0913b56ad968161d343f321d77f5f94ff3cf62545932f1509239a15a38e0147304402206441089c8c71a4926b49a5ab12bfaa86c4b64abbc519b3d217d68fe71bc43bee02203e17d0752c0b411e9477c22c2f4556a62da39e60095c6e0774bf42aa8f491b4d0169522103519e572ab468560d1f8d0f87699d098308e166905f5dcae4390f060faa8f1ce32103a05bc26391221d685e18daaff36a1e95c34f99451253c16cd42650db278a79112102e80a08885c353676b820cdc290e6d81a0ac95a03e8abbf4bb7aeebfb70feb41853ae" + }, + { + "type": "p2tr", + "witnessUtxo": { + "script": "5120394b94d061d7b778fed8a204ce05ed0b44954ec1622f934f84114e1173f33027", + "value": "1000" + }, + "finalScriptWitness": "0440e7dab0d277ce7c41933136b44dcabef400f1d0e622a2255f9867d807bc8e0008cfd30766d36d736c8df7aa32917de59d0832b481c499f0917876134532306d454083b1bb7c6ce5868c8a723c4d350591894809b1335586f60cbfccc6dd4e28b8630a74637b1b242e5a389540db94f23bcbedee9c783830cb2afaff1f2763dbdb7b44207373d723ce0a87f8fdd66843be12dae9d51939f68188d5ad96920bef5f51f496ad20aa88ca194fda43486504b86ac9b71f10fc41de7b1713874839427f74e78c2d5aac41c0bc17ea2bbf6ff46bd5c0c3780be2a63880eb7bb782b39ed86f29b99f4882994e1b178b1b55d3c6aac7b039e3422dfdb9c9d75d4d6fc908e9743e88b651e48d83" + }, + { + "type": "p2trMusig2", + "witnessUtxo": { + "script": "512029bbfaf4385b10dc2bbe7ab4d50e89cebe8f507968727b19689e2638083cc55b", + "value": "1000" + }, + "finalScriptWitness": "04404d8e50128b5c61dd449b352a6d6f3d611e163b0794c8c2d057d25401957bb07a70420e336e18f6b255d5b869570c087091c30c1a33f0cac0a40d90d0514c69a4400a1e013f6d57fb8b248b2b19b08b34c1a3cd5ff6de4acdf19dd4ce0e02d42154856dd569f4668f2abaccbb50ce81a9d2f53efdfb627c2cb14cf92c4189a35da74420643151ab03f3a97bb86d3592f12f8d25a8026d89cd47342fc1b49c5e2e63478bad20035c9d632db2ddb8f90cf3ccfc931822bcb1f24562b23ae041abf12e54bca64dac41c1a107a403f7a207e7b1f552d3fd3f55f64ae40e149d0d26f4868ad7faec949eb7637e37cac6e5f22347ab68e876b559117d9597ee7b37fb983c2ab9e51023c976" + }, + { + "type": "taprootKeyPathSpend", + "witnessUtxo": { + "script": "512015c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "value": "1000" + }, + "unknownKeyVals": [], + "finalScriptWitness": "01402ea4aeeef7c10765ed7bdce7ac429b7395e08cf55083df38384781054b0880e244fe8a2d847a8c334431322d0eeba4e34872ef6052e2044fff7fa8763ce0c20b" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "483045022100d2a7abb6c0563c3000e37412a9b97f6352d17e40960456fe830d264f0474f8b6022038d5cdbe88a319de5d7b7db8f57d0a92524beb242729b46a617adb530f2fa0d00123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json index 9897bb5..30cbb1f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.halfsigned.json @@ -261,6 +261,33 @@ "key": "fc05424954474f03021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c5395315c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", "value": "1cd8a0c0598b0d88f889fdf9a3140f8f088e2187803a2faaee3f13c0163eb76c" } + ], + "musig2Participants": { + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "tapInternalKey": "eb5ad29a85aed24de2880e774caaf624f9cb1be09c67ed4aefbb9b7bc12ddf1a", + "participantPubKeys": [ + "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171" + ] + }, + "musig2Nonces": [ + { + "participantPubKey": "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "pubNonce": "02826949740dff45d408b1f19d94c720f53411e02c525b28ab3c593b6b530fe0370374b8a0ffcaaaee6b772dac5f7c23ef33670b32ec77c6d41efb3c36df2165a094" + }, + { + "participantPubKey": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "pubNonce": "03a4aaf46f3a0bc39a73855fa875b2f2f04bdb06235afbaedf857b593dddc63cb402cdb7f1a93ec526282198d834423371757e8f43932d03b9f43c3f7378300ae508" + } + ], + "musig2PartialSigs": [ + { + "participantPubKey": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "partialSig": "1cd8a0c0598b0d88f889fdf9a3140f8f088e2187803a2faaee3f13c0163eb76c" + } ] }, { @@ -279,6 +306,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json index 036c286..658c7ff 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoin.unsigned.json @@ -217,7 +217,15 @@ "key": "fc05424954474f0115c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16eb5ad29a85aed24de2880e774caaf624f9cb1be09c67ed4aefbb9b7bc12ddf1a", "value": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171" } - ] + ], + "musig2Participants": { + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "tapInternalKey": "eb5ad29a85aed24de2880e774caaf624f9cb1be09c67ed4aefbb9b7bc12ddf1a", + "participantPubKeys": [ + "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171" + ] + } }, { "type": "p2shP2pk", @@ -229,6 +237,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json index 5c85dde..2030a4a 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.fullsigned.json @@ -71,6 +71,24 @@ } } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "0048304502210087631f54bea97ba6fb135afc0e6aa5000f405f8c7f4075fb44624fcb100110f102203f3c26a632eef131b32c235537e8d08f0044b2ecfcf4763bbcee40a9ee04e10c41483045022100cc77cb1d7cc21ef86ed84521781a6359549ba5e6d736e46b48e38181e04e11ef022044803e3cd31f6f7d7bd7911ea907bd0861598e824bdcbeb5e3b03114aafb2c74414c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "483045022100864e2eb6f32fab5f80e6b321549d0b2d2a335de655be7c734bc2f89bc1f1085a02207b748db3cf0ba9cd4ce564c81da20fa9c3e01f7976cdc05a3704004ce60e92124123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json index c2cd7a4..aad2792 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.halfsigned.json @@ -67,6 +67,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json index e04e123..6911ab3 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoincash.unsigned.json @@ -55,6 +55,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json index 1f5e671..1ec917f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.fullsigned.json @@ -154,6 +154,41 @@ } } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "00483045022100e0e1ba72052b3f3c4b193b1f21aff66e8bfb821131f9b7680bea781ca6d637430220285ca143f06cd4e32aeac9bff16ef92abb95df0b08649709266686ad4b180d7641483045022100dd4c0b374aca63840594e44c995835b3630eae3f6111d3eea5faecb49f2e40540220384f3653dce80d9dc2879d508dce3f1ccc8d19b19153737bb23a274941c422d4414c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2wsh", + "witnessUtxo": { + "script": "a9140e26b25d0ceae6f9cff3edaccaa0d1a70da7600f87", + "value": "1000" + }, + "finalScriptSig": "22002046d4800a1393330196085399ed4a1700b4c2fd38c52188c3a3a91f721f3c9600", + "finalScriptWitness": "040047304402206eb6a084505d7badc1afef554e859c65df31ad5b7bdbc62a14943d5b4f95307102200cba48e9c5676562ab30d73094448a0eb35eee73bfac5311140cd944332dca9b41483045022100c3ae94dbb976bcd38566308b4d9350da86ebe044c610b36b913f6476524568cd022044dfd32108f0afe46a63384f42a4990ba73b9ebaddd88801daf3e3ebd83e223c4169522102a585f3fab49b5ef95346d932221a221bd55ec191f15533e0f270b3582574f0352102c4f7866cfd5996bc1068a96313ca15e9ccb5e984583a07340dddae7af014605b2102234531bc9119a36a7946e95aeb74915dd087c7b44f517b8eeeb73f89a0ff1a9953ae" + }, + { + "type": "p2wsh", + "witnessUtxo": { + "script": "0020db0427f1822b4777670e6673c28af02f6da1d5afe71a71f5c9064470b229fafd", + "value": "1000" + }, + "finalScriptWitness": "0400483045022100f8cc6761ff5f70b95b4bb6e50f087be6e3899794b93048f08078c7bce89d5834022011cbeb43e5bd55fc96b39be2bc46112ecd6080fd6f148153dea1dc9cb8dcc5ea41473044022071c4e85d66d2ea91d771458924e674b4ca40f6dc804a31db86d80d51eefc46c5022029bb9741909af81f3205edf62c51342ba3c4444907b78f56fac41155ead0cf3b4169522103519e572ab468560d1f8d0f87699d098308e166905f5dcae4390f060faa8f1ce32103a05bc26391221d685e18daaff36a1e95c34f99451253c16cd42650db278a79112102e80a08885c353676b820cdc290e6d81a0ac95a03e8abbf4bb7aeebfb70feb41853ae" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "483045022100d9fc432b5d223325c038441974d75517582a9f0e8ba10d3188b2092e97c7624e0220028e3307eb02b1916c1a0089ea6ff1a255e6d2bd0eab2c994dfb433d6eea43964123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json index d471f49..ad3e18f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.halfsigned.json @@ -142,6 +142,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json index e4d3b88..d37f75a 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.bitcoingold.unsigned.json @@ -118,6 +118,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json index e31bef5..c71d5f9 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.fullsigned.json @@ -71,6 +71,24 @@ } } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "004830450221008efa965c7055588939c15bc3e6336bad8b0d3ccc6804287ee5b6fb72d00bfefc02207c685a7d7145c742ce89c62798babf3f8b414feb0d60a75531f1e43e9b29e8d101483045022100bfb1edb5d009f56cdd188c5654cddc8dddcc8f45d03c8a73c208e810f971b1e0022004e8a330bcd62c7e4d34871de3414151fa9c62be678453f35f14dadb82d35dea014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "483045022100bb1445d743db3c846b926dc47ae3c18abc8010f7ba55f385c7cd7094b6d2bdb2022019fab8b02d4a0100ac2ed9a6f3e56912faa4b660d52618f93ccd2a287a6e5b680123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json index ae1a151..6eb85d2 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.halfsigned.json @@ -67,6 +67,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.unsigned.json index f6bad9e..14bd73f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dash.unsigned.json @@ -55,6 +55,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json index 3a822cf..e2b209f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.fullsigned.json @@ -71,6 +71,24 @@ } } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "004830450221008efa965c7055588939c15bc3e6336bad8b0d3ccc6804287ee5b6fb72d00bfefc02207c685a7d7145c742ce89c62798babf3f8b414feb0d60a75531f1e43e9b29e8d101483045022100bfb1edb5d009f56cdd188c5654cddc8dddcc8f45d03c8a73c208e810f971b1e0022004e8a330bcd62c7e4d34871de3414151fa9c62be678453f35f14dadb82d35dea014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "483045022100bb1445d743db3c846b926dc47ae3c18abc8010f7ba55f385c7cd7094b6d2bdb2022019fab8b02d4a0100ac2ed9a6f3e56912faa4b660d52618f93ccd2a287a6e5b680123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json index 8ded7bf..285d97f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.halfsigned.json @@ -67,6 +67,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json index a709eee..f4ee5ed 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.dogecoin.unsigned.json @@ -55,6 +55,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json index 5c85dde..2030a4a 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.fullsigned.json @@ -71,6 +71,24 @@ } } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "0048304502210087631f54bea97ba6fb135afc0e6aa5000f405f8c7f4075fb44624fcb100110f102203f3c26a632eef131b32c235537e8d08f0044b2ecfcf4763bbcee40a9ee04e10c41483045022100cc77cb1d7cc21ef86ed84521781a6359549ba5e6d736e46b48e38181e04e11ef022044803e3cd31f6f7d7bd7911ea907bd0861598e824bdcbeb5e3b03114aafb2c74414c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "483045022100864e2eb6f32fab5f80e6b321549d0b2d2a335de655be7c734bc2f89bc1f1085a02207b748db3cf0ba9cd4ce564c81da20fa9c3e01f7976cdc05a3704004ce60e92124123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json index c2cd7a4..aad2792 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.halfsigned.json @@ -67,6 +67,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json index e04e123..6911ab3 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.ecash.unsigned.json @@ -55,6 +55,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json index c33722d..e477f7c 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.fullsigned.json @@ -154,6 +154,41 @@ } } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "00483045022100e9f193db9830d516af5598045b9404d096e89c7a192f77ad220fa3a487308b0002205dea2fd75f700b3beec6e77a4bdd21a6ac9b9a355c1ea958a6864305e203d9fe01473044022025cd881a29cca29960c0361d18f741681bdb0d8c0f55c1f8d78daf03757ce8af02205d93f55191a736ab373b05cfeb099440234d99a2720188c3ac13150cb6e0ac4c014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2wsh", + "witnessUtxo": { + "script": "a9140e26b25d0ceae6f9cff3edaccaa0d1a70da7600f87", + "value": "1000" + }, + "finalScriptSig": "22002046d4800a1393330196085399ed4a1700b4c2fd38c52188c3a3a91f721f3c9600", + "finalScriptWitness": "0400483045022100a4bfba654b915a5ca895c5339ce5edab81bd67b65c805997cad9762840d3c7060220021f8ffb89ebea032cb339ecbd8494c84f955ed894963992b4f31e91e8df0a7401473044022050f1e19eaec828c7856135b98b6e1af9c600229241ec8507d50dae85ff71823902207c084363fe89081b49d929851b62fa9b9d44c70ec3931e8bb473c8d84e35b2e40169522102a585f3fab49b5ef95346d932221a221bd55ec191f15533e0f270b3582574f0352102c4f7866cfd5996bc1068a96313ca15e9ccb5e984583a07340dddae7af014605b2102234531bc9119a36a7946e95aeb74915dd087c7b44f517b8eeeb73f89a0ff1a9953ae" + }, + { + "type": "p2wsh", + "witnessUtxo": { + "script": "0020db0427f1822b4777670e6673c28af02f6da1d5afe71a71f5c9064470b229fafd", + "value": "1000" + }, + "finalScriptWitness": "040047304402204db56669993c9644b84a54892958b7c15d4897829d19a673f7a337bdfab834c202203c6aca862b8ab1a2a3b570689836f09a191b97bcee9ddd8e19271e7a53f6a80401473044022021df7a10ad4a6838c6553897cd6779fa232e89a600058f946a0c4e86a871bb21022049919108dcbda4b4318fb87d5b1c5f929bd9a82f9ef49fadd7b3445a9cf320700169522103519e572ab468560d1f8d0f87699d098308e166905f5dcae4390f060faa8f1ce32103a05bc26391221d685e18daaff36a1e95c34f99451253c16cd42650db278a79112102e80a08885c353676b820cdc290e6d81a0ac95a03e8abbf4bb7aeebfb70feb41853ae" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "483045022100e5bcb83e8f66f30bf6ea886184ef607557cb166ca1d3de3253c293e1865c775202205577e3e2acd1fd7ea93b1e624169db1d52e97030680bc062095cf7ac667d4eca0123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json index 90b3c27..28f1362 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.halfsigned.json @@ -142,6 +142,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json index 475e298..d8b3fec 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.litecoin.unsigned.json @@ -118,6 +118,7 @@ } } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json index 7c18110..ed895d5 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.fullsigned.json @@ -71,6 +71,24 @@ "redeemScript": "210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "004830450221009165ef9fcf15c598dda0ae03b00cc6580ba180f1cdb71a07dc1f54a8334c2e4f022013397fbf0b91e9d9ff9d167f15ae45a4e3436e149e87aafe3281eb651e77b43601483045022100f25d095fb7c5217a619eaee7d2378c6a89eaefe21a0a49161b25d970c97597e402206c2f9e6d6c2f7fc05f6d5beaffc3fd4a5a1b4d0049fd702551ef5019c7ddf69a014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "473044022059ecb13a8b486269d03205924da1e1df994f8c17c7254eeeb9191327edcdc32002200941fdca39ceb065543f2d86adc98b3e7d48867332091ff920be1cc020e3d2f50123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json index 9a4f3d9..542200f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.halfsigned.json @@ -67,6 +67,7 @@ "redeemScript": "210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json index 4ebd4e6..7a51967 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt-lite.zcash.unsigned.json @@ -55,6 +55,7 @@ "redeemScript": "210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json index c1ffe98..faa5d3c 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.fullsigned.json @@ -289,6 +289,38 @@ "path": "0/0/41/5", "masterFingerprint": "f65cd869" } + ], + "musig2Participants": { + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "tapInternalKey": "eb5ad29a85aed24de2880e774caaf624f9cb1be09c67ed4aefbb9b7bc12ddf1a", + "participantPubKeys": [ + "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171" + ] + }, + "musig2Nonces": [ + { + "participantPubKey": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "pubNonce": "03a4aaf46f3a0bc39a73855fa875b2f2f04bdb06235afbaedf857b593dddc63cb402cdb7f1a93ec526282198d834423371757e8f43932d03b9f43c3f7378300ae508" + }, + { + "participantPubKey": "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "pubNonce": "02826949740dff45d408b1f19d94c720f53411e02c525b28ab3c593b6b530fe0370374b8a0ffcaaaee6b772dac5f7c23ef33670b32ec77c6d41efb3c36df2165a094" + } + ], + "musig2PartialSigs": [ + { + "participantPubKey": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "partialSig": "1cd8a0c0598b0d88f889fdf9a3140f8f088e2187803a2faaee3f13c0163eb76c" + }, + { + "participantPubKey": "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "partialSig": "fbdc39c3b8ffca4e6caf3298fa1a4be546b99163c2f21bd374d2254ec5b3c0f4" + } ] }, { @@ -305,6 +337,60 @@ ] } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "finalScriptSig": "0047304402201e79545c011e34b1b872b4b057e66262d86881da6a7f853e7e57a9a4d12c6dc102201a538b2175c7b7161c76da18394220f354ae2729fcc1c902b74c59cd79e0153101483045022100dd31a25d0ebea90e67910168ef7c2b383ca26192cd5c8709f02980b7ca90472802203795c65ee0f073b80644d0c8ffa1d428457ae2af3df5b5d8117949781d10c462014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae", + "nonWitnessUtxo": "01000000010101010101010101010101010101010101010101010101010101010101010101000000006b4830450221008d7a270e793fd336fca10b66129c64c00815dd9d3c4546b12d699ab33520073002207d6c5dd46f5c9c65c08fd295e9b4e7db453779928c765128039634b08ed467a1012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000" + }, + { + "type": "p2shP2wsh", + "witnessUtxo": { + "script": "a9140e26b25d0ceae6f9cff3edaccaa0d1a70da7600f87", + "value": "1000" + }, + "finalScriptSig": "22002046d4800a1393330196085399ed4a1700b4c2fd38c52188c3a3a91f721f3c9600", + "finalScriptWitness": "040047304402205f760c27e7598a9e80a2adaf1d925c67d2e6c24aec773e5cce56d234159ab1e502201ce97d5659681ab881e10acc9c8021587f843a15336c3a8b6fb2efc053928b8501483045022100df41fbcbf3c7f77182627bcb7cd17973b8ca58c16b81de98e94c0293dcf33ac202206017171914fdfbc80f933ab3b5aae4e3d36e968757e6c0788ffbeaaebc68e21e0169522102a585f3fab49b5ef95346d932221a221bd55ec191f15533e0f270b3582574f0352102c4f7866cfd5996bc1068a96313ca15e9ccb5e984583a07340dddae7af014605b2102234531bc9119a36a7946e95aeb74915dd087c7b44f517b8eeeb73f89a0ff1a9953ae" + }, + { + "type": "p2wsh", + "witnessUtxo": { + "script": "0020db0427f1822b4777670e6673c28af02f6da1d5afe71a71f5c9064470b229fafd", + "value": "1000" + }, + "finalScriptWitness": "0400483045022100d3b03fb77553144e14171c7b1b517a3bf33df87370b65e337f0a50844562261e0220585bc0913b56ad968161d343f321d77f5f94ff3cf62545932f1509239a15a38e0147304402206441089c8c71a4926b49a5ab12bfaa86c4b64abbc519b3d217d68fe71bc43bee02203e17d0752c0b411e9477c22c2f4556a62da39e60095c6e0774bf42aa8f491b4d0169522103519e572ab468560d1f8d0f87699d098308e166905f5dcae4390f060faa8f1ce32103a05bc26391221d685e18daaff36a1e95c34f99451253c16cd42650db278a79112102e80a08885c353676b820cdc290e6d81a0ac95a03e8abbf4bb7aeebfb70feb41853ae" + }, + { + "type": "p2tr", + "witnessUtxo": { + "script": "5120394b94d061d7b778fed8a204ce05ed0b44954ec1622f934f84114e1173f33027", + "value": "1000" + }, + "finalScriptWitness": "0440e7dab0d277ce7c41933136b44dcabef400f1d0e622a2255f9867d807bc8e0008cfd30766d36d736c8df7aa32917de59d0832b481c499f0917876134532306d454083b1bb7c6ce5868c8a723c4d350591894809b1335586f60cbfccc6dd4e28b8630a74637b1b242e5a389540db94f23bcbedee9c783830cb2afaff1f2763dbdb7b44207373d723ce0a87f8fdd66843be12dae9d51939f68188d5ad96920bef5f51f496ad20aa88ca194fda43486504b86ac9b71f10fc41de7b1713874839427f74e78c2d5aac41c0bc17ea2bbf6ff46bd5c0c3780be2a63880eb7bb782b39ed86f29b99f4882994e1b178b1b55d3c6aac7b039e3422dfdb9c9d75d4d6fc908e9743e88b651e48d83" + }, + { + "type": "p2trMusig2", + "witnessUtxo": { + "script": "512029bbfaf4385b10dc2bbe7ab4d50e89cebe8f507968727b19689e2638083cc55b", + "value": "1000" + }, + "finalScriptWitness": "04404d8e50128b5c61dd449b352a6d6f3d611e163b0794c8c2d057d25401957bb07a70420e336e18f6b255d5b869570c087091c30c1a33f0cac0a40d90d0514c69a4400a1e013f6d57fb8b248b2b19b08b34c1a3cd5ff6de4acdf19dd4ce0e02d42154856dd569f4668f2abaccbb50ce81a9d2f53efdfb627c2cb14cf92c4189a35da74420643151ab03f3a97bb86d3592f12f8d25a8026d89cd47342fc1b49c5e2e63478bad20035c9d632db2ddb8f90cf3ccfc931822bcb1f24562b23ae041abf12e54bca64dac41c1a107a403f7a207e7b1f552d3fd3f55f64ae40e149d0d26f4868ad7faec949eb7637e37cac6e5f22347ab68e876b559117d9597ee7b37fb983c2ab9e51023c976" + }, + { + "type": "taprootKeyPathSpend", + "witnessUtxo": { + "script": "512015c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "value": "1000" + }, + "unknownKeyVals": [], + "finalScriptWitness": "01402ea4aeeef7c10765ed7bdce7ac429b7395e08cf55083df38384781054b0880e244fe8a2d847a8c334431322d0eeba4e34872ef6052e2044fff7fa8763ce0c20b" + }, + { + "type": "p2shP2pk", + "finalScriptSig": "483045022100d2a7abb6c0563c3000e37412a9b97f6352d17e40960456fe830d264f0474f8b6022038d5cdbe88a319de5d7b7db8f57d0a92524beb242729b46a617adb530f2fa0d00123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac", + "nonWitnessUtxo": "01000000010101010101010101010101010101010101010101010101010101010101010101000000006a47304402202a91bae6d5c543ab51ccd0409f54469b539dd2e569f90949b8be637eabd3902802206d38f3d87b598275bef6d910e4614e4452573320ca3ddea150e4901aa3781f7c012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff07e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json index 2ac23da..8f28aa6 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.halfsigned.json @@ -263,6 +263,33 @@ "path": "0/0/41/5", "masterFingerprint": "f65cd869" } + ], + "musig2Participants": { + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "tapInternalKey": "eb5ad29a85aed24de2880e774caaf624f9cb1be09c67ed4aefbb9b7bc12ddf1a", + "participantPubKeys": [ + "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171" + ] + }, + "musig2Nonces": [ + { + "participantPubKey": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "pubNonce": "03a4aaf46f3a0bc39a73855fa875b2f2f04bdb06235afbaedf857b593dddc63cb402cdb7f1a93ec526282198d834423371757e8f43932d03b9f43c3f7378300ae508" + }, + { + "participantPubKey": "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "pubNonce": "02826949740dff45d408b1f19d94c720f53411e02c525b28ab3c593b6b530fe0370374b8a0ffcaaaee6b772dac5f7c23ef33670b32ec77c6d41efb3c36df2165a094" + } + ], + "musig2PartialSigs": [ + { + "participantPubKey": "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "partialSig": "1cd8a0c0598b0d88f889fdf9a3140f8f088e2187803a2faaee3f13c0163eb76c" + } ] }, { @@ -279,6 +306,7 @@ ] } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.unsigned.json index 01fe0aa..f936560 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoin.unsigned.json @@ -219,7 +219,15 @@ "path": "0/0/41/5", "masterFingerprint": "f65cd869" } - ] + ], + "musig2Participants": { + "tapOutputKey": "15c5815026f6a54b10194fc6980f1866a02d9ec128533c7997cdb4289bf3ef16", + "tapInternalKey": "eb5ad29a85aed24de2880e774caaf624f9cb1be09c67ed4aefbb9b7bc12ddf1a", + "participantPubKeys": [ + "021d978a17486ff9e47c82990269e531fc63981419d4ce73ee8bd2c99661c53953", + "020fdea69e40a3adef3cdc7fa6f3af02f4c9d9e3254503c96a6a2b4aa66e778171" + ] + } }, { "type": "p2shP2pk", @@ -229,6 +237,7 @@ "sighashType": 1 } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json index b389eed..ac948ab 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.fullsigned.json @@ -67,6 +67,18 @@ ] } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "finalScriptSig": "0048304502210087631f54bea97ba6fb135afc0e6aa5000f405f8c7f4075fb44624fcb100110f102203f3c26a632eef131b32c235537e8d08f0044b2ecfcf4763bbcee40a9ee04e10c41483045022100cc77cb1d7cc21ef86ed84521781a6359549ba5e6d736e46b48e38181e04e11ef022044803e3cd31f6f7d7bd7911ea907bd0861598e824bdcbeb5e3b03114aafb2c74414c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae", + "nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a47304402201ea585fcd078b8d1bd09dafaeb73d52087ab176fd167ffd6083e7c527139e6be02201a27c70abaf3101fcd532cc0e9916d83fe1262e2db1258be6d9661a616aa6583012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000" + }, + { + "type": "p2shP2pk", + "finalScriptSig": "483045022100864e2eb6f32fab5f80e6b321549d0b2d2a335de655be7c734bc2f89bc1f1085a02207b748db3cf0ba9cd4ce564c81da20fa9c3e01f7976cdc05a3704004ce60e92124123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac", + "nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a473044022014b73c08c0183770986da34a9757eaed867e62d118188a649ce11356da7f10c102202d91e5a60cf22dc2736f4fa52333a276f60ed6d6a332fb6e8ffc94deddbba444012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff02e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json index da1fb64..bebe546 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.halfsigned.json @@ -63,6 +63,7 @@ ] } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json index 82d2ce9..d0262d9 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoincash.unsigned.json @@ -51,6 +51,7 @@ "sighashType": 65 } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json index 1e18b2d..d775868 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.fullsigned.json @@ -152,6 +152,35 @@ ] } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "finalScriptSig": "00483045022100e0e1ba72052b3f3c4b193b1f21aff66e8bfb821131f9b7680bea781ca6d637430220285ca143f06cd4e32aeac9bff16ef92abb95df0b08649709266686ad4b180d7641483045022100dd4c0b374aca63840594e44c995835b3630eae3f6111d3eea5faecb49f2e40540220384f3653dce80d9dc2879d508dce3f1ccc8d19b19153737bb23a274941c422d4414c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae", + "nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a47304402201ea585fcd078b8d1bd09dafaeb73d52087ab176fd167ffd6083e7c527139e6be02201a27c70abaf3101fcd532cc0e9916d83fe1262e2db1258be6d9661a616aa6583012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000" + }, + { + "type": "p2shP2wsh", + "witnessUtxo": { + "script": "a9140e26b25d0ceae6f9cff3edaccaa0d1a70da7600f87", + "value": "1000" + }, + "finalScriptSig": "22002046d4800a1393330196085399ed4a1700b4c2fd38c52188c3a3a91f721f3c9600", + "finalScriptWitness": "040047304402206eb6a084505d7badc1afef554e859c65df31ad5b7bdbc62a14943d5b4f95307102200cba48e9c5676562ab30d73094448a0eb35eee73bfac5311140cd944332dca9b41483045022100c3ae94dbb976bcd38566308b4d9350da86ebe044c610b36b913f6476524568cd022044dfd32108f0afe46a63384f42a4990ba73b9ebaddd88801daf3e3ebd83e223c4169522102a585f3fab49b5ef95346d932221a221bd55ec191f15533e0f270b3582574f0352102c4f7866cfd5996bc1068a96313ca15e9ccb5e984583a07340dddae7af014605b2102234531bc9119a36a7946e95aeb74915dd087c7b44f517b8eeeb73f89a0ff1a9953ae" + }, + { + "type": "p2wsh", + "witnessUtxo": { + "script": "0020db0427f1822b4777670e6673c28af02f6da1d5afe71a71f5c9064470b229fafd", + "value": "1000" + }, + "finalScriptWitness": "0400483045022100f8cc6761ff5f70b95b4bb6e50f087be6e3899794b93048f08078c7bce89d5834022011cbeb43e5bd55fc96b39be2bc46112ecd6080fd6f148153dea1dc9cb8dcc5ea41473044022071c4e85d66d2ea91d771458924e674b4ca40f6dc804a31db86d80d51eefc46c5022029bb9741909af81f3205edf62c51342ba3c4444907b78f56fac41155ead0cf3b4169522103519e572ab468560d1f8d0f87699d098308e166905f5dcae4390f060faa8f1ce32103a05bc26391221d685e18daaff36a1e95c34f99451253c16cd42650db278a79112102e80a08885c353676b820cdc290e6d81a0ac95a03e8abbf4bb7aeebfb70feb41853ae" + }, + { + "type": "p2shP2pk", + "finalScriptSig": "483045022100d9fc432b5d223325c038441974d75517582a9f0e8ba10d3188b2092e97c7624e0220028e3307eb02b1916c1a0089ea6ff1a255e6d2bd0eab2c994dfb433d6eea43964123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac", + "nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a4730440220522ac04b6830004156683ec4912e0c1517f1eb80337ca6475a1425f80f248c1002200ef79b195b8f1b37ac42a89a67111e1470eba98db566f9018dd2ca0199bfd1c1012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff04e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json index 3856701..6f9dc4f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.halfsigned.json @@ -140,6 +140,7 @@ ] } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json index 471cc2b..301570a 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.bitcoingold.unsigned.json @@ -116,6 +116,7 @@ "sighashType": 65 } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.fullsigned.json index 8ca85c1..d8ca5dc 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.fullsigned.json @@ -67,6 +67,18 @@ ] } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "finalScriptSig": "004830450221008efa965c7055588939c15bc3e6336bad8b0d3ccc6804287ee5b6fb72d00bfefc02207c685a7d7145c742ce89c62798babf3f8b414feb0d60a75531f1e43e9b29e8d101483045022100bfb1edb5d009f56cdd188c5654cddc8dddcc8f45d03c8a73c208e810f971b1e0022004e8a330bcd62c7e4d34871de3414151fa9c62be678453f35f14dadb82d35dea014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae", + "nonWitnessUtxo": "01000000010101010101010101010101010101010101010101010101010101010101010101000000006b4830450221008d7a270e793fd336fca10b66129c64c00815dd9d3c4546b12d699ab33520073002207d6c5dd46f5c9c65c08fd295e9b4e7db453779928c765128039634b08ed467a1012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000" + }, + { + "type": "p2shP2pk", + "finalScriptSig": "483045022100bb1445d743db3c846b926dc47ae3c18abc8010f7ba55f385c7cd7094b6d2bdb2022019fab8b02d4a0100ac2ed9a6f3e56912faa4b660d52618f93ccd2a287a6e5b680123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac", + "nonWitnessUtxo": "01000000010101010101010101010101010101010101010101010101010101010101010101000000006a4730440220691753a27fe3a3baff26ddc6b3c9cdb2046909cab0e220463f9a0a58d5e1d23e02200c3d4ac45187c47deea2ac437eb415d6543bbbe8870e4a52f2b4c671f14d8317012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff02e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.halfsigned.json index 1d7018a..0810e9d 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.halfsigned.json @@ -63,6 +63,7 @@ ] } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json index 5fd6bac..468ffe9 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dash.unsigned.json @@ -51,6 +51,7 @@ "sighashType": 1 } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json index 0d1fda4..274941f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.fullsigned.json @@ -67,6 +67,18 @@ ] } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "finalScriptSig": "004830450221008efa965c7055588939c15bc3e6336bad8b0d3ccc6804287ee5b6fb72d00bfefc02207c685a7d7145c742ce89c62798babf3f8b414feb0d60a75531f1e43e9b29e8d101483045022100bfb1edb5d009f56cdd188c5654cddc8dddcc8f45d03c8a73c208e810f971b1e0022004e8a330bcd62c7e4d34871de3414151fa9c62be678453f35f14dadb82d35dea014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae", + "nonWitnessUtxo": "01000000010101010101010101010101010101010101010101010101010101010101010101000000006b4830450221008d7a270e793fd336fca10b66129c64c00815dd9d3c4546b12d699ab33520073002207d6c5dd46f5c9c65c08fd295e9b4e7db453779928c765128039634b08ed467a1012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000" + }, + { + "type": "p2shP2pk", + "finalScriptSig": "483045022100bb1445d743db3c846b926dc47ae3c18abc8010f7ba55f385c7cd7094b6d2bdb2022019fab8b02d4a0100ac2ed9a6f3e56912faa4b660d52618f93ccd2a287a6e5b680123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac", + "nonWitnessUtxo": "01000000010101010101010101010101010101010101010101010101010101010101010101000000006a4730440220691753a27fe3a3baff26ddc6b3c9cdb2046909cab0e220463f9a0a58d5e1d23e02200c3d4ac45187c47deea2ac437eb415d6543bbbe8870e4a52f2b4c671f14d8317012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff02e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json index 7966c7e..a498c7f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.halfsigned.json @@ -63,6 +63,7 @@ ] } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.unsigned.json index 78f7b49..9d5153f 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.dogecoin.unsigned.json @@ -51,6 +51,7 @@ "sighashType": 1 } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.fullsigned.json index b389eed..ac948ab 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.fullsigned.json @@ -67,6 +67,18 @@ ] } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "finalScriptSig": "0048304502210087631f54bea97ba6fb135afc0e6aa5000f405f8c7f4075fb44624fcb100110f102203f3c26a632eef131b32c235537e8d08f0044b2ecfcf4763bbcee40a9ee04e10c41483045022100cc77cb1d7cc21ef86ed84521781a6359549ba5e6d736e46b48e38181e04e11ef022044803e3cd31f6f7d7bd7911ea907bd0861598e824bdcbeb5e3b03114aafb2c74414c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae", + "nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a47304402201ea585fcd078b8d1bd09dafaeb73d52087ab176fd167ffd6083e7c527139e6be02201a27c70abaf3101fcd532cc0e9916d83fe1262e2db1258be6d9661a616aa6583012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000" + }, + { + "type": "p2shP2pk", + "finalScriptSig": "483045022100864e2eb6f32fab5f80e6b321549d0b2d2a335de655be7c734bc2f89bc1f1085a02207b748db3cf0ba9cd4ce564c81da20fa9c3e01f7976cdc05a3704004ce60e92124123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac", + "nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a473044022014b73c08c0183770986da34a9757eaed867e62d118188a649ce11356da7f10c102202d91e5a60cf22dc2736f4fa52333a276f60ed6d6a332fb6e8ffc94deddbba444012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff02e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.halfsigned.json index da1fb64..bebe546 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.halfsigned.json @@ -63,6 +63,7 @@ ] } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.unsigned.json index 82d2ce9..d0262d9 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.ecash.unsigned.json @@ -51,6 +51,7 @@ "sighashType": 65 } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.fullsigned.json index bc92558..2a7a58c 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.fullsigned.json @@ -152,6 +152,35 @@ ] } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "finalScriptSig": "00483045022100e9f193db9830d516af5598045b9404d096e89c7a192f77ad220fa3a487308b0002205dea2fd75f700b3beec6e77a4bdd21a6ac9b9a355c1ea958a6864305e203d9fe01473044022025cd881a29cca29960c0361d18f741681bdb0d8c0f55c1f8d78daf03757ce8af02205d93f55191a736ab373b05cfeb099440234d99a2720188c3ac13150cb6e0ac4c014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae", + "nonWitnessUtxo": "01000000010101010101010101010101010101010101010101010101010101010101010101000000006b4830450221008d7a270e793fd336fca10b66129c64c00815dd9d3c4546b12d699ab33520073002207d6c5dd46f5c9c65c08fd295e9b4e7db453779928c765128039634b08ed467a1012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000" + }, + { + "type": "p2shP2wsh", + "witnessUtxo": { + "script": "a9140e26b25d0ceae6f9cff3edaccaa0d1a70da7600f87", + "value": "1000" + }, + "finalScriptSig": "22002046d4800a1393330196085399ed4a1700b4c2fd38c52188c3a3a91f721f3c9600", + "finalScriptWitness": "0400483045022100a4bfba654b915a5ca895c5339ce5edab81bd67b65c805997cad9762840d3c7060220021f8ffb89ebea032cb339ecbd8494c84f955ed894963992b4f31e91e8df0a7401473044022050f1e19eaec828c7856135b98b6e1af9c600229241ec8507d50dae85ff71823902207c084363fe89081b49d929851b62fa9b9d44c70ec3931e8bb473c8d84e35b2e40169522102a585f3fab49b5ef95346d932221a221bd55ec191f15533e0f270b3582574f0352102c4f7866cfd5996bc1068a96313ca15e9ccb5e984583a07340dddae7af014605b2102234531bc9119a36a7946e95aeb74915dd087c7b44f517b8eeeb73f89a0ff1a9953ae" + }, + { + "type": "p2wsh", + "witnessUtxo": { + "script": "0020db0427f1822b4777670e6673c28af02f6da1d5afe71a71f5c9064470b229fafd", + "value": "1000" + }, + "finalScriptWitness": "040047304402204db56669993c9644b84a54892958b7c15d4897829d19a673f7a337bdfab834c202203c6aca862b8ab1a2a3b570689836f09a191b97bcee9ddd8e19271e7a53f6a80401473044022021df7a10ad4a6838c6553897cd6779fa232e89a600058f946a0c4e86a871bb21022049919108dcbda4b4318fb87d5b1c5f929bd9a82f9ef49fadd7b3445a9cf320700169522103519e572ab468560d1f8d0f87699d098308e166905f5dcae4390f060faa8f1ce32103a05bc26391221d685e18daaff36a1e95c34f99451253c16cd42650db278a79112102e80a08885c353676b820cdc290e6d81a0ac95a03e8abbf4bb7aeebfb70feb41853ae" + }, + { + "type": "p2shP2pk", + "finalScriptSig": "483045022100e5bcb83e8f66f30bf6ea886184ef607557cb166ca1d3de3253c293e1865c775202205577e3e2acd1fd7ea93b1e624169db1d52e97030680bc062095cf7ac667d4eca0123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac", + "nonWitnessUtxo": "01000000010101010101010101010101010101010101010101010101010101010101010101000000006b483045022100ae347b03f4709e3d255f6dbfde83db5ffecd51574db382e366ad1c5357465025022050bad0e6959c77bebaa90e298de536f401278064dbc0f14c2dea64281e82ee12012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff04e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.halfsigned.json index ecb93d3..2276aec 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.halfsigned.json @@ -140,6 +140,7 @@ ] } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.unsigned.json index a171dc6..ee9b732 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.litecoin.unsigned.json @@ -116,6 +116,7 @@ "sighashType": 1 } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.fullsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.fullsigned.json index a9992c5..d008a2b 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.fullsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.fullsigned.json @@ -73,6 +73,24 @@ ] } ], + "psbtInputsFinalized": [ + { + "type": "p2sh", + "witnessUtxo": { + "script": "a914567cd7b44f9f3a07c3138f37bf984b60fbbaf24387", + "value": "1000" + }, + "finalScriptSig": "004830450221009165ef9fcf15c598dda0ae03b00cc6580ba180f1cdb71a07dc1f54a8334c2e4f022013397fbf0b91e9d9ff9d167f15ae45a4e3436e149e87aafe3281eb651e77b43601483045022100f25d095fb7c5217a619eaee7d2378c6a89eaefe21a0a49161b25d970c97597e402206c2f9e6d6c2f7fc05f6d5beaffc3fd4a5a1b4d0049fd702551ef5019c7ddf69a014c69522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae" + }, + { + "type": "p2shP2pk", + "witnessUtxo": { + "script": "a91420b37094d82a513451ff0ccd9db23aba05bc5ef387", + "value": "1000" + }, + "finalScriptSig": "473044022059ecb13a8b486269d03205924da1e1df994f8c17c7254eeeb9191327edcdc32002200941fdca39ceb065543f2d86adc98b3e7d48867332091ff920be1cc020e3d2f50123210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac" + } + ], "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.halfsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.halfsigned.json index d01a621..986ecbd 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.halfsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.halfsigned.json @@ -69,6 +69,7 @@ ] } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", diff --git a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.unsigned.json b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.unsigned.json index 0856443..fc55cd7 100644 --- a/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.unsigned.json +++ b/packages/wasm-utxo/test/fixtures/fixed-script/psbt.zcash.unsigned.json @@ -57,6 +57,7 @@ "sighashType": 1 } ], + "psbtInputsFinalized": null, "outputs": [ { "script": "a914d909474404c124a3d04c3fbff61faa49cf43c58b87", From 1a5d219a8b0af474dd14574b38ab956e68fbe03f Mon Sep 17 00:00:00 2001 From: Otto Allmendinger Date: Fri, 31 Oct 2025 09:01:10 +0100 Subject: [PATCH 4/5] feat(wasm-utxo): refactor PSBT fixture test macro to include format parameter Updates the test_psbt_fixtures macro to include the transaction format as an explicit parameter instead of hardcoding it within each test function. This reduces code duplication and makes the test infrastructure more flexible. Issue: BTC-2652 Co-authored-by: llm-git --- packages/wasm-utxo/src/bitgo_psbt/mod.rs | 134 ++++-------------- .../test_utils/fixtures.rs | 38 ++++- 2 files changed, 62 insertions(+), 110 deletions(-) diff --git a/packages/wasm-utxo/src/bitgo_psbt/mod.rs b/packages/wasm-utxo/src/bitgo_psbt/mod.rs index a8abb8c..50e8c19 100644 --- a/packages/wasm-utxo/src/bitgo_psbt/mod.rs +++ b/packages/wasm-utxo/src/bitgo_psbt/mod.rs @@ -184,9 +184,8 @@ mod tests { } } - crate::test_psbt_fixtures!(test_parse_network_mainnet_only, network, { - test_parse_with_format(fixtures::TxFormat::Psbt, network); - test_parse_with_format(fixtures::TxFormat::PsbtLite, network); + crate::test_psbt_fixtures!(test_parse_network_mainnet_only, network, format, { + test_parse_with_format(format, network); }); #[test] @@ -242,9 +241,8 @@ mod tests { } } - crate::test_psbt_fixtures!(test_round_trip_mainnet_only, network, { - test_round_trip_with_format(fixtures::TxFormat::Psbt, network); - test_round_trip_with_format(fixtures::TxFormat::PsbtLite, network); + crate::test_psbt_fixtures!(test_round_trip_mainnet_only, network, format, { + test_round_trip_with_format(format, network); }); fn parse_derivation_path(path: &str) -> Result<(u32, u32), String> { @@ -281,26 +279,6 @@ mod tests { Ok((chain, index)) } - fn find_input_with_script_type( - fixture: &fixtures::PsbtFixture, - script_type: fixtures::ScriptType, - ) -> Result<(usize, &fixtures::PsbtInputFixture), String> { - let result = fixture - .psbt_inputs - .iter() - .enumerate() - .filter(|(_, input)| script_type.matches_fixture(input)) - .collect::>(); - if result.len() != 1 { - return Err(format!( - "Expected 1 input with script type {}, got {}", - script_type.as_str(), - result.len() - )); - } - Ok(result[0]) - } - fn get_output_script_from_non_witness_utxo( input: &fixtures::P2shInput, index: usize, @@ -343,7 +321,7 @@ mod tests { // Check if the script type is supported by the network let output_script_support = network.output_script_support(); - let input_fixture = find_input_with_script_type(&fixture, script_type); + let input_fixture = fixture.find_input_with_script_type(script_type); if !script_type.is_supported_by(&output_script_support) { // Script type not supported by network - skip test (no fixture expected) assert!( @@ -441,101 +419,47 @@ mod tests { Ok(()) } - crate::test_psbt_fixtures!(test_p2sh_script_generation_from_fixture, network, { - test_wallet_script_type( - fixtures::ScriptType::P2sh, - network, - fixtures::TxFormat::Psbt, - ) - .unwrap(); - test_wallet_script_type( - fixtures::ScriptType::P2sh, - network, - fixtures::TxFormat::PsbtLite, - ) - .unwrap(); + crate::test_psbt_fixtures!(test_p2sh_script_generation_from_fixture, network, format, { + test_wallet_script_type(fixtures::ScriptType::P2sh, network, format).unwrap(); }); - crate::test_psbt_fixtures!(test_p2sh_p2wsh_script_generation_from_fixture, network, { - test_wallet_script_type( - fixtures::ScriptType::P2shP2wsh, - network, - fixtures::TxFormat::Psbt, - ) - .unwrap(); - test_wallet_script_type( - fixtures::ScriptType::P2shP2wsh, - network, - fixtures::TxFormat::PsbtLite, - ) - .unwrap(); - }); + crate::test_psbt_fixtures!( + test_p2sh_p2wsh_script_generation_from_fixture, + network, + format, + { + test_wallet_script_type(fixtures::ScriptType::P2shP2wsh, network, format).unwrap(); + } + ); - crate::test_psbt_fixtures!(test_p2wsh_script_generation_from_fixture, network, { - test_wallet_script_type( - fixtures::ScriptType::P2wsh, - network, - fixtures::TxFormat::Psbt, - ) - .unwrap(); - test_wallet_script_type( - fixtures::ScriptType::P2wsh, - network, - fixtures::TxFormat::PsbtLite, - ) - .unwrap(); - }); + crate::test_psbt_fixtures!( + test_p2wsh_script_generation_from_fixture, + network, + format, + { + test_wallet_script_type(fixtures::ScriptType::P2wsh, network, format).unwrap(); + } + ); - crate::test_psbt_fixtures!(test_p2tr_script_generation_from_fixture, network, { - test_wallet_script_type( - fixtures::ScriptType::P2tr, - network, - fixtures::TxFormat::Psbt, - ) - .unwrap(); - test_wallet_script_type( - fixtures::ScriptType::P2tr, - network, - fixtures::TxFormat::PsbtLite, - ) - .unwrap(); + crate::test_psbt_fixtures!(test_p2tr_script_generation_from_fixture, network, format, { + test_wallet_script_type(fixtures::ScriptType::P2tr, network, format).unwrap(); }); crate::test_psbt_fixtures!( test_p2tr_musig2_script_path_generation_from_fixture, network, + format, { - test_wallet_script_type( - fixtures::ScriptType::P2trMusig2, - network, - fixtures::TxFormat::Psbt, - ) - .unwrap(); - test_wallet_script_type( - fixtures::ScriptType::P2trMusig2, - network, - fixtures::TxFormat::PsbtLite, - ) - .unwrap(); + test_wallet_script_type(fixtures::ScriptType::P2trMusig2, network, format).unwrap(); } ); crate::test_psbt_fixtures!( test_p2tr_musig2_key_path_spend_script_generation_from_fixture, network, + format, { - test_wallet_script_type( - fixtures::ScriptType::TaprootKeypath, - network, - fixtures::TxFormat::Psbt, - ) - .unwrap(); - test_wallet_script_type( - fixtures::ScriptType::TaprootKeypath, - network, - fixtures::TxFormat::PsbtLite, - ) - .unwrap(); + test_wallet_script_type(fixtures::ScriptType::TaprootKeypath, network, format).unwrap(); } ); diff --git a/packages/wasm-utxo/src/fixed_script_wallet/test_utils/fixtures.rs b/packages/wasm-utxo/src/fixed_script_wallet/test_utils/fixtures.rs index 2e546c2..84ca3f5 100644 --- a/packages/wasm-utxo/src/fixed_script_wallet/test_utils/fixtures.rs +++ b/packages/wasm-utxo/src/fixed_script_wallet/test_utils/fixtures.rs @@ -269,6 +269,26 @@ impl PsbtFixture { )?; Ok(psbt) } + + pub fn find_input_with_script_type( + &self, + script_type: ScriptType, + ) -> Result<(usize, &PsbtInputFixture), String> { + let result = self + .psbt_inputs + .iter() + .enumerate() + .filter(|(_, input)| script_type.matches_fixture(input)) + .collect::>(); + if result.len() != 1 { + return Err(format!( + "Expected 1 input with script type {}, got {}", + script_type.as_str(), + result.len() + )); + } + Ok(result[0]) + } } // Output script fixture types @@ -729,20 +749,22 @@ impl ScriptType { } /// Macro for testing PSBT fixtures across all mainnet networks (excluding testnets and BSV) +/// and both transaction formats (Psbt and PsbtLite) /// /// This macro generates test cases for mainnet networks only: Bitcoin, BitcoinCash, Ecash, -/// BitcoinGold, Dash, Dogecoin, Litecoin, and Zcash. +/// BitcoinGold, Dash, Dogecoin, Litecoin, and Zcash, combined with both TxFormat variants. +/// This creates a cartesian product of 8 networks × 2 formats = 16 test cases. /// /// # Example /// ```rust,no_run -/// test_psbt_fixtures!(test_my_feature, network, { +/// test_psbt_fixtures!(test_my_feature, network, format, { /// let fixture = load_psbt_fixture_with_network(network, SignatureState::Fullsigned).unwrap(); -/// // ... test logic here +/// // ... test logic using both network and format /// }); /// ``` #[macro_export] macro_rules! test_psbt_fixtures { - ($test_name:ident, $network:ident, $body:block) => { + ($test_name:ident, $network:ident, $format:ident, $body:block) => { #[rstest::rstest] #[case::bitcoin($crate::Network::Bitcoin)] #[case::bitcoin_cash($crate::Network::BitcoinCash)] @@ -752,7 +774,13 @@ macro_rules! test_psbt_fixtures { #[case::dogecoin($crate::Network::Dogecoin)] #[case::litecoin($crate::Network::Litecoin)] #[case::zcash($crate::Network::Zcash)] - fn $test_name(#[case] $network: $crate::Network) $body + fn $test_name( + #[case] $network: $crate::Network, + #[values( + $crate::fixed_script_wallet::test_utils::fixtures::TxFormat::Psbt, + $crate::fixed_script_wallet::test_utils::fixtures::TxFormat::PsbtLite + )] $format: $crate::fixed_script_wallet::test_utils::fixtures::TxFormat + ) $body }; } From b35477f456f2f4975faa4cbd23af1142f6429fe2 Mon Sep 17 00:00:00 2001 From: Otto Allmendinger Date: Mon, 3 Nov 2025 16:38:39 +0100 Subject: [PATCH 5/5] feat(wasm-utxo): add MuSig2 taproot key-path finalization support Implements MuSig2 PSBT proprietary key-value parsing and signature aggregation for taproot key path spending. This enables BitGo wallets to create threshold signatures for taproot outputs using the MuSig2 protocol as specified in BIP-327, which appear as single-signature spends on-chain. The implementation includes: - Parsing MuSig2 participants, nonces, and partial signatures from PSBT - Validating and aggregating partial signatures into a final signature - Finalizing PSBT inputs with aggregated signatures Issue: BTC-2652 Co-authored-by: llm-git --- packages/wasm-utxo/src/bitgo_psbt/mod.rs | 6 + .../src/bitgo_psbt/p2tr_musig2_input.rs | 835 ++++++++++++++++++ packages/wasm-utxo/src/bitgo_psbt/propkv.rs | 147 +++ .../test_utils/fixtures.rs | 372 +++++++- 4 files changed, 1345 insertions(+), 15 deletions(-) create mode 100644 packages/wasm-utxo/src/bitgo_psbt/p2tr_musig2_input.rs create mode 100644 packages/wasm-utxo/src/bitgo_psbt/propkv.rs diff --git a/packages/wasm-utxo/src/bitgo_psbt/mod.rs b/packages/wasm-utxo/src/bitgo_psbt/mod.rs index 50e8c19..0ae99e6 100644 --- a/packages/wasm-utxo/src/bitgo_psbt/mod.rs +++ b/packages/wasm-utxo/src/bitgo_psbt/mod.rs @@ -3,9 +3,15 @@ //! This module provides PSBT deserialization that works across different //! bitcoin-like networks, including those with non-standard transaction formats. +mod p2tr_musig2_input; +mod propkv; mod sighash; mod zcash_psbt; +pub use p2tr_musig2_input::{ + parse_musig2_nonces, parse_musig2_partial_sigs, parse_musig2_participants, Musig2Error, + Musig2Input, Musig2PartialSig, Musig2Participants, Musig2PubNonce, +}; pub use sighash::validate_sighash_type; use crate::{bitgo_psbt::zcash_psbt::ZcashPsbt, networks::Network}; diff --git a/packages/wasm-utxo/src/bitgo_psbt/p2tr_musig2_input.rs b/packages/wasm-utxo/src/bitgo_psbt/p2tr_musig2_input.rs new file mode 100644 index 0000000..e6931a0 --- /dev/null +++ b/packages/wasm-utxo/src/bitgo_psbt/p2tr_musig2_input.rs @@ -0,0 +1,835 @@ +//! MuSig2 PSBT proprietary key-value parsing +//! +//! This module provides encoding and decoding of MuSig2-related proprietary +//! key-values in PSBTs, following the format specified in: +//! https://gist.github.com/sanket1729/4b525c6049f4d9e034d27368c49f28a6 + +use crate::bitgo_psbt::propkv::{find_kv, is_musig2_key, BitGoKeyValue}; + +use super::propkv::ProprietaryKeySubtype; +use crate::bitcoin::{key::UntweakedPublicKey, CompressedPublicKey}; +use miniscript::bitcoin::hashes::{hex, Hash}; +use miniscript::bitcoin::{psbt::Input, secp256k1, Psbt}; +use musig2::PubNonce; + +/// Error types for MuSig2 parsing +#[derive(Debug, Clone, PartialEq, Eq)] +pub enum Musig2Error { + /// Missing participants + MissingParticipants, + /// Invalid identifier (expected BITGO) + InvalidIdentifier, + /// Invalid subtype for the operation + InvalidSubtype { expected: u8, got: u8 }, + /// Invalid keydata length + InvalidKeydataLength { expected: usize, got: usize }, + /// Invalid value length + InvalidValueLength { expected: String, got: usize }, + /// Duplicate participant public keys + DuplicateParticipantKeys, + /// Too many key-values found + TooManyKeyValues { expected: usize, got: usize }, + /// Signature aggregation error + SignatureAggregation(String), + /// Missing nonces for aggregation + MissingNonces, + /// Tap output key mismatch + TapOutputKeyMismatch { expected: String, got: String }, +} + +impl std::fmt::Display for Musig2Error { + fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { + match self { + Musig2Error::MissingParticipants => write!(f, "Missing participants"), + Musig2Error::InvalidIdentifier => write!(f, "Invalid identifier, expected BITGO"), + Musig2Error::InvalidSubtype { expected, got } => { + write!(f, "Invalid subtype: expected {}, got {}", expected, got) + } + Musig2Error::InvalidKeydataLength { expected, got } => { + write!( + f, + "Invalid keydata length: expected {}, got {}", + expected, got + ) + } + Musig2Error::InvalidValueLength { expected, got } => { + write!( + f, + "Invalid value length: expected {}, got {}", + expected, got + ) + } + Musig2Error::DuplicateParticipantKeys => { + write!(f, "Duplicate participant public keys found") + } + Musig2Error::TooManyKeyValues { expected, got } => { + write!( + f, + "Too many key-values: expected up to {}, got {}", + expected, got + ) + } + Musig2Error::SignatureAggregation(msg) => { + write!(f, "Signature aggregation error: {}", msg) + } + Musig2Error::MissingNonces => write!(f, "Missing nonces for aggregation"), + Musig2Error::TapOutputKeyMismatch { expected, got } => { + write!( + f, + "Tap output key mismatch: expected {}, got {}", + expected, got + ) + } + } + } +} + +impl std::error::Error for Musig2Error {} + +/// MuSig2 participant data +/// +/// Maps: `` => `` +#[derive(Debug, Clone, PartialEq, Eq)] +pub struct Musig2Participants { + pub tap_output_key: UntweakedPublicKey, + pub tap_internal_key: UntweakedPublicKey, + pub participant_pub_keys: [CompressedPublicKey; 2], +} + +/// MuSig2 public nonce data +/// +/// Maps: `` => `` +#[derive(Debug, Clone)] +pub struct Musig2PubNonce { + pub participant_pub_key: CompressedPublicKey, + pub tap_output_key: UntweakedPublicKey, + pub pub_nonce: PubNonce, +} + +impl PartialEq for Musig2PubNonce { + fn eq(&self, other: &Self) -> bool { + self.participant_pub_key == other.participant_pub_key + && self.tap_output_key == other.tap_output_key + && self.pub_nonce.serialize() == other.pub_nonce.serialize() + } +} + +impl Eq for Musig2PubNonce {} + +/// MuSig2 partial signature data +/// +/// Maps: `` => `` +#[derive(Debug, Clone, PartialEq, Eq)] +pub struct Musig2PartialSig { + pub participant_pub_key: CompressedPublicKey, + pub tap_output_key: UntweakedPublicKey, + pub partial_sig: Vec, // 32 or 33 bytes (with optional sighash byte) +} + +impl Musig2Participants { + /// Convert to proprietary key-value pair + pub fn to_key_value(&self) -> BitGoKeyValue { + let mut key_field = Vec::with_capacity(64); + key_field.extend_from_slice(&self.tap_output_key.serialize()); + key_field.extend_from_slice(&self.tap_internal_key.serialize()); + + let mut value = Vec::with_capacity(66); + value.extend_from_slice(&self.participant_pub_keys[0].to_bytes()); + value.extend_from_slice(&self.participant_pub_keys[1].to_bytes()); + + BitGoKeyValue::new( + ProprietaryKeySubtype::Musig2ParticipantPubKeys, + key_field, + value, + ) + } + + /// Create from proprietary key-value pair + pub fn from_key_value(kv: &BitGoKeyValue) -> Result { + // Validate keydata length + if kv.key.len() != 64 { + return Err(Musig2Error::InvalidKeydataLength { + expected: 64, + got: kv.key.len(), + }); + } + + // Validate value length + if kv.value.len() != 66 { + return Err(Musig2Error::InvalidValueLength { + expected: "66".to_string(), + got: kv.value.len(), + }); + } + + // Parse keys + let tap_output_key_bytes: [u8; 32] = kv.key[0..32].try_into().unwrap(); + let tap_internal_key_bytes: [u8; 32] = kv.key[32..64].try_into().unwrap(); + + // Parse tap_output_key as x-only public key + let tap_output_key = + UntweakedPublicKey::from_slice(&tap_output_key_bytes).map_err(|e| { + Musig2Error::InvalidValueLength { + expected: "Valid x-only public key".to_string(), + got: format!("Parse error: {}", e).len(), + } + })?; + + // Parse tap_internal_key as UntweakedPublicKey + let tap_internal_key = + UntweakedPublicKey::from_slice(&tap_internal_key_bytes).map_err(|e| { + Musig2Error::InvalidValueLength { + expected: "Valid untweaked public key".to_string(), + got: format!("Parse error: {}", e).len(), + } + })?; + + // Parse participant keys + let participant_key1 = CompressedPublicKey::from_slice(&kv.value[0..33]).map_err(|e| { + Musig2Error::InvalidValueLength { + expected: "Valid compressed public key".to_string(), + got: format!("Parse error: {}", e).len(), + } + })?; + let participant_key2 = CompressedPublicKey::from_slice(&kv.value[33..66]).map_err(|e| { + Musig2Error::InvalidValueLength { + expected: "Valid compressed public key".to_string(), + got: format!("Parse error: {}", e).len(), + } + })?; + + // Check for duplicate keys + if participant_key1 == participant_key2 { + return Err(Musig2Error::DuplicateParticipantKeys); + } + + Ok(Self { + tap_output_key, + tap_internal_key, + participant_pub_keys: [participant_key1, participant_key2], + }) + } + + /// Get participant public keys as CompressedPublicKey types + pub fn get_compressed_pubkeys(&self) -> Vec { + self.participant_pub_keys.to_vec() + } +} + +impl Musig2PubNonce { + /// Convert to proprietary key-value pair + pub fn to_key_value(&self) -> BitGoKeyValue { + let mut key_field = Vec::with_capacity(65); + key_field.extend_from_slice(&self.participant_pub_key.to_bytes()); + key_field.extend_from_slice(&self.tap_output_key.serialize()); + + BitGoKeyValue::new( + ProprietaryKeySubtype::Musig2PubNonce, + key_field, + self.pub_nonce.serialize().to_vec(), + ) + } + + /// Create from proprietary key-value pair + pub fn from_key_value(kv: &BitGoKeyValue) -> Result { + // Validate keydata length + if kv.key.len() != 65 { + return Err(Musig2Error::InvalidKeydataLength { + expected: 65, + got: kv.key.len(), + }); + } + + // Validate value length + if kv.value.len() != 66 { + return Err(Musig2Error::InvalidValueLength { + expected: "66".to_string(), + got: kv.value.len(), + }); + } + + // Parse keys + let participant_pub_key = CompressedPublicKey::from_slice(&kv.key[0..33]).map_err(|e| { + Musig2Error::InvalidValueLength { + expected: "Valid compressed public key".to_string(), + got: format!("Parse error: {}", e).len(), + } + })?; + + let tap_output_key_bytes: [u8; 32] = kv.key[33..65].try_into().unwrap(); + let tap_output_key = + UntweakedPublicKey::from_slice(&tap_output_key_bytes).map_err(|e| { + Musig2Error::InvalidValueLength { + expected: "Valid x-only public key".to_string(), + got: format!("Parse error: {}", e).len(), + } + })?; + + let pub_nonce = + PubNonce::try_from(&kv.value[..]).map_err(|e| Musig2Error::InvalidValueLength { + expected: "Valid 66-byte public nonce".to_string(), + got: format!("Parse error: {}", e).len(), + })?; + + Ok(Self { + participant_pub_key, + tap_output_key, + pub_nonce, + }) + } +} + +impl Musig2PartialSig { + /// Convert to proprietary key-value pair + pub fn to_key_value(&self) -> BitGoKeyValue { + let mut key_field = Vec::with_capacity(65); + key_field.extend_from_slice(&self.participant_pub_key.to_bytes()); + key_field.extend_from_slice(&self.tap_output_key.serialize()); + + BitGoKeyValue::new( + ProprietaryKeySubtype::Musig2PartialSig, + key_field, + self.partial_sig.clone(), + ) + } + + /// Create from proprietary key-value pair + pub fn from_key_value(kv: &BitGoKeyValue) -> Result { + // Validate keydata length + if kv.key.len() != 65 { + return Err(Musig2Error::InvalidKeydataLength { + expected: 65, + got: kv.key.len(), + }); + } + + // Validate value length (32 or 33 bytes) + if kv.value.len() != 32 && kv.value.len() != 33 { + return Err(Musig2Error::InvalidValueLength { + expected: "32 or 33".to_string(), + got: kv.value.len(), + }); + } + + // Parse keys + let participant_pub_key = CompressedPublicKey::from_slice(&kv.key[0..33]).map_err(|e| { + Musig2Error::InvalidValueLength { + expected: "Valid compressed public key".to_string(), + got: format!("Parse error: {}", e).len(), + } + })?; + + let tap_output_key_bytes: [u8; 32] = kv.key[33..65].try_into().unwrap(); + let tap_output_key = + UntweakedPublicKey::from_slice(&tap_output_key_bytes).map_err(|e| { + Musig2Error::InvalidValueLength { + expected: "Valid x-only public key".to_string(), + got: format!("Parse error: {}", e).len(), + } + })?; + + Ok(Self { + participant_pub_key, + tap_output_key, + partial_sig: kv.value.clone(), + }) + } + + /// Get the normalized partial signature (32 bytes, with sighash byte removed if present) + pub fn normalized_signature(&self) -> Result { + let sig_bytes = match self.partial_sig.len() { + 32 => &self.partial_sig[..], + 33 => &self.partial_sig[..32], + len => { + return Err(Musig2Error::InvalidValueLength { + expected: "32 or 33".to_string(), + got: len, + }) + } + }; + + musig2::PartialSignature::try_from(sig_bytes).map_err(|e| Musig2Error::InvalidValueLength { + expected: "Valid 32-byte partial signature".to_string(), + got: format!("Parse error: {}", e).len(), + }) + } +} + +/// Parse MuSig2 participants from PSBT input +/// +/// Returns `None` if no participant data is found. +pub fn parse_musig2_participants(input: &Input) -> Result, Musig2Error> { + let kvs: Vec<_> = find_kv( + ProprietaryKeySubtype::Musig2ParticipantPubKeys, + &input.proprietary, + ) + .collect::>(); + + if kvs.is_empty() { + return Ok(None); + } + + if kvs.len() > 1 { + return Err(Musig2Error::TooManyKeyValues { + expected: 1, + got: kvs.len(), + }); + } + + let kv = &kvs[0]; + Ok(Some(Musig2Participants::from_key_value(kv)?)) +} + +/// Parse MuSig2 public nonces from PSBT input +/// +/// Returns empty vector if no nonces are found. +pub fn parse_musig2_nonces(input: &Input) -> Result, Musig2Error> { + let kvs: Vec<_> = + find_kv(ProprietaryKeySubtype::Musig2PubNonce, &input.proprietary).collect::>(); + + if kvs.len() > 2 { + return Err(Musig2Error::TooManyKeyValues { + expected: 2, + got: kvs.len(), + }); + } + + kvs.iter().map(Musig2PubNonce::from_key_value).collect() +} + +/// Parse MuSig2 partial signatures from PSBT input +/// +/// Returns empty vector if no partial signatures are found. +pub fn parse_musig2_partial_sigs(input: &Input) -> Result, Musig2Error> { + let kvs: Vec<_> = + find_kv(ProprietaryKeySubtype::Musig2PartialSig, &input.proprietary).collect::>(); + + if kvs.len() > 2 { + return Err(Musig2Error::TooManyKeyValues { + expected: 2, + got: kvs.len(), + }); + } + + kvs.iter().map(Musig2PartialSig::from_key_value).collect() +} + +pub struct Musig2Input { + pub participants: Musig2Participants, + pub nonces: Vec, + pub partial_sigs: Vec, +} + +/// Collect all prevouts (funding outputs) from PSBT inputs +/// +/// This helper extracts the TxOut for each input from either witness_utxo or non_witness_utxo. +/// Required for computing sighashes in taproot transactions. +fn collect_prevouts(psbt: &Psbt) -> Result, Musig2Error> { + let tx = &psbt.unsigned_tx; + psbt.inputs + .iter() + .enumerate() + .map(|(i, input)| { + if let Some(witness_utxo) = &input.witness_utxo { + Ok(witness_utxo.clone()) + } else if let Some(non_witness_utxo) = &input.non_witness_utxo { + let output_index = tx.input[i].previous_output.vout as usize; + Ok(non_witness_utxo.output[output_index].clone()) + } else { + Err(Musig2Error::SignatureAggregation(format!( + "Missing UTXO data for input {}", + i + ))) + } + }) + .collect() +} + +impl Musig2Input { + /// Check if the input is a MuSig2 input + /// Returns true if the input has any MuSig2 key-value pairs + pub fn is_musig2_input(input: &Input) -> bool { + find_kv( + ProprietaryKeySubtype::Musig2ParticipantPubKeys, + &input.proprietary, + ) + .next() + .is_some() + || find_kv(ProprietaryKeySubtype::Musig2PubNonce, &input.proprietary) + .next() + .is_some() + || find_kv(ProprietaryKeySubtype::Musig2PartialSig, &input.proprietary) + .next() + .is_some() + } + + pub fn from_input(input: &Input) -> Result { + let participants = + parse_musig2_participants(input)?.ok_or(Musig2Error::MissingParticipants)?; + let nonces = parse_musig2_nonces(input)?; + let partial_sigs = parse_musig2_partial_sigs(input)?; + Ok(Self { + participants, + nonces, + partial_sigs, + }) + } + + /// Finalize a MuSig2 PSBT input by aggregating signatures and delegating to miniscript + /// + /// This method: + /// 1. Parses MuSig2 proprietary data from the input + /// 2. Aggregates partial signatures into a single Schnorr signature + /// 3. Places the signature in the standard `tap_key_sig` field (BIP 371) + /// 4. Clears MuSig2 proprietary fields + /// 5. Delegates to miniscript's standard finalization to create the witness + /// + /// After aggregation, the MuSig2 signature is indistinguishable from a single-key + /// taproot signature, allowing us to reuse all standard finalization code. + pub fn finalize_input( + psbt: &mut Psbt, + secp: &secp256k1::Secp256k1, + input_index: usize, + ) -> Result<(), Musig2Error> { + use crate::bitcoin::sighash::SighashCache; + use miniscript::psbt::PsbtExt; + + // Step 1: Parse Musig2Input from PSBT input + let musig2_input = Self::from_input(&psbt.inputs[input_index])?; + + // Step 2: Collect all prevouts for sighash computation + let prevouts = collect_prevouts(psbt)?; + + // Get tap merkle root from input + use crate::bitcoin::taproot::TapNodeHash; + let tap_merkle_root = psbt.inputs[input_index] + .tap_merkle_root + .unwrap_or_else(|| TapNodeHash::from_byte_array([0u8; 32])); + + // Step 3: Aggregate signatures + let mut sighash_cache = SighashCache::new(&psbt.unsigned_tx); + let taproot_sig = musig2_input.aggregate_signature( + &mut sighash_cache, + &prevouts, + input_index, + &tap_merkle_root, + )?; + + // Step 4: Set tap_key_sig + psbt.inputs[input_index].tap_key_sig = Some(taproot_sig); + + // Step 5: Clear MuSig2 proprietary fields (they're no longer needed) + psbt.inputs[input_index] + .proprietary + .retain(|key, _| !is_musig2_key(key)); + + // Step 6: Use standard miniscript finalization for the rest! + psbt.finalize_inp_mut(secp, input_index).map_err(|e| { + Musig2Error::SignatureAggregation(format!("Finalization failed: {}", e)) + })?; + + Ok(()) + } + + /// Get public nonces + pub fn get_pub_nonces(&self) -> Vec { + self.nonces.iter().map(|n| n.pub_nonce.clone()).collect() + } + + /// Get participant public keys as Point types for musig2 + pub fn get_participant_pubkeys(&self) -> Result, Musig2Error> { + use musig2::secp::Point; + + self.participants + .participant_pub_keys + .iter() + .enumerate() + .map(|(i, pk)| { + Point::try_from(&pk.to_bytes()[..]).map_err(|e| { + Musig2Error::SignatureAggregation(format!( + "Invalid public key at index {}: {}", + i, e + )) + }) + }) + .collect() + } + + /// Get normalized partial signatures (32 bytes each, with sighash byte removed if present) + pub fn get_normalized_partial_sigs( + &self, + ) -> Result, Musig2Error> { + self.partial_sigs + .iter() + .map(|sig| sig.normalized_signature()) + .collect() + } + + /// Aggregate MuSig2 partial signatures into a final Schnorr signature + /// + /// This method: + /// 1. Validates the input has sufficient nonces and signatures + /// 2. Computes the taproot sighash from the sighash cache + /// 3. Creates a MuSig2 signing session using the musig2 crate + /// 4. Aggregates the partial signatures using BIP-327 + /// + /// # Arguments + /// * `sighash_cache` - The sighash cache for computing transaction hashes + /// * `prevouts` - The prevouts for all inputs (needed for taproot sighash computation) + /// * `input_index` - The index of this input in the transaction + /// * `tap_merkle_root` - The taproot merkle root + /// + /// # Returns + /// The aggregated taproot signature + pub fn aggregate_signature>( + &self, + sighash_cache: &mut crate::bitcoin::sighash::SighashCache, + prevouts: &[crate::bitcoin::TxOut], + input_index: usize, + tap_merkle_root: &crate::bitcoin::taproot::TapNodeHash, + ) -> Result { + use crate::bitcoin::sighash::{Prevouts, TapSighashType}; + use musig2::{AggNonce, BinaryEncoding, KeyAggContext}; + + // Validate input + if self.nonces.len() < 2 { + return Err(Musig2Error::SignatureAggregation(format!( + "At least 2 public nonces are required, got {}", + self.nonces.len() + ))); + } + if self.partial_sigs.len() < 2 { + return Err(Musig2Error::SignatureAggregation(format!( + "At least 2 partial signatures are required, got {}", + self.partial_sigs.len() + ))); + } + + // Extract data + let pub_nonces = self.get_pub_nonces(); + let parsed_keys = self.get_participant_pubkeys()?; + let parsed_sigs = self.get_normalized_partial_sigs()?; + + // Compute taproot key spend sighash + let sighash_type = TapSighashType::Default; + let sighash = sighash_cache + .taproot_key_spend_signature_hash(input_index, &Prevouts::All(prevouts), sighash_type) + .map_err(|e| { + Musig2Error::SignatureAggregation(format!("Failed to compute sighash: {}", e)) + })?; + + // Aggregate public nonces + let agg_nonce = AggNonce::sum(&pub_nonces); + + // Create key aggregation context + let key_agg_ctx = KeyAggContext::new(parsed_keys).map_err(|e| { + Musig2Error::SignatureAggregation(format!("Failed to create key agg context: {}", e)) + })?; + + // Apply taproot tweak + let tap_tree_root_bytes = tap_merkle_root.to_byte_array(); + let key_agg_ctx = key_agg_ctx + .with_taproot_tweak(&tap_tree_root_bytes) + .map_err(|e| { + Musig2Error::SignatureAggregation(format!("Failed to apply taproot tweak: {}", e)) + })?; + + // Validate that computed tap_output_key matches the stored one + let computed_tap_output_key: musig2::secp::Point = key_agg_ctx.aggregated_pubkey(); + let computed_tap_output_key_bytes = computed_tap_output_key.serialize_xonly(); + let stored_tap_output_key_bytes = self.participants.tap_output_key.serialize(); + if computed_tap_output_key_bytes != stored_tap_output_key_bytes { + return Err(Musig2Error::TapOutputKeyMismatch { + expected: hex::DisplayHex::to_lower_hex_string(&stored_tap_output_key_bytes), + got: hex::DisplayHex::to_lower_hex_string(&computed_tap_output_key_bytes), + }); + } + + // Aggregate signatures using standard BIP-327 + let sighash_bytes = sighash.to_byte_array(); + let final_sig: musig2::LiftedSignature = musig2::aggregate_partial_signatures( + &key_agg_ctx, + &agg_nonce, + parsed_sigs, + sighash_bytes, + ) + .map_err(|e| { + Musig2Error::SignatureAggregation(format!("Signature aggregation failed: {}", e)) + })?; + + // Convert to taproot signature + let sig_bytes: [u8; 64] = final_sig.to_bytes(); + crate::bitcoin::taproot::Signature::from_slice(&sig_bytes) + .map_err(|e| Musig2Error::SignatureAggregation(format!("Invalid signature: {}", e))) + } +} + +#[cfg(test)] +mod tests { + use super::*; + use crate::fixed_script_wallet::test_utils::fixtures; + use crate::fixed_script_wallet::test_utils::fixtures::{ + load_psbt_fixture_with_format, ScriptType, SignatureState, TxFormat, + }; + use crate::Network; + + struct Musig2FixtureData { + fixture: fixtures::PsbtFixture, + musig2_input: Musig2Input, + musig2_input_index: usize, + fixture_keypath_input: fixtures::P2trMusig2KeyPathInput, + // only set for fullsigned + fixture_keypath_final_input: Option, + } + + fn get_musig2_fixture_data( + signature_state: SignatureState, + ) -> Result { + let fixture = load_psbt_fixture_with_format("bitcoin", signature_state, TxFormat::Psbt) + .expect("Failed to load fixture"); + + let (input_index, input_fixture) = fixture + .find_input_with_script_type(ScriptType::TaprootKeypath) + .expect("Failed to find taprootKeyPathSpend input"); + + let finalized_input_fixture = if signature_state == SignatureState::Fullsigned { + let (finalized_input_index, finalized_input_fixture) = fixture + .find_finalized_input_with_script_type(ScriptType::TaprootKeypath) + .expect("Failed to find taprootKeyPathSpend finalized input"); + assert_eq!(input_index, finalized_input_index); + Some(finalized_input_fixture) + } else { + None + }; + + let bitgo_psbt = fixture + .to_bitgo_psbt(Network::Bitcoin) + .expect("Failed to convert to BitGoPsbt"); + let psbt = bitgo_psbt.into_psbt(); + + let musig2_input = + Musig2Input::from_input(&psbt.inputs[input_index]).map_err(|e| e.to_string())?; + + let fixture_keypath_input = match input_fixture { + fixtures::PsbtInputFixture::P2trMusig2KeyPath(input) => input, + _ => return Err("Invalid input type".to_string()), + }; + let fixture_keypath_final_input: Option = + match finalized_input_fixture.as_ref() { + Some(fixtures::PsbtFinalInputFixture::P2trMusig2KeyPath(input)) => { + Some(input.clone()) + } + Some(_) => return Err("Invalid finalized input type".to_string()), + None => None, + }; + Ok(Musig2FixtureData { + fixture: fixture.clone(), + musig2_input, + musig2_input_index: input_index, + fixture_keypath_input: fixture_keypath_input.clone(), + fixture_keypath_final_input: fixture_keypath_final_input.clone(), + }) + } + + fn test_signature_aggregation(musig2_fixture_data: &Musig2FixtureData) { + let Musig2FixtureData { + fixture, + musig2_input, + musig2_input_index, + fixture_keypath_input, + fixture_keypath_final_input, + } = musig2_fixture_data; + + // Get the PSBT + let psbt = fixture + .to_bitgo_psbt(Network::Bitcoin) + .expect("Failed to convert to BitGoPsbt") + .into_psbt(); + + // Get expected signature from fixture + let fixture_keypath_final_input = fixture_keypath_final_input + .as_ref() + .expect("Finalized input not found"); + let fixture_witness_hex = &fixture_keypath_final_input.final_script_witness; + + // Parse witness stack: first byte is element count, second byte is signature length + let fixture_witness_bytes = as hex::FromHex>::from_hex(fixture_witness_hex) + .expect("Failed to decode fixture witness hex"); + + // For taproot key path spend: witness should be [num_elements(1), sig_len(64), sig_data...] + assert_eq!(fixture_witness_bytes[0], 0x01, "Expected 1 witness element"); + assert_eq!(fixture_witness_bytes[1], 0x40, "Expected 64-byte signature"); + let fixture_signature = &fixture_witness_bytes[2..66]; + + // Get tap merkle root from fixture + use crate::bitcoin::sighash::SighashCache; + use crate::bitcoin::taproot::TapNodeHash; + + let tap_tree_root_bytes = + as hex::FromHex>::from_hex(&fixture_keypath_input.tap_merkle_root) + .expect("Failed to decode tap merkle root"); + let tap_tree_root_array: [u8; 32] = tap_tree_root_bytes + .as_slice() + .try_into() + .expect("Invalid tap merkle root length"); + let tap_tree_root = TapNodeHash::from_byte_array(tap_tree_root_array); + + // Collect all prevouts for sighash computation + let prevouts = collect_prevouts(&psbt).expect("Failed to collect prevouts"); + + // Create sighash cache + let mut sighash_cache = SighashCache::new(&psbt.unsigned_tx); + + // Aggregate the signature using the Musig2Input method + let aggregated_sig = musig2_input + .aggregate_signature( + &mut sighash_cache, + &prevouts, + *musig2_input_index, + &tap_tree_root, + ) + .expect("Failed to aggregate signatures"); + + // Compare with fixture + let sig_bytes = aggregated_sig.to_vec(); + assert_eq!(sig_bytes.len(), 64, "Expected 64-byte aggregated signature"); + assert_eq!( + &sig_bytes[..], + fixture_signature, + "Aggregated signature does not match fixture" + ); + + println!("✓ Signature aggregation matches fixture"); + } + + fn test_musig2_keypath_matches_fixture(signature_state: SignatureState) { + let musig2_fixture_data = + get_musig2_fixture_data(signature_state).expect("Failed to get musig2 input"); + + musig2_fixture_data + .fixture_keypath_input + .assert_matches_musig2_input(&musig2_fixture_data.musig2_input) + .expect("Musig2 input validation failed"); + + if signature_state == SignatureState::Fullsigned { + test_signature_aggregation(&musig2_fixture_data); + } + + println!("✓ All musig2 data matches fixture"); + } + + #[test] + fn test_musig2_keypath_matches_fixture_unsigned() { + test_musig2_keypath_matches_fixture(SignatureState::Unsigned); + } + + #[test] + fn test_musig2_keypath_matches_fixture_halfsigned() { + test_musig2_keypath_matches_fixture(SignatureState::Halfsigned); + } + + #[test] + fn test_musig2_keypath_matches_fixture_fullsigned() { + test_musig2_keypath_matches_fixture(SignatureState::Fullsigned); + } +} diff --git a/packages/wasm-utxo/src/bitgo_psbt/propkv.rs b/packages/wasm-utxo/src/bitgo_psbt/propkv.rs new file mode 100644 index 0000000..f9de23d --- /dev/null +++ b/packages/wasm-utxo/src/bitgo_psbt/propkv.rs @@ -0,0 +1,147 @@ +//! Proprietary key-value utilities for PSBT fields +//! +//! This module provides utilities for working with proprietary key-values in PSBTs, +//! specifically for BitGo-specific extensions like MuSig2 data. +//! ``` + +pub use miniscript::bitcoin::psbt::raw::ProprietaryKey; + +/// Find proprietary key-values in PSBT proprietary field matching the criteria +fn find_kv_iter<'a>( + map: &'a std::collections::BTreeMap>, + prefix: &'a [u8], + subtype: Option, +) -> impl Iterator)> + 'a { + map.iter().filter(move |(k, _)| { + // Check if the prefix matches + if k.prefix.as_slice() != prefix { + return false; + } + + // Check if subtype matches (if specified) + if let Some(st) = subtype { + if k.subtype != st { + return false; + } + } + + true + }) +} + +/// BitGo proprietary key identifier +pub const BITGO: &[u8] = b"BITGO"; + +/// Subtypes for proprietary keys that BitGo uses +#[derive(Debug, Clone, Copy, PartialEq, Eq)] +#[repr(u8)] +pub enum ProprietaryKeySubtype { + ZecConsensusBranchId = 0x00, + Musig2ParticipantPubKeys = 0x01, + Musig2PubNonce = 0x02, + Musig2PartialSig = 0x03, + PayGoAddressAttestationProof = 0x04, + Bip322Message = 0x05, +} + +impl ProprietaryKeySubtype { + pub fn from(value: u8) -> Option { + match value { + 0x00 => Some(ProprietaryKeySubtype::ZecConsensusBranchId), + 0x01 => Some(ProprietaryKeySubtype::Musig2ParticipantPubKeys), + 0x02 => Some(ProprietaryKeySubtype::Musig2PubNonce), + 0x03 => Some(ProprietaryKeySubtype::Musig2PartialSig), + 0x04 => Some(ProprietaryKeySubtype::PayGoAddressAttestationProof), + 0x05 => Some(ProprietaryKeySubtype::Bip322Message), + _ => None, + } + } +} + +#[derive(Debug)] +pub struct BitGoKeyValueError { + pub message: String, +} + +pub struct BitGoKeyValue { + pub subtype: ProprietaryKeySubtype, + pub key: Vec, + pub value: Vec, +} + +impl BitGoKeyValue { + pub fn new(subtype: ProprietaryKeySubtype, key: Vec, value: Vec) -> Self { + Self { + subtype, + key, + value, + } + } + + pub fn from_key_value(key: &ProprietaryKey, value: &[u8]) -> Result { + let subtype = ProprietaryKeySubtype::from(key.subtype); + match subtype { + Some(subtype) => Ok(Self::new(subtype, key.key.clone(), value.to_owned())), + None => Err(BitGoKeyValueError { + message: format!( + "Unknown or unsupported BitGo proprietary key subtype: {}", + key.subtype + ), + }), + } + } + + pub fn to_key_value(&self) -> (ProprietaryKey, Vec) { + let key = ProprietaryKey { + prefix: BITGO.to_vec(), + subtype: self.subtype as u8, + key: self.key.clone(), + }; + (key, self.value.clone()) + } +} + +pub fn find_kv<'a>( + subtype: ProprietaryKeySubtype, + map: &'a std::collections::BTreeMap>, +) -> impl Iterator + 'a { + find_kv_iter(map, BITGO, Some(subtype as u8)).map(|(key, value)| { + BitGoKeyValue::from_key_value(key, value).expect("Failed to create BitGoKeyValue") + }) +} + +/// Check if a proprietary key is a BitGo key +pub fn is_bitgo_key(key: &ProprietaryKey) -> bool { + key.prefix.as_slice() == BITGO +} + +/// Check if a proprietary key is a BitGo MuSig2 key +pub fn is_musig2_key(key: &ProprietaryKey) -> bool { + if !is_bitgo_key(key) { + return false; + } + matches!( + ProprietaryKeySubtype::from(key.subtype), + Some(ProprietaryKeySubtype::Musig2ParticipantPubKeys) + | Some(ProprietaryKeySubtype::Musig2PubNonce) + | Some(ProprietaryKeySubtype::Musig2PartialSig) + ) +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn test_proprietary_key_structure() { + let key = ProprietaryKey { + prefix: b"BITGO".to_vec(), + subtype: 0x03, + key: vec![1, 2, 3], + }; + + assert_eq!(key.prefix, b"BITGO"); + assert_eq!(key.subtype, 0x03); + assert_eq!(key.key, vec![1, 2, 3]); + } +} diff --git a/packages/wasm-utxo/src/fixed_script_wallet/test_utils/fixtures.rs b/packages/wasm-utxo/src/fixed_script_wallet/test_utils/fixtures.rs index 84ca3f5..38465b1 100644 --- a/packages/wasm-utxo/src/fixed_script_wallet/test_utils/fixtures.rs +++ b/packages/wasm-utxo/src/fixed_script_wallet/test_utils/fixtures.rs @@ -123,6 +123,134 @@ pub struct TapTree { pub leaves: Vec, } +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct Musig2Participants { + pub tap_output_key: String, + pub tap_internal_key: String, + pub participant_pub_keys: Vec, +} + +impl Musig2Participants { + /// Validates that the parsed Musig2Participants matches this fixture + pub fn assert_matches_parsed( + &self, + parsed: &crate::bitgo_psbt::Musig2Participants, + ) -> Result<(), String> { + // Compare tap_output_key + let parsed_output_key_hex = hex::encode(parsed.tap_output_key.serialize()); + assert_hex_eq( + &parsed_output_key_hex, + &self.tap_output_key, + "Tap output key", + )?; + + // Compare tap_internal_key + let parsed_internal_key_hex = hex::encode(parsed.tap_internal_key.serialize()); + assert_hex_eq( + &parsed_internal_key_hex, + &self.tap_internal_key, + "Tap internal key", + )?; + + // Compare participant pub keys + if parsed.participant_pub_keys.len() != self.participant_pub_keys.len() { + return Err(format!( + "Participant pub keys count mismatch: expected {}, got {}", + self.participant_pub_keys.len(), + parsed.participant_pub_keys.len() + )); + } + + for (i, parsed_key) in parsed.participant_pub_keys.iter().enumerate() { + let parsed_key_hex = hex::encode(parsed_key.to_bytes()); + assert_hex_eq( + &parsed_key_hex, + &self.participant_pub_keys[i], + &format!("Participant pub key {}", i), + )?; + } + + Ok(()) + } +} + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct Musig2Nonce { + pub participant_pub_key: String, + pub tap_output_key: String, + pub pub_nonce: String, +} + +impl Musig2Nonce { + /// Validates that the parsed Musig2PubNonce matches this fixture + pub fn assert_matches_parsed( + &self, + parsed: &crate::bitgo_psbt::Musig2PubNonce, + ) -> Result<(), String> { + // Compare participant pub key + let parsed_participant_key_hex = hex::encode(parsed.participant_pub_key.to_bytes()); + assert_hex_eq( + &parsed_participant_key_hex, + &self.participant_pub_key, + "Participant pub key", + )?; + + // Compare tap_output_key + let parsed_output_key_hex = hex::encode(parsed.tap_output_key.serialize()); + assert_hex_eq( + &parsed_output_key_hex, + &self.tap_output_key, + "Tap output key", + )?; + + // Compare pub_nonce + let parsed_nonce_hex = hex::encode(parsed.pub_nonce.serialize()); + assert_hex_eq(&parsed_nonce_hex, &self.pub_nonce, "Public nonce")?; + + Ok(()) + } +} + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct Musig2PartialSig { + pub participant_pub_key: String, + pub tap_output_key: String, + pub partial_sig: String, +} + +impl Musig2PartialSig { + /// Validates that the parsed Musig2PartialSig matches this fixture + pub fn assert_matches_parsed( + &self, + parsed: &crate::bitgo_psbt::Musig2PartialSig, + ) -> Result<(), String> { + // Compare participant pub key + let parsed_participant_key_hex = hex::encode(parsed.participant_pub_key.to_bytes()); + assert_hex_eq( + &parsed_participant_key_hex, + &self.participant_pub_key, + "Participant pub key", + )?; + + // Compare tap_output_key + let parsed_output_key_hex = hex::encode(parsed.tap_output_key.serialize()); + assert_hex_eq( + &parsed_output_key_hex, + &self.tap_output_key, + "Tap output key", + )?; + + // Compare partial_sig + let parsed_sig_hex = hex::encode(&parsed.partial_sig); + assert_hex_eq(&parsed_sig_hex, &self.partial_sig, "Partial signature")?; + + Ok(()) + } +} + // Input type structs (depend on helper types above) #[derive(Debug, Clone, Deserialize, Serialize)] @@ -186,6 +314,12 @@ pub struct P2trMusig2KeyPathInput { pub tap_internal_key: String, pub tap_merkle_root: String, pub tap_bip32_derivation: Vec, + #[serde(skip_serializing_if = "Option::is_none")] + pub musig2_participants: Option, + #[serde(default, skip_serializing_if = "Vec::is_empty")] + pub musig2_nonces: Vec, + #[serde(default, skip_serializing_if = "Vec::is_empty")] + pub musig2_partial_sigs: Vec, } #[derive(Debug, Clone, Deserialize, Serialize)] @@ -223,6 +357,94 @@ pub enum PsbtInputFixture { P2shP2pk(P2shP2pkInput), } +// Finalized input type structs (depend on helper types above) + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct P2shFinalInput { + #[serde(skip_serializing_if = "Option::is_none")] + pub unknown_key_vals: Option>, + pub final_script_sig: String, + /// Present for non-PSBT-LITE format (legacy) + #[serde(skip_serializing_if = "Option::is_none")] + pub non_witness_utxo: Option, + /// Present for PSBT-LITE format + #[serde(skip_serializing_if = "Option::is_none")] + pub witness_utxo: Option, +} + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct P2shP2wshFinalInput { + #[serde(skip_serializing_if = "Option::is_none")] + pub unknown_key_vals: Option>, + pub witness_utxo: WitnessUtxo, + pub final_script_sig: String, + pub final_script_witness: String, +} + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct P2wshFinalInput { + #[serde(skip_serializing_if = "Option::is_none")] + pub unknown_key_vals: Option>, + pub witness_utxo: WitnessUtxo, + pub final_script_witness: String, +} + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct P2trScriptPathFinalInput { + #[serde(skip_serializing_if = "Option::is_none")] + pub unknown_key_vals: Option>, + pub witness_utxo: WitnessUtxo, + pub final_script_witness: String, +} + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct P2trMusig2KeyPathFinalInput { + #[serde(skip_serializing_if = "Option::is_none")] + pub unknown_key_vals: Option>, + pub witness_utxo: WitnessUtxo, + pub final_script_witness: String, +} + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(rename_all = "camelCase")] +pub struct P2shP2pkFinalInput { + #[serde(skip_serializing_if = "Option::is_none")] + pub unknown_key_vals: Option>, + pub final_script_sig: String, + /// Present for non-PSBT-LITE format (legacy) + #[serde(skip_serializing_if = "Option::is_none")] + pub non_witness_utxo: Option, + /// Present for PSBT-LITE format + #[serde(skip_serializing_if = "Option::is_none")] + pub witness_utxo: Option, +} + +// Final input enum (depends on final input type structs) + +#[derive(Debug, Clone, Deserialize, Serialize)] +#[serde(tag = "type")] +pub enum PsbtFinalInputFixture { + #[serde(rename = "p2sh")] + P2sh(P2shFinalInput), + #[serde(rename = "p2shP2wsh")] + P2shP2wsh(P2shP2wshFinalInput), + #[serde(rename = "p2wsh")] + P2wsh(P2wshFinalInput), + #[serde(rename = "p2tr")] + P2trLegacy(P2trScriptPathFinalInput), + #[serde(rename = "p2trMusig2")] + P2trMusig2ScriptPath(P2trScriptPathFinalInput), + #[serde(rename = "taprootKeyPathSpend")] + P2trMusig2KeyPath(P2trMusig2KeyPathFinalInput), + #[serde(rename = "p2shP2pk")] + P2shP2pk(P2shP2pkFinalInput), +} + // Output types (depend on helper types) #[derive(Debug, Clone, Deserialize, Serialize)] @@ -252,11 +474,33 @@ pub struct PsbtFixture { pub psbt_base64: String, pub inputs: Vec, pub psbt_inputs: Vec, + pub psbt_inputs_finalized: Option>, pub outputs: Vec, pub psbt_outputs: Vec, pub extracted_transaction: Option, } +/// Helper function to find a unique input matching a predicate +fn find_unique_input<'a, T, I, F>( + iter: I, + predicate: F, + script_type: ScriptType, +) -> Result<(usize, &'a T), String> +where + I: Iterator, + F: FnMut(&(usize, &'a T)) -> bool, +{ + let result = iter.filter(predicate).collect::>(); + if result.len() != 1 { + return Err(format!( + "Expected 1 input with script type {}, got {}", + script_type.as_str(), + result.len() + )); + } + Ok(result[0]) +} + impl PsbtFixture { pub fn to_bitgo_psbt( &self, @@ -274,20 +518,27 @@ impl PsbtFixture { &self, script_type: ScriptType, ) -> Result<(usize, &PsbtInputFixture), String> { - let result = self - .psbt_inputs - .iter() - .enumerate() - .filter(|(_, input)| script_type.matches_fixture(input)) - .collect::>(); - if result.len() != 1 { - return Err(format!( - "Expected 1 input with script type {}, got {}", - script_type.as_str(), - result.len() - )); - } - Ok(result[0]) + find_unique_input( + self.psbt_inputs.iter().enumerate(), + |(_, input)| script_type.matches_fixture(input), + script_type, + ) + } + + pub fn find_finalized_input_with_script_type( + &self, + script_type: ScriptType, + ) -> Result<(usize, &PsbtFinalInputFixture), String> { + let finalized_inputs = self + .psbt_inputs_finalized + .as_ref() + .ok_or_else(|| "No finalized inputs available in fixture".to_string())?; + + find_unique_input( + finalized_inputs.iter().enumerate(), + |(_, input)| script_type.matches_finalized_fixture(input), + script_type, + ) } } @@ -472,7 +723,7 @@ pub fn parse_wallet_keys( // Helper functions for validation /// Compares a generated hex string with an expected hex string -fn assert_hex_eq(generated: &str, expected: &str, field_name: &str) -> Result<(), String> { +pub fn assert_hex_eq(generated: &str, expected: &str, field_name: &str) -> Result<(), String> { if generated != expected { Err(format!( "{} mismatch\nExpected: {}\nGot: {}", @@ -670,6 +921,78 @@ impl P2trMusig2KeyPathInput { self.assert_matches_spend_info(spend_info, network) }) } + + /// Validates that the parsed Musig2 input data matches this fixture + pub fn assert_matches_musig2_input( + &self, + musig2_input: &crate::bitgo_psbt::Musig2Input, + ) -> Result<(), String> { + // Validate participants + let fixture_participants = self + .musig2_participants + .as_ref() + .ok_or_else(|| "Expected fixture participants".to_string())?; + + fixture_participants + .assert_matches_parsed(&musig2_input.participants) + .map_err(|e| format!("Participants mismatch: {}", e))?; + + // Validate nonces + if musig2_input.nonces.len() != self.musig2_nonces.len() { + return Err(format!( + "Nonce count mismatch: expected {}, got {}", + self.musig2_nonces.len(), + musig2_input.nonces.len() + )); + } + + for fixture_nonce in &self.musig2_nonces { + // Find matching parsed nonce by participant key + let matching_parsed = musig2_input.nonces.iter().find(|pn| { + hex::encode(pn.participant_pub_key.to_bytes()) == fixture_nonce.participant_pub_key + }); + + let parsed_nonce = matching_parsed.ok_or_else(|| { + format!( + "No matching nonce found for participant key: {}", + fixture_nonce.participant_pub_key + ) + })?; + + fixture_nonce + .assert_matches_parsed(parsed_nonce) + .map_err(|e| format!("Nonce mismatch: {}", e))?; + } + + // Validate partial signatures + if musig2_input.partial_sigs.len() != self.musig2_partial_sigs.len() { + return Err(format!( + "Partial signature count mismatch: expected {}, got {}", + self.musig2_partial_sigs.len(), + musig2_input.partial_sigs.len() + )); + } + + for fixture_sig in &self.musig2_partial_sigs { + // Find matching parsed sig by participant key + let matching_parsed = musig2_input.partial_sigs.iter().find(|ps| { + hex::encode(ps.participant_pub_key.to_bytes()) == fixture_sig.participant_pub_key + }); + + let parsed_sig = matching_parsed.ok_or_else(|| { + format!( + "No matching partial sig found for participant key: {}", + fixture_sig.participant_pub_key + ) + })?; + + fixture_sig + .assert_matches_parsed(parsed_sig) + .map_err(|e| format!("Partial signature mismatch: {}", e))?; + } + + Ok(()) + } } /// Script type for PSBT input validation @@ -715,6 +1038,25 @@ impl ScriptType { ) } + /// Checks if the given finalized fixture input matches this script type + pub fn matches_finalized_fixture(&self, fixture: &PsbtFinalInputFixture) -> bool { + matches!( + (self, fixture), + (ScriptType::P2sh, PsbtFinalInputFixture::P2sh(_)) + | (ScriptType::P2shP2wsh, PsbtFinalInputFixture::P2shP2wsh(_)) + | (ScriptType::P2wsh, PsbtFinalInputFixture::P2wsh(_)) + | (ScriptType::P2tr, PsbtFinalInputFixture::P2trLegacy(_)) + | ( + ScriptType::P2trMusig2, + PsbtFinalInputFixture::P2trMusig2ScriptPath(_) + ) + | ( + ScriptType::TaprootKeypath, + PsbtFinalInputFixture::P2trMusig2KeyPath(_) + ) + ) + } + pub fn is_segwit(&self) -> bool { matches!(self, ScriptType::P2shP2wsh | ScriptType::P2wsh) }