Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions modules/utxo-lib/src/testutil/mock.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
import { ok as assert } from 'assert';
import { BIP32Interface } from '@bitgo/secp256k1';
import * as utxolib from '..';
import { payments } from '..';
import { getMainnet, Network, networks } from '../networks';

import {
ChainCode,
withUnsafeNonSegwit,
createPsbtForNetwork,
fromOutput,
fromOutputWithPrevTx,
Expand Down Expand Up @@ -37,7 +38,7 @@ export function mockPrevTx(
const keypair = getKey('mock-prev-tx');
const pubkey = keypair.publicKey;
assert(keypair.privateKey);
const payment = utxolib.payments.p2pkh({ pubkey });
const payment = payments.p2pkh({ pubkey });
const destOutput = payment.output;
if (!destOutput) throw new Error('Impossible, payment we just constructed has no output');

Expand All @@ -54,7 +55,7 @@ export function mockPrevTx(
witnessUtxo: { script: destOutput, value: value * (BigInt(vout) + BigInt(1)) + BigInt(1000) },
});
// Don't require the prevTx for signing and finalizing for non-segwit input
utxolib.bitgo.withUnsafeNonSegwit(psbtFromNetwork, () => {
withUnsafeNonSegwit(psbtFromNetwork, () => {
psbtFromNetwork.signInput(0, keypair);
psbtFromNetwork.validateSignaturesOfAllInputs();
psbtFromNetwork.finalizeAllInputs();
Expand Down
4 changes: 3 additions & 1 deletion modules/utxo-lib/src/testutil/psbt.ts
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,9 @@ export function constructPsbt(
return psbt;
}

psbt.setAllInputsMusig2NonceHD(rootWalletKeys['user']);
/* use fixed sessionId for deterministic nonce creation */
const sessionId = Buffer.alloc(32);
psbt.setAllInputsMusig2NonceHD(rootWalletKeys['user'], { sessionId });
psbt.setAllInputsMusig2NonceHD(rootWalletKeys['bitgo'], { deterministic });

signAllPsbtInputs(psbt, inputs, rootWalletKeys, 'halfsigned', { signers, skipNonWitnessUtxo });
Expand Down

Large diffs are not rendered by default.

Large diffs are not rendered by default.

357 changes: 357 additions & 0 deletions modules/utxo-lib/test/bitgo/fixtures/psbt/psbt.bitcoin.unsigned.json

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
{
"walletKeys": [
"xprv9s21ZrQH143K45bDYc9c3aEaGiTK9aPtjgtHg6wBdkryBjix1KKXRCszxPcFPejLT9tdLgNe8E8AuQXK2fy8KhNPeLAZsGoX8w9KS2PkacL",
"xprv9s21ZrQH143K2eBLSVNk4zhjDzqzqM29aS9cjr4CcoNrKLYwLHtwgTURSk7RPV3cH9zNZQeR1zGw3MEwSjvARSfWEGpxfaBmduhW3TKsH5g",
"xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv"
],
"psbtBase64": "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",
"inputs": [
{
"type": "p2sh",
"unknownKeyVals": [],
"nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a47304402201ea585fcd078b8d1bd09dafaeb73d52087ab176fd167ffd6083e7c527139e6be02201a27c70abaf3101fcd532cc0e9916d83fe1262e2db1258be6d9661a616aa6583012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000",
"sighashType": 65,
"bip32Derivation": [
{
"pubkey": "03f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f",
"path": "0/0/1/0",
"masterFingerprint": "f2ef0389"
},
{
"pubkey": "035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf2",
"path": "0/0/1/0",
"masterFingerprint": "cc18ae08"
},
{
"pubkey": "03e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b",
"path": "0/0/1/0",
"masterFingerprint": "f65cd869"
}
],
"redeemScript": "522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae",
"partialSig": [
{
"pubkey": "03f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f",
"signature": "304502210087631f54bea97ba6fb135afc0e6aa5000f405f8c7f4075fb44624fcb100110f102203f3c26a632eef131b32c235537e8d08f0044b2ecfcf4763bbcee40a9ee04e10c41"
},
{
"pubkey": "03e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b",
"signature": "3045022100cc77cb1d7cc21ef86ed84521781a6359549ba5e6d736e46b48e38181e04e11ef022044803e3cd31f6f7d7bd7911ea907bd0861598e824bdcbeb5e3b03114aafb2c7441"
}
]
},
{
"type": "p2shP2pk",
"unknownKeyVals": [],
"redeemScript": "210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac",
"nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a473044022014b73c08c0183770986da34a9757eaed867e62d118188a649ce11356da7f10c102202d91e5a60cf22dc2736f4fa52333a276f60ed6d6a332fb6e8ffc94deddbba444012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff02e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000",
"sighashType": 65,
"partialSig": [
{
"pubkey": "0336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095",
"signature": "3045022100864e2eb6f32fab5f80e6b321549d0b2d2a335de655be7c734bc2f89bc1f1085a02207b748db3cf0ba9cd4ce564c81da20fa9c3e01f7976cdc05a3704004ce60e921241"
}
]
}
],
"outputs": [
{
"unknownKeyVals": [],
"bip32Derivation": [
{
"pubkey": "02cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b4209",
"path": "0/0/0/0",
"masterFingerprint": "f2ef0389"
},
{
"pubkey": "02d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab",
"path": "0/0/0/0",
"masterFingerprint": "cc18ae08"
},
{
"pubkey": "0344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f1",
"path": "0/0/0/0",
"masterFingerprint": "f65cd869"
}
],
"redeemScript": "522102cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b42092102d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab210344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f153ae"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
{
"walletKeys": [
"xprv9s21ZrQH143K45bDYc9c3aEaGiTK9aPtjgtHg6wBdkryBjix1KKXRCszxPcFPejLT9tdLgNe8E8AuQXK2fy8KhNPeLAZsGoX8w9KS2PkacL",
"xprv9s21ZrQH143K2eBLSVNk4zhjDzqzqM29aS9cjr4CcoNrKLYwLHtwgTURSk7RPV3cH9zNZQeR1zGw3MEwSjvARSfWEGpxfaBmduhW3TKsH5g",
"xprv9s21ZrQH143K39N9shF9hAsTwh1FvQuBk8UVsZVwr4XtpqF7stCu2LH358NLuqkkK6pu1Af7TJHr5FZERQoLLtnC7wkoM9sdFo1HuP7dWuv"
],
"psbtBase64": "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",
"inputs": [
{
"type": "p2sh",
"unknownKeyVals": [],
"nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a47304402201ea585fcd078b8d1bd09dafaeb73d52087ab176fd167ffd6083e7c527139e6be02201a27c70abaf3101fcd532cc0e9916d83fe1262e2db1258be6d9661a616aa6583012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000",
"sighashType": 65,
"bip32Derivation": [
{
"pubkey": "03f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f",
"path": "0/0/1/0",
"masterFingerprint": "f2ef0389"
},
{
"pubkey": "035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf2",
"path": "0/0/1/0",
"masterFingerprint": "cc18ae08"
},
{
"pubkey": "03e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b",
"path": "0/0/1/0",
"masterFingerprint": "f65cd869"
}
],
"redeemScript": "522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae",
"partialSig": [
{
"pubkey": "03f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f",
"signature": "304502210087631f54bea97ba6fb135afc0e6aa5000f405f8c7f4075fb44624fcb100110f102203f3c26a632eef131b32c235537e8d08f0044b2ecfcf4763bbcee40a9ee04e10c41"
}
]
},
{
"type": "p2shP2pk",
"unknownKeyVals": [],
"redeemScript": "210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac",
"nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a473044022014b73c08c0183770986da34a9757eaed867e62d118188a649ce11356da7f10c102202d91e5a60cf22dc2736f4fa52333a276f60ed6d6a332fb6e8ffc94deddbba444012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff02e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000",
"sighashType": 65,
"partialSig": [
{
"pubkey": "0336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095",
"signature": "3045022100864e2eb6f32fab5f80e6b321549d0b2d2a335de655be7c734bc2f89bc1f1085a02207b748db3cf0ba9cd4ce564c81da20fa9c3e01f7976cdc05a3704004ce60e921241"
}
]
}
],
"outputs": [
{
"unknownKeyVals": [],
"bip32Derivation": [
{
"pubkey": "02cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b4209",
"path": "0/0/0/0",
"masterFingerprint": "f2ef0389"
},
{
"pubkey": "02d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab",
"path": "0/0/0/0",
"masterFingerprint": "cc18ae08"
},
{
"pubkey": "0344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f1",
"path": "0/0/0/0",
"masterFingerprint": "f65cd869"
}
],
"redeemScript": "522102cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b42092102d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab210344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f153ae"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"walletKeys": [
"xprv9s21ZrQH143K45bDYc9c3aEaGiTK9aPtjgtHg6wBdkryBjix1KKXRCszxPcFPejLT9tdLgNe8E8AuQXK2fy8KhNPeLAZsGoX8w9KS2PkacL",
"xprv9s21ZrQH143K2eBLSVNk4zhjDzqzqM29aS9cjr4CcoNrKLYwLHtwgTURSk7RPV3cH9zNZQeR1zGw3MEwSjvARSfWEGpxfaBmduhW3TKsH5g",
"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",
"inputs": [
{
"type": "p2sh",
"unknownKeyVals": [],
"nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a47304402201ea585fcd078b8d1bd09dafaeb73d52087ab176fd167ffd6083e7c527139e6be02201a27c70abaf3101fcd532cc0e9916d83fe1262e2db1258be6d9661a616aa6583012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff01e80300000000000017a914567cd7b44f9f3a07c3138f37bf984b60fbbaf2438700000000",
"sighashType": 65,
"bip32Derivation": [
{
"pubkey": "03f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f",
"path": "0/0/1/0",
"masterFingerprint": "f2ef0389"
},
{
"pubkey": "035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf2",
"path": "0/0/1/0",
"masterFingerprint": "cc18ae08"
},
{
"pubkey": "03e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b",
"path": "0/0/1/0",
"masterFingerprint": "f65cd869"
}
],
"redeemScript": "522103f6f40764bd5d63f200a2778883acf75e96f15095c998263c087270d0c97e7e7f21035ffb7abc70159e0469f4b989a6d5e1785a2904169ff050b2f468fe5d3d5dbbf22103e1524d7f6fc57ab3eacbb659b787106780a475d1db483952c2310b7e9a38975b53ae"
},
{
"type": "p2shP2pk",
"unknownKeyVals": [],
"redeemScript": "210336ef228ffe9b8efffba052c32d334660dd1f8366cf8fe44ae5aa672b6b629095ac",
"nonWitnessUtxo": "02000000010101010101010101010101010101010101010101010101010101010101010101000000006a473044022014b73c08c0183770986da34a9757eaed867e62d118188a649ce11356da7f10c102202d91e5a60cf22dc2736f4fa52333a276f60ed6d6a332fb6e8ffc94deddbba444012103bd0c34b2373e387575cddb103ec03916c31044f2508e261fe3597a2680ecbd1fffffffff02e8030000000000001976a914883ad8d1affdf8a73cbdaf7237b5c5ab9ec2c32688ace80300000000000017a91420b37094d82a513451ff0ccd9db23aba05bc5ef38700000000",
"sighashType": 65
}
],
"outputs": [
{
"unknownKeyVals": [],
"bip32Derivation": [
{
"pubkey": "02cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b4209",
"path": "0/0/0/0",
"masterFingerprint": "f2ef0389"
},
{
"pubkey": "02d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab",
"path": "0/0/0/0",
"masterFingerprint": "cc18ae08"
},
{
"pubkey": "0344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f1",
"path": "0/0/0/0",
"masterFingerprint": "f65cd869"
}
],
"redeemScript": "522102cc4d0fa411cac244486f8eb2c08e035ff7410f460a359ca7f8810991bd3b42092102d72fd0d0d90293434ad5fca160f278e03c614497aa4e425cf454e2c1330f96ab210344d884136df550202865ffbc6218c7f9c88fe6ce39c945798190badb38a752f153ae"
}
]
}
Loading