@bitgo-beta/sdk-core 8.2.1-beta.21 → 8.2.1-beta.2100
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/dist/src/account-lib/baseCoin/baseTransaction.d.ts +0 -1
- package/dist/src/account-lib/baseCoin/baseTransaction.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts +3 -3
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/baseTransactionBuilder.js +4 -3
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts +1 -0
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/ed25519KeyPair.js +43 -31
- package/dist/src/account-lib/baseCoin/enum.d.ts +61 -2
- package/dist/src/account-lib/baseCoin/enum.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/enum.js +118 -6
- package/dist/src/account-lib/baseCoin/errors.d.ts +3 -0
- package/dist/src/account-lib/baseCoin/errors.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/errors.js +8 -2
- package/dist/src/account-lib/baseCoin/iface.d.ts +19 -35
- package/dist/src/account-lib/baseCoin/iface.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/iface.js +26 -18
- package/dist/src/account-lib/baseCoin/index.d.ts +1 -1
- package/dist/src/account-lib/baseCoin/index.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/index.js +8 -5
- package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts +88 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessage.js +154 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +67 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilder.js +144 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +33 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +45 -0
- package/dist/src/account-lib/baseCoin/messages/iface.d.ts +164 -0
- package/dist/src/account-lib/baseCoin/messages/iface.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/iface.js +3 -0
- package/dist/src/account-lib/baseCoin/messages/index.d.ts +6 -0
- package/dist/src/account-lib/baseCoin/messages/index.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/index.js +22 -0
- package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts +3 -0
- package/dist/src/account-lib/baseCoin/messages/simple/index.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/simple/index.js +19 -0
- package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts +13 -0
- package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/simple/simpleMessage.js +28 -0
- package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts +21 -0
- package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.d.ts.map +1 -0
- package/dist/src/account-lib/baseCoin/messages/simple/simpleMessageBuilder.js +28 -0
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts +1 -2
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.d.ts.map +1 -1
- package/dist/src/account-lib/baseCoin/secp256k1ExtendedKeyPair.js +38 -26
- package/dist/src/account-lib/index.d.ts +0 -1
- package/dist/src/account-lib/index.d.ts.map +1 -1
- package/dist/src/account-lib/index.js +23 -10
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts +4 -18
- package/dist/src/account-lib/mpc/curves/ed25519.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/curves/ed25519.js +6 -60
- package/dist/src/account-lib/mpc/index.d.ts +4 -4
- package/dist/src/account-lib/mpc/index.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/index.js +11 -7
- package/dist/src/account-lib/mpc/shamir.d.ts +5 -37
- package/dist/src/account-lib/mpc/shamir.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/shamir.js +6 -130
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +40 -11
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/ecdsa.js +521 -378
- package/dist/src/account-lib/mpc/tss/ecdsa/index.js +23 -9
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts +2 -2
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/rangeproof.js +3 -3
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts +73 -52
- package/dist/src/account-lib/mpc/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/ecdsa/types.js +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts +1 -2
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/eddsa.js +66 -69
- package/dist/src/account-lib/mpc/tss/eddsa/index.js +23 -9
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts +1 -4
- package/dist/src/account-lib/mpc/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/tss/eddsa/types.js +1 -1
- package/dist/src/account-lib/mpc/tss/index.js +23 -9
- package/dist/src/account-lib/mpc/util.d.ts +7 -1
- package/dist/src/account-lib/mpc/util.d.ts.map +1 -1
- package/dist/src/account-lib/mpc/util.js +24 -1
- package/dist/src/account-lib/staking/index.js +6 -2
- package/dist/src/account-lib/staking/utils.js +3 -3
- package/dist/src/account-lib/util/crypto.d.ts +8 -2
- package/dist/src/account-lib/util/crypto.d.ts.map +1 -1
- package/dist/src/account-lib/util/crypto.js +69 -38
- package/dist/src/api/bip32path.js +2 -3
- package/dist/src/api/index.js +6 -2
- package/dist/src/api/types.d.ts +37 -0
- package/dist/src/api/types.d.ts.map +1 -1
- package/dist/src/api/types.js +8 -1
- package/dist/src/bitgo/address-book/address-book.d.ts +61 -0
- package/dist/src/bitgo/address-book/address-book.d.ts.map +1 -0
- package/dist/src/bitgo/address-book/address-book.js +150 -0
- package/dist/src/bitgo/address-book/index.d.ts +3 -0
- package/dist/src/bitgo/address-book/index.d.ts.map +1 -0
- package/dist/src/{openssl → bitgo/address-book}/index.js +8 -3
- package/dist/src/bitgo/address-book/types.d.ts +170 -0
- package/dist/src/bitgo/address-book/types.d.ts.map +1 -0
- package/dist/src/bitgo/address-book/types.js +3 -0
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts +139 -12
- package/dist/src/bitgo/baseCoin/baseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/baseCoin.js +217 -16
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts +366 -29
- package/dist/src/bitgo/baseCoin/iBaseCoin.d.ts.map +1 -1
- package/dist/src/bitgo/baseCoin/iBaseCoin.js +14 -3
- package/dist/src/bitgo/baseCoin/index.js +6 -2
- package/dist/src/bitgo/bip32util.d.ts +3 -16
- package/dist/src/bitgo/bip32util.d.ts.map +1 -1
- package/dist/src/bitgo/bip32util.js +4 -56
- package/dist/src/bitgo/bitcoin.d.ts +0 -1
- package/dist/src/bitgo/bitcoin.d.ts.map +1 -1
- package/dist/src/bitgo/bitcoin.js +26 -13
- package/dist/src/bitgo/bitgoBase.d.ts +19 -5
- package/dist/src/bitgo/bitgoBase.d.ts.map +1 -1
- package/dist/src/bitgo/bitgoBase.js +1 -1
- package/dist/src/bitgo/coinFactory.d.ts +24 -3
- package/dist/src/bitgo/coinFactory.d.ts.map +1 -1
- package/dist/src/bitgo/coinFactory.js +35 -3
- package/dist/src/bitgo/config.d.ts +3 -89
- package/dist/src/bitgo/config.d.ts.map +1 -1
- package/dist/src/bitgo/config.js +26 -15
- package/dist/src/bitgo/defi/defiVault.d.ts +171 -0
- package/dist/src/bitgo/defi/defiVault.d.ts.map +1 -0
- package/dist/src/bitgo/defi/defiVault.js +445 -0
- package/dist/src/bitgo/defi/iDefiVault.d.ts +101 -0
- package/dist/src/bitgo/defi/iDefiVault.d.ts.map +1 -0
- package/dist/src/bitgo/defi/iDefiVault.js +6 -0
- package/dist/src/bitgo/defi/index.d.ts +3 -0
- package/dist/src/bitgo/defi/index.d.ts.map +1 -0
- package/dist/src/bitgo/defi/index.js +22 -0
- package/dist/src/bitgo/ecdh.d.ts +0 -1
- package/dist/src/bitgo/ecdh.d.ts.map +1 -1
- package/dist/src/bitgo/ecdh.js +26 -13
- package/dist/src/bitgo/enterprise/enterprise.d.ts +22 -14
- package/dist/src/bitgo/enterprise/enterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprise.js +72 -31
- package/dist/src/bitgo/enterprise/enterprises.d.ts +6 -0
- package/dist/src/bitgo/enterprise/enterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/enterprises.js +48 -9
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts +9 -7
- package/dist/src/bitgo/enterprise/iEnterprise.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprise.js +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts +2 -0
- package/dist/src/bitgo/enterprise/iEnterprises.d.ts.map +1 -1
- package/dist/src/bitgo/enterprise/iEnterprises.js +1 -1
- package/dist/src/bitgo/enterprise/index.js +6 -2
- package/dist/src/bitgo/environments.d.ts +88 -5
- package/dist/src/bitgo/environments.d.ts.map +1 -1
- package/dist/src/bitgo/environments.js +436 -30
- package/dist/src/bitgo/errors.d.ts +189 -1
- package/dist/src/bitgo/errors.d.ts.map +1 -1
- package/dist/src/bitgo/errors.js +187 -3
- package/dist/src/bitgo/evm/evmUtils.d.ts +26 -0
- package/dist/src/bitgo/evm/evmUtils.d.ts.map +1 -0
- package/dist/src/bitgo/evm/evmUtils.js +50 -0
- package/dist/src/bitgo/index.d.ts +6 -1
- package/dist/src/bitgo/index.d.ts.map +1 -1
- package/dist/src/bitgo/index.js +32 -11
- package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts +3 -3
- package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.d.ts.map +1 -1
- package/dist/src/bitgo/inscriptionBuilder/iInscriptionBuilder.js +1 -1
- package/dist/src/bitgo/inscriptionBuilder/index.js +6 -2
- package/dist/src/bitgo/internal/index.js +6 -2
- package/dist/src/bitgo/internal/internal.js +5 -6
- package/dist/src/bitgo/internal/keycard.d.ts +13 -8
- package/dist/src/bitgo/internal/keycard.d.ts.map +1 -1
- package/dist/src/bitgo/internal/keycard.js +63 -48
- package/dist/src/bitgo/keychain/decryptKeychain.d.ts +14 -0
- package/dist/src/bitgo/keychain/decryptKeychain.d.ts.map +1 -0
- package/dist/src/bitgo/keychain/decryptKeychain.js +36 -0
- package/dist/src/bitgo/keychain/iKeychains.d.ts +189 -10
- package/dist/src/bitgo/keychain/iKeychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/iKeychains.js +2 -2
- package/dist/src/bitgo/keychain/index.d.ts +1 -0
- package/dist/src/bitgo/keychain/index.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/index.js +7 -2
- package/dist/src/bitgo/keychain/keychains.d.ts +106 -13
- package/dist/src/bitgo/keychain/keychains.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/keychains.js +451 -93
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts +126 -91
- package/dist/src/bitgo/keychain/ovcJsonCodec.d.ts.map +1 -1
- package/dist/src/bitgo/keychain/ovcJsonCodec.js +53 -32
- package/dist/src/bitgo/legacyBitcoin.d.ts +0 -1
- package/dist/src/bitgo/legacyBitcoin.d.ts.map +1 -1
- package/dist/src/bitgo/legacyBitcoin.js +27 -13
- package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts +7 -0
- package/dist/src/bitgo/lightning/lightningWalletUtil.d.ts.map +1 -0
- package/dist/src/bitgo/lightning/lightningWalletUtil.js +25 -0
- package/dist/src/bitgo/market/iMarkets.d.ts +2 -2
- package/dist/src/bitgo/market/iMarkets.d.ts.map +1 -1
- package/dist/src/bitgo/market/index.js +6 -2
- package/dist/src/bitgo/market/markets.js +23 -9
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts +7 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/iPendingApproval.js +4 -4
- package/dist/src/bitgo/pendingApproval/index.js +6 -2
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts +20 -8
- package/dist/src/bitgo/pendingApproval/pendingApproval.d.ts.map +1 -1
- package/dist/src/bitgo/pendingApproval/pendingApproval.js +251 -110
- package/dist/src/bitgo/pendingApproval/pendingApprovals.js +23 -9
- package/dist/src/bitgo/proofs/WalletProofs.d.ts +19 -0
- package/dist/src/bitgo/proofs/WalletProofs.d.ts.map +1 -0
- package/dist/src/bitgo/proofs/WalletProofs.js +37 -0
- package/dist/src/bitgo/proofs/index.d.ts +2 -0
- package/dist/src/bitgo/proofs/index.d.ts.map +1 -0
- package/dist/src/bitgo/proofs/index.js +6 -0
- package/dist/src/bitgo/proofs/types.d.ts +80 -0
- package/dist/src/bitgo/proofs/types.d.ts.map +1 -0
- package/dist/src/bitgo/proofs/types.js +80 -0
- package/dist/src/bitgo/recovery/index.js +6 -2
- package/dist/src/bitgo/recovery/initiate.d.ts +20 -4
- package/dist/src/bitgo/recovery/initiate.d.ts.map +1 -1
- package/dist/src/bitgo/recovery/initiate.js +49 -41
- package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts +13 -0
- package/dist/src/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -0
- package/dist/src/bitgo/safe/derivableEd25519Pub.js +35 -0
- package/dist/src/bitgo/safe/iSafe.d.ts +124 -0
- package/dist/src/bitgo/safe/iSafe.d.ts.map +1 -0
- package/dist/src/bitgo/safe/iSafe.js +3 -0
- package/dist/src/bitgo/safe/iSafes.d.ts +94 -0
- package/dist/src/bitgo/safe/iSafes.d.ts.map +1 -0
- package/dist/src/bitgo/safe/iSafes.js +3 -0
- package/dist/src/bitgo/safe/index.d.ts +8 -0
- package/dist/src/bitgo/safe/index.d.ts.map +1 -0
- package/dist/src/bitgo/safe/index.js +24 -0
- package/dist/src/bitgo/safe/recovery.d.ts +92 -0
- package/dist/src/bitgo/safe/recovery.d.ts.map +1 -0
- package/dist/src/bitgo/safe/recovery.js +148 -0
- package/dist/src/bitgo/safe/rootCoin.d.ts +15 -0
- package/dist/src/bitgo/safe/rootCoin.d.ts.map +1 -0
- package/dist/src/bitgo/safe/rootCoin.js +47 -0
- package/dist/src/bitgo/safe/safe.d.ts +88 -0
- package/dist/src/bitgo/safe/safe.d.ts.map +1 -0
- package/dist/src/bitgo/safe/safe.js +409 -0
- package/dist/src/bitgo/safe/safes.d.ts +102 -0
- package/dist/src/bitgo/safe/safes.d.ts.map +1 -0
- package/dist/src/bitgo/safe/safes.js +281 -0
- package/dist/src/bitgo/staking/goStakingInterfaces.d.ts +136 -0
- package/dist/src/bitgo/staking/goStakingInterfaces.d.ts.map +1 -0
- package/dist/src/bitgo/staking/goStakingInterfaces.js +3 -0
- package/dist/src/bitgo/staking/goStakingWallet.d.ts +62 -0
- package/dist/src/bitgo/staking/goStakingWallet.d.ts.map +1 -0
- package/dist/src/bitgo/staking/goStakingWallet.js +141 -0
- package/dist/src/bitgo/staking/iGoStakingWallet.d.ts +17 -0
- package/dist/src/bitgo/staking/iGoStakingWallet.d.ts.map +1 -0
- package/dist/src/bitgo/staking/iGoStakingWallet.js +3 -0
- package/dist/src/bitgo/staking/iStakingWallet.d.ts +197 -8
- package/dist/src/bitgo/staking/iStakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/iStakingWallet.js +2 -2
- package/dist/src/bitgo/staking/index.d.ts +3 -0
- package/dist/src/bitgo/staking/index.d.ts.map +1 -1
- package/dist/src/bitgo/staking/index.js +9 -2
- package/dist/src/bitgo/staking/stakingWallet.d.ts +27 -8
- package/dist/src/bitgo/staking/stakingWallet.d.ts.map +1 -1
- package/dist/src/bitgo/staking/stakingWallet.js +161 -7
- package/dist/src/bitgo/trading/iTradingAccount.d.ts +15 -33
- package/dist/src/bitgo/trading/iTradingAccount.d.ts.map +1 -1
- package/dist/src/bitgo/trading/iTradingAccount.js +1 -1
- package/dist/src/bitgo/trading/index.d.ts +1 -15
- package/dist/src/bitgo/trading/index.d.ts.map +1 -1
- package/dist/src/bitgo/trading/index.js +7 -17
- package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts +8 -0
- package/dist/src/bitgo/trading/network/decrypt-aes-gcm.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/decrypt-aes-gcm.js +31 -0
- package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts +8 -0
- package/dist/src/bitgo/trading/network/decrypt-rsa.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/decrypt-rsa.js +23 -0
- package/dist/src/bitgo/trading/network/decrypt.d.ts +14 -0
- package/dist/src/bitgo/trading/network/decrypt.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/decrypt.js +23 -0
- package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts +8 -0
- package/dist/src/bitgo/trading/network/encrypt-aes-gcm.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/encrypt-aes-gcm.js +25 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts +8 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa-browser.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa-browser.js +65 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts +8 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/encrypt-rsa.js +23 -0
- package/dist/src/bitgo/trading/network/encrypt.d.ts +37 -0
- package/dist/src/bitgo/trading/network/encrypt.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/encrypt.js +58 -0
- package/dist/src/bitgo/trading/network/index.d.ts +5 -0
- package/dist/src/bitgo/trading/network/index.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/index.js +21 -0
- package/dist/src/bitgo/trading/network/network.d.ts +36 -0
- package/dist/src/bitgo/trading/network/network.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/network.js +94 -0
- package/dist/src/bitgo/trading/network/types.d.ts +277 -0
- package/dist/src/bitgo/trading/network/types.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/types.js +3 -0
- package/dist/src/bitgo/trading/network/utils.d.ts +20 -0
- package/dist/src/bitgo/trading/network/utils.d.ts.map +1 -0
- package/dist/src/bitgo/trading/network/utils.js +54 -0
- package/dist/src/bitgo/trading/tradingAccount.d.ts +23 -33
- package/dist/src/bitgo/trading/tradingAccount.d.ts.map +1 -1
- package/dist/src/bitgo/trading/tradingAccount.js +58 -97
- package/dist/src/bitgo/tss/bitgoPubKeys.d.ts +49 -0
- package/dist/src/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
- package/dist/src/bitgo/tss/bitgoPubKeys.js +92 -0
- package/dist/src/bitgo/tss/common.d.ts +52 -6
- package/dist/src/bitgo/tss/common.d.ts.map +1 -1
- package/dist/src/bitgo/tss/common.js +144 -15
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts +6 -4
- package/dist/src/bitgo/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/ecdsa.js +85 -81
- package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts +15 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/tss/ecdsa/ecdsaMPCv2.js +167 -0
- package/dist/src/bitgo/tss/ecdsa/index.d.ts +1 -0
- package/dist/src/bitgo/tss/ecdsa/index.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/index.js +25 -10
- package/dist/src/bitgo/tss/ecdsa/types.d.ts +27 -27
- package/dist/src/bitgo/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/ecdsa/types.js +3 -3
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts +19 -9
- package/dist/src/bitgo/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/tss/eddsa/eddsa.js +56 -38
- package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts +42 -0
- package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/tss/eddsa/eddsaMPCv2.js +104 -0
- package/dist/src/bitgo/tss/eddsa/index.js +23 -9
- package/dist/src/bitgo/tss/eddsa/types.d.ts +4 -4
- package/dist/src/bitgo/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/index.d.ts +3 -2
- package/dist/src/bitgo/tss/index.d.ts.map +1 -1
- package/dist/src/bitgo/tss/index.js +26 -10
- package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.d.ts +79 -0
- package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/tss/redpallas/redpallasMPCv2.js +179 -0
- package/dist/src/bitgo/tss/types.d.ts +19 -0
- package/dist/src/bitgo/tss/types.d.ts.map +1 -1
- package/dist/src/bitgo/tss/types.js +2 -2
- package/dist/src/bitgo/types.d.ts +3 -3
- package/dist/src/bitgo/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts +14 -0
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -1
- package/dist/src/bitgo/utils/abstractUtxoCoinUtil.js +87 -10
- package/dist/src/bitgo/utils/codecProps.d.ts +7 -0
- package/dist/src/bitgo/utils/codecProps.d.ts.map +1 -0
- package/dist/src/bitgo/utils/codecProps.js +54 -0
- package/dist/src/bitgo/utils/codecs.d.ts +11 -0
- package/dist/src/bitgo/utils/codecs.d.ts.map +1 -0
- package/dist/src/bitgo/utils/codecs.js +59 -0
- package/dist/src/bitgo/utils/decode.d.ts.map +1 -1
- package/dist/src/bitgo/utils/decode.js +30 -16
- package/dist/src/bitgo/utils/index.d.ts +5 -2
- package/dist/src/bitgo/utils/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/index.js +28 -11
- package/dist/src/bitgo/utils/messageTypes.d.ts +46 -0
- package/dist/src/bitgo/utils/messageTypes.d.ts.map +1 -0
- package/dist/src/bitgo/utils/messageTypes.js +23 -0
- package/dist/src/bitgo/utils/mpcUtils.d.ts +4 -4
- package/dist/src/bitgo/utils/mpcUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/mpcUtils.js +208 -14
- package/dist/src/bitgo/utils/notEmpty.d.ts +2 -0
- package/dist/src/bitgo/utils/notEmpty.d.ts.map +1 -0
- package/dist/src/bitgo/utils/notEmpty.js +7 -0
- package/dist/src/bitgo/utils/opengpgUtils.d.ts +13 -9
- package/dist/src/bitgo/utils/opengpgUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/opengpgUtils.js +87 -73
- package/dist/src/bitgo/utils/postWithCodec.d.ts +18 -0
- package/dist/src/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/src/bitgo/utils/postWithCodec.js +25 -0
- package/dist/src/bitgo/utils/promise-utils.d.ts +1 -1
- package/dist/src/bitgo/utils/promise-utils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/promise-utils.js +2 -3
- package/dist/src/bitgo/utils/siws.d.ts +17 -0
- package/dist/src/bitgo/utils/siws.d.ts.map +1 -0
- package/dist/src/bitgo/utils/siws.js +171 -0
- package/dist/src/bitgo/utils/transactionUtils.d.ts +9 -0
- package/dist/src/bitgo/utils/transactionUtils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/transactionUtils.js +29 -0
- package/dist/src/bitgo/utils/triple.d.ts +1 -1
- package/dist/src/bitgo/utils/triple.d.ts.map +1 -1
- package/dist/src/bitgo/utils/triple.js +2 -3
- package/dist/src/bitgo/utils/tss/addressVerification.d.ts +62 -0
- package/dist/src/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/addressVerification.js +93 -0
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts +157 -28
- package/dist/src/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTSSUtils.js +381 -43
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts +620 -44
- package/dist/src/bitgo/utils/tss/baseTypes.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/baseTypes.js +60 -10
- package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts +23 -0
- package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/SMC/utils.js +157 -0
- package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts +28 -0
- package/dist/src/bitgo/utils/tss/ecdsa/base.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/base.js +53 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts +63 -53
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsa.js +356 -327
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +240 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1076 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts +16 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaMPCv2KeyGenSender.js +37 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts +69 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/ecdsaVrfMPCv2.js +442 -0
- package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts +5 -0
- package/dist/src/bitgo/utils/tss/ecdsa/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/index.js +11 -2
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts +15 -9
- package/dist/src/bitgo/utils/tss/ecdsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/types.js +1 -1
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts +125 -0
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/ecdsa/typesMPCv2.js +55 -0
- package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts +21 -0
- package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/SMC/utils.js +119 -0
- package/dist/src/bitgo/utils/tss/eddsa/base.d.ts +18 -0
- package/dist/src/bitgo/utils/tss/eddsa/base.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/base.js +64 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts +59 -14
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/eddsa.js +318 -99
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +260 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2.js +995 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts +11 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsaMPCv2KeyGenSender.js +26 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +42 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +267 -0
- package/dist/src/bitgo/utils/tss/eddsa/index.d.ts +5 -0
- package/dist/src/bitgo/utils/tss/eddsa/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/index.js +30 -8
- package/dist/src/bitgo/utils/tss/eddsa/types.d.ts +15 -7
- package/dist/src/bitgo/utils/tss/eddsa/types.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/types.js +1 -1
- package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts +75 -0
- package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/eddsa/typesEddsaMPCv2.js +44 -0
- package/dist/src/bitgo/utils/tss/index.d.ts +7 -0
- package/dist/src/bitgo/utils/tss/index.d.ts.map +1 -1
- package/dist/src/bitgo/utils/tss/index.js +31 -10
- package/dist/src/bitgo/utils/tss/keyShareEnvelope.d.ts +40 -0
- package/dist/src/bitgo/utils/tss/keyShareEnvelope.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/keyShareEnvelope.js +103 -0
- package/dist/src/bitgo/utils/tss/keyVerification.d.ts +45 -0
- package/dist/src/bitgo/utils/tss/keyVerification.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/keyVerification.js +192 -0
- package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts +23 -0
- package/dist/src/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/preHashedSignable.js +26 -0
- package/dist/src/bitgo/utils/tss/recipientUtils.d.ts +42 -0
- package/dist/src/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/recipientUtils.js +168 -0
- package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.d.ts +29 -0
- package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/redpallas/SMC/utils.js +126 -0
- package/dist/src/bitgo/utils/tss/redpallas/index.d.ts +4 -0
- package/dist/src/bitgo/utils/tss/redpallas/index.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/redpallas/index.js +20 -0
- package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts +27 -0
- package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2.js +43 -0
- package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts +45 -0
- package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/redpallas/redpallasMPCv2KeyGenSender.js +55 -0
- package/dist/src/bitgo/utils/tss/serializedTxHexVerify.d.ts +8 -0
- package/dist/src/bitgo/utils/tss/serializedTxHexVerify.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/serializedTxHexVerify.js +13 -0
- package/dist/src/bitgo/utils/tss/signableConsistency.d.ts +12 -0
- package/dist/src/bitgo/utils/tss/signableConsistency.d.ts.map +1 -0
- package/dist/src/bitgo/utils/tss/signableConsistency.js +9 -0
- package/dist/src/bitgo/utils/txRequest.d.ts +10 -0
- package/dist/src/bitgo/utils/txRequest.d.ts.map +1 -0
- package/dist/src/bitgo/utils/txRequest.js +49 -0
- package/dist/src/bitgo/utils/util.js +24 -10
- package/dist/src/bitgo/utils/wallet.d.ts +7 -0
- package/dist/src/bitgo/utils/wallet.d.ts.map +1 -0
- package/dist/src/bitgo/utils/wallet.js +48 -0
- package/dist/src/bitgo/v1Wallets.d.ts +170 -0
- package/dist/src/bitgo/v1Wallets.d.ts.map +1 -0
- package/dist/src/bitgo/v1Wallets.js +3 -0
- package/dist/src/bitgo/wallet/BuildParams.d.ts +201 -0
- package/dist/src/bitgo/wallet/BuildParams.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/BuildParams.js +202 -0
- package/dist/src/bitgo/wallet/iWallet.d.ts +682 -30
- package/dist/src/bitgo/wallet/iWallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallet.js +1 -1
- package/dist/src/bitgo/wallet/iWallets.d.ts +325 -19
- package/dist/src/bitgo/wallet/iWallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/iWallets.js +84 -3
- package/dist/src/bitgo/wallet/index.d.ts +1 -0
- package/dist/src/bitgo/wallet/index.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/index.js +7 -2
- package/dist/src/bitgo/wallet/safeKeychain.d.ts +75 -0
- package/dist/src/bitgo/wallet/safeKeychain.d.ts.map +1 -0
- package/dist/src/bitgo/wallet/safeKeychain.js +151 -0
- package/dist/src/bitgo/wallet/wallet.d.ts +485 -29
- package/dist/src/bitgo/wallet/wallet.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallet.js +2723 -478
- package/dist/src/bitgo/wallet/wallets.d.ts +124 -9
- package/dist/src/bitgo/wallet/wallets.d.ts.map +1 -1
- package/dist/src/bitgo/wallet/wallets.js +1398 -181
- package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts +12 -0
- package/dist/src/bitgo/walletUtil/iMessageProvider.d.ts.map +1 -0
- package/dist/src/bitgo/walletUtil/iMessageProvider.js +3 -0
- package/dist/src/bitgo/walletUtil/index.d.ts +3 -0
- package/dist/src/bitgo/walletUtil/index.d.ts.map +1 -0
- package/dist/src/bitgo/walletUtil/index.js +19 -0
- package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts +22 -0
- package/dist/src/bitgo/walletUtil/midnightMessageProvider.d.ts.map +1 -0
- package/dist/src/bitgo/walletUtil/midnightMessageProvider.js +95 -0
- package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts +9 -0
- package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.d.ts.map +1 -0
- package/dist/src/bitgo/walletUtil/signAccountBasedMidnightClaimMessages.js +72 -0
- package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts +15 -0
- package/dist/src/bitgo/walletUtil/utxoMessageProof.d.ts.map +1 -0
- package/dist/src/bitgo/walletUtil/utxoMessageProof.js +40 -0
- package/dist/src/bitgo/webauthn/base64url.d.ts +16 -0
- package/dist/src/bitgo/webauthn/base64url.d.ts.map +1 -0
- package/dist/src/bitgo/webauthn/base64url.js +27 -0
- package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.d.ts +18 -0
- package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.d.ts.map +1 -0
- package/dist/src/bitgo/webauthn/deriveEnterpriseSalt.js +26 -0
- package/dist/src/bitgo/webauthn/derivePassword.d.ts +11 -0
- package/dist/src/bitgo/webauthn/derivePassword.d.ts.map +1 -0
- package/dist/src/bitgo/webauthn/derivePassword.js +16 -0
- package/dist/src/bitgo/webauthn/index.d.ts +5 -0
- package/dist/src/bitgo/webauthn/index.d.ts.map +1 -0
- package/dist/src/bitgo/webauthn/index.js +21 -0
- package/dist/src/bitgo/webauthn/types.d.ts +18 -0
- package/dist/src/bitgo/webauthn/types.d.ts.map +1 -0
- package/dist/src/bitgo/webauthn/types.js +3 -0
- package/dist/src/bitgo/webhook/index.js +6 -2
- package/dist/src/bitgo/webhook/webhooks.js +23 -9
- package/dist/src/coins/fiat.d.ts +45 -0
- package/dist/src/coins/fiat.d.ts.map +1 -0
- package/dist/src/coins/fiat.js +94 -0
- package/dist/src/coins/index.d.ts +1 -6
- package/dist/src/coins/index.d.ts.map +1 -1
- package/dist/src/coins/index.js +7 -8
- package/dist/src/coins/ofc.d.ts +21 -2
- package/dist/src/coins/ofc.d.ts.map +1 -1
- package/dist/src/coins/ofc.js +29 -3
- package/dist/src/coins/ofcToken.d.ts +15 -4
- package/dist/src/coins/ofcToken.d.ts.map +1 -1
- package/dist/src/coins/ofcToken.js +43 -5
- package/dist/src/coins/susd.d.ts +3 -2
- package/dist/src/coins/susd.d.ts.map +1 -1
- package/dist/src/coins/susd.js +5 -1
- package/dist/src/common.js +27 -13
- package/dist/src/index.d.ts +13 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +42 -11
- package/dist/src/lightning.d.ts +20 -0
- package/dist/src/lightning.d.ts.map +1 -0
- package/dist/src/lightning.js +13 -0
- package/dist/src/units.js +5 -6
- package/dist/test/node.utils.d.ts +2 -0
- package/dist/test/node.utils.d.ts.map +1 -0
- package/dist/test/node.utils.js +5 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessage.js +207 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilder.js +174 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts +2 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/baseMessageBuilderFactory.js +108 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts +46 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.d.ts.map +1 -0
- package/dist/test/unit/account-lib/baseCoin/messages/fixtures.js +69 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts +2 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/ecdsa.js +279 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts +3 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/tss/ecdsa/fixtures.js +24 -0
- package/dist/test/unit/account-lib/mpc/util.d.ts +2 -0
- package/dist/test/unit/account-lib/mpc/util.d.ts.map +1 -0
- package/dist/test/unit/account-lib/mpc/util.js +53 -0
- package/dist/test/unit/bitgo/address-book/address-book.d.ts +2 -0
- package/dist/test/unit/bitgo/address-book/address-book.d.ts.map +1 -0
- package/dist/test/unit/bitgo/address-book/address-book.js +159 -0
- package/dist/test/unit/bitgo/defi/defiVault.d.ts +2 -0
- package/dist/test/unit/bitgo/defi/defiVault.d.ts.map +1 -0
- package/dist/test/unit/bitgo/defi/defiVault.js +863 -0
- package/dist/test/unit/bitgo/environment.d.ts +2 -0
- package/dist/test/unit/bitgo/environment.d.ts.map +1 -0
- package/dist/test/unit/bitgo/environment.js +38 -0
- package/dist/test/unit/bitgo/errors.d.ts +2 -0
- package/dist/test/unit/bitgo/errors.d.ts.map +1 -0
- package/dist/test/unit/bitgo/errors.js +262 -0
- package/dist/test/unit/bitgo/keychain/keychains.d.ts +2 -0
- package/dist/test/unit/bitgo/keychain/keychains.d.ts.map +1 -0
- package/dist/test/unit/bitgo/keychain/keychains.js +426 -0
- package/dist/test/unit/bitgo/recovery/initiate.d.ts +2 -0
- package/dist/test/unit/bitgo/recovery/initiate.d.ts.map +1 -0
- package/dist/test/unit/bitgo/recovery/initiate.js +159 -0
- package/dist/test/unit/bitgo/safe/derivableEd25519Pub.d.ts +2 -0
- package/dist/test/unit/bitgo/safe/derivableEd25519Pub.d.ts.map +1 -0
- package/dist/test/unit/bitgo/safe/derivableEd25519Pub.js +133 -0
- package/dist/test/unit/bitgo/safe/fixtures/derivableEd25519Pub.json +72 -0
- package/dist/test/unit/bitgo/safe/recovery.d.ts +2 -0
- package/dist/test/unit/bitgo/safe/recovery.d.ts.map +1 -0
- package/dist/test/unit/bitgo/safe/recovery.js +313 -0
- package/dist/test/unit/bitgo/safe/rootCoin.d.ts +2 -0
- package/dist/test/unit/bitgo/safe/rootCoin.d.ts.map +1 -0
- package/dist/test/unit/bitgo/safe/rootCoin.js +13 -0
- package/dist/test/unit/bitgo/safe/safe.d.ts +2 -0
- package/dist/test/unit/bitgo/safe/safe.d.ts.map +1 -0
- package/dist/test/unit/bitgo/safe/safe.js +585 -0
- package/dist/test/unit/bitgo/safe/safeDerivation.d.ts +2 -0
- package/dist/test/unit/bitgo/safe/safeDerivation.d.ts.map +1 -0
- package/dist/test/unit/bitgo/safe/safeDerivation.js +75 -0
- package/dist/test/unit/bitgo/safe/safes.d.ts +2 -0
- package/dist/test/unit/bitgo/safe/safes.d.ts.map +1 -0
- package/dist/test/unit/bitgo/safe/safes.js +376 -0
- package/dist/test/unit/bitgo/trading/network/encrypt.d.ts +2 -0
- package/dist/test/unit/bitgo/trading/network/encrypt.d.ts.map +1 -0
- package/dist/test/unit/bitgo/trading/network/encrypt.js +71 -0
- package/dist/test/unit/bitgo/trading/network/network.test.d.ts +2 -0
- package/dist/test/unit/bitgo/trading/network/network.test.d.ts.map +1 -0
- package/dist/test/unit/bitgo/trading/network/network.test.js +136 -0
- package/dist/test/unit/bitgo/trading/tradingAccount.d.ts +2 -0
- package/dist/test/unit/bitgo/trading/tradingAccount.d.ts.map +1 -0
- package/dist/test/unit/bitgo/trading/tradingAccount.js +192 -0
- package/dist/test/unit/bitgo/tss/bitgoPubKeys.d.ts +2 -0
- package/dist/test/unit/bitgo/tss/bitgoPubKeys.d.ts.map +1 -0
- package/dist/test/unit/bitgo/tss/bitgoPubKeys.js +66 -0
- package/dist/test/unit/bitgo/tss/common.d.ts +2 -0
- package/dist/test/unit/bitgo/tss/common.d.ts.map +1 -0
- package/dist/test/unit/bitgo/tss/common.js +77 -0
- package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.d.ts +2 -0
- package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
- package/dist/test/unit/bitgo/tss/redpallas/redpallasMPCv2.js +249 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/abstractUtxoCoinUtil.js +66 -0
- package/dist/test/unit/bitgo/utils/messageTypes.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/messageTypes.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/messageTypes.js +64 -0
- package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/mpcUtils.unwrap.js +109 -0
- package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/mpcUtils.wrapApprove.js +106 -0
- package/dist/test/unit/bitgo/utils/notEmpty.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/notEmpty.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/notEmpty.js +15 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/postWithCodec.js +73 -0
- package/dist/test/unit/bitgo/utils/siws.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/siws.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/siws.js +206 -0
- package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/addressVerification.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/addressVerification.js +251 -0
- package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/baseTSSUtils.js +348 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaEncryptionVersion.js +94 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/ecdsaMPCv2.js +1068 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts +5 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/ecdsa/gpgKeys.js +36 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaExternalSigner.js +158 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaMPCv2.js +2410 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/eddsaVrfMPCv2.js +549 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/eddsa/smcUtil.js +376 -0
- package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/keyShareEnvelope.js +83 -0
- package/dist/test/unit/bitgo/utils/tss/keyVerification.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/keyVerification.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/keyVerification.js +229 -0
- package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/preHashedSignable.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/preHashedSignable.js +55 -0
- package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/recipientUtils.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/recipientUtils.js +462 -0
- package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/redpallas/redpallasMPCv2.js +80 -0
- package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/redpallas/smcUtil.js +279 -0
- package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/tss/redpallasBitgoGpgKey.js +111 -0
- package/dist/test/unit/bitgo/utils/txRequest.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/txRequest.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/txRequest.js +179 -0
- package/dist/test/unit/bitgo/utils/wallet.d.ts +2 -0
- package/dist/test/unit/bitgo/utils/wallet.d.ts.map +1 -0
- package/dist/test/unit/bitgo/utils/wallet.js +55 -0
- package/dist/test/unit/bitgo/wallet/BuildParams.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/BuildParams.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/BuildParams.js +154 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/SendTransactionRequest.js +114 -0
- package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/getAccountResources.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/getAccountResources.js +133 -0
- package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/getPotentialStuckTxs.js +88 -0
- package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/getResourceDelegations.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/getResourceDelegations.js +118 -0
- package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/ofcWalletAddressCreation.js +141 -0
- package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/ofcWalletSignTransaction.js +185 -0
- package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/prebuildTransactionTypes.js +20 -0
- package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts +3 -0
- package/dist/test/unit/bitgo/wallet/resourceManagement.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/resourceManagement.js +441 -0
- package/dist/test/unit/bitgo/wallet/safeGetUserPrv.d.ts +5 -0
- package/dist/test/unit/bitgo/wallet/safeGetUserPrv.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/safeGetUserPrv.js +671 -0
- package/dist/test/unit/bitgo/wallet/safeShareWallet.d.ts +9 -0
- package/dist/test/unit/bitgo/wallet/safeShareWallet.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/safeShareWallet.js +303 -0
- package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/tokenApproval.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/tokenApproval.js +210 -0
- package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletEvmAddressCreation.js +181 -0
- package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletOptionsCodecs.js +69 -0
- package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletTssAddressVerification.js +320 -0
- package/dist/test/unit/bitgo/wallet/walletVerifyKey.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletVerifyKey.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletVerifyKey.js +160 -0
- package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletsEncryptionVersion.js +304 -0
- package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletsEvmKeyring.js +216 -0
- package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletsExternalSigner.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletsExternalSigner.js +853 -0
- package/dist/test/unit/bitgo/wallet/walletsGoAccount.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletsGoAccount.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletsGoAccount.js +150 -0
- package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts +2 -0
- package/dist/test/unit/bitgo/wallet/walletsWebauthn.d.ts.map +1 -0
- package/dist/test/unit/bitgo/wallet/walletsWebauthn.js +201 -0
- package/dist/test/unit/coins/ofc.d.ts +2 -0
- package/dist/test/unit/coins/ofc.d.ts.map +1 -0
- package/dist/test/unit/coins/ofc.js +124 -0
- package/dist/test/unit/lightning.d.ts +2 -0
- package/dist/test/unit/lightning.d.ts.map +1 -0
- package/dist/test/unit/lightning.js +23 -0
- package/dist/test/unit/units.d.ts +2 -0
- package/dist/test/unit/units.d.ts.map +1 -0
- package/dist/test/unit/units.js +98 -0
- package/dist/tsconfig.tsbuildinfo +1 -8340
- package/package.json +31 -24
- package/.eslintignore +0 -5
- package/CHANGELOG.md +0 -662
- package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts +0 -77
- package/dist/src/account-lib/baseCoin/blsKeyPair.d.ts.map +0 -1
- package/dist/src/account-lib/baseCoin/blsKeyPair.js +0 -209
- package/dist/src/account-lib/mpc/hdTree.d.ts +0 -31
- package/dist/src/account-lib/mpc/hdTree.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/hdTree.js +0 -141
- package/dist/src/account-lib/mpc/types.d.ts +0 -5
- package/dist/src/account-lib/mpc/types.d.ts.map +0 -1
- package/dist/src/account-lib/mpc/types.js +0 -3
- package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts +0 -49
- package/dist/src/account-lib/util/ed25519KeyDeriver.d.ts.map +0 -1
- package/dist/src/account-lib/util/ed25519KeyDeriver.js +0 -87
- package/dist/src/bitgo/lightning/iLightning.d.ts +0 -186
- package/dist/src/bitgo/lightning/iLightning.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/iLightning.js +0 -106
- package/dist/src/bitgo/lightning/index.d.ts +0 -5
- package/dist/src/bitgo/lightning/index.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/index.js +0 -17
- package/dist/src/bitgo/lightning/lightning.d.ts +0 -25
- package/dist/src/bitgo/lightning/lightning.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/lightning.js +0 -111
- package/dist/src/bitgo/lightning/lightningUtils.d.ts +0 -46
- package/dist/src/bitgo/lightning/lightningUtils.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/lightningUtils.js +0 -133
- package/dist/src/bitgo/lightning/lnurlCodec.d.ts +0 -3
- package/dist/src/bitgo/lightning/lnurlCodec.d.ts.map +0 -1
- package/dist/src/bitgo/lightning/lnurlCodec.js +0 -28
- package/dist/src/bitgo/trading/affirmation.d.ts +0 -35
- package/dist/src/bitgo/trading/affirmation.d.ts.map +0 -1
- package/dist/src/bitgo/trading/affirmation.js +0 -53
- package/dist/src/bitgo/trading/affirmations.d.ts +0 -23
- package/dist/src/bitgo/trading/affirmations.d.ts.map +0 -1
- package/dist/src/bitgo/trading/affirmations.js +0 -45
- package/dist/src/bitgo/trading/iAffirmation.d.ts +0 -15
- package/dist/src/bitgo/trading/iAffirmation.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iAffirmation.js +0 -13
- package/dist/src/bitgo/trading/iAffirmations.d.ts +0 -10
- package/dist/src/bitgo/trading/iAffirmations.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iAffirmations.js +0 -3
- package/dist/src/bitgo/trading/iSettlement.d.ts +0 -25
- package/dist/src/bitgo/trading/iSettlement.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iSettlement.js +0 -17
- package/dist/src/bitgo/trading/iSettlements.d.ts +0 -19
- package/dist/src/bitgo/trading/iSettlements.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iSettlements.js +0 -3
- package/dist/src/bitgo/trading/iTradingPartner.d.ts +0 -14
- package/dist/src/bitgo/trading/iTradingPartner.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iTradingPartner.js +0 -17
- package/dist/src/bitgo/trading/iTradingPartners.d.ts +0 -15
- package/dist/src/bitgo/trading/iTradingPartners.d.ts.map +0 -1
- package/dist/src/bitgo/trading/iTradingPartners.js +0 -9
- package/dist/src/bitgo/trading/lock.d.ts +0 -16
- package/dist/src/bitgo/trading/lock.d.ts.map +0 -1
- package/dist/src/bitgo/trading/lock.js +0 -12
- package/dist/src/bitgo/trading/payload.d.ts +0 -22
- package/dist/src/bitgo/trading/payload.d.ts.map +0 -1
- package/dist/src/bitgo/trading/payload.js +0 -3
- package/dist/src/bitgo/trading/settlement.d.ts +0 -16
- package/dist/src/bitgo/trading/settlement.d.ts.map +0 -1
- package/dist/src/bitgo/trading/settlement.js +0 -21
- package/dist/src/bitgo/trading/settlements.d.ts +0 -32
- package/dist/src/bitgo/trading/settlements.d.ts.map +0 -1
- package/dist/src/bitgo/trading/settlements.js +0 -61
- package/dist/src/bitgo/trading/trade.d.ts +0 -29
- package/dist/src/bitgo/trading/trade.d.ts.map +0 -1
- package/dist/src/bitgo/trading/trade.js +0 -11
- package/dist/src/bitgo/trading/tradingPartner.d.ts +0 -26
- package/dist/src/bitgo/trading/tradingPartner.d.ts.map +0 -1
- package/dist/src/bitgo/trading/tradingPartner.js +0 -31
- package/dist/src/bitgo/trading/tradingPartners.d.ts +0 -24
- package/dist/src/bitgo/trading/tradingPartners.d.ts.map +0 -1
- package/dist/src/bitgo/trading/tradingPartners.js +0 -32
- package/dist/src/bitgo/utils/blsUtils.d.ts +0 -52
- package/dist/src/bitgo/utils/blsUtils.d.ts.map +0 -1
- package/dist/src/bitgo/utils/blsUtils.js +0 -237
- package/dist/src/bitgo/utils/iBlsUtils.d.ts +0 -14
- package/dist/src/bitgo/utils/iBlsUtils.d.ts.map +0 -1
- package/dist/src/bitgo/utils/iBlsUtils.js +0 -3
- package/dist/src/coins/fiateur.d.ts +0 -31
- package/dist/src/coins/fiateur.d.ts.map +0 -1
- package/dist/src/coins/fiateur.js +0 -57
- package/dist/src/coins/fiatgbp.d.ts +0 -31
- package/dist/src/coins/fiatgbp.d.ts.map +0 -1
- package/dist/src/coins/fiatgbp.js +0 -57
- package/dist/src/coins/fiatusd.d.ts +0 -31
- package/dist/src/coins/fiatusd.d.ts.map +0 -1
- package/dist/src/coins/fiatusd.js +0 -57
- package/dist/src/coins/tfiateur.d.ts +0 -11
- package/dist/src/coins/tfiateur.d.ts.map +0 -1
- package/dist/src/coins/tfiateur.js +0 -17
- package/dist/src/coins/tfiatgbp.d.ts +0 -11
- package/dist/src/coins/tfiatgbp.d.ts.map +0 -1
- package/dist/src/coins/tfiatgbp.js +0 -17
- package/dist/src/coins/tfiatusd.d.ts +0 -11
- package/dist/src/coins/tfiatusd.d.ts.map +0 -1
- package/dist/src/coins/tfiatusd.js +0 -17
- package/dist/src/openssl/index.d.ts +0 -2
- package/dist/src/openssl/index.d.ts.map +0 -1
- package/dist/src/openssl/openssl.d.ts +0 -12
- package/dist/src/openssl/openssl.d.ts.map +0 -1
- package/dist/src/openssl/openssl.js +0 -48
- package/dist/src/openssl/opensslbytes.d.ts +0 -4
- package/dist/src/openssl/opensslbytes.d.ts.map +0 -1
- package/dist/src/openssl/opensslbytes.js +0 -20
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
const assert = __importStar(require("assert"));
|
|
40
|
+
require("should");
|
|
41
|
+
const sdk_lib_mpc_1 = require("@bitgo-beta/sdk-lib-mpc");
|
|
42
|
+
const tss_1 = __importDefault(require("../../../../../src/account-lib/mpc/tss"));
|
|
43
|
+
const keyVerification_1 = require("../../../../../src/bitgo/utils/tss/keyVerification");
|
|
44
|
+
describe('TSS EdDSA key verification', function () {
|
|
45
|
+
let matchingPrv;
|
|
46
|
+
let commonKeychain;
|
|
47
|
+
let otherPrv;
|
|
48
|
+
let backupStylePrv;
|
|
49
|
+
before(async function () {
|
|
50
|
+
const hdTree = await sdk_lib_mpc_1.Ed25519Bip32HdTree.initialize();
|
|
51
|
+
const MPC = await tss_1.default.initialize(hdTree);
|
|
52
|
+
const userKeyShare = MPC.keyShare(1, 2, 3);
|
|
53
|
+
const backupKeyShare = MPC.keyShare(2, 2, 3);
|
|
54
|
+
const bitgoKeyShare = MPC.keyShare(3, 2, 3);
|
|
55
|
+
const combined = MPC.keyCombine(userKeyShare.uShare, [backupKeyShare.yShares[1], bitgoKeyShare.yShares[1]]);
|
|
56
|
+
commonKeychain = combined.pShare.y + combined.pShare.chaincode;
|
|
57
|
+
matchingPrv = JSON.stringify({
|
|
58
|
+
uShare: userKeyShare.uShare,
|
|
59
|
+
bitgoYShare: bitgoKeyShare.yShares[1],
|
|
60
|
+
backupYShare: backupKeyShare.yShares[1],
|
|
61
|
+
});
|
|
62
|
+
// an independent key generation for the negative case
|
|
63
|
+
const otherUserKeyShare = MPC.keyShare(1, 2, 3);
|
|
64
|
+
const otherBackupKeyShare = MPC.keyShare(2, 2, 3);
|
|
65
|
+
const otherBitgoKeyShare = MPC.keyShare(3, 2, 3);
|
|
66
|
+
otherPrv = JSON.stringify({
|
|
67
|
+
uShare: otherUserKeyShare.uShare,
|
|
68
|
+
bitgoYShare: otherBitgoKeyShare.yShares[1],
|
|
69
|
+
backupYShare: otherBackupKeyShare.yShares[1],
|
|
70
|
+
});
|
|
71
|
+
// backup-style signing material: the holder is the backup party (i=2), so it carries
|
|
72
|
+
// userYShare instead of backupYShare
|
|
73
|
+
backupStylePrv = JSON.stringify({
|
|
74
|
+
uShare: backupKeyShare.uShare,
|
|
75
|
+
bitgoYShare: bitgoKeyShare.yShares[2],
|
|
76
|
+
userYShare: userKeyShare.yShares[2],
|
|
77
|
+
});
|
|
78
|
+
});
|
|
79
|
+
describe('parseEddsaUserSigningMaterial', function () {
|
|
80
|
+
it('parses well-formed user signing material', function () {
|
|
81
|
+
const parsed = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
82
|
+
parsed.should.have.property('uShare');
|
|
83
|
+
parsed.should.have.property('bitgoYShare');
|
|
84
|
+
parsed.should.have.property('backupYShare');
|
|
85
|
+
});
|
|
86
|
+
it('rejects input that is not valid JSON without echoing the input', function () {
|
|
87
|
+
const prv = 'not json';
|
|
88
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(prv), (err) => {
|
|
89
|
+
assert.ok(err instanceof Error);
|
|
90
|
+
assert.ok(!err.message.includes(prv), 'error message must not echo the input');
|
|
91
|
+
return true;
|
|
92
|
+
});
|
|
93
|
+
});
|
|
94
|
+
it('rejects input that parses to a non-object', function () {
|
|
95
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)('123'), /signing material is not an object/);
|
|
96
|
+
});
|
|
97
|
+
it('rejects material missing any of the three required shares', function () {
|
|
98
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
99
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(JSON.stringify({ bitgoYShare, backupYShare })), /missing uShare/);
|
|
100
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(JSON.stringify({ uShare, backupYShare })), /missing bitgoYShare/);
|
|
101
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(JSON.stringify({ uShare, bitgoYShare })), /missing backupYShare/);
|
|
102
|
+
});
|
|
103
|
+
it('rejects backup-style material; only user signing material is accepted', function () {
|
|
104
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(backupStylePrv), /missing backupYShare/);
|
|
105
|
+
});
|
|
106
|
+
it('rejects shares that are not share-shaped objects', function () {
|
|
107
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
108
|
+
// array shares are malformed; null shares count as missing
|
|
109
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(JSON.stringify({ uShare, bitgoYShare: [], backupYShare })), /bitgoYShare is not a valid share/);
|
|
110
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(JSON.stringify({ uShare, bitgoYShare: null, backupYShare })), /missing bitgoYShare/);
|
|
111
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(JSON.stringify({ uShare: {}, bitgoYShare, backupYShare })), /uShare is not a valid share/);
|
|
112
|
+
});
|
|
113
|
+
it('rejects shares with malformed fields', function () {
|
|
114
|
+
const malformed = JSON.stringify({
|
|
115
|
+
uShare: { i: 1, t: 2, n: 3, y: 'not-hex', seed: 'ab', chaincode: 'cd' },
|
|
116
|
+
bitgoYShare: { i: 1, j: 3, y: 'ab', u: 'cd', chaincode: 'ef', v: '01' },
|
|
117
|
+
backupYShare: { i: 1, j: 2, y: 'ab', u: 'cd', chaincode: 'ef' },
|
|
118
|
+
});
|
|
119
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(malformed), /uShare is not a valid share/);
|
|
120
|
+
});
|
|
121
|
+
it('rejects hex fields of the wrong length', function () {
|
|
122
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
123
|
+
const truncatedChaincode = JSON.stringify({
|
|
124
|
+
uShare: { ...uShare, chaincode: uShare.chaincode.slice(0, 62) },
|
|
125
|
+
bitgoYShare,
|
|
126
|
+
backupYShare,
|
|
127
|
+
});
|
|
128
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(truncatedChaincode), /uShare is not a valid share/);
|
|
129
|
+
});
|
|
130
|
+
it('rejects a non-hex v field on a Y share when present', function () {
|
|
131
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
132
|
+
const tampered = JSON.stringify({
|
|
133
|
+
uShare,
|
|
134
|
+
backupYShare,
|
|
135
|
+
bitgoYShare: { ...bitgoYShare, v: 'zz' },
|
|
136
|
+
});
|
|
137
|
+
assert.throws(() => (0, keyVerification_1.parseEddsaUserSigningMaterial)(tampered), /bitgoYShare is not a valid share/);
|
|
138
|
+
});
|
|
139
|
+
it('accepts a Y share without the optional v field', function () {
|
|
140
|
+
// v is optional on the YShare type, so parsing must allow it; verification separately
|
|
141
|
+
// rejects material without it with a distinct unable-to-verify error (see below)
|
|
142
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
143
|
+
const withoutV = { ...bitgoYShare };
|
|
144
|
+
delete withoutV.v;
|
|
145
|
+
const vlessPrv = JSON.stringify({ uShare, bitgoYShare: withoutV, backupYShare });
|
|
146
|
+
const parsed = (0, keyVerification_1.parseEddsaUserSigningMaterial)(vlessPrv);
|
|
147
|
+
parsed.bitgoYShare.should.not.have.property('v');
|
|
148
|
+
});
|
|
149
|
+
});
|
|
150
|
+
describe('eddsaUserSigningMaterialMatchesCommonKeychain', function () {
|
|
151
|
+
it('returns true when the combined key equals the commonKeychain', async function () {
|
|
152
|
+
const match = await (0, keyVerification_1.eddsaUserSigningMaterialMatchesCommonKeychain)({ prv: matchingPrv, commonKeychain });
|
|
153
|
+
match.should.equal(true);
|
|
154
|
+
});
|
|
155
|
+
it('returns false for material from a different key generation', async function () {
|
|
156
|
+
const match = await (0, keyVerification_1.eddsaUserSigningMaterialMatchesCommonKeychain)({ prv: otherPrv, commonKeychain });
|
|
157
|
+
match.should.equal(false);
|
|
158
|
+
});
|
|
159
|
+
it('rejects malformed material without echoing the input', async function () {
|
|
160
|
+
await assert.rejects((0, keyVerification_1.eddsaUserSigningMaterialMatchesCommonKeychain)({ prv: 'not json', commonKeychain }), {
|
|
161
|
+
message: 'Invalid user key - could not parse signing material',
|
|
162
|
+
});
|
|
163
|
+
});
|
|
164
|
+
it('rejects inconsistent shares with a constant error instead of the raw combine failure', async function () {
|
|
165
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
166
|
+
const tampered = JSON.stringify({
|
|
167
|
+
uShare,
|
|
168
|
+
bitgoYShare,
|
|
169
|
+
backupYShare: { ...backupYShare, v: '00'.repeat(32) },
|
|
170
|
+
});
|
|
171
|
+
await assert.rejects((0, keyVerification_1.eddsaUserSigningMaterialMatchesCommonKeychain)({ prv: tampered, commonKeychain }), {
|
|
172
|
+
message: 'Invalid user key - could not combine signing material',
|
|
173
|
+
});
|
|
174
|
+
});
|
|
175
|
+
it('returns false for a wrong seed behind otherwise genuine public fields', async function () {
|
|
176
|
+
// keyCombine derives the private scalar from the seed but rebuilds the common keychain from
|
|
177
|
+
// the declared y fields, so without an explicit seed/y binding a caller who knows only the
|
|
178
|
+
// public commonKeychain could verify against a seed they do not hold
|
|
179
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
180
|
+
const forged = JSON.stringify({
|
|
181
|
+
uShare: { ...uShare, seed: 'ab'.repeat(32) },
|
|
182
|
+
bitgoYShare,
|
|
183
|
+
backupYShare,
|
|
184
|
+
});
|
|
185
|
+
const match = await (0, keyVerification_1.eddsaUserSigningMaterialMatchesCommonKeychain)({ prv: forged, commonKeychain });
|
|
186
|
+
match.should.equal(false);
|
|
187
|
+
});
|
|
188
|
+
it('rejects material that omits a VSS commitment instead of judging it a non-match', async function () {
|
|
189
|
+
// keyCombine only verifies a Y share's secret u when v is present, so material that drops
|
|
190
|
+
// v would otherwise pass combine with an arbitrary u; it cannot be verified at all and
|
|
191
|
+
// must not be reported as a clean non-match
|
|
192
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
193
|
+
const bitgoWithoutV = { ...bitgoYShare, u: 'cd'.repeat(32) };
|
|
194
|
+
delete bitgoWithoutV.v;
|
|
195
|
+
const forged = JSON.stringify({
|
|
196
|
+
uShare,
|
|
197
|
+
bitgoYShare: bitgoWithoutV,
|
|
198
|
+
backupYShare,
|
|
199
|
+
});
|
|
200
|
+
await assert.rejects((0, keyVerification_1.eddsaUserSigningMaterialMatchesCommonKeychain)({ prv: forged, commonKeychain }), {
|
|
201
|
+
message: 'Unable to verify key - signing material has no VSS commitment',
|
|
202
|
+
});
|
|
203
|
+
});
|
|
204
|
+
it('rejects otherwise-genuine material without a VSS commitment as unverifiable', async function () {
|
|
205
|
+
// shares without v may be genuine (the server did not always return vssProof), so the
|
|
206
|
+
// answer must be "cannot verify", never "not this wallet's key"
|
|
207
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
208
|
+
const bitgoWithoutV = { ...bitgoYShare };
|
|
209
|
+
delete bitgoWithoutV.v;
|
|
210
|
+
const vless = JSON.stringify({ uShare, bitgoYShare: bitgoWithoutV, backupYShare });
|
|
211
|
+
await assert.rejects((0, keyVerification_1.eddsaUserSigningMaterialMatchesCommonKeychain)({ prv: vless, commonKeychain }), {
|
|
212
|
+
message: 'Unable to verify key - signing material has no VSS commitment',
|
|
213
|
+
});
|
|
214
|
+
});
|
|
215
|
+
it('returns false when a Y share carries a mismatched secret with its commitment present', async function () {
|
|
216
|
+
const { uShare, bitgoYShare, backupYShare } = (0, keyVerification_1.parseEddsaUserSigningMaterial)(matchingPrv);
|
|
217
|
+
const forged = JSON.stringify({
|
|
218
|
+
uShare,
|
|
219
|
+
bitgoYShare: { ...bitgoYShare, u: 'cd'.repeat(32) },
|
|
220
|
+
backupYShare,
|
|
221
|
+
});
|
|
222
|
+
// a present-but-failing commitment is a combine failure, surfaced as the constant error
|
|
223
|
+
await assert.rejects((0, keyVerification_1.eddsaUserSigningMaterialMatchesCommonKeychain)({ prv: forged, commonKeychain }), {
|
|
224
|
+
message: 'Invalid user key - could not combine signing material',
|
|
225
|
+
});
|
|
226
|
+
});
|
|
227
|
+
});
|
|
228
|
+
});
|
|
229
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5VmVyaWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdGVzdC91bml0L2JpdGdvL3V0aWxzL3Rzcy9rZXlWZXJpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSwrQ0FBaUM7QUFDakMsa0JBQWdCO0FBQ2hCLHlEQUE2RDtBQUM3RCxpRkFBMkQ7QUFDM0Qsd0ZBRzREO0FBRTVELFFBQVEsQ0FBQyw0QkFBNEIsRUFBRTtJQUNyQyxJQUFJLFdBQW1CLENBQUM7SUFDeEIsSUFBSSxjQUFzQixDQUFDO0lBQzNCLElBQUksUUFBZ0IsQ0FBQztJQUNyQixJQUFJLGNBQXNCLENBQUM7SUFFM0IsTUFBTSxDQUFDLEtBQUs7UUFDVixNQUFNLE1BQU0sR0FBRyxNQUFNLGdDQUFrQixDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ3JELE1BQU0sR0FBRyxHQUFHLE1BQU0sYUFBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUUzQyxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDM0MsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdDLE1BQU0sYUFBYSxHQUFHLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUM1QyxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzVHLGNBQWMsR0FBRyxR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QSwrREFBNkMsRUFBQyxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFFLENBQUMsRUFBRTtnQkFDbEcsT0FBTyxFQUFFLCtEQUErRDthQUN6RSxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztRQUVILEVBQUUsQ0FBQyxzRkFBc0YsRUFBRSxLQUFLO1lBQzlGLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLFlBQVksRUFBRSxHQUFHLElBQUEsK0NBQTZCLEVBQUMsV0FBVyxDQUFDLENBQUM7WUFDekYsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQztnQkFDNUIsTUFBTTtnQkFDTixXQUFXLEVBQUUsRUFBRSxHQUFHLFdBQVcsRUFBRSxDQUFDLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDbkQsWUFBWTthQUNiLENBQUMsQ0FBQztZQUNILHdGQUF3RjtZQUN4RixNQUFNLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBQSwrREFBNkMsRUFBQyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLENBQUMsRUFBRTtnQkFDbkcsT0FBTyxFQUFFLHVEQUF1RDthQUNqRSxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcbmltcG9ydCAnc2hvdWxkJztcbmltcG9ydCB7IEVkMjU1MTlCaXAzMkhkVHJlZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1saWItbXBjJztcbmltcG9ydCBFZGRzYSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zcmMvYWNjb3VudC1saWIvbXBjL3Rzcyc7XG5pbXBvcnQge1xuICBlZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWxNYXRjaGVzQ29tbW9uS2V5Y2hhaW4sXG4gIHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsLFxufSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvdHNzL2tleVZlcmlmaWNhdGlvbic7XG5cbmRlc2NyaWJlKCdUU1MgRWREU0Ega2V5IHZlcmlmaWNhdGlvbicsIGZ1bmN0aW9uICgpIHtcbiAgbGV0IG1hdGNoaW5nUHJ2OiBzdHJpbmc7XG4gIGxldCBjb21tb25LZXljaGFpbjogc3RyaW5nO1xuICBsZXQgb3RoZXJQcnY6IHN0cmluZztcbiAgbGV0IGJhY2t1cFN0eWxlUHJ2OiBzdHJpbmc7XG5cbiAgYmVmb3JlKGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICBjb25zdCBoZFRyZWUgPSBhd2FpdCBFZDI1NTE5QmlwMzJIZFRyZWUuaW5pdGlhbGl6ZSgpO1xuICAgIGNvbnN0IE1QQyA9IGF3YWl0IEVkZHNhLmluaXRpYWxpemUoaGRUcmVlKTtcblxuICAgIGNvbnN0IHVzZXJLZXlTaGFyZSA9IE1QQy5rZXlTaGFyZSgxLCAyLCAzKTtcbiAgICBjb25zdCBiYWNrdXBLZXlTaGFyZSA9IE1QQy5rZXlTaGFyZSgyLCAyLCAzKTtcbiAgICBjb25zdCBiaXRnb0tleVNoYXJlID0gTVBDLmtleVNoYXJlKDMsIDIsIDMpO1xuICAgIGNvbnN0IGNvbWJpbmVkID0gTVBDLmtleUNvbWJpbmUodXNlcktleVNoYXJlLnVTaGFyZSwgW2JhY2t1cEtleVNoYXJlLnlTaGFyZXNbMV0sIGJpdGdvS2V5U2hhcmUueVNoYXJlc1sxXV0pO1xuICAgIGNvbW1vbktleWNoYWluID0gY29tYmluZWQucFNoYXJlLnkgKyBjb21iaW5lZC5wU2hhcmUuY2hhaW5jb2RlO1xuICAgIG1hdGNoaW5nUHJ2ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgdVNoYXJlOiB1c2VyS2V5U2hhcmUudVNoYXJlLFxuICAgICAgYml0Z29ZU2hhcmU6IGJpdGdvS2V5U2hhcmUueVNoYXJlc1sxXSxcbiAgICAgIGJhY2t1cFlTaGFyZTogYmFja3VwS2V5U2hhcmUueVNoYXJlc1sxXSxcbiAgICB9KTtcblxuICAgIC8vIGFuIGluZGVwZW5kZW50IGtleSBnZW5lcmF0aW9uIGZvciB0aGUgbmVnYXRpdmUgY2FzZVxuICAgIGNvbnN0IG90aGVyVXNlcktleVNoYXJlID0gTVBDLmtleVNoYXJlKDEsIDIsIDMpO1xuICAgIGNvbnN0IG90aGVyQmFja3VwS2V5U2hhcmUgPSBNUEMua2V5U2hhcmUoMiwgMiwgMyk7XG4gICAgY29uc3Qgb3RoZXJCaXRnb0tleVNoYXJlID0gTVBDLmtleVNoYXJlKDMsIDIsIDMpO1xuICAgIG90aGVyUHJ2ID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgdVNoYXJlOiBvdGhlclVzZXJLZXlTaGFyZS51U2hhcmUsXG4gICAgICBiaXRnb1lTaGFyZTogb3RoZXJCaXRnb0tleVNoYXJlLnlTaGFyZXNbMV0sXG4gICAgICBiYWNrdXBZU2hhcmU6IG90aGVyQmFja3VwS2V5U2hhcmUueVNoYXJlc1sxXSxcbiAgICB9KTtcblxuICAgIC8vIGJhY2t1cC1zdHlsZSBzaWduaW5nIG1hdGVyaWFsOiB0aGUgaG9sZGVyIGlzIHRoZSBiYWNrdXAgcGFydHkgKGk9MiksIHNvIGl0IGNhcnJpZXNcbiAgICAvLyB1c2VyWVNoYXJlIGluc3RlYWQgb2YgYmFja3VwWVNoYXJlXG4gICAgYmFja3VwU3R5bGVQcnYgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICB1U2hhcmU6IGJhY2t1cEtleVNoYXJlLnVTaGFyZSxcbiAgICAgIGJpdGdvWVNoYXJlOiBiaXRnb0tleVNoYXJlLnlTaGFyZXNbMl0sXG4gICAgICB1c2VyWVNoYXJlOiB1c2VyS2V5U2hhcmUueVNoYXJlc1syXSxcbiAgICB9KTtcbiAgfSk7XG5cbiAgZGVzY3JpYmUoJ3BhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsJywgZnVuY3Rpb24gKCkge1xuICAgIGl0KCdwYXJzZXMgd2VsbC1mb3JtZWQgdXNlciBzaWduaW5nIG1hdGVyaWFsJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgcGFyc2VkID0gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwobWF0Y2hpbmdQcnYpO1xuICAgICAgcGFyc2VkLnNob3VsZC5oYXZlLnByb3BlcnR5KCd1U2hhcmUnKTtcbiAgICAgIHBhcnNlZC5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnYml0Z29ZU2hhcmUnKTtcbiAgICAgIHBhcnNlZC5zaG91bGQuaGF2ZS5wcm9wZXJ0eSgnYmFja3VwWVNoYXJlJyk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVqZWN0cyBpbnB1dCB0aGF0IGlzIG5vdCB2YWxpZCBKU09OIHdpdGhvdXQgZWNob2luZyB0aGUgaW5wdXQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCBwcnYgPSAnbm90IGpzb24nO1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgKCkgPT4gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwocHJ2KSxcbiAgICAgICAgKGVycjogdW5rbm93bikgPT4ge1xuICAgICAgICAgIGFzc2VydC5vayhlcnIgaW5zdGFuY2VvZiBFcnJvcik7XG4gICAgICAgICAgYXNzZXJ0Lm9rKCFlcnIubWVzc2FnZS5pbmNsdWRlcyhwcnYpLCAnZXJyb3IgbWVzc2FnZSBtdXN0IG5vdCBlY2hvIHRoZSBpbnB1dCcpO1xuICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICB9XG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlamVjdHMgaW5wdXQgdGhhdCBwYXJzZXMgdG8gYSBub24tb2JqZWN0JywgZnVuY3Rpb24gKCkge1xuICAgICAgYXNzZXJ0LnRocm93cygoKSA9PiBwYXJzZUVkZHNhVXNlclNpZ25pbmdNYXRlcmlhbCgnMTIzJyksIC9zaWduaW5nIG1hdGVyaWFsIGlzIG5vdCBhbiBvYmplY3QvKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZWplY3RzIG1hdGVyaWFsIG1pc3NpbmcgYW55IG9mIHRoZSB0aHJlZSByZXF1aXJlZCBzaGFyZXMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCB7IHVTaGFyZSwgYml0Z29ZU2hhcmUsIGJhY2t1cFlTaGFyZSB9ID0gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwobWF0Y2hpbmdQcnYpO1xuICAgICAgYXNzZXJ0LnRocm93cyhcbiAgICAgICAgKCkgPT4gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwoSlNPTi5zdHJpbmdpZnkoeyBiaXRnb1lTaGFyZSwgYmFja3VwWVNoYXJlIH0pKSxcbiAgICAgICAgL21pc3NpbmcgdVNoYXJlL1xuICAgICAgKTtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsKEpTT04uc3RyaW5naWZ5KHsgdVNoYXJlLCBiYWNrdXBZU2hhcmUgfSkpLFxuICAgICAgICAvbWlzc2luZyBiaXRnb1lTaGFyZS9cbiAgICAgICk7XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICAoKSA9PiBwYXJzZUVkZHNhVXNlclNpZ25pbmdNYXRlcmlhbChKU09OLnN0cmluZ2lmeSh7IHVTaGFyZSwgYml0Z29ZU2hhcmUgfSkpLFxuICAgICAgICAvbWlzc2luZyBiYWNrdXBZU2hhcmUvXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlamVjdHMgYmFja3VwLXN0eWxlIG1hdGVyaWFsOyBvbmx5IHVzZXIgc2lnbmluZyBtYXRlcmlhbCBpcyBhY2NlcHRlZCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGFzc2VydC50aHJvd3MoKCkgPT4gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwoYmFja3VwU3R5bGVQcnYpLCAvbWlzc2luZyBiYWNrdXBZU2hhcmUvKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZWplY3RzIHNoYXJlcyB0aGF0IGFyZSBub3Qgc2hhcmUtc2hhcGVkIG9iamVjdHMnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCB7IHVTaGFyZSwgYml0Z29ZU2hhcmUsIGJhY2t1cFlTaGFyZSB9ID0gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwobWF0Y2hpbmdQcnYpO1xuICAgICAgLy8gYXJyYXkgc2hhcmVzIGFyZSBtYWxmb3JtZWQ7IG51bGwgc2hhcmVzIGNvdW50IGFzIG1pc3NpbmdcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsKEpTT04uc3RyaW5naWZ5KHsgdVNoYXJlLCBiaXRnb1lTaGFyZTogW10sIGJhY2t1cFlTaGFyZSB9KSksXG4gICAgICAgIC9iaXRnb1lTaGFyZSBpcyBub3QgYSB2YWxpZCBzaGFyZS9cbiAgICAgICk7XG4gICAgICBhc3NlcnQudGhyb3dzKFxuICAgICAgICAoKSA9PiBwYXJzZUVkZHNhVXNlclNpZ25pbmdNYXRlcmlhbChKU09OLnN0cmluZ2lmeSh7IHVTaGFyZSwgYml0Z29ZU2hhcmU6IG51bGwsIGJhY2t1cFlTaGFyZSB9KSksXG4gICAgICAgIC9taXNzaW5nIGJpdGdvWVNoYXJlL1xuICAgICAgKTtcbiAgICAgIGFzc2VydC50aHJvd3MoXG4gICAgICAgICgpID0+IHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsKEpTT04uc3RyaW5naWZ5KHsgdVNoYXJlOiB7fSwgYml0Z29ZU2hhcmUsIGJhY2t1cFlTaGFyZSB9KSksXG4gICAgICAgIC91U2hhcmUgaXMgbm90IGEgdmFsaWQgc2hhcmUvXG4gICAgICApO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlamVjdHMgc2hhcmVzIHdpdGggbWFsZm9ybWVkIGZpZWxkcycsIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IG1hbGZvcm1lZCA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgdVNoYXJlOiB7IGk6IDEsIHQ6IDIsIG46IDMsIHk6ICdub3QtaGV4Jywgc2VlZDogJ2FiJywgY2hhaW5jb2RlOiAnY2QnIH0sXG4gICAgICAgIGJpdGdvWVNoYXJlOiB7IGk6IDEsIGo6IDMsIHk6ICdhYicsIHU6ICdjZCcsIGNoYWluY29kZTogJ2VmJywgdjogJzAxJyB9LFxuICAgICAgICBiYWNrdXBZU2hhcmU6IHsgaTogMSwgajogMiwgeTogJ2FiJywgdTogJ2NkJywgY2hhaW5jb2RlOiAnZWYnIH0sXG4gICAgICB9KTtcbiAgICAgIGFzc2VydC50aHJvd3MoKCkgPT4gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwobWFsZm9ybWVkKSwgL3VTaGFyZSBpcyBub3QgYSB2YWxpZCBzaGFyZS8pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlamVjdHMgaGV4IGZpZWxkcyBvZiB0aGUgd3JvbmcgbGVuZ3RoJywgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgeyB1U2hhcmUsIGJpdGdvWVNoYXJlLCBiYWNrdXBZU2hhcmUgfSA9IHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsKG1hdGNoaW5nUHJ2KTtcbiAgICAgIGNvbnN0IHRydW5jYXRlZENoYWluY29kZSA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgdVNoYXJlOiB7IC4uLnVTaGFyZSwgY2hhaW5jb2RlOiB1U2hhcmUuY2hhaW5jb2RlLnNsaWNlKDAsIDYyKSB9LFxuICAgICAgICBiaXRnb1lTaGFyZSxcbiAgICAgICAgYmFja3VwWVNoYXJlLFxuICAgICAgfSk7XG4gICAgICBhc3NlcnQudGhyb3dzKCgpID0+IHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsKHRydW5jYXRlZENoYWluY29kZSksIC91U2hhcmUgaXMgbm90IGEgdmFsaWQgc2hhcmUvKTtcbiAgICB9KTtcblxuICAgIGl0KCdyZWplY3RzIGEgbm9uLWhleCB2IGZpZWxkIG9uIGEgWSBzaGFyZSB3aGVuIHByZXNlbnQnLCBmdW5jdGlvbiAoKSB7XG4gICAgICBjb25zdCB7IHVTaGFyZSwgYml0Z29ZU2hhcmUsIGJhY2t1cFlTaGFyZSB9ID0gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwobWF0Y2hpbmdQcnYpO1xuICAgICAgY29uc3QgdGFtcGVyZWQgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIHVTaGFyZSxcbiAgICAgICAgYmFja3VwWVNoYXJlLFxuICAgICAgICBiaXRnb1lTaGFyZTogeyAuLi5iaXRnb1lTaGFyZSwgdjogJ3p6JyB9LFxuICAgICAgfSk7XG4gICAgICBhc3NlcnQudGhyb3dzKCgpID0+IHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsKHRhbXBlcmVkKSwgL2JpdGdvWVNoYXJlIGlzIG5vdCBhIHZhbGlkIHNoYXJlLyk7XG4gICAgfSk7XG5cbiAgICBpdCgnYWNjZXB0cyBhIFkgc2hhcmUgd2l0aG91dCB0aGUgb3B0aW9uYWwgdiBmaWVsZCcsIGZ1bmN0aW9uICgpIHtcbiAgICAgIC8vIHYgaXMgb3B0aW9uYWwgb24gdGhlIFlTaGFyZSB0eXBlLCBzbyBwYXJzaW5nIG11c3QgYWxsb3cgaXQ7IHZlcmlmaWNhdGlvbiBzZXBhcmF0ZWx5XG4gICAgICAvLyByZWplY3RzIG1hdGVyaWFsIHdpdGhvdXQgaXQgd2l0aCBhIGRpc3RpbmN0IHVuYWJsZS10by12ZXJpZnkgZXJyb3IgKHNlZSBiZWxvdylcbiAgICAgIGNvbnN0IHsgdVNoYXJlLCBiaXRnb1lTaGFyZSwgYmFja3VwWVNoYXJlIH0gPSBwYXJzZUVkZHNhVXNlclNpZ25pbmdNYXRlcmlhbChtYXRjaGluZ1Bydik7XG4gICAgICBjb25zdCB3aXRob3V0ViA9IHsgLi4uYml0Z29ZU2hhcmUgfTtcbiAgICAgIGRlbGV0ZSB3aXRob3V0Vi52O1xuICAgICAgY29uc3Qgdmxlc3NQcnYgPSBKU09OLnN0cmluZ2lmeSh7IHVTaGFyZSwgYml0Z29ZU2hhcmU6IHdpdGhvdXRWLCBiYWNrdXBZU2hhcmUgfSk7XG4gICAgICBjb25zdCBwYXJzZWQgPSBwYXJzZUVkZHNhVXNlclNpZ25pbmdNYXRlcmlhbCh2bGVzc1Bydik7XG4gICAgICBwYXJzZWQuYml0Z29ZU2hhcmUuc2hvdWxkLm5vdC5oYXZlLnByb3BlcnR5KCd2Jyk7XG4gICAgfSk7XG4gIH0pO1xuXG4gIGRlc2NyaWJlKCdlZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWxNYXRjaGVzQ29tbW9uS2V5Y2hhaW4nLCBmdW5jdGlvbiAoKSB7XG4gICAgaXQoJ3JldHVybnMgdHJ1ZSB3aGVuIHRoZSBjb21iaW5lZCBrZXkgZXF1YWxzIHRoZSBjb21tb25LZXljaGFpbicsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IG1hdGNoID0gYXdhaXQgZWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsTWF0Y2hlc0NvbW1vbktleWNoYWluKHsgcHJ2OiBtYXRjaGluZ1BydiwgY29tbW9uS2V5Y2hhaW4gfSk7XG4gICAgICBtYXRjaC5zaG91bGQuZXF1YWwodHJ1ZSk7XG4gICAgfSk7XG5cbiAgICBpdCgncmV0dXJucyBmYWxzZSBmb3IgbWF0ZXJpYWwgZnJvbSBhIGRpZmZlcmVudCBrZXkgZ2VuZXJhdGlvbicsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIGNvbnN0IG1hdGNoID0gYXdhaXQgZWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsTWF0Y2hlc0NvbW1vbktleWNoYWluKHsgcHJ2OiBvdGhlclBydiwgY29tbW9uS2V5Y2hhaW4gfSk7XG4gICAgICBtYXRjaC5zaG91bGQuZXF1YWwoZmFsc2UpO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JlamVjdHMgbWFsZm9ybWVkIG1hdGVyaWFsIHdpdGhvdXQgZWNob2luZyB0aGUgaW5wdXQnLCBhc3luYyBmdW5jdGlvbiAoKSB7XG4gICAgICBhd2FpdCBhc3NlcnQucmVqZWN0cyhlZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWxNYXRjaGVzQ29tbW9uS2V5Y2hhaW4oeyBwcnY6ICdub3QganNvbicsIGNvbW1vbktleWNoYWluIH0pLCB7XG4gICAgICAgIG1lc3NhZ2U6ICdJbnZhbGlkIHVzZXIga2V5IC0gY291bGQgbm90IHBhcnNlIHNpZ25pbmcgbWF0ZXJpYWwnLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVqZWN0cyBpbmNvbnNpc3RlbnQgc2hhcmVzIHdpdGggYSBjb25zdGFudCBlcnJvciBpbnN0ZWFkIG9mIHRoZSByYXcgY29tYmluZSBmYWlsdXJlJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgeyB1U2hhcmUsIGJpdGdvWVNoYXJlLCBiYWNrdXBZU2hhcmUgfSA9IHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsKG1hdGNoaW5nUHJ2KTtcbiAgICAgIGNvbnN0IHRhbXBlcmVkID0gSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICB1U2hhcmUsXG4gICAgICAgIGJpdGdvWVNoYXJlLFxuICAgICAgICBiYWNrdXBZU2hhcmU6IHsgLi4uYmFja3VwWVNoYXJlLCB2OiAnMDAnLnJlcGVhdCgzMikgfSxcbiAgICAgIH0pO1xuICAgICAgYXdhaXQgYXNzZXJ0LnJlamVjdHMoZWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsTWF0Y2hlc0NvbW1vbktleWNoYWluKHsgcHJ2OiB0YW1wZXJlZCwgY29tbW9uS2V5Y2hhaW4gfSksIHtcbiAgICAgICAgbWVzc2FnZTogJ0ludmFsaWQgdXNlciBrZXkgLSBjb3VsZCBub3QgY29tYmluZSBzaWduaW5nIG1hdGVyaWFsJyxcbiAgICAgIH0pO1xuICAgIH0pO1xuXG4gICAgaXQoJ3JldHVybnMgZmFsc2UgZm9yIGEgd3Jvbmcgc2VlZCBiZWhpbmQgb3RoZXJ3aXNlIGdlbnVpbmUgcHVibGljIGZpZWxkcycsIGFzeW5jIGZ1bmN0aW9uICgpIHtcbiAgICAgIC8vIGtleUNvbWJpbmUgZGVyaXZlcyB0aGUgcHJpdmF0ZSBzY2FsYXIgZnJvbSB0aGUgc2VlZCBidXQgcmVidWlsZHMgdGhlIGNvbW1vbiBrZXljaGFpbiBmcm9tXG4gICAgICAvLyB0aGUgZGVjbGFyZWQgeSBmaWVsZHMsIHNvIHdpdGhvdXQgYW4gZXhwbGljaXQgc2VlZC95IGJpbmRpbmcgYSBjYWxsZXIgd2hvIGtub3dzIG9ubHkgdGhlXG4gICAgICAvLyBwdWJsaWMgY29tbW9uS2V5Y2hhaW4gY291bGQgdmVyaWZ5IGFnYWluc3QgYSBzZWVkIHRoZXkgZG8gbm90IGhvbGRcbiAgICAgIGNvbnN0IHsgdVNoYXJlLCBiaXRnb1lTaGFyZSwgYmFja3VwWVNoYXJlIH0gPSBwYXJzZUVkZHNhVXNlclNpZ25pbmdNYXRlcmlhbChtYXRjaGluZ1Bydik7XG4gICAgICBjb25zdCBmb3JnZWQgPSBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgIHVTaGFyZTogeyAuLi51U2hhcmUsIHNlZWQ6ICdhYicucmVwZWF0KDMyKSB9LFxuICAgICAgICBiaXRnb1lTaGFyZSxcbiAgICAgICAgYmFja3VwWVNoYXJlLFxuICAgICAgfSk7XG4gICAgICBjb25zdCBtYXRjaCA9IGF3YWl0IGVkZHNhVXNlclNpZ25pbmdNYXRlcmlhbE1hdGNoZXNDb21tb25LZXljaGFpbih7IHBydjogZm9yZ2VkLCBjb21tb25LZXljaGFpbiB9KTtcbiAgICAgIG1hdGNoLnNob3VsZC5lcXVhbChmYWxzZSk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVqZWN0cyBtYXRlcmlhbCB0aGF0IG9taXRzIGEgVlNTIGNvbW1pdG1lbnQgaW5zdGVhZCBvZiBqdWRnaW5nIGl0IGEgbm9uLW1hdGNoJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgLy8ga2V5Q29tYmluZSBvbmx5IHZlcmlmaWVzIGEgWSBzaGFyZSdzIHNlY3JldCB1IHdoZW4gdiBpcyBwcmVzZW50LCBzbyBtYXRlcmlhbCB0aGF0IGRyb3BzXG4gICAgICAvLyB2IHdvdWxkIG90aGVyd2lzZSBwYXNzIGNvbWJpbmUgd2l0aCBhbiBhcmJpdHJhcnkgdTsgaXQgY2Fubm90IGJlIHZlcmlmaWVkIGF0IGFsbCBhbmRcbiAgICAgIC8vIG11c3Qgbm90IGJlIHJlcG9ydGVkIGFzIGEgY2xlYW4gbm9uLW1hdGNoXG4gICAgICBjb25zdCB7IHVTaGFyZSwgYml0Z29ZU2hhcmUsIGJhY2t1cFlTaGFyZSB9ID0gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwobWF0Y2hpbmdQcnYpO1xuICAgICAgY29uc3QgYml0Z29XaXRob3V0ViA9IHsgLi4uYml0Z29ZU2hhcmUsIHU6ICdjZCcucmVwZWF0KDMyKSB9O1xuICAgICAgZGVsZXRlIGJpdGdvV2l0aG91dFYudjtcbiAgICAgIGNvbnN0IGZvcmdlZCA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgdVNoYXJlLFxuICAgICAgICBiaXRnb1lTaGFyZTogYml0Z29XaXRob3V0VixcbiAgICAgICAgYmFja3VwWVNoYXJlLFxuICAgICAgfSk7XG4gICAgICBhd2FpdCBhc3NlcnQucmVqZWN0cyhlZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWxNYXRjaGVzQ29tbW9uS2V5Y2hhaW4oeyBwcnY6IGZvcmdlZCwgY29tbW9uS2V5Y2hhaW4gfSksIHtcbiAgICAgICAgbWVzc2FnZTogJ1VuYWJsZSB0byB2ZXJpZnkga2V5IC0gc2lnbmluZyBtYXRlcmlhbCBoYXMgbm8gVlNTIGNvbW1pdG1lbnQnLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgncmVqZWN0cyBvdGhlcndpc2UtZ2VudWluZSBtYXRlcmlhbCB3aXRob3V0IGEgVlNTIGNvbW1pdG1lbnQgYXMgdW52ZXJpZmlhYmxlJywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgLy8gc2hhcmVzIHdpdGhvdXQgdiBtYXkgYmUgZ2VudWluZSAodGhlIHNlcnZlciBkaWQgbm90IGFsd2F5cyByZXR1cm4gdnNzUHJvb2YpLCBzbyB0aGVcbiAgICAgIC8vIGFuc3dlciBtdXN0IGJlIFwiY2Fubm90IHZlcmlmeVwiLCBuZXZlciBcIm5vdCB0aGlzIHdhbGxldCdzIGtleVwiXG4gICAgICBjb25zdCB7IHVTaGFyZSwgYml0Z29ZU2hhcmUsIGJhY2t1cFlTaGFyZSB9ID0gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwobWF0Y2hpbmdQcnYpO1xuICAgICAgY29uc3QgYml0Z29XaXRob3V0ViA9IHsgLi4uYml0Z29ZU2hhcmUgfTtcbiAgICAgIGRlbGV0ZSBiaXRnb1dpdGhvdXRWLnY7XG4gICAgICBjb25zdCB2bGVzcyA9IEpTT04uc3RyaW5naWZ5KHsgdVNoYXJlLCBiaXRnb1lTaGFyZTogYml0Z29XaXRob3V0ViwgYmFja3VwWVNoYXJlIH0pO1xuICAgICAgYXdhaXQgYXNzZXJ0LnJlamVjdHMoZWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsTWF0Y2hlc0NvbW1vbktleWNoYWluKHsgcHJ2OiB2bGVzcywgY29tbW9uS2V5Y2hhaW4gfSksIHtcbiAgICAgICAgbWVzc2FnZTogJ1VuYWJsZSB0byB2ZXJpZnkga2V5IC0gc2lnbmluZyBtYXRlcmlhbCBoYXMgbm8gVlNTIGNvbW1pdG1lbnQnLFxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICBpdCgncmV0dXJucyBmYWxzZSB3aGVuIGEgWSBzaGFyZSBjYXJyaWVzIGEgbWlzbWF0Y2hlZCBzZWNyZXQgd2l0aCBpdHMgY29tbWl0bWVudCBwcmVzZW50JywgYXN5bmMgZnVuY3Rpb24gKCkge1xuICAgICAgY29uc3QgeyB1U2hhcmUsIGJpdGdvWVNoYXJlLCBiYWNrdXBZU2hhcmUgfSA9IHBhcnNlRWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsKG1hdGNoaW5nUHJ2KTtcbiAgICAgIGNvbnN0IGZvcmdlZCA9IEpTT04uc3RyaW5naWZ5KHtcbiAgICAgICAgdVNoYXJlLFxuICAgICAgICBiaXRnb1lTaGFyZTogeyAuLi5iaXRnb1lTaGFyZSwgdTogJ2NkJy5yZXBlYXQoMzIpIH0sXG4gICAgICAgIGJhY2t1cFlTaGFyZSxcbiAgICAgIH0pO1xuICAgICAgLy8gYSBwcmVzZW50LWJ1dC1mYWlsaW5nIGNvbW1pdG1lbnQgaXMgYSBjb21iaW5lIGZhaWx1cmUsIHN1cmZhY2VkIGFzIHRoZSBjb25zdGFudCBlcnJvclxuICAgICAgYXdhaXQgYXNzZXJ0LnJlamVjdHMoZWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsTWF0Y2hlc0NvbW1vbktleWNoYWluKHsgcHJ2OiBmb3JnZWQsIGNvbW1vbktleWNoYWluIH0pLCB7XG4gICAgICAgIG1lc3NhZ2U6ICdJbnZhbGlkIHVzZXIga2V5IC0gY291bGQgbm90IGNvbWJpbmUgc2lnbmluZyBtYXRlcmlhbCcsXG4gICAgICB9KTtcbiAgICB9KTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preHashedSignable.d.ts","sourceRoot":"","sources":["../../../../../../test/unit/bitgo/utils/tss/preHashedSignable.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
const assert = __importStar(require("assert"));
|
|
37
|
+
const preHashedSignable_1 = require("../../../../../src/bitgo/utils/tss/preHashedSignable");
|
|
38
|
+
describe('preHashedSignable', function () {
|
|
39
|
+
it('isAvalancheAtomicTx detects codec prefix 0000', function () {
|
|
40
|
+
assert.strictEqual((0, preHashedSignable_1.isAvalancheAtomicTx)({
|
|
41
|
+
serializedTxHex: '0000000000010000007278db5c',
|
|
42
|
+
signableHex: 'abc',
|
|
43
|
+
}), true);
|
|
44
|
+
assert.strictEqual((0, preHashedSignable_1.isAvalancheAtomicTx)({
|
|
45
|
+
serializedTxHex: 'f86c808504a817c800825208',
|
|
46
|
+
signableHex: 'f86c808504a817c800825208',
|
|
47
|
+
}), false);
|
|
48
|
+
});
|
|
49
|
+
it('isCoinWithPreHashedSignable type guard', function () {
|
|
50
|
+
assert.strictEqual((0, preHashedSignable_1.isCoinWithPreHashedSignable)({ isSignablePreHashed: () => true }), true);
|
|
51
|
+
assert.strictEqual((0, preHashedSignable_1.isCoinWithPreHashedSignable)({}), false);
|
|
52
|
+
assert.strictEqual((0, preHashedSignable_1.isCoinWithPreHashedSignable)(null), false);
|
|
53
|
+
});
|
|
54
|
+
});
|
|
55
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlSGFzaGVkU2lnbmFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90ZXN0L3VuaXQvYml0Z28vdXRpbHMvdHNzL3ByZUhhc2hlZFNpZ25hYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQWlDO0FBQ2pDLDRGQUF3SDtBQUV4SCxRQUFRLENBQUMsbUJBQW1CLEVBQUU7SUFDNUIsRUFBRSxDQUFDLCtDQUErQyxFQUFFO1FBQ2xELE1BQU0sQ0FBQyxXQUFXLENBQ2hCLElBQUEsdUNBQW1CLEVBQUM7WUFDbEIsZUFBZSxFQUFFLDRCQUE0QjtZQUM3QyxXQUFXLEVBQUUsS0FBSztTQUNuQixDQUFDLEVBQ0YsSUFBSSxDQUNMLENBQUM7UUFDRixNQUFNLENBQUMsV0FBVyxDQUNoQixJQUFBLHVDQUFtQixFQUFDO1lBQ2xCLGVBQWUsRUFBRSwwQkFBMEI7WUFDM0MsV0FBVyxFQUFFLDBCQUEwQjtTQUN4QyxDQUFDLEVBQ0YsS0FBSyxDQUNOLENBQUM7SUFDSixDQUFDLENBQUMsQ0FBQztJQUVILEVBQUUsQ0FBQyx3Q0FBd0MsRUFBRTtRQUMzQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUEsK0NBQTJCLEVBQUMsRUFBRSxtQkFBbUIsRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzNGLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBQSwrQ0FBMkIsRUFBQyxFQUFFLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUMzRCxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUEsK0NBQTJCLEVBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDL0QsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgaXNBdmFsYW5jaGVBdG9taWNUeCwgaXNDb2luV2l0aFByZUhhc2hlZFNpZ25hYmxlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vc3JjL2JpdGdvL3V0aWxzL3Rzcy9wcmVIYXNoZWRTaWduYWJsZSc7XG5cbmRlc2NyaWJlKCdwcmVIYXNoZWRTaWduYWJsZScsIGZ1bmN0aW9uICgpIHtcbiAgaXQoJ2lzQXZhbGFuY2hlQXRvbWljVHggZGV0ZWN0cyBjb2RlYyBwcmVmaXggMDAwMCcsIGZ1bmN0aW9uICgpIHtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoXG4gICAgICBpc0F2YWxhbmNoZUF0b21pY1R4KHtcbiAgICAgICAgc2VyaWFsaXplZFR4SGV4OiAnMDAwMDAwMDAwMDAxMDAwMDAwNzI3OGRiNWMnLFxuICAgICAgICBzaWduYWJsZUhleDogJ2FiYycsXG4gICAgICB9KSxcbiAgICAgIHRydWVcbiAgICApO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChcbiAgICAgIGlzQXZhbGFuY2hlQXRvbWljVHgoe1xuICAgICAgICBzZXJpYWxpemVkVHhIZXg6ICdmODZjODA4NTA0YTgxN2M4MDA4MjUyMDgnLFxuICAgICAgICBzaWduYWJsZUhleDogJ2Y4NmM4MDg1MDRhODE3YzgwMDgyNTIwOCcsXG4gICAgICB9KSxcbiAgICAgIGZhbHNlXG4gICAgKTtcbiAgfSk7XG5cbiAgaXQoJ2lzQ29pbldpdGhQcmVIYXNoZWRTaWduYWJsZSB0eXBlIGd1YXJkJywgZnVuY3Rpb24gKCkge1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChpc0NvaW5XaXRoUHJlSGFzaGVkU2lnbmFibGUoeyBpc1NpZ25hYmxlUHJlSGFzaGVkOiAoKSA9PiB0cnVlIH0pLCB0cnVlKTtcbiAgICBhc3NlcnQuc3RyaWN0RXF1YWwoaXNDb2luV2l0aFByZUhhc2hlZFNpZ25hYmxlKHt9KSwgZmFsc2UpO1xuICAgIGFzc2VydC5zdHJpY3RFcXVhbChpc0NvaW5XaXRoUHJlSGFzaGVkU2lnbmFibGUobnVsbCksIGZhbHNlKTtcbiAgfSk7XG59KTtcbiJdfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recipientUtils.d.ts","sourceRoot":"","sources":["../../../../../../test/unit/bitgo/utils/tss/recipientUtils.ts"],"names":[],"mappings":""}
|