@keep-network/tbtc-v2 0.1.0 → 0.1.1-dev
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.adoc +12 -0
- package/artifacts/.chainId +1 -1
- package/artifacts/Bank.json +807 -0
- package/artifacts/Bridge.json +2300 -0
- package/artifacts/Deposit.json +117 -0
- package/artifacts/DepositSweep.json +77 -0
- package/artifacts/EcdsaDkgValidator.json +532 -0
- package/artifacts/EcdsaInactivity.json +156 -0
- package/artifacts/EcdsaSortitionPool.json +1004 -0
- package/artifacts/Fraud.json +164 -0
- package/artifacts/KeepRegistry.json +99 -0
- package/artifacts/KeepStake.json +286 -0
- package/artifacts/KeepToken.json +711 -0
- package/artifacts/KeepTokenStaking.json +483 -0
- package/artifacts/MovingFunds.json +249 -0
- package/artifacts/NuCypherStakingEscrow.json +256 -0
- package/artifacts/NuCypherToken.json +711 -0
- package/artifacts/RandomBeaconStub.json +141 -0
- package/artifacts/Redemption.json +174 -0
- package/artifacts/ReimbursementPool.json +509 -0
- package/artifacts/Relay.json +123 -0
- package/artifacts/T.json +1148 -0
- package/artifacts/TBTC.json +36 -35
- package/artifacts/TBTCToken.json +738 -0
- package/artifacts/TBTCVault.json +691 -0
- package/artifacts/TokenStaking.json +2288 -0
- package/artifacts/TokenholderGovernor.json +1795 -0
- package/artifacts/TokenholderTimelock.json +1058 -0
- package/artifacts/VendingMachine.json +34 -33
- package/artifacts/VendingMachineKeep.json +400 -0
- package/artifacts/VendingMachineNuCypher.json +400 -0
- package/artifacts/WalletRegistry.json +1843 -0
- package/artifacts/WalletRegistryGovernance.json +2754 -0
- package/artifacts/Wallets.json +186 -0
- package/artifacts/solcInputs/5e62cff1ead0900b07facca4b559e818.json +314 -0
- package/build/contracts/GovernanceUtils.sol/GovernanceUtils.dbg.json +1 -1
- package/build/contracts/GovernanceUtils.sol/GovernanceUtils.json +2 -2
- package/build/contracts/bank/Bank.sol/Bank.dbg.json +4 -0
- package/build/contracts/bank/Bank.sol/Bank.json +542 -0
- package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.dbg.json +4 -0
- package/build/contracts/bank/IReceiveBalanceApproval.sol/IReceiveBalanceApproval.json +34 -0
- package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.dbg.json +4 -0
- package/build/contracts/bridge/BitcoinTx.sol/BitcoinTx.json +10 -0
- package/build/contracts/bridge/Bridge.sol/Bridge.dbg.json +4 -0
- package/build/contracts/bridge/Bridge.sol/Bridge.json +2686 -0
- package/build/contracts/bridge/BridgeState.sol/BridgeState.dbg.json +4 -0
- package/build/contracts/bridge/BridgeState.sol/BridgeState.json +226 -0
- package/build/contracts/bridge/Deposit.sol/Deposit.dbg.json +4 -0
- package/build/contracts/bridge/Deposit.sol/Deposit.json +72 -0
- package/build/contracts/bridge/DepositSweep.sol/DepositSweep.dbg.json +4 -0
- package/build/contracts/bridge/DepositSweep.sol/DepositSweep.json +30 -0
- package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.dbg.json +4 -0
- package/build/contracts/bridge/EcdsaLib.sol/EcdsaLib.json +10 -0
- package/build/contracts/bridge/Fraud.sol/Fraud.dbg.json +4 -0
- package/build/contracts/bridge/Fraud.sol/Fraud.json +86 -0
- package/build/contracts/bridge/Heartbeat.sol/Heartbeat.dbg.json +4 -0
- package/build/contracts/bridge/Heartbeat.sol/Heartbeat.json +10 -0
- package/build/contracts/bridge/IRelay.sol/IRelay.dbg.json +4 -0
- package/build/contracts/bridge/IRelay.sol/IRelay.json +37 -0
- package/build/contracts/bridge/MovingFunds.sol/MovingFunds.dbg.json +4 -0
- package/build/contracts/bridge/MovingFunds.sol/MovingFunds.json +138 -0
- package/build/contracts/bridge/Redemption.sol/OutboundTx.dbg.json +4 -0
- package/build/contracts/bridge/Redemption.sol/OutboundTx.json +10 -0
- package/build/contracts/bridge/Redemption.sol/Redemption.dbg.json +4 -0
- package/build/contracts/bridge/Redemption.sol/Redemption.json +92 -0
- package/build/contracts/bridge/VendingMachine.sol/VendingMachine.dbg.json +1 -1
- package/build/contracts/bridge/VendingMachine.sol/VendingMachine.json +2 -2
- package/build/contracts/bridge/Wallets.sol/Wallets.dbg.json +4 -0
- package/build/contracts/bridge/Wallets.sol/Wallets.json +112 -0
- package/build/contracts/token/TBTC.sol/TBTC.dbg.json +1 -1
- package/build/contracts/token/TBTC.sol/TBTC.json +4 -4
- package/build/contracts/vault/DonationVault.sol/DonationVault.dbg.json +4 -0
- package/build/contracts/vault/DonationVault.sol/DonationVault.json +108 -0
- package/build/contracts/vault/IVault.sol/IVault.dbg.json +4 -0
- package/build/contracts/vault/IVault.sol/IVault.json +52 -0
- package/build/contracts/vault/TBTCVault.sol/TBTCVault.dbg.json +4 -0
- package/build/contracts/vault/TBTCVault.sol/TBTCVault.json +449 -0
- package/contracts/GovernanceUtils.sol +4 -4
- package/contracts/bank/Bank.sol +436 -0
- package/contracts/bank/IReceiveBalanceApproval.sol +45 -0
- package/contracts/bridge/BitcoinTx.sol +326 -0
- package/contracts/bridge/Bridge.sol +1793 -0
- package/contracts/bridge/BridgeState.sol +739 -0
- package/contracts/bridge/Deposit.sol +269 -0
- package/contracts/bridge/DepositSweep.sol +574 -0
- package/contracts/bridge/EcdsaLib.sol +45 -0
- package/contracts/bridge/Fraud.sol +579 -0
- package/contracts/bridge/Heartbeat.sol +112 -0
- package/contracts/bridge/IRelay.sol +28 -0
- package/contracts/bridge/MovingFunds.sol +1077 -0
- package/contracts/bridge/Redemption.sol +1020 -0
- package/contracts/bridge/VendingMachine.sol +2 -2
- package/contracts/bridge/Wallets.sol +719 -0
- package/contracts/hardhat-dependency-compiler/.hardhat-dependency-compiler +1 -0
- package/contracts/hardhat-dependency-compiler/@keep-network/ecdsa/contracts/WalletRegistry.sol +3 -0
- package/contracts/hardhat-dependency-compiler/@openzeppelin/contracts/proxy/transparent/ProxyAdmin.sol +3 -0
- package/contracts/hardhat-dependency-compiler/@openzeppelin/contracts/proxy/transparent/TransparentUpgradeableProxy.sol +3 -0
- package/contracts/token/TBTC.sol +1 -1
- package/contracts/vault/DonationVault.sol +125 -0
- package/contracts/vault/IVault.sol +44 -0
- package/contracts/vault/TBTCVault.sol +305 -0
- package/deploy/00_resolve_relay.ts +28 -0
- package/deploy/00_resolve_tbtc_v1_token.ts +1 -1
- package/deploy/01_deploy_tbtc_v2_token.ts +8 -1
- package/deploy/02_deploy_vending_machine.ts +7 -0
- package/deploy/{03_transfer_roles.ts → 03_transfer_vending_machine_roles.ts} +1 -1
- package/deploy/04_deploy_bank.ts +27 -0
- package/deploy/05_deploy_bridge.ts +80 -0
- package/deploy/06_deploy_tbtc_vault.ts +30 -0
- package/deploy/07_bank_update_bridge.ts +19 -0
- package/deploy/08_transfer_bank_ownership.ts +15 -0
- package/deploy/09_transfer_tbtc_vault_ownership.ts +15 -0
- package/deploy/10_transfer_bridge_governance.ts +20 -0
- package/deploy/11_initialize_wallet_owner.ts +18 -0
- package/deploy/11_transfer_proxy_admin_ownership.ts +30 -0
- package/deploy/12_deploy_proxy_admin_with_deputy.ts +33 -0
- package/export/deploy/00_resolve_relay.js +24 -0
- package/export/deploy/00_resolve_tbtc_v1_token.js +24 -0
- package/export/deploy/01_deploy_tbtc_v2_token.js +19 -0
- package/export/deploy/02_deploy_vending_machine.js +25 -0
- package/export/deploy/03_transfer_vending_machine_roles.js +19 -0
- package/export/deploy/04_deploy_bank.js +21 -0
- package/export/deploy/05_deploy_bridge.js +69 -0
- package/export/deploy/06_deploy_tbtc_vault.js +24 -0
- package/export/deploy/07_bank_update_bridge.js +13 -0
- package/export/deploy/08_transfer_bank_ownership.js +11 -0
- package/export/deploy/09_transfer_tbtc_vault_ownership.js +11 -0
- package/export/deploy/10_transfer_bridge_governance.js +11 -0
- package/export/deploy/11_initialize_wallet_owner.js +14 -0
- package/export/deploy/11_transfer_proxy_admin_ownership.js +23 -0
- package/export/deploy/12_deploy_proxy_admin_with_deputy.js +22 -0
- package/export/hardhat.config.js +169 -0
- package/export/test/bank/Bank.test.js +1012 -0
- package/export/test/bridge/Bridge.Deployment.test.js +76 -0
- package/export/test/bridge/Bridge.Deposit.test.js +1834 -0
- package/export/test/bridge/Bridge.Frauds.test.js +1349 -0
- package/export/test/bridge/Bridge.MovingFunds.test.js +2437 -0
- package/export/test/bridge/Bridge.Parameters.test.js +400 -0
- package/export/test/bridge/Bridge.Redemption.test.js +2523 -0
- package/export/test/bridge/Bridge.Vaults.test.js +74 -0
- package/export/test/bridge/Bridge.Wallets.test.js +1017 -0
- package/export/test/bridge/EcdsaLib.test.js +46 -0
- package/export/test/bridge/Heartbeat.test.js +77 -0
- package/export/test/bridge/VendingMachine.Upgrade.test.js +160 -0
- package/export/test/bridge/VendingMachine.test.js +762 -0
- package/export/test/data/deposit-sweep.js +655 -0
- package/export/test/data/ecdsa.js +18 -0
- package/export/test/data/fraud.js +158 -0
- package/export/test/data/moving-funds.js +815 -0
- package/export/test/data/redemption.js +1011 -0
- package/export/test/fixtures/bridge.js +54 -0
- package/export/test/fixtures/index.js +57 -0
- package/export/test/helpers/contract-test-helpers.js +18 -0
- package/export/test/integration/Slashing.test.js +279 -0
- package/export/test/integration/WalleCreation.test.js +66 -0
- package/export/test/integration/utils/ecdsa-wallet-registry.js +137 -0
- package/export/test/integration/utils/fixture.js +77 -0
- package/export/test/integration/utils/gas.js +36 -0
- package/export/test/integration/utils/random-beacon.js +26 -0
- package/export/test/integration/utils/staking.js +19 -0
- package/export/test/vault/DonationVault.test.js +202 -0
- package/export/test/vault/TBTCVault.Redemption.test.js +357 -0
- package/export/test/vault/TBTCVault.test.js +768 -0
- package/export/typechain/BTCUtils.js +2 -0
- package/export/typechain/Bank.js +2 -0
- package/export/typechain/BankStub.js +2 -0
- package/export/typechain/Bridge.js +2 -0
- package/export/typechain/BridgeState.js +2 -0
- package/export/typechain/BridgeStub.js +2 -0
- package/export/typechain/Deposit.js +2 -0
- package/export/typechain/DepositSweep.js +2 -0
- package/export/typechain/DonationVault.js +2 -0
- package/export/typechain/ERC165.js +2 -0
- package/export/typechain/ERC1967Proxy.js +2 -0
- package/export/typechain/ERC1967Upgrade.js +2 -0
- package/export/typechain/ERC20WithPermit.js +2 -0
- package/export/typechain/ERC721.js +2 -0
- package/export/typechain/EcdsaAuthorization.js +2 -0
- package/export/typechain/EcdsaDkg.js +2 -0
- package/export/typechain/EcdsaDkgValidator.js +2 -0
- package/export/typechain/EcdsaInactivity.js +2 -0
- package/export/typechain/Fraud.js +2 -0
- package/export/typechain/Governable.js +2 -0
- package/export/typechain/HeartbeatStub.js +2 -0
- package/export/typechain/IApplication.js +2 -0
- package/export/typechain/IApproveAndCall.js +2 -0
- package/export/typechain/IBeacon.js +2 -0
- package/export/typechain/IERC165.js +2 -0
- package/export/typechain/IERC1822Proxiable.js +2 -0
- package/export/typechain/IERC20.js +2 -0
- package/export/typechain/IERC20Metadata.js +2 -0
- package/export/typechain/IERC20WithPermit.js +2 -0
- package/export/typechain/IERC721.js +2 -0
- package/export/typechain/IERC721Metadata.js +2 -0
- package/export/typechain/IERC721Receiver.js +2 -0
- package/export/typechain/IRandomBeacon.js +2 -0
- package/export/typechain/IRandomBeaconConsumer.js +2 -0
- package/export/typechain/IReceiveApproval.js +2 -0
- package/export/typechain/IReceiveBalanceApproval.js +2 -0
- package/export/typechain/IRelay.js +2 -0
- package/export/typechain/IStaking.js +2 -0
- package/export/typechain/IVault.js +2 -0
- package/export/typechain/IWalletOwner.js +2 -0
- package/export/typechain/IWalletRegistry.js +2 -0
- package/export/typechain/Initializable.js +2 -0
- package/export/typechain/MisfundRecovery.js +2 -0
- package/export/typechain/MovingFunds.js +2 -0
- package/export/typechain/Ownable.js +2 -0
- package/export/typechain/Proxy.js +2 -0
- package/export/typechain/ProxyAdmin.js +2 -0
- package/export/typechain/ReceiveApprovalStub.js +2 -0
- package/export/typechain/Redemption.js +2 -0
- package/export/typechain/Reimbursable.js +2 -0
- package/export/typechain/ReimbursementPool.js +2 -0
- package/export/typechain/Rewards.js +2 -0
- package/export/typechain/SortitionPool.js +2 -0
- package/export/typechain/SortitionTree.js +2 -0
- package/export/typechain/TBTC.js +2 -0
- package/export/typechain/TBTCVault.js +2 -0
- package/export/typechain/TestERC20.js +2 -0
- package/export/typechain/TestERC721.js +2 -0
- package/export/typechain/TestEcdsaLib.js +2 -0
- package/export/typechain/TestRelay.js +2 -0
- package/export/typechain/TransparentUpgradeableProxy.js +2 -0
- package/export/typechain/VendingMachine.js +2 -0
- package/export/typechain/WalletRegistry.js +2 -0
- package/export/typechain/Wallets.js +2 -0
- package/export/typechain/common.js +2 -0
- package/export/typechain/factories/BTCUtils__factory.js +94 -0
- package/export/typechain/factories/BankStub__factory.js +586 -0
- package/export/typechain/factories/Bank__factory.js +573 -0
- package/export/typechain/factories/BridgeState__factory.js +257 -0
- package/export/typechain/factories/BridgeStub__factory.js +2912 -0
- package/export/typechain/factories/Bridge__factory.js +2526 -0
- package/export/typechain/factories/DepositSweep__factory.js +61 -0
- package/export/typechain/factories/Deposit__factory.js +103 -0
- package/export/typechain/factories/DonationVault__factory.js +139 -0
- package/export/typechain/factories/ERC165__factory.js +38 -0
- package/export/typechain/factories/ERC1967Proxy__factory.js +111 -0
- package/export/typechain/factories/ERC1967Upgrade__factory.js +64 -0
- package/export/typechain/factories/ERC20WithPermit__factory.js +524 -0
- package/export/typechain/factories/ERC721__factory.js +388 -0
- package/export/typechain/factories/EcdsaAuthorization__factory.js +211 -0
- package/export/typechain/factories/EcdsaDkgValidator__factory.js +441 -0
- package/export/typechain/factories/EcdsaDkg__factory.js +192 -0
- package/export/typechain/factories/EcdsaInactivity__factory.js +134 -0
- package/export/typechain/factories/Fraud__factory.js +117 -0
- package/export/typechain/factories/Governable__factory.js +64 -0
- package/export/typechain/factories/HeartbeatStub__factory.js +61 -0
- package/export/typechain/factories/IApplication__factory.js +152 -0
- package/export/typechain/factories/IApproveAndCall__factory.js +48 -0
- package/export/typechain/factories/IBeacon__factory.js +32 -0
- package/export/typechain/factories/IERC165__factory.js +38 -0
- package/export/typechain/factories/IERC1822Proxiable__factory.js +32 -0
- package/export/typechain/factories/IERC20Metadata__factory.js +241 -0
- package/export/typechain/factories/IERC20WithPermit__factory.js +389 -0
- package/export/typechain/factories/IERC20__factory.js +202 -0
- package/export/typechain/factories/IERC721Metadata__factory.js +349 -0
- package/export/typechain/factories/IERC721Receiver__factory.js +53 -0
- package/export/typechain/factories/IERC721__factory.js +304 -0
- package/export/typechain/factories/IRandomBeaconConsumer__factory.js +37 -0
- package/export/typechain/factories/IRandomBeacon__factory.js +32 -0
- package/export/typechain/factories/IReceiveApproval__factory.js +47 -0
- package/export/typechain/factories/IReceiveBalanceApproval__factory.js +42 -0
- package/export/typechain/factories/IRelay__factory.js +45 -0
- package/export/typechain/factories/IStaking__factory.js +722 -0
- package/export/typechain/factories/IVault__factory.js +60 -0
- package/export/typechain/factories/IWalletOwner__factory.js +65 -0
- package/export/typechain/factories/IWalletRegistry__factory.js +138 -0
- package/export/typechain/factories/Initializable__factory.js +32 -0
- package/export/typechain/factories/MisfundRecovery__factory.js +145 -0
- package/export/typechain/factories/MovingFunds__factory.js +169 -0
- package/export/typechain/factories/Ownable__factory.js +71 -0
- package/export/typechain/factories/ProxyAdmin__factory.js +191 -0
- package/export/typechain/factories/Proxy__factory.js +27 -0
- package/export/typechain/factories/ReceiveApprovalStub__factory.js +127 -0
- package/export/typechain/factories/Redemption__factory.js +123 -0
- package/export/typechain/factories/Reimbursable__factory.js +58 -0
- package/export/typechain/factories/ReimbursementPool__factory.js +350 -0
- package/export/typechain/factories/Rewards__factory.js +117 -0
- package/export/typechain/factories/SortitionPool__factory.js +610 -0
- package/export/typechain/factories/SortitionTree__factory.js +149 -0
- package/export/typechain/factories/TBTCVault__factory.js +480 -0
- package/export/typechain/factories/TBTC__factory.js +564 -0
- package/export/typechain/factories/TestERC20__factory.js +539 -0
- package/export/typechain/factories/TestERC721__factory.js +421 -0
- package/export/typechain/factories/TestEcdsaLib__factory.js +66 -0
- package/export/typechain/factories/TestRelay__factory.js +94 -0
- package/export/typechain/factories/TransparentUpgradeableProxy__factory.js +186 -0
- package/export/typechain/factories/VendingMachine__factory.js +549 -0
- package/export/typechain/factories/WalletRegistry__factory.js +1919 -0
- package/export/typechain/factories/Wallets__factory.js +143 -0
- package/export/typechain/index.js +132 -0
- package/export.json +15932 -503
- package/package.json +47 -26
- package/artifacts/solcInputs/7cc3eda3cb3ff2522d18b5e7b31ea228.json +0 -104
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ecdsaWalletTestData = void 0;
|
|
4
|
+
exports.ecdsaWalletTestData = {
|
|
5
|
+
// private key
|
|
6
|
+
privateKey: ("0x18e14a7b6a307f426a94f8114701e7c8e774e7f9a47e2c2035db29a206321725"),
|
|
7
|
+
// public key (X and Y coordinates)
|
|
8
|
+
publicKeyX: ("0x50863ad64a87ae8a2fe83c1af1a8403cb53f53e486d8511dad8a04887e5b2352"),
|
|
9
|
+
publicKeyY: ("0x2cd470243453a299fa9e77237716103abc11a1df38855ed6f2ee187e9c582ba6"),
|
|
10
|
+
// public key (X and Y coordinates concatenation)
|
|
11
|
+
publicKey: ("0x50863ad64a87ae8a2fe83c1af1a8403cb53f53e486d8511dad8a04887e5b23522cd470243453a299fa9e77237716103abc11a1df38855ed6f2ee187e9c582ba6"),
|
|
12
|
+
// compressed public key
|
|
13
|
+
compressedPublicKey: ("0x0250863ad64a87ae8a2fe83c1af1a8403cb53f53e486d8511dad8a04887e5b2352"),
|
|
14
|
+
// Bitcoin's HASH160 of compressedPublicKey i.e. RIPEMD160(SHA256(compressedPublicKey))
|
|
15
|
+
pubKeyHash160: "0xf54a5851e9372b87810a8e60cdd2e7cfd80b6e31",
|
|
16
|
+
// ID of the ECDSA Wallet from ECDSA Wallet Registry i.e. Keccak256(uncompressedPublicKey)
|
|
17
|
+
walletID: ("0x8c9564d6883a96096c8469d63e9003153d9a39d3f57b126b0c38513d5e289c3e"),
|
|
18
|
+
};
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.wrongSighashType = exports.witnessSignMultipleInputTx = exports.witnessSignSingleInputTx = exports.nonWitnessSignMultipleInputsTx = exports.nonWitnessSignSingleInputTx = exports.wallet = void 0;
|
|
4
|
+
exports.wallet = {
|
|
5
|
+
// Uncompressed and unprefixed version of the public key:
|
|
6
|
+
// 03989d253b17a6a0f41838b84ff0d20e8898f9d7b1a98f2564da4cc29dcf8581d9
|
|
7
|
+
publicKey: "0x989d253b17a6a0f41838b84ff0d20e8898f9d7b1a98f2564da4cc29dcf8581d9" +
|
|
8
|
+
"d218b65e7d91c752f7b22eaceb771a9af3a6f3d3f010a5d471a1aeef7d7713af",
|
|
9
|
+
// Hash 160 of the public key:
|
|
10
|
+
// 03989d253b17a6a0f41838b84ff0d20e8898f9d7b1a98f2564da4cc29dcf8581d9
|
|
11
|
+
pubKeyHash160: "0x8db50eb52063ea9d98b3eac91489a90f738986f6",
|
|
12
|
+
// ID of the ECDSA Wallet from ECDSA Wallet Registry i.e. Keccak256(uncompressedPublicKey)
|
|
13
|
+
ecdsaWalletID: "0x9ff37567d973e4d884bc42d2d1a6cb1ff22676ab64f82c62b58e2b0ffd3fff71",
|
|
14
|
+
};
|
|
15
|
+
// Test data comes from the (only) input of transaction:
|
|
16
|
+
// https://live.blockcypher.com/btc-testnet/tx/25725b6110fdd095282e61f714e72ec14ebdba7d2c29e93a89a9fb11504a5f10/
|
|
17
|
+
exports.nonWitnessSignSingleInputTx = {
|
|
18
|
+
signature: {
|
|
19
|
+
v: 28,
|
|
20
|
+
r: "0x918157d51c1c74858b577d039f0a936aea6236c2510cf31828d1025e4dfd803d",
|
|
21
|
+
s: "0x27905b4bd56fa9a2ee15c2bc4478bccb83dd8340db272ec5fad5b3b4faf32fcd",
|
|
22
|
+
},
|
|
23
|
+
preimage: "0x0100000001fb26e52365437fc4fce01864d1303e0e1ed2824ef83345ea6e8517" +
|
|
24
|
+
"4060778acb000000005c14934b98637ca318a4d6e7ca6ffd1690b8e77df6377508" +
|
|
25
|
+
"f9f0c90d000395237576a9148db50eb52063ea9d98b3eac91489a90f738986f687" +
|
|
26
|
+
"63ac6776a914e257eccafbc07c381642ce6e7e55120fb077fbed8804e0250162b1" +
|
|
27
|
+
"75ac68ffffffff01b8240000000000001600148db50eb52063ea9d98b3eac91489" +
|
|
28
|
+
"a90f738986f60000000001000000",
|
|
29
|
+
preimageSha256: "0x90d29d1021c2a1a381c0c8a39f5ffda96770e1c2ffed835f822500033841b2e3",
|
|
30
|
+
sighash: "0x5d09cd07392c7163335b67eacc999491a3794c15b88e2b59094be5c5b157064b",
|
|
31
|
+
witness: false,
|
|
32
|
+
deposits: [],
|
|
33
|
+
spentMainUtxos: [],
|
|
34
|
+
movedFundsSweepRequests: [
|
|
35
|
+
{
|
|
36
|
+
txHash: "0xfb26e52365437fc4fce01864d1303e0e1ed2824ef83345ea6e85174060778acb",
|
|
37
|
+
txOutputIndex: 0,
|
|
38
|
+
txOutputValue: 11000,
|
|
39
|
+
},
|
|
40
|
+
],
|
|
41
|
+
};
|
|
42
|
+
// Test data comes from the input at index 5 of transaction:
|
|
43
|
+
// https://live.blockcypher.com/btc-testnet/tx/798f9a00cb9a8fddad777cf2923d9370fb2df9b76fcf1cde827618cd7a60d34e/
|
|
44
|
+
exports.nonWitnessSignMultipleInputsTx = {
|
|
45
|
+
signature: {
|
|
46
|
+
v: 27,
|
|
47
|
+
r: "0x70e406238e54819e9d3babb6d980f544e5545dbad00110ae8ef351887132a3ce",
|
|
48
|
+
s: "0x6404df96341218d89cfbe5b8dab14edf58a7d336583373f4d1a06f64cad105f0",
|
|
49
|
+
},
|
|
50
|
+
preimage: "0x0100000006bdaf864f75dbe4490bc3acf451c291906cbb9c32c5a6b50cdc97b23f427" +
|
|
51
|
+
"7890a0000000000ffffffff3c5a87fe0a5d77616623278cd25fa7b5f2602e43d4a1c17e" +
|
|
52
|
+
"6a2b2fd964670def0000000000ffffffff3fd813441999ae54f62f6e5ace9b1ee2941ff" +
|
|
53
|
+
"53432a3d8b4317f22c6072978c00000000000ffffffff0d43fe1d6e5e0a44838fbedb2e" +
|
|
54
|
+
"b41a8f5c5f313470c3dfd7dad92bc50cc1f6170000000000ffffffffa5f90f326daa312" +
|
|
55
|
+
"858eba12b225704ec668762cabffd83b2a0eeb0a0f12c77d10000000000ffffffff7a39" +
|
|
56
|
+
"cc92883a8ec888c6d86a741b1bf8a51769230832e52d1395346bcab037e9000000005c1" +
|
|
57
|
+
"4934b98637ca318a4d6e7ca6ffd1690b8e77df6377508f9f0c90d000395237576a9148d" +
|
|
58
|
+
"b50eb52063ea9d98b3eac91489a90f738986f68763ac6776a914e257eccafbc07c38164" +
|
|
59
|
+
"2ce6e7e55120fb077fbed8804e0250162b175ac68ffffffff011cd40000000000001600" +
|
|
60
|
+
"148db50eb52063ea9d98b3eac91489a90f738986f60000000001000000",
|
|
61
|
+
preimageSha256: "0x69b912fd0ea8922db4af34145378f7e0f15d6c0eb22bf5d68ab6645819f2476c",
|
|
62
|
+
sighash: "0x3a3c771a0d6e2484e1f00dca91e724b9f60a986b0c1ac4cafb9ae69a7401a573",
|
|
63
|
+
witness: false,
|
|
64
|
+
deposits: [
|
|
65
|
+
{
|
|
66
|
+
txHash: "0x7a39cc92883a8ec888c6d86a741b1bf8a51769230832e52d1395346bcab037e9",
|
|
67
|
+
txOutputIndex: 0,
|
|
68
|
+
txOutputValue: 8000,
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
spentMainUtxos: [],
|
|
72
|
+
movedFundsSweepRequests: [],
|
|
73
|
+
};
|
|
74
|
+
// Test data comes from the (only) input of transaction:
|
|
75
|
+
// https://live.blockcypher.com/btc-testnet/tx/1cd5779e463eb4e3cb4b2aa93333ccc022d6d46f74e2855a6985775be98b8bba/
|
|
76
|
+
exports.witnessSignSingleInputTx = {
|
|
77
|
+
signature: {
|
|
78
|
+
v: 27,
|
|
79
|
+
r: "0xbe367625b075362d13a46a71e91e99b633ab476d6e76870c6daaa078991e41b5",
|
|
80
|
+
s: "0x041e65394627554cf832d073c47760e96ca5f3a554c01cf7b1d96d79c200202a",
|
|
81
|
+
},
|
|
82
|
+
preimage: "0x01000000bb7f55b88160c46023b4f2f5356df30e6032f0cc4ebb896462a11be4a0" +
|
|
83
|
+
"1b9a523bb13029ce7b1f559ef5e747fcac439f1455a2ec7c5f09b72290795e7066" +
|
|
84
|
+
"5044cbb4ac0f93b0ad4a8c387e9942a9b65ba54a01692dd1a6edc7c3b70f0355cc" +
|
|
85
|
+
"ec000000005c14934b98637ca318a4d6e7ca6ffd1690b8e77df6377508f9f0c90d" +
|
|
86
|
+
"000395237576a9148db50eb52063ea9d98b3eac91489a90f738986f68763ac6776" +
|
|
87
|
+
"a914e257eccafbc07c381642ce6e7e55120fb077fbed8804e0250162b175ac68f0" +
|
|
88
|
+
"55000000000000fffffffff5ef547c0c70b4a4747f180b1cc244b99a3d2c12e71d" +
|
|
89
|
+
"73d68ca9da53591139f10000000001000000",
|
|
90
|
+
preimageSha256: "0xdfb4a0032c9da53e79640f404cf9e07ff0a881706d0cee6e8ff360f0371d4782",
|
|
91
|
+
sighash: "0xb8994753efd78cc66075991d3a21beef96d4e8a5e9ff06bc692401203df02610",
|
|
92
|
+
witness: true,
|
|
93
|
+
deposits: [
|
|
94
|
+
{
|
|
95
|
+
txHash: "0xcbb4ac0f93b0ad4a8c387e9942a9b65ba54a01692dd1a6edc7c3b70f0355ccec",
|
|
96
|
+
txOutputIndex: 0,
|
|
97
|
+
txOutputValue: 22000,
|
|
98
|
+
},
|
|
99
|
+
],
|
|
100
|
+
spentMainUtxos: [],
|
|
101
|
+
movedFundsSweepRequests: [],
|
|
102
|
+
};
|
|
103
|
+
// Test data comes from the input at index 4 of transaction:
|
|
104
|
+
// https://live.blockcypher.com/btc-testnet/tx/798f9a00cb9a8fddad777cf2923d9370fb2df9b76fcf1cde827618cd7a60d34e/
|
|
105
|
+
exports.witnessSignMultipleInputTx = {
|
|
106
|
+
signature: {
|
|
107
|
+
v: 28,
|
|
108
|
+
r: "0x4e500227e3394f7878075b5a5fdea97a0710ec87351a62a5cc7b8853aba794b3",
|
|
109
|
+
s: "0x3df12e35c70955af616db8bac4d80d3fa913a58fd5b771cd82c52a395ae81ce5",
|
|
110
|
+
},
|
|
111
|
+
preimage: "0x010000008906f824476e64e7c41517503fcc98d9cae70e76c3c507d90fd5c2434649" +
|
|
112
|
+
"313794ab25a89d162fcb547d533cd20ba0fce1379a1d435825ec1484dcd8a0dd414fa5" +
|
|
113
|
+
"f90f326daa312858eba12b225704ec668762cabffd83b2a0eeb0a0f12c77d100000000" +
|
|
114
|
+
"1976a9148db50eb52063ea9d98b3eac91489a90f738986f688acd020000000000000ff" +
|
|
115
|
+
"ffffffb72599001cf12b672a074ce9ff50fe8cb87432044fd6a5b85953ddc9abc458b9" +
|
|
116
|
+
"0000000001000000",
|
|
117
|
+
preimageSha256: "0xbf0ff823c255934b7a4ef21dfb98df0547b177a9f71caf0f1f86ae592ec47a09",
|
|
118
|
+
sighash: "0xd05adb53b09ac6b1cc0a0166558f8b90d2898c9a368d40a2a033e5e0c1af9b11",
|
|
119
|
+
witness: true,
|
|
120
|
+
deposits: [],
|
|
121
|
+
spentMainUtxos: [
|
|
122
|
+
{
|
|
123
|
+
txHash: "0xa5f90f326daa312858eba12b225704ec668762cabffd83b2a0eeb0a0f12c77d1",
|
|
124
|
+
txOutputIndex: 0,
|
|
125
|
+
txOutputValue: 8400,
|
|
126
|
+
},
|
|
127
|
+
],
|
|
128
|
+
movedFundsSweepRequests: [],
|
|
129
|
+
};
|
|
130
|
+
// Test data comes from the input at index 1 of transaction:
|
|
131
|
+
// https://live.blockcypher.com/btc-testnet/tx/28690a451632041443e9a5bb365c70bbd3f5c1bc6c4d9b8290873c94709cc1fe/
|
|
132
|
+
// Wrong sighash was used (SIGHASH_NONE | SIGHASH_ANYONECANPAY).
|
|
133
|
+
exports.wrongSighashType = {
|
|
134
|
+
signature: {
|
|
135
|
+
v: 27,
|
|
136
|
+
r: "0x829e367e4a7212184e869ae6aca9487131c9548a4fa6be7e829a91af433c3f75",
|
|
137
|
+
s: "0x616cc02ca4b894e0ef1a9e48f8468d7c1b4338ae0b992debcd1030f13fbd7adc",
|
|
138
|
+
},
|
|
139
|
+
preimage: "0x01000000000000000000000000000000000000000000000000000000000000000000000" +
|
|
140
|
+
"00000000000000000000000000000000000000000000000000000000000000000f7f663bc" +
|
|
141
|
+
"3e389cce42c0d0874a9e0d6390ecbb9af3eba1b3f276b83795f1b1af000000005c14934b9" +
|
|
142
|
+
"8637ca318a4d6e7ca6ffd1690b8e77df6377508f9f0c90d000395237576a9148db50eb520" +
|
|
143
|
+
"63ea9d98b3eac91489a90f738986f68763ac6776a914e257eccafbc07c381642ce6e7e551" +
|
|
144
|
+
"20fb077fbed8804e0250162b175ac682823000000000000ffffffff000000000000000000" +
|
|
145
|
+
"00000000000000000000000000000000000000000000000000000082000000",
|
|
146
|
+
preimageSha256: "0x6c8afcb2efdb0313c40acb92b80a1ae9113111ce7f081877875d28c20d9fffd7",
|
|
147
|
+
sighash: "0x4fd8491a872a42d20e434e838afd6e4d6d6422e035db0d41a9a11cb0596b2959",
|
|
148
|
+
witness: true,
|
|
149
|
+
deposits: [
|
|
150
|
+
{
|
|
151
|
+
txHash: "0xf7f663bc3e389cce42c0d0874a9e0d6390ecbb9af3eba1b3f276b83795f1b1af",
|
|
152
|
+
txOutputIndex: 0,
|
|
153
|
+
txOutputValue: 9000,
|
|
154
|
+
},
|
|
155
|
+
],
|
|
156
|
+
spentMainUtxos: [],
|
|
157
|
+
movedFundsSweepRequests: [],
|
|
158
|
+
};
|