@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,192 @@
|
|
|
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
|
+
exports.parseEddsaUserSigningMaterial = parseEddsaUserSigningMaterial;
|
|
40
|
+
exports.eddsaUserSigningMaterialMatchesCommonKeychain = eddsaUserSigningMaterialMatchesCommonKeychain;
|
|
41
|
+
/**
|
|
42
|
+
* @prettier
|
|
43
|
+
*/
|
|
44
|
+
const t = __importStar(require("io-ts"));
|
|
45
|
+
const tss_1 = __importDefault(require("../../../account-lib/mpc/tss"));
|
|
46
|
+
const HEX_32_BYTES = /^[0-9a-f]{64}$/i;
|
|
47
|
+
/** 32-byte hex string; every hex field of genuine MPCv1 signing material is fixed-width 32 bytes. */
|
|
48
|
+
const Hex32Bytes = new t.Type('Hex32Bytes', (u) => typeof u === 'string' && HEX_32_BYTES.test(u), (u, c) => (typeof u === 'string' && HEX_32_BYTES.test(u) ? t.success(u) : t.failure(u, c)), t.identity);
|
|
49
|
+
const UShareCodec = t.type({
|
|
50
|
+
i: t.number,
|
|
51
|
+
t: t.number,
|
|
52
|
+
n: t.number,
|
|
53
|
+
y: Hex32Bytes,
|
|
54
|
+
seed: Hex32Bytes,
|
|
55
|
+
chaincode: Hex32Bytes,
|
|
56
|
+
});
|
|
57
|
+
/**
|
|
58
|
+
* `v` is the optional VSS commitment: absent on shares created without verifiable secret sharing.
|
|
59
|
+
* It is declared through `t.partial` rather than a union with `undefined` so that decoding an
|
|
60
|
+
* absent `v` does not materialize it as an own property on the share handed to `keyCombine`.
|
|
61
|
+
*/
|
|
62
|
+
const YShareCodec = t.intersection([
|
|
63
|
+
t.type({
|
|
64
|
+
i: t.number,
|
|
65
|
+
j: t.number,
|
|
66
|
+
y: Hex32Bytes,
|
|
67
|
+
u: Hex32Bytes,
|
|
68
|
+
chaincode: Hex32Bytes,
|
|
69
|
+
}),
|
|
70
|
+
t.partial({ v: Hex32Bytes }),
|
|
71
|
+
]);
|
|
72
|
+
const UserSigningMaterialCodec = t.type({
|
|
73
|
+
uShare: UShareCodec,
|
|
74
|
+
bitgoYShare: YShareCodec,
|
|
75
|
+
backupYShare: YShareCodec,
|
|
76
|
+
});
|
|
77
|
+
/**
|
|
78
|
+
* Maps a decode failure to a constant message. Never interpolates `error.value`: the input is
|
|
79
|
+
* private key material. This is also why the codecs call `t.failure` without a message and why
|
|
80
|
+
* the `validationErrors` reporter in `utils/decode.ts` is not used — both embed the failing value.
|
|
81
|
+
*/
|
|
82
|
+
function toInvalidKeyMessage(errors) {
|
|
83
|
+
const [error] = errors;
|
|
84
|
+
// the head of the context is the root codec itself, so the remaining keys are the field path.
|
|
85
|
+
// purely numeric keys are intersection/union member indices rather than field names.
|
|
86
|
+
const segments = error.context
|
|
87
|
+
.slice(1)
|
|
88
|
+
.map((entry) => entry.key)
|
|
89
|
+
.filter((key) => !/^\d+$/.test(key));
|
|
90
|
+
if (segments.length === 0) {
|
|
91
|
+
return 'Invalid user key - signing material is not an object';
|
|
92
|
+
}
|
|
93
|
+
if (segments.length === 1 && (error.value === undefined || error.value === null)) {
|
|
94
|
+
return `Invalid user key - missing ${segments[0]}`;
|
|
95
|
+
}
|
|
96
|
+
return `Invalid user key - ${segments[0]} is not a valid share`;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Parses the user TSS EdDSA signing material that a client passes as `prv` when signing,
|
|
100
|
+
* and rejects anything that does not decode as user signing material.
|
|
101
|
+
*
|
|
102
|
+
* Decoding is a shape check only, but it keeps malformed input away from the combine routine,
|
|
103
|
+
* which throws raw, input-interpolating errors for malformed shares.
|
|
104
|
+
*
|
|
105
|
+
* The input is private key material, so no error message may interpolate any part of it.
|
|
106
|
+
* In particular, JSON.parse errors on Node >= 20 include the raw input in their message,
|
|
107
|
+
* which is why parse failures are rethrown with a constant message.
|
|
108
|
+
*
|
|
109
|
+
* @param prv - stringified user signing material (`uShare`, `bitgoYShare`, `backupYShare`)
|
|
110
|
+
*/
|
|
111
|
+
function parseEddsaUserSigningMaterial(prv) {
|
|
112
|
+
let parsed;
|
|
113
|
+
try {
|
|
114
|
+
parsed = JSON.parse(prv);
|
|
115
|
+
}
|
|
116
|
+
catch (e) {
|
|
117
|
+
throw new Error('Invalid user key - could not parse signing material');
|
|
118
|
+
}
|
|
119
|
+
const decoded = UserSigningMaterialCodec.decode(parsed);
|
|
120
|
+
if (decoded._tag === 'Left') {
|
|
121
|
+
throw new Error(toInvalidKeyMessage(decoded.left));
|
|
122
|
+
}
|
|
123
|
+
return decoded.right;
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Checks that `uShare.y` is the public point actually derived from `uShare.seed`.
|
|
127
|
+
*
|
|
128
|
+
* `keyCombine` derives the private scalar from the seed but reconstructs the common keychain from
|
|
129
|
+
* the declared `y` fields, so it never compares the two. Without this check a caller who knows
|
|
130
|
+
* only the wallet's public commonKeychain can submit genuine public fields alongside a seed they
|
|
131
|
+
* do not own and still verify. Re-running `keyShare` with the share's own seed and chaincode
|
|
132
|
+
* reproduces the derivation and yields the `y` the seed really commits to.
|
|
133
|
+
*/
|
|
134
|
+
function uShareSeedMatchesY(MPC, uShare) {
|
|
135
|
+
const seedchain = Buffer.concat([Buffer.from(uShare.seed, 'hex'), Buffer.from(uShare.chaincode, 'hex')]);
|
|
136
|
+
let derived;
|
|
137
|
+
try {
|
|
138
|
+
derived = MPC.keyShare(uShare.i, uShare.t, uShare.n, seedchain).uShare;
|
|
139
|
+
}
|
|
140
|
+
catch (e) {
|
|
141
|
+
// keyShare rejects an out-of-range index or threshold, which makes the share unusable
|
|
142
|
+
return false;
|
|
143
|
+
}
|
|
144
|
+
return derived.y === uShare.y;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Verifies that user TSS EdDSA signing material (`prv`) recombines to a given commonKeychain.
|
|
148
|
+
*
|
|
149
|
+
* Recombines the user's share with the BitGo and backup Y shares — the same computation the
|
|
150
|
+
* SDK performs when creating the user keychain or signing — and compares the result against
|
|
151
|
+
* the wallet's commonKeychain. Returns false rather than throwing when the keys do not match.
|
|
152
|
+
* Shares that pass the shape check but are cryptographically inconsistent are rejected with
|
|
153
|
+
* a constant message: the combine routine throws raw errors, some of which interpolate
|
|
154
|
+
* submitter-controlled fields, which must not surface through the API.
|
|
155
|
+
*
|
|
156
|
+
* Recombination alone is not proof of possession, so two further checks run first. The seed is
|
|
157
|
+
* bound to `uShare.y`, and the Y shares must carry their VSS commitment `v` — `keyCombine`
|
|
158
|
+
* verifies a Y share's secret `u` only when `v` is present, so material without `v` cannot be
|
|
159
|
+
* verified at all and throws a distinct error rather than being judged a non-match. Genuine
|
|
160
|
+
* shares produced by `keyShare` always carry `v`.
|
|
161
|
+
*
|
|
162
|
+
* A true result is a consistency check for a caller inspecting its own material, not proof of
|
|
163
|
+
* possession, and must never be used as an authorization signal: a caller who knows only the
|
|
164
|
+
* wallet's public commonKeychain can construct material that passes — an `uShare` whose seed
|
|
165
|
+
* matches its `y`, plus Y shares with a chosen secret `u` and the `v` solved from it, whose
|
|
166
|
+
* `y` values sum to the common key.
|
|
167
|
+
*
|
|
168
|
+
* @param params.prv - stringified user signing material, as passed as `prv` when signing
|
|
169
|
+
* @param params.commonKeychain - the wallet's user keychain commonKeychain
|
|
170
|
+
*/
|
|
171
|
+
async function eddsaUserSigningMaterialMatchesCommonKeychain(params) {
|
|
172
|
+
const signingMaterial = parseEddsaUserSigningMaterial(params.prv);
|
|
173
|
+
const MPC = await tss_1.default.initialize();
|
|
174
|
+
if (!uShareSeedMatchesY(MPC, signingMaterial.uShare)) {
|
|
175
|
+
return false;
|
|
176
|
+
}
|
|
177
|
+
// keyCombine verifies a Y share's secret `u` against its commitment only when `v` is present,
|
|
178
|
+
// so material without `v` cannot be verified at all; reject it distinctly instead of judging
|
|
179
|
+
// it a non-match, which would misreport genuine material that lacks the commitment
|
|
180
|
+
if (signingMaterial.bitgoYShare.v === undefined || signingMaterial.backupYShare.v === undefined) {
|
|
181
|
+
throw new Error('Unable to verify key - signing material has no VSS commitment');
|
|
182
|
+
}
|
|
183
|
+
let combinedKey;
|
|
184
|
+
try {
|
|
185
|
+
combinedKey = MPC.keyCombine(signingMaterial.uShare, [signingMaterial.bitgoYShare, signingMaterial.backupYShare]);
|
|
186
|
+
}
|
|
187
|
+
catch (e) {
|
|
188
|
+
throw new Error('Invalid user key - could not combine signing material');
|
|
189
|
+
}
|
|
190
|
+
return combinedKey.pShare.y + combinedKey.pShare.chaincode === params.commonKeychain;
|
|
191
|
+
}
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5VmVyaWZpY2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2JpdGdvL3V0aWxzL3Rzcy9rZXlWZXJpZmljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFtRkEsc0VBWUM7QUFnREQsc0dBc0JDO0FBcktEOztHQUVHO0FBQ0gseUNBQTJCO0FBQzNCLHVFQUFpRTtBQUdqRSxNQUFNLFlBQVksR0FBRyxpQkFBaUIsQ0FBQztBQUV2QyxxR0FBcUc7QUFDckcsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUMzQixZQUFZLEVBQ1osQ0FBQyxDQUFDLEVBQWUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLFFBQVEsSUFBSSxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUNqRSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssUUFBUSxJQUFJLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQzFGLENBQUMsQ0FBQyxRQUFRLENBQ1gsQ0FBQztBQUVGLE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDekIsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ1gsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ1gsQ0FBQyxFQUFFLENBQUMsQ0FBQyxNQUFNO0lBQ1gsQ0FBQyxFQUFFLFVBQVU7SUFDYixJQUFJLEVBQUUsVUFBVTtJQUNoQixTQUFTLEVBQUUsVUFBVTtDQUN0QixDQUFDLENBQUM7QUFFSDs7OztHQUlHO0FBQ0gsTUFBTSxX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QUFDLENBQUMsR0FBRyxXQUFXLENBQUMsTUFBTSxDQUFDLFNBQVMsS0FBSyxNQUFNLENBQUMsY0FBYyxDQUFDO0FBQ3ZGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgKiBhcyB0IGZyb20gJ2lvLXRzJztcbmltcG9ydCBFZGRzYSwgeyBLZXlDb21iaW5lIH0gZnJvbSAnLi4vLi4vLi4vYWNjb3VudC1saWIvbXBjL3Rzcyc7XG5pbXBvcnQgeyBVc2VyU2lnbmluZ01hdGVyaWFsIH0gZnJvbSAnLi4vLi4vdHNzL2VkZHNhL3R5cGVzJztcblxuY29uc3QgSEVYXzMyX0JZVEVTID0gL15bMC05YS1mXXs2NH0kL2k7XG5cbi8qKiAzMi1ieXRlIGhleCBzdHJpbmc7IGV2ZXJ5IGhleCBmaWVsZCBvZiBnZW51aW5lIE1QQ3YxIHNpZ25pbmcgbWF0ZXJpYWwgaXMgZml4ZWQtd2lkdGggMzIgYnl0ZXMuICovXG5jb25zdCBIZXgzMkJ5dGVzID0gbmV3IHQuVHlwZTxzdHJpbmcsIHN0cmluZywgdW5rbm93bj4oXG4gICdIZXgzMkJ5dGVzJyxcbiAgKHUpOiB1IGlzIHN0cmluZyA9PiB0eXBlb2YgdSA9PT0gJ3N0cmluZycgJiYgSEVYXzMyX0JZVEVTLnRlc3QodSksXG4gICh1LCBjKSA9PiAodHlwZW9mIHUgPT09ICdzdHJpbmcnICYmIEhFWF8zMl9CWVRFUy50ZXN0KHUpID8gdC5zdWNjZXNzKHUpIDogdC5mYWlsdXJlKHUsIGMpKSxcbiAgdC5pZGVudGl0eVxuKTtcblxuY29uc3QgVVNoYXJlQ29kZWMgPSB0LnR5cGUoe1xuICBpOiB0Lm51bWJlcixcbiAgdDogdC5udW1iZXIsXG4gIG46IHQubnVtYmVyLFxuICB5OiBIZXgzMkJ5dGVzLFxuICBzZWVkOiBIZXgzMkJ5dGVzLFxuICBjaGFpbmNvZGU6IEhleDMyQnl0ZXMsXG59KTtcblxuLyoqXG4gKiBgdmAgaXMgdGhlIG9wdGlvbmFsIFZTUyBjb21taXRtZW50OiBhYnNlbnQgb24gc2hhcmVzIGNyZWF0ZWQgd2l0aG91dCB2ZXJpZmlhYmxlIHNlY3JldCBzaGFyaW5nLlxuICogSXQgaXMgZGVjbGFyZWQgdGhyb3VnaCBgdC5wYXJ0aWFsYCByYXRoZXIgdGhhbiBhIHVuaW9uIHdpdGggYHVuZGVmaW5lZGAgc28gdGhhdCBkZWNvZGluZyBhblxuICogYWJzZW50IGB2YCBkb2VzIG5vdCBtYXRlcmlhbGl6ZSBpdCBhcyBhbiBvd24gcHJvcGVydHkgb24gdGhlIHNoYXJlIGhhbmRlZCB0byBga2V5Q29tYmluZWAuXG4gKi9cbmNvbnN0IFlTaGFyZUNvZGVjID0gdC5pbnRlcnNlY3Rpb24oW1xuICB0LnR5cGUoe1xuICAgIGk6IHQubnVtYmVyLFxuICAgIGo6IHQubnVtYmVyLFxuICAgIHk6IEhleDMyQnl0ZXMsXG4gICAgdTogSGV4MzJCeXRlcyxcbiAgICBjaGFpbmNvZGU6IEhleDMyQnl0ZXMsXG4gIH0pLFxuICB0LnBhcnRpYWwoeyB2OiBIZXgzMkJ5dGVzIH0pLFxuXSk7XG5cbmNvbnN0IFVzZXJTaWduaW5nTWF0ZXJpYWxDb2RlYyA9IHQudHlwZSh7XG4gIHVTaGFyZTogVVNoYXJlQ29kZWMsXG4gIGJpdGdvWVNoYXJlOiBZU2hhcmVDb2RlYyxcbiAgYmFja3VwWVNoYXJlOiBZU2hhcmVDb2RlYyxcbn0pO1xuXG4vKipcbiAqIE1hcHMgYSBkZWNvZGUgZmFpbHVyZSB0byBhIGNvbnN0YW50IG1lc3NhZ2UuIE5ldmVyIGludGVycG9sYXRlcyBgZXJyb3IudmFsdWVgOiB0aGUgaW5wdXQgaXNcbiAqIHByaXZhdGUga2V5IG1hdGVyaWFsLiBUaGlzIGlzIGFsc28gd2h5IHRoZSBjb2RlY3MgY2FsbCBgdC5mYWlsdXJlYCB3aXRob3V0IGEgbWVzc2FnZSBhbmQgd2h5XG4gKiB0aGUgYHZhbGlkYXRpb25FcnJvcnNgIHJlcG9ydGVyIGluIGB1dGlscy9kZWNvZGUudHNgIGlzIG5vdCB1c2VkIOKAlCBib3RoIGVtYmVkIHRoZSBmYWlsaW5nIHZhbHVlLlxuICovXG5mdW5jdGlvbiB0b0ludmFsaWRLZXlNZXNzYWdlKGVycm9yczogdC5FcnJvcnMpOiBzdHJpbmcge1xuICBjb25zdCBbZXJyb3JdID0gZXJyb3JzO1xuICAvLyB0aGUgaGVhZCBvZiB0aGUgY29udGV4dCBpcyB0aGUgcm9vdCBjb2RlYyBpdHNlbGYsIHNvIHRoZSByZW1haW5pbmcga2V5cyBhcmUgdGhlIGZpZWxkIHBhdGguXG4gIC8vIHB1cmVseSBudW1lcmljIGtleXMgYXJlIGludGVyc2VjdGlvbi91bmlvbiBtZW1iZXIgaW5kaWNlcyByYXRoZXIgdGhhbiBmaWVsZCBuYW1lcy5cbiAgY29uc3Qgc2VnbWVudHMgPSBlcnJvci5jb250ZXh0XG4gICAgLnNsaWNlKDEpXG4gICAgLm1hcCgoZW50cnkpID0+IGVudHJ5LmtleSlcbiAgICAuZmlsdGVyKChrZXkpID0+ICEvXlxcZCskLy50ZXN0KGtleSkpO1xuICBpZiAoc2VnbWVudHMubGVuZ3RoID09PSAwKSB7XG4gICAgcmV0dXJuICdJbnZhbGlkIHVzZXIga2V5IC0gc2lnbmluZyBtYXRlcmlhbCBpcyBub3QgYW4gb2JqZWN0JztcbiAgfVxuICBpZiAoc2VnbWVudHMubGVuZ3RoID09PSAxICYmIChlcnJvci52YWx1ZSA9PT0gdW5kZWZpbmVkIHx8IGVycm9yLnZhbHVlID09PSBudWxsKSkge1xuICAgIHJldHVybiBgSW52YWxpZCB1c2VyIGtleSAtIG1pc3NpbmcgJHtzZWdtZW50c1swXX1gO1xuICB9XG4gIHJldHVybiBgSW52YWxpZCB1c2VyIGtleSAtICR7c2VnbWVudHNbMF19IGlzIG5vdCBhIHZhbGlkIHNoYXJlYDtcbn1cblxuLyoqXG4gKiBQYXJzZXMgdGhlIHVzZXIgVFNTIEVkRFNBIHNpZ25pbmcgbWF0ZXJpYWwgdGhhdCBhIGNsaWVudCBwYXNzZXMgYXMgYHBydmAgd2hlbiBzaWduaW5nLFxuICogYW5kIHJlamVjdHMgYW55dGhpbmcgdGhhdCBkb2VzIG5vdCBkZWNvZGUgYXMgdXNlciBzaWduaW5nIG1hdGVyaWFsLlxuICpcbiAqIERlY29kaW5nIGlzIGEgc2hhcGUgY2hlY2sgb25seSwgYnV0IGl0IGtlZXBzIG1hbGZvcm1lZCBpbnB1dCBhd2F5IGZyb20gdGhlIGNvbWJpbmUgcm91dGluZSxcbiAqIHdoaWNoIHRocm93cyByYXcsIGlucHV0LWludGVycG9sYXRpbmcgZXJyb3JzIGZvciBtYWxmb3JtZWQgc2hhcmVzLlxuICpcbiAqIFRoZSBpbnB1dCBpcyBwcml2YXRlIGtleSBtYXRlcmlhbCwgc28gbm8gZXJyb3IgbWVzc2FnZSBtYXkgaW50ZXJwb2xhdGUgYW55IHBhcnQgb2YgaXQuXG4gKiBJbiBwYXJ0aWN1bGFyLCBKU09OLnBhcnNlIGVycm9ycyBvbiBOb2RlID49IDIwIGluY2x1ZGUgdGhlIHJhdyBpbnB1dCBpbiB0aGVpciBtZXNzYWdlLFxuICogd2hpY2ggaXMgd2h5IHBhcnNlIGZhaWx1cmVzIGFyZSByZXRocm93biB3aXRoIGEgY29uc3RhbnQgbWVzc2FnZS5cbiAqXG4gKiBAcGFyYW0gcHJ2IC0gc3RyaW5naWZpZWQgdXNlciBzaWduaW5nIG1hdGVyaWFsIChgdVNoYXJlYCwgYGJpdGdvWVNoYXJlYCwgYGJhY2t1cFlTaGFyZWApXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZUVkZHNhVXNlclNpZ25pbmdNYXRlcmlhbChwcnY6IHN0cmluZyk6IFVzZXJTaWduaW5nTWF0ZXJpYWwge1xuICBsZXQgcGFyc2VkOiB1bmtub3duO1xuICB0cnkge1xuICAgIHBhcnNlZCA9IEpTT04ucGFyc2UocHJ2KTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB1c2VyIGtleSAtIGNvdWxkIG5vdCBwYXJzZSBzaWduaW5nIG1hdGVyaWFsJyk7XG4gIH1cbiAgY29uc3QgZGVjb2RlZCA9IFVzZXJTaWduaW5nTWF0ZXJpYWxDb2RlYy5kZWNvZGUocGFyc2VkKTtcbiAgaWYgKGRlY29kZWQuX3RhZyA9PT0gJ0xlZnQnKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKHRvSW52YWxpZEtleU1lc3NhZ2UoZGVjb2RlZC5sZWZ0KSk7XG4gIH1cbiAgcmV0dXJuIGRlY29kZWQucmlnaHQgYXMgVXNlclNpZ25pbmdNYXRlcmlhbDtcbn1cblxuLyoqXG4gKiBDaGVja3MgdGhhdCBgdVNoYXJlLnlgIGlzIHRoZSBwdWJsaWMgcG9pbnQgYWN0dWFsbHkgZGVyaXZlZCBmcm9tIGB1U2hhcmUuc2VlZGAuXG4gKlxuICogYGtleUNvbWJpbmVgIGRlcml2ZXMgdGhlIHByaXZhdGUgc2NhbGFyIGZyb20gdGhlIHNlZWQgYnV0IHJlY29uc3RydWN0cyB0aGUgY29tbW9uIGtleWNoYWluIGZyb21cbiAqIHRoZSBkZWNsYXJlZCBgeWAgZmllbGRzLCBzbyBpdCBuZXZlciBjb21wYXJlcyB0aGUgdHdvLiBXaXRob3V0IHRoaXMgY2hlY2sgYSBjYWxsZXIgd2hvIGtub3dzXG4gKiBvbmx5IHRoZSB3YWxsZXQncyBwdWJsaWMgY29tbW9uS2V5Y2hhaW4gY2FuIHN1Ym1pdCBnZW51aW5lIHB1YmxpYyBmaWVsZHMgYWxvbmdzaWRlIGEgc2VlZCB0aGV5XG4gKiBkbyBub3Qgb3duIGFuZCBzdGlsbCB2ZXJpZnkuIFJlLXJ1bm5pbmcgYGtleVNoYXJlYCB3aXRoIHRoZSBzaGFyZSdzIG93biBzZWVkIGFuZCBjaGFpbmNvZGVcbiAqIHJlcHJvZHVjZXMgdGhlIGRlcml2YXRpb24gYW5kIHlpZWxkcyB0aGUgYHlgIHRoZSBzZWVkIHJlYWxseSBjb21taXRzIHRvLlxuICovXG5mdW5jdGlvbiB1U2hhcmVTZWVkTWF0Y2hlc1koTVBDOiBFZGRzYSwgdVNoYXJlOiBVc2VyU2lnbmluZ01hdGVyaWFsWyd1U2hhcmUnXSk6IGJvb2xlYW4ge1xuICBjb25zdCBzZWVkY2hhaW4gPSBCdWZmZXIuY29uY2F0KFtCdWZmZXIuZnJvbSh1U2hhcmUuc2VlZCwgJ2hleCcpLCBCdWZmZXIuZnJvbSh1U2hhcmUuY2hhaW5jb2RlLCAnaGV4JyldKTtcbiAgbGV0IGRlcml2ZWQ6IFVzZXJTaWduaW5nTWF0ZXJpYWxbJ3VTaGFyZSddO1xuICB0cnkge1xuICAgIGRlcml2ZWQgPSBNUEMua2V5U2hhcmUodVNoYXJlLmksIHVTaGFyZS50LCB1U2hhcmUubiwgc2VlZGNoYWluKS51U2hhcmU7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICAvLyBrZXlTaGFyZSByZWplY3RzIGFuIG91dC1vZi1yYW5nZSBpbmRleCBvciB0aHJlc2hvbGQsIHdoaWNoIG1ha2VzIHRoZSBzaGFyZSB1bnVzYWJsZVxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICByZXR1cm4gZGVyaXZlZC55ID09PSB1U2hhcmUueTtcbn1cblxuLyoqXG4gKiBWZXJpZmllcyB0aGF0IHVzZXIgVFNTIEVkRFNBIHNpZ25pbmcgbWF0ZXJpYWwgKGBwcnZgKSByZWNvbWJpbmVzIHRvIGEgZ2l2ZW4gY29tbW9uS2V5Y2hhaW4uXG4gKlxuICogUmVjb21iaW5lcyB0aGUgdXNlcidzIHNoYXJlIHdpdGggdGhlIEJpdEdvIGFuZCBiYWNrdXAgWSBzaGFyZXMg4oCUIHRoZSBzYW1lIGNvbXB1dGF0aW9uIHRoZVxuICogU0RLIHBlcmZvcm1zIHdoZW4gY3JlYXRpbmcgdGhlIHVzZXIga2V5Y2hhaW4gb3Igc2lnbmluZyDigJQgYW5kIGNvbXBhcmVzIHRoZSByZXN1bHQgYWdhaW5zdFxuICogdGhlIHdhbGxldCdzIGNvbW1vbktleWNoYWluLiBSZXR1cm5zIGZhbHNlIHJhdGhlciB0aGFuIHRocm93aW5nIHdoZW4gdGhlIGtleXMgZG8gbm90IG1hdGNoLlxuICogU2hhcmVzIHRoYXQgcGFzcyB0aGUgc2hhcGUgY2hlY2sgYnV0IGFyZSBjcnlwdG9ncmFwaGljYWxseSBpbmNvbnNpc3RlbnQgYXJlIHJlamVjdGVkIHdpdGhcbiAqIGEgY29uc3RhbnQgbWVzc2FnZTogdGhlIGNvbWJpbmUgcm91dGluZSB0aHJvd3MgcmF3IGVycm9ycywgc29tZSBvZiB3aGljaCBpbnRlcnBvbGF0ZVxuICogc3VibWl0dGVyLWNvbnRyb2xsZWQgZmllbGRzLCB3aGljaCBtdXN0IG5vdCBzdXJmYWNlIHRocm91Z2ggdGhlIEFQSS5cbiAqXG4gKiBSZWNvbWJpbmF0aW9uIGFsb25lIGlzIG5vdCBwcm9vZiBvZiBwb3NzZXNzaW9uLCBzbyB0d28gZnVydGhlciBjaGVja3MgcnVuIGZpcnN0LiBUaGUgc2VlZCBpc1xuICogYm91bmQgdG8gYHVTaGFyZS55YCwgYW5kIHRoZSBZIHNoYXJlcyBtdXN0IGNhcnJ5IHRoZWlyIFZTUyBjb21taXRtZW50IGB2YCDigJQgYGtleUNvbWJpbmVgXG4gKiB2ZXJpZmllcyBhIFkgc2hhcmUncyBzZWNyZXQgYHVgIG9ubHkgd2hlbiBgdmAgaXMgcHJlc2VudCwgc28gbWF0ZXJpYWwgd2l0aG91dCBgdmAgY2Fubm90IGJlXG4gKiB2ZXJpZmllZCBhdCBhbGwgYW5kIHRocm93cyBhIGRpc3RpbmN0IGVycm9yIHJhdGhlciB0aGFuIGJlaW5nIGp1ZGdlZCBhIG5vbi1tYXRjaC4gR2VudWluZVxuICogc2hhcmVzIHByb2R1Y2VkIGJ5IGBrZXlTaGFyZWAgYWx3YXlzIGNhcnJ5IGB2YC5cbiAqXG4gKiBBIHRydWUgcmVzdWx0IGlzIGEgY29uc2lzdGVuY3kgY2hlY2sgZm9yIGEgY2FsbGVyIGluc3BlY3RpbmcgaXRzIG93biBtYXRlcmlhbCwgbm90IHByb29mIG9mXG4gKiBwb3NzZXNzaW9uLCBhbmQgbXVzdCBuZXZlciBiZSB1c2VkIGFzIGFuIGF1dGhvcml6YXRpb24gc2lnbmFsOiBhIGNhbGxlciB3aG8ga25vd3Mgb25seSB0aGVcbiAqIHdhbGxldCdzIHB1YmxpYyBjb21tb25LZXljaGFpbiBjYW4gY29uc3RydWN0IG1hdGVyaWFsIHRoYXQgcGFzc2VzIOKAlCBhbiBgdVNoYXJlYCB3aG9zZSBzZWVkXG4gKiBtYXRjaGVzIGl0cyBgeWAsIHBsdXMgWSBzaGFyZXMgd2l0aCBhIGNob3NlbiBzZWNyZXQgYHVgIGFuZCB0aGUgYHZgIHNvbHZlZCBmcm9tIGl0LCB3aG9zZVxuICogYHlgIHZhbHVlcyBzdW0gdG8gdGhlIGNvbW1vbiBrZXkuXG4gKlxuICogQHBhcmFtIHBhcmFtcy5wcnYgLSBzdHJpbmdpZmllZCB1c2VyIHNpZ25pbmcgbWF0ZXJpYWwsIGFzIHBhc3NlZCBhcyBgcHJ2YCB3aGVuIHNpZ25pbmdcbiAqIEBwYXJhbSBwYXJhbXMuY29tbW9uS2V5Y2hhaW4gLSB0aGUgd2FsbGV0J3MgdXNlciBrZXljaGFpbiBjb21tb25LZXljaGFpblxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZWRkc2FVc2VyU2lnbmluZ01hdGVyaWFsTWF0Y2hlc0NvbW1vbktleWNoYWluKHBhcmFtczoge1xuICBwcnY6IHN0cmluZztcbiAgY29tbW9uS2V5Y2hhaW46IHN0cmluZztcbn0pOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgY29uc3Qgc2lnbmluZ01hdGVyaWFsID0gcGFyc2VFZGRzYVVzZXJTaWduaW5nTWF0ZXJpYWwocGFyYW1zLnBydik7XG4gIGNvbnN0IE1QQyA9IGF3YWl0IEVkZHNhLmluaXRpYWxpemUoKTtcbiAgaWYgKCF1U2hhcmVTZWVkTWF0Y2hlc1koTVBDLCBzaWduaW5nTWF0ZXJpYWwudVNoYXJlKSkge1xuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuICAvLyBrZXlDb21iaW5lIHZlcmlmaWVzIGEgWSBzaGFyZSdzIHNlY3JldCBgdWAgYWdhaW5zdCBpdHMgY29tbWl0bWVudCBvbmx5IHdoZW4gYHZgIGlzIHByZXNlbnQsXG4gIC8vIHNvIG1hdGVyaWFsIHdpdGhvdXQgYHZgIGNhbm5vdCBiZSB2ZXJpZmllZCBhdCBhbGw7IHJlamVjdCBpdCBkaXN0aW5jdGx5IGluc3RlYWQgb2YganVkZ2luZ1xuICAvLyBpdCBhIG5vbi1tYXRjaCwgd2hpY2ggd291bGQgbWlzcmVwb3J0IGdlbnVpbmUgbWF0ZXJpYWwgdGhhdCBsYWNrcyB0aGUgY29tbWl0bWVudFxuICBpZiAoc2lnbmluZ01hdGVyaWFsLmJpdGdvWVNoYXJlLnYgPT09IHVuZGVmaW5lZCB8fCBzaWduaW5nTWF0ZXJpYWwuYmFja3VwWVNoYXJlLnYgPT09IHVuZGVmaW5lZCkge1xuICAgIHRocm93IG5ldyBFcnJvcignVW5hYmxlIHRvIHZlcmlmeSBrZXkgLSBzaWduaW5nIG1hdGVyaWFsIGhhcyBubyBWU1MgY29tbWl0bWVudCcpO1xuICB9XG4gIGxldCBjb21iaW5lZEtleTogS2V5Q29tYmluZTtcbiAgdHJ5IHtcbiAgICBjb21iaW5lZEtleSA9IE1QQy5rZXlDb21iaW5lKHNpZ25pbmdNYXRlcmlhbC51U2hhcmUsIFtzaWduaW5nTWF0ZXJpYWwuYml0Z29ZU2hhcmUsIHNpZ25pbmdNYXRlcmlhbC5iYWNrdXBZU2hhcmVdKTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB1c2VyIGtleSAtIGNvdWxkIG5vdCBjb21iaW5lIHNpZ25pbmcgbWF0ZXJpYWwnKTtcbiAgfVxuICByZXR1cm4gY29tYmluZWRLZXkucFNoYXJlLnkgKyBjb21iaW5lZEtleS5wU2hhcmUuY2hhaW5jb2RlID09PSBwYXJhbXMuY29tbW9uS2V5Y2hhaW47XG59XG4iXX0=
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { IBaseCoin } from '../../baseCoin';
|
|
2
|
+
import { SignableTransaction } from './baseTypes';
|
|
3
|
+
export interface CoinWithPreHashedSignable {
|
|
4
|
+
/**
|
|
5
|
+
* Returns true when the signableHex for this transaction is already the
|
|
6
|
+
* final signing hash (SHA-256 for Avalanche atomic txs), and the MPC
|
|
7
|
+
* signing flow should use it directly without additional hashing.
|
|
8
|
+
*/
|
|
9
|
+
isSignablePreHashed(unsignedTx: SignableTransaction): boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare function isCoinWithPreHashedSignable(coin: unknown): coin is CoinWithPreHashedSignable;
|
|
12
|
+
/**
|
|
13
|
+
* Detect Avalanche atomic cross-chain transactions by codec prefix.
|
|
14
|
+
*
|
|
15
|
+
* Avalanche codec type IDs start with 0x00000000 (first 4 hex chars = '0000').
|
|
16
|
+
* Standard EVM RLP encoding starts with 0xf8xx — overlap is currently impossible.
|
|
17
|
+
*
|
|
18
|
+
* Note: The WP strips the '0x' prefix from serializedTxHex before storing,
|
|
19
|
+
* so we check for '0000' not '0x0000'.
|
|
20
|
+
*/
|
|
21
|
+
export declare function isAvalancheAtomicTx(unsignedTx: SignableTransaction): boolean;
|
|
22
|
+
export declare function shouldUsePreHashedSignable(coin: IBaseCoin, unsignedTx: SignableTransaction): boolean;
|
|
23
|
+
//# sourceMappingURL=preHashedSignable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preHashedSignable.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/utils/tss/preHashedSignable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAElD,MAAM,WAAW,yBAAyB;IACxC;;;;OAIG;IACH,mBAAmB,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAAC;CAC/D;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,yBAAyB,CAM5F;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAE5E;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,mBAAmB,GAAG,OAAO,CAEpG"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isCoinWithPreHashedSignable = isCoinWithPreHashedSignable;
|
|
4
|
+
exports.isAvalancheAtomicTx = isAvalancheAtomicTx;
|
|
5
|
+
exports.shouldUsePreHashedSignable = shouldUsePreHashedSignable;
|
|
6
|
+
function isCoinWithPreHashedSignable(coin) {
|
|
7
|
+
return (coin !== null &&
|
|
8
|
+
typeof coin === 'object' &&
|
|
9
|
+
typeof coin.isSignablePreHashed === 'function');
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Detect Avalanche atomic cross-chain transactions by codec prefix.
|
|
13
|
+
*
|
|
14
|
+
* Avalanche codec type IDs start with 0x00000000 (first 4 hex chars = '0000').
|
|
15
|
+
* Standard EVM RLP encoding starts with 0xf8xx — overlap is currently impossible.
|
|
16
|
+
*
|
|
17
|
+
* Note: The WP strips the '0x' prefix from serializedTxHex before storing,
|
|
18
|
+
* so we check for '0000' not '0x0000'.
|
|
19
|
+
*/
|
|
20
|
+
function isAvalancheAtomicTx(unsignedTx) {
|
|
21
|
+
return unsignedTx.serializedTxHex.startsWith('0000');
|
|
22
|
+
}
|
|
23
|
+
function shouldUsePreHashedSignable(coin, unsignedTx) {
|
|
24
|
+
return isCoinWithPreHashedSignable(coin) && coin.isSignablePreHashed(unsignedTx);
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJlSGFzaGVkU2lnbmFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvdHNzL3ByZUhhc2hlZFNpZ25hYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBWUEsa0VBTUM7QUFXRCxrREFFQztBQUVELGdFQUVDO0FBdkJELFNBQWdCLDJCQUEyQixDQUFDLElBQWE7SUFDdkQsT0FBTyxDQUNMLElBQUksS0FBSyxJQUFJO1FBQ2IsT0FBTyxJQUFJLEtBQUssUUFBUTtRQUN4QixPQUFRLElBQWtDLENBQUMsbUJBQW1CLEtBQUssVUFBVSxDQUM5RSxDQUFDO0FBQ0osQ0FBQztBQUVEOzs7Ozs7OztHQVFHO0FBQ0gsU0FBZ0IsbUJBQW1CLENBQUMsVUFBK0I7SUFDakUsT0FBTyxVQUFVLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN2RCxDQUFDO0FBRUQsU0FBZ0IsMEJBQTBCLENBQUMsSUFBZSxFQUFFLFVBQStCO0lBQ3pGLE9BQU8sMkJBQTJCLENBQUMsSUFBSSxDQUFDLElBQUksSUFBSSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0FBQ25GLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJQmFzZUNvaW4gfSBmcm9tICcuLi8uLi9iYXNlQ29pbic7XG5pbXBvcnQgeyBTaWduYWJsZVRyYW5zYWN0aW9uIH0gZnJvbSAnLi9iYXNlVHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIENvaW5XaXRoUHJlSGFzaGVkU2lnbmFibGUge1xuICAvKipcbiAgICogUmV0dXJucyB0cnVlIHdoZW4gdGhlIHNpZ25hYmxlSGV4IGZvciB0aGlzIHRyYW5zYWN0aW9uIGlzIGFscmVhZHkgdGhlXG4gICAqIGZpbmFsIHNpZ25pbmcgaGFzaCAoU0hBLTI1NiBmb3IgQXZhbGFuY2hlIGF0b21pYyB0eHMpLCBhbmQgdGhlIE1QQ1xuICAgKiBzaWduaW5nIGZsb3cgc2hvdWxkIHVzZSBpdCBkaXJlY3RseSB3aXRob3V0IGFkZGl0aW9uYWwgaGFzaGluZy5cbiAgICovXG4gIGlzU2lnbmFibGVQcmVIYXNoZWQodW5zaWduZWRUeDogU2lnbmFibGVUcmFuc2FjdGlvbik6IGJvb2xlYW47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvaW5XaXRoUHJlSGFzaGVkU2lnbmFibGUoY29pbjogdW5rbm93bik6IGNvaW4gaXMgQ29pbldpdGhQcmVIYXNoZWRTaWduYWJsZSB7XG4gIHJldHVybiAoXG4gICAgY29pbiAhPT0gbnVsbCAmJlxuICAgIHR5cGVvZiBjb2luID09PSAnb2JqZWN0JyAmJlxuICAgIHR5cGVvZiAoY29pbiBhcyBDb2luV2l0aFByZUhhc2hlZFNpZ25hYmxlKS5pc1NpZ25hYmxlUHJlSGFzaGVkID09PSAnZnVuY3Rpb24nXG4gICk7XG59XG5cbi8qKlxuICogRGV0ZWN0IEF2YWxhbmNoZSBhdG9taWMgY3Jvc3MtY2hhaW4gdHJhbnNhY3Rpb25zIGJ5IGNvZGVjIHByZWZpeC5cbiAqXG4gKiBBdmFsYW5jaGUgY29kZWMgdHlwZSBJRHMgc3RhcnQgd2l0aCAweDAwMDAwMDAwIChmaXJzdCA0IGhleCBjaGFycyA9ICcwMDAwJykuXG4gKiBTdGFuZGFyZCBFVk0gUkxQIGVuY29kaW5nIHN0YXJ0cyB3aXRoIDB4Zjh4eCDigJQgb3ZlcmxhcCBpcyBjdXJyZW50bHkgaW1wb3NzaWJsZS5cbiAqXG4gKiBOb3RlOiBUaGUgV1Agc3RyaXBzIHRoZSAnMHgnIHByZWZpeCBmcm9tIHNlcmlhbGl6ZWRUeEhleCBiZWZvcmUgc3RvcmluZyxcbiAqIHNvIHdlIGNoZWNrIGZvciAnMDAwMCcgbm90ICcweDAwMDAnLlxuICovXG5leHBvcnQgZnVuY3Rpb24gaXNBdmFsYW5jaGVBdG9taWNUeCh1bnNpZ25lZFR4OiBTaWduYWJsZVRyYW5zYWN0aW9uKTogYm9vbGVhbiB7XG4gIHJldHVybiB1bnNpZ25lZFR4LnNlcmlhbGl6ZWRUeEhleC5zdGFydHNXaXRoKCcwMDAwJyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzaG91bGRVc2VQcmVIYXNoZWRTaWduYWJsZShjb2luOiBJQmFzZUNvaW4sIHVuc2lnbmVkVHg6IFNpZ25hYmxlVHJhbnNhY3Rpb24pOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzQ29pbldpdGhQcmVIYXNoZWRTaWduYWJsZShjb2luKSAmJiBjb2luLmlzU2lnbmFibGVQcmVIYXNoZWQodW5zaWduZWRUeCk7XG59XG4iXX0=
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { TransactionParams } from '../../baseCoin';
|
|
2
|
+
import { TxRequest } from './baseTypes';
|
|
3
|
+
/**
|
|
4
|
+
* Transaction types that legitimately carry no explicit recipients.
|
|
5
|
+
* These are the intentType strings as stored in TxRequest.intent.intentType by WP.
|
|
6
|
+
* verifyTransaction handles no-recipient validation for these internally.
|
|
7
|
+
* Mirrors the bypass list in abstractEthLikeNewCoins.ts verifyTssTransaction.
|
|
8
|
+
*
|
|
9
|
+
* ECDSA types: acceleration, fillNonce, transferToken, tokenApproval, consolidate,
|
|
10
|
+
* bridgeFunds, enableToken, customTx, wrapApprove, wrap, unwrap,
|
|
11
|
+
* finalizeUnwrap, contractCall
|
|
12
|
+
* BSC/BNB delegation-based staking: delegate, undelegate, switchValidator
|
|
13
|
+
* CELO/ETH lock-based staking: stake, unstake, stakeWithCallData, unstakeWithCallData,
|
|
14
|
+
* transferStake, increaseStake, goUnstake
|
|
15
|
+
* Claim rewards (BSC, CELO — TRX/SOL use EdDSA and are unaffected): claim, stakeClaimRewards
|
|
16
|
+
*/
|
|
17
|
+
export declare const NO_RECIPIENT_TX_TYPES: Set<string>;
|
|
18
|
+
/**
|
|
19
|
+
* Resolves the effective txParams for TSS signing recipient verification.
|
|
20
|
+
*
|
|
21
|
+
* For smart contract interactions, recipients live in txRequest.intent.recipients
|
|
22
|
+
* (native amount = 0, so buildParams is empty). Falls back to intent recipients
|
|
23
|
+
* mapped to ITransactionRecipient shape when txParams.recipients is absent.
|
|
24
|
+
*
|
|
25
|
+
* tokenName is derived from tokenData.tokenName when present, otherwise from
|
|
26
|
+
* amount.symbol when chainName is provided and symbol differs from it.
|
|
27
|
+
*
|
|
28
|
+
* Staking intents (BSC delegate/undelegate, CELO stake/unstake, etc.) are
|
|
29
|
+
* identified generically by the presence of `stakingRequestId` on the intent —
|
|
30
|
+
* a required field on BaseStakeIntent in @bitgo/public-types. These intents
|
|
31
|
+
* have no txParams recipients by design; validation is done at the coin layer.
|
|
32
|
+
*
|
|
33
|
+
* Throws InvalidTransactionError if no recipients can be resolved and the
|
|
34
|
+
* transaction is not a known no-recipient type.
|
|
35
|
+
*
|
|
36
|
+
* @param txRequest - the transaction request containing the persisted intent
|
|
37
|
+
* @param txParams - the caller-supplied transaction parameters (may be undefined)
|
|
38
|
+
* @param chainName - the base chain name (e.g. 'sol', 'tsol') used to exclude
|
|
39
|
+
* native-coin transfers from tokenName; pass baseCoin.getChain()
|
|
40
|
+
*/
|
|
41
|
+
export declare function resolveEffectiveTxParams(txRequest: TxRequest, txParams: TransactionParams | undefined, chainName?: string): TransactionParams;
|
|
42
|
+
//# sourceMappingURL=recipientUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recipientUtils.d.ts","sourceRoot":"","sources":["../../../../../src/bitgo/utils/tss/recipientUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAEnD,OAAO,EAAmB,SAAS,EAAE,MAAM,aAAa,CAAC;AAEzD;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,qBAAqB,aAsFhC,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,iBAAiB,GAAG,SAAS,EACvC,SAAS,CAAC,EAAE,MAAM,GACjB,iBAAiB,CA0DnB"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NO_RECIPIENT_TX_TYPES = void 0;
|
|
4
|
+
exports.resolveEffectiveTxParams = resolveEffectiveTxParams;
|
|
5
|
+
const errors_1 = require("../../errors");
|
|
6
|
+
/**
|
|
7
|
+
* Transaction types that legitimately carry no explicit recipients.
|
|
8
|
+
* These are the intentType strings as stored in TxRequest.intent.intentType by WP.
|
|
9
|
+
* verifyTransaction handles no-recipient validation for these internally.
|
|
10
|
+
* Mirrors the bypass list in abstractEthLikeNewCoins.ts verifyTssTransaction.
|
|
11
|
+
*
|
|
12
|
+
* ECDSA types: acceleration, fillNonce, transferToken, tokenApproval, consolidate,
|
|
13
|
+
* bridgeFunds, enableToken, customTx, wrapApprove, wrap, unwrap,
|
|
14
|
+
* finalizeUnwrap, contractCall
|
|
15
|
+
* BSC/BNB delegation-based staking: delegate, undelegate, switchValidator
|
|
16
|
+
* CELO/ETH lock-based staking: stake, unstake, stakeWithCallData, unstakeWithCallData,
|
|
17
|
+
* transferStake, increaseStake, goUnstake
|
|
18
|
+
* Claim rewards (BSC, CELO — TRX/SOL use EdDSA and are unaffected): claim, stakeClaimRewards
|
|
19
|
+
*/
|
|
20
|
+
exports.NO_RECIPIENT_TX_TYPES = new Set([
|
|
21
|
+
// ECDSA types
|
|
22
|
+
'acceleration',
|
|
23
|
+
'fillNonce',
|
|
24
|
+
'transferToken',
|
|
25
|
+
'tokenApproval',
|
|
26
|
+
'consolidate',
|
|
27
|
+
'bridgeFunds',
|
|
28
|
+
'enableToken',
|
|
29
|
+
'enabletoken',
|
|
30
|
+
'disableToken',
|
|
31
|
+
'disabletoken',
|
|
32
|
+
'customTx',
|
|
33
|
+
// DeFi vault operations — recipients/calldata built server-side from defiParams
|
|
34
|
+
'defiApprove',
|
|
35
|
+
'defiDeposit',
|
|
36
|
+
'defiWithdraw',
|
|
37
|
+
// Native wrap/unwrap (WETH9 deposit()/withdraw()) — calldata and the WETH9
|
|
38
|
+
// address are resolved server-side from the vault binding, so no recipients.
|
|
39
|
+
// Registered in BOTH spellings on purpose: this set is matched against
|
|
40
|
+
// txParams.type, which is buildParams.type (camelCase, from wallet.sendMany),
|
|
41
|
+
// AND against intent.intentType (kebab-case, as WP persists it). Signing paths
|
|
42
|
+
// that carry no txParams — notably pendingApproval.approve() →
|
|
43
|
+
// recreateTxRequest() → signTxRequest() with no txParams — only ever see the
|
|
44
|
+
// kebab-case spelling.
|
|
45
|
+
'wrapNative',
|
|
46
|
+
'wrap-native',
|
|
47
|
+
'unwrapNative',
|
|
48
|
+
'unwrap-native',
|
|
49
|
+
// ERC-7984 shield/unshield: approve/wrap/unwrap calldata is built server-side from the
|
|
50
|
+
// intent, and finalizeUnwrap txnReqs are WP-created at READY_TO_FINALIZE (client signs
|
|
51
|
+
// only) — none carry SDK-level recipients.
|
|
52
|
+
'wrapApprove',
|
|
53
|
+
'wrap',
|
|
54
|
+
'unwrap',
|
|
55
|
+
'finalizeUnwrap',
|
|
56
|
+
// Smart contract invocations with no explicit SDK-level recipients
|
|
57
|
+
'contractCall',
|
|
58
|
+
// BSC/BNB delegation-based staking — intentType strings from TxRequest.intent.intentType.
|
|
59
|
+
// Note: SOL solDelegateIntent also uses intentType "delegate".
|
|
60
|
+
'delegate',
|
|
61
|
+
'undelegate',
|
|
62
|
+
'switchValidator',
|
|
63
|
+
// CELO/ETH lock-based staking
|
|
64
|
+
'stake',
|
|
65
|
+
'unstake',
|
|
66
|
+
'stakeWithCallData',
|
|
67
|
+
'unstakeWithCallData',
|
|
68
|
+
'transferStake',
|
|
69
|
+
'increaseStake',
|
|
70
|
+
'goUnstake',
|
|
71
|
+
// Claim rewards — BSC and CELO (TRX/SOL/Cosmos use EdDSA, not affected by this guard)
|
|
72
|
+
'claim',
|
|
73
|
+
'stakeClaimRewards',
|
|
74
|
+
'createAccount',
|
|
75
|
+
// Canton operations with no SDK-level recipients. Canton.verifyTransaction validates these from the transaction itself.
|
|
76
|
+
'transferAccept',
|
|
77
|
+
'transferReject',
|
|
78
|
+
'transferOfferWithdrawn',
|
|
79
|
+
'cosignDelegationAccept',
|
|
80
|
+
'allocationAllocate',
|
|
81
|
+
'allocationOfferWithdrawn',
|
|
82
|
+
'cantonCommand',
|
|
83
|
+
'cantonEndInvestorOnboardingOffer',
|
|
84
|
+
'cantonEndInvestorOnboardingAccept',
|
|
85
|
+
'cantonEndInvestorOnboardingReject',
|
|
86
|
+
'cantonParticipantOnboardingRequest',
|
|
87
|
+
'pledge',
|
|
88
|
+
// Avalanche / Flare cross-chain atomic imports — recipients are not supplied
|
|
89
|
+
// by the client because the import consumes UTXOs already owned by the
|
|
90
|
+
// wallet; the destination address is the wallet itself. WP issues these
|
|
91
|
+
// with intentType 'import' (P-chain) or 'importtoc' (C-chain).
|
|
92
|
+
'import',
|
|
93
|
+
'importtoc',
|
|
94
|
+
// SOL: deactivate stake account — no on-chain transfer recipient.
|
|
95
|
+
'deactivate',
|
|
96
|
+
// SOL: authorize stake account — no transfer recipient.
|
|
97
|
+
'authorize',
|
|
98
|
+
]);
|
|
99
|
+
/**
|
|
100
|
+
* Resolves the effective txParams for TSS signing recipient verification.
|
|
101
|
+
*
|
|
102
|
+
* For smart contract interactions, recipients live in txRequest.intent.recipients
|
|
103
|
+
* (native amount = 0, so buildParams is empty). Falls back to intent recipients
|
|
104
|
+
* mapped to ITransactionRecipient shape when txParams.recipients is absent.
|
|
105
|
+
*
|
|
106
|
+
* tokenName is derived from tokenData.tokenName when present, otherwise from
|
|
107
|
+
* amount.symbol when chainName is provided and symbol differs from it.
|
|
108
|
+
*
|
|
109
|
+
* Staking intents (BSC delegate/undelegate, CELO stake/unstake, etc.) are
|
|
110
|
+
* identified generically by the presence of `stakingRequestId` on the intent —
|
|
111
|
+
* a required field on BaseStakeIntent in @bitgo/public-types. These intents
|
|
112
|
+
* have no txParams recipients by design; validation is done at the coin layer.
|
|
113
|
+
*
|
|
114
|
+
* Throws InvalidTransactionError if no recipients can be resolved and the
|
|
115
|
+
* transaction is not a known no-recipient type.
|
|
116
|
+
*
|
|
117
|
+
* @param txRequest - the transaction request containing the persisted intent
|
|
118
|
+
* @param txParams - the caller-supplied transaction parameters (may be undefined)
|
|
119
|
+
* @param chainName - the base chain name (e.g. 'sol', 'tsol') used to exclude
|
|
120
|
+
* native-coin transfers from tokenName; pass baseCoin.getChain()
|
|
121
|
+
*/
|
|
122
|
+
function resolveEffectiveTxParams(txRequest, txParams, chainName) {
|
|
123
|
+
const intentRecipients = txRequest.intent?.recipients?.map((intentRecipient) => {
|
|
124
|
+
// Prefer tokenData.tokenName; fall back to amount.symbol when chainName is
|
|
125
|
+
// provided and differs from it. When absent, skip the symbol fallback.
|
|
126
|
+
const { symbol } = intentRecipient.amount;
|
|
127
|
+
const tokenName = intentRecipient.tokenData?.tokenName ||
|
|
128
|
+
(chainName !== undefined && symbol && symbol !== chainName ? symbol : undefined);
|
|
129
|
+
return {
|
|
130
|
+
address: intentRecipient.address.address,
|
|
131
|
+
amount: intentRecipient.amount.value,
|
|
132
|
+
data: intentRecipient.data,
|
|
133
|
+
...(tokenName && { tokenName }),
|
|
134
|
+
};
|
|
135
|
+
});
|
|
136
|
+
const effectiveTxParams = {
|
|
137
|
+
...txParams,
|
|
138
|
+
recipients: txParams?.recipients?.length ? txParams.recipients : intentRecipients,
|
|
139
|
+
};
|
|
140
|
+
// Fall back to intent.intentType when txParams.type is not explicitly set.
|
|
141
|
+
// Staking wallets call signTransaction without txParams, so the type lives only in the intent.
|
|
142
|
+
const txType = effectiveTxParams.type ?? txRequest.intent?.intentType ?? '';
|
|
143
|
+
// Propagate the resolved type so downstream callers
|
|
144
|
+
if (!effectiveTxParams.type && txType) {
|
|
145
|
+
effectiveTxParams.type = txType;
|
|
146
|
+
}
|
|
147
|
+
// Propagate stakingRequestId from intent into effectiveTxParams so verifyTssTransaction
|
|
148
|
+
// overrides can bypass the no-recipient guard without needing access to txRequest directly.
|
|
149
|
+
const intentStakingRequestId = txRequest.intent?.stakingRequestId;
|
|
150
|
+
if (intentStakingRequestId && !effectiveTxParams.stakingRequestId) {
|
|
151
|
+
effectiveTxParams.stakingRequestId = intentStakingRequestId;
|
|
152
|
+
}
|
|
153
|
+
// All staking intents (BSC delegate/undelegate, CELO stake/unstake, etc.) carry
|
|
154
|
+
// stakingRequestId as a required field on BaseStakeIntent (@bitgo/public-types).
|
|
155
|
+
// Use its presence as a generic staking signal — no need to enumerate every intentType.
|
|
156
|
+
const isStakingIntent = !!txRequest.intent?.stakingRequestId;
|
|
157
|
+
// buildParams.type from the wallet UI is PascalCase ('Import'); intent.intentType from WP
|
|
158
|
+
// is lowercase ('import'). Either may be the source of truth depending on the signing path.
|
|
159
|
+
const intentType = txRequest.intent?.intentType ?? '';
|
|
160
|
+
if (!effectiveTxParams.recipients?.length &&
|
|
161
|
+
!isStakingIntent &&
|
|
162
|
+
!exports.NO_RECIPIENT_TX_TYPES.has(txType) &&
|
|
163
|
+
!exports.NO_RECIPIENT_TX_TYPES.has(intentType)) {
|
|
164
|
+
throw new errors_1.InvalidTransactionError('Recipient details are required to verify this transaction before signing. Pass txParams with at least one recipient.');
|
|
165
|
+
}
|
|
166
|
+
return effectiveTxParams;
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjaXBpZW50VXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYml0Z28vdXRpbHMvdHNzL3JlY2lwaWVudFV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWlJQSw0REE4REM7QUE5TEQseUNBQXVEO0FBR3ZEOzs7Ozs7Ozs7Ozs7O0dBYUc7QUFDVSxRQUFBLHFCQUFxQixHQUFHLElBQUksR0FBRyxDQUFDO0lBQzNDLGNBQWM7SUFDZCxjQUFjO0lBQ2QsV0FBVztJQUNYLGVBQWU7SUFDZixlQUFlO0lBQ2YsYUFBYTtJQUNiLGFBQWE7SUFDYixhQUFhO0lBQ2IsYUFBYTtJQUNiLGNBQWM7SUFDZCxjQUFjO0lBQ2QsVUFBVTtJQUNWLGdGQUFnRjtJQUNoRixhQUFhO0lBQ2IsYUFBYTtJQUNiLGNBQWM7SUFDZCwyRUFBMkU7SUFDM0UsNkVBQTZFO0lBQzdFLHVFQUF1RTtJQUN2RSw4RUFBOEU7SUFDOUUsK0VBQStFO0lBQy9FLCtEQUErRDtJQUMvRCw2RUFBNkU7SUFDN0UsdUJBQXVCO0lBQ3ZCLFlBQVk7SUFDWixhQUFhO0lBQ2IsY0FBYztJQUNkLGVBQWU7SUFDZix1RkFBdUY7SUFDdkYsdUZBQXVGO0lBQ3ZGLDJDQUEyQztJQUMzQyxhQUFhO0lBQ2IsTUFBTTtJQUNOLFFBQVE7SUFDUixnQkFBZ0I7SUFDaEIsbUVBQW1FO0lBQ25FLGNBQWM7SUFFZCwwRkFBMEY7SUFDMUYsK0RBQStEO0lBQy9ELFVBQVU7SUFDVixZQUFZO0lBQ1osaUJBQWlCO0lBRWpCLDhCQUE4QjtJQUM5QixPQUFPO0lBQ1AsU0FBUztJQUNULG1CQUFtQjtJQUNuQixxQkFBcUI7SUFDckIsZUFBZTtJQUNmLGVBQWU7SUFDZixXQUFXO0lBRVgsc0ZBQXNGO0lBQ3RGLE9BQU87SUFDUCxtQkFBbUI7SUFFbkIsZUFBZTtJQUNmLHdIQUF3SDtJQUN4SCxnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLHdCQUF3QjtJQUN4Qix3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LE9BQU8saUJBQWlCLENBQUM7QUFDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRyYW5zYWN0aW9uUGFyYW1zIH0gZnJvbSAnLi4vLi4vYmFzZUNvaW4nO1xuaW1wb3J0IHsgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICcuLi8uLi9lcnJvcnMnO1xuaW1wb3J0IHsgUG9wdWxhdGVkSW50ZW50LCBUeFJlcXVlc3QgfSBmcm9tICcuL2Jhc2VUeXBlcyc7XG5cbi8qKlxuICogVHJhbnNhY3Rpb24gdHlwZXMgdGhhdCBsZWdpdGltYXRlbHkgY2Fycnkgbm8gZXhwbGljaXQgcmVjaXBpZW50cy5cbiAqIFRoZXNlIGFyZSB0aGUgaW50ZW50VHlwZSBzdHJpbmdzIGFzIHN0b3JlZCBpbiBUeFJlcXVlc3QuaW50ZW50LmludGVudFR5cGUgYnkgV1AuXG4gKiB2ZXJpZnlUcmFuc2FjdGlvbiBoYW5kbGVzIG5vLXJlY2lwaWVudCB2YWxpZGF0aW9uIGZvciB0aGVzZSBpbnRlcm5hbGx5LlxuICogTWlycm9ycyB0aGUgYnlwYXNzIGxpc3QgaW4gYWJzdHJhY3RFdGhMaWtlTmV3Q29pbnMudHMgdmVyaWZ5VHNzVHJhbnNhY3Rpb24uXG4gKlxuICogRUNEU0EgdHlwZXM6IGFjY2VsZXJhdGlvbiwgZmlsbE5vbmNlLCB0cmFuc2ZlclRva2VuLCB0b2tlbkFwcHJvdmFsLCBjb25zb2xpZGF0ZSxcbiAqICAgICAgICAgICAgICBicmlkZ2VGdW5kcywgZW5hYmxlVG9rZW4sIGN1c3RvbVR4LCB3cmFwQXBwcm92ZSwgd3JhcCwgdW53cmFwLFxuICogICAgICAgICAgICAgIGZpbmFsaXplVW53cmFwLCBjb250cmFjdENhbGxcbiAqIEJTQy9CTkIgZGVsZWdhdGlvbi1iYXNlZCBzdGFraW5nOiBkZWxlZ2F0ZSwgdW5kZWxlZ2F0ZSwgc3dpdGNoVmFsaWRhdG9yXG4gKiBDRUxPL0VUSCBsb2NrLWJhc2VkIHN0YWtpbmc6IHN0YWtlLCB1bnN0YWtlLCBzdGFrZVdpdGhDYWxsRGF0YSwgdW5zdGFrZVdpdGhDYWxsRGF0YSxcbiAqICAgICAgICAgICAgICB0cmFuc2ZlclN0YWtlLCBpbmNyZWFzZVN0YWtlLCBnb1Vuc3Rha2VcbiAqIENsYWltIHJld2FyZHMgKEJTQywgQ0VMTyDigJQgVFJYL1NPTCB1c2UgRWREU0EgYW5kIGFyZSB1bmFmZmVjdGVkKTogY2xhaW0sIHN0YWtlQ2xhaW1SZXdhcmRzXG4gKi9cbmV4cG9ydCBjb25zdCBOT19SRUNJUElFTlRfVFhfVFlQRVMgPSBuZXcgU2V0KFtcbiAgLy8gRUNEU0EgdHlwZXNcbiAgJ2FjY2VsZXJhdGlvbicsXG4gICdmaWxsTm9uY2UnLFxuICAndHJhbnNmZXJUb2tlbicsXG4gICd0b2tlbkFwcHJvdmFsJyxcbiAgJ2NvbnNvbGlkYXRlJyxcbiAgJ2JyaWRnZUZ1bmRzJyxcbiAgJ2VuYWJsZVRva2VuJyxcbiAgJ2VuYWJsZXRva2VuJyxcbiAgJ2Rpc2FibGVUb2tlbicsXG4gICdkaXNhYmxldG9rZW4nLFxuICAnY3VzdG9tVHgnLFxuICAvLyBEZUZpIHZhdWx0IG9wZXJhdGlvbnMg4oCUIHJlY2lwaWVudHMvY2FsbGRhdGEgYnVpbHQgc2VydmVyLXNpZGUgZnJvbSBkZWZpUGFyYW1zXG4gICdkZWZpQXBwcm92ZScsXG4gICdkZWZpRGVwb3NpdCcsXG4gICdkZWZpV2l0aGRyYXcnLFxuICAvLyBOYXRpdmUgd3JhcC91bndyYXAgKFdFVEg5IGRlcG9zaXQoKS93aXRoZHJhdygpKSDigJQgY2FsbGRhdGEgYW5kIHRoZSBXRVRIOVxuICAvLyBhZGRyZXNzIGFyZSByZXNvbHZlZCBzZXJ2ZXItc2lkZSBmcm9tIHRoZSB2YXVsdCBiaW5kaW5nLCBzbyBubyByZWNpcGllbnRzLlxuICAvLyBSZWdpc3RlcmVkIGluIEJPVEggc3BlbGxpbmdzIG9uIHB1cnBvc2U6IHRoaXMgc2V0IGlzIG1hdGNoZWQgYWdhaW5zdFxuICAvLyB0eFBhcmFtcy50eXBlLCB3aGljaCBpcyBidWlsZFBhcmFtcy50eXBlIChjYW1lbENhc2UsIGZyb20gd2FsbGV0LnNlbmRNYW55KSxcbiAgLy8gQU5EIGFnYWluc3QgaW50ZW50LmludGVudFR5cGUgKGtlYmFiLWNhc2UsIGFzIFdQIHBlcnNpc3RzIGl0KS4gU2lnbmluZyBwYXRoc1xuICAvLyB0aGF0IGNhcnJ5IG5vIHR4UGFyYW1zIOKAlCBub3RhYmx5IHBlbmRpbmdBcHByb3ZhbC5hcHByb3ZlKCkg4oaSXG4gIC8vIHJlY3JlYXRlVHhSZXF1ZXN0KCkg4oaSIHNpZ25UeFJlcXVlc3QoKSB3aXRoIG5vIHR4UGFyYW1zIOKAlCBvbmx5IGV2ZXIgc2VlIHRoZVxuICAvLyBrZWJhYi1jYXNlIHNwZWxsaW5nLlxuICAnd3JhcE5hdGl2ZScsXG4gICd3cmFwLW5hdGl2ZScsXG4gICd1bndyYXBOYXRpdmUnLFxuICAndW53cmFwLW5hdGl2ZScsXG4gIC8vIEVSQy03OTg0IHNoaWVsZC91bnNoaWVsZDogYXBwcm92ZS93cmFwL3Vud3JhcCBjYWxsZGF0YSBpcyBidWlsdCBzZXJ2ZXItc2lkZSBmcm9tIHRoZVxuICAvLyBpbnRlbnQsIGFuZCBmaW5hbGl6ZVVud3JhcCB0eG5SZXFzIGFyZSBXUC1jcmVhdGVkIGF0IFJFQURZX1RPX0ZJTkFMSVpFIChjbGllbnQgc2lnbnNcbiAgLy8gb25seSkg4oCUIG5vbmUgY2FycnkgU0RLLWxldmVsIHJlY2lwaWVudHMuXG4gICd3cmFwQXBwcm92ZScsXG4gICd3cmFwJyxcbiAgJ3Vud3JhcCcsXG4gICdmaW5hbGl6ZVVud3JhcCcsXG4gIC8vIFNtYXJ0IGNvbnRyYWN0IGludm9jYXRpb25zIHdpdGggbm8gZXhwbGljaXQgU0RLLWxldmVsIHJlY2lwaWVudHNcbiAgJ2NvbnRyYWN0Q2FsbCcsXG5cbiAgLy8gQlNDL0JOQiBkZWxlZ2F0aW9uLWJhc2VkIHN0YWtpbmcg4oCUIGludGVudFR5cGUgc3RyaW5ncyBmcm9tIFR4UmVxdWVzdC5pbnRlbnQuaW50ZW50VHlwZS5cbiAgLy8gTm90ZTogU09MIHNvbERlbGVnYXRlSW50ZW50IGFsc28gdXNlcyBpbnRlbnRUeXBlIFwiZGVsZWdhdGVcIi5cbiAgJ2RlbGVnYXRlJyxcbiAgJ3VuZGVsZWdhdGUnLFxuICAnc3dpdGNoVmFsaWRhdG9yJyxcblxuICAvLyBDRUxPL0VUSCBsb2NrLWJhc2VkIHN0YWtpbmdcbiAgJ3N0YWtlJyxcbiAgJ3Vuc3Rha2UnLFxuICAnc3Rha2VXaXRoQ2FsbERhdGEnLFxuICAndW5zdGFrZVdpdGhDYWxsRGF0YScsXG4gICd0cmFuc2ZlclN0YWtlJyxcbiAgJ2luY3JlYXNlU3Rha2UnLFxuICAnZ29VbnN0YWtlJyxcblxuICAvLyBDbGFpbSByZXdhcmRzIOKAlCBCU0MgYW5kIENFTE8gKFRSWC9TT0wvQ29zbW9zIHVzZSBFZERTQSwgbm90IGFmZmVjdGVkIGJ5IHRoaXMgZ3VhcmQpXG4gICdjbGFpbScsXG4gICdzdGFrZUNsYWltUmV3YXJkcycsXG5cbiAgJ2NyZWF0ZUFjY291bnQnLFxuICAvLyBDYW50b24gb3BlcmF0aW9ucyB3aXRoIG5vIFNESy1sZXZlbCByZWNpcGllbnRzLiBDYW50b24udmVyaWZ5VHJhbnNhY3Rpb24gdmFsaWRhdGVzIHRoZXNlIGZyb20gdGhlIHRyYW5zYWN0aW9uIGl0c2VsZi5cbiAgJ3RyYW5zZmVyQWNjZXB0JyxcbiAgJ3RyYW5zZmVyUmVqZWN0JyxcbiAgJ3RyYW5zZmVyT2ZmZXJXaXRoZHJhd24nLFxuICAnY29zaWduRGVsZWdhdGlvbkFjY2VwdCcsXG4gICdhbGxvY2F0aW9uQWxsb2NhdGUnLFxuICAnYWxsb2NhdGlvbk9mZmVyV2l0aGRyYXduJyxcbiAgJ2NhbnRvbkNvbW1hbmQnLFxuICAnY2FudG9uRW5kSW52ZXN0b3JPbmJvYXJkaW5nT2ZmZXInLFxuICAnY2FudG9uRW5kSW52ZXN0b3JPbmJvYXJkaW5nQWNjZXB0JyxcbiAgJ2NhbnRvbkVuZEludmVzdG9yT25ib2FyZGluZ1JlamVjdCcsXG4gICdjYW50b25QYXJ0aWNpcGFudE9uYm9hcmRpbmdSZXF1ZXN0JyxcblxuICAncGxlZGdlJyxcblxuICAvLyBBdmFsYW5jaGUgLyBGbGFyZSBjcm9zcy1jaGFpbiBhdG9taWMgaW1wb3J0cyDigJQgcmVjaXBpZW50cyBhcmUgbm90IHN1cHBsaWVkXG4gIC8vIGJ5IHRoZSBjbGllbnQgYmVjYXVzZSB0aGUgaW1wb3J0IGNvbnN1bWVzIFVUWE9zIGFscmVhZHkgb3duZWQgYnkgdGhlXG4gIC8vIHdhbGxldDsgdGhlIGRlc3RpbmF0aW9uIGFkZHJlc3MgaXMgdGhlIHdhbGxldCBpdHNlbGYuIFdQIGlzc3VlcyB0aGVzZVxuICAvLyB3aXRoIGludGVudFR5cGUgJ2ltcG9ydCcgKFAtY2hhaW4pIG9yICdpbXBvcnR0b2MnIChDLWNoYWluKS5cbiAgJ2ltcG9ydCcsXG4gICdpbXBvcnR0b2MnLFxuXG4gIC8vIFNPTDogZGVhY3RpdmF0ZSBzdGFrZSBhY2NvdW50IOKAlCBubyBvbi1jaGFpbiB0cmFuc2ZlciByZWNpcGllbnQuXG4gICdkZWFjdGl2YXRlJyxcblxuICAvLyBTT0w6IGF1dGhvcml6ZSBzdGFrZSBhY2NvdW50IOKAlCBubyB0cmFuc2ZlciByZWNpcGllbnQuXG4gICdhdXRob3JpemUnLFxuXSk7XG5cbi8qKlxuICogUmVzb2x2ZXMgdGhlIGVmZmVjdGl2ZSB0eFBhcmFtcyBmb3IgVFNTIHNpZ25pbmcgcmVjaXBpZW50IHZlcmlmaWNhdGlvbi5cbiAqXG4gKiBGb3Igc21hcnQgY29udHJhY3QgaW50ZXJhY3Rpb25zLCByZWNpcGllbnRzIGxpdmUgaW4gdHhSZXF1ZXN0LmludGVudC5yZWNpcGllbnRzXG4gKiAobmF0aXZlIGFtb3VudCA9IDAsIHNvIGJ1aWxkUGFyYW1zIGlzIGVtcHR5KS4gRmFsbHMgYmFjayB0byBpbnRlbnQgcmVjaXBpZW50c1xuICogbWFwcGVkIHRvIElUcmFuc2FjdGlvblJlY2lwaWVudCBzaGFwZSB3aGVuIHR4UGFyYW1zLnJlY2lwaWVudHMgaXMgYWJzZW50LlxuICpcbiAqIHRva2VuTmFtZSBpcyBkZXJpdmVkIGZyb20gdG9rZW5EYXRhLnRva2VuTmFtZSB3aGVuIHByZXNlbnQsIG90aGVyd2lzZSBmcm9tXG4gKiBhbW91bnQuc3ltYm9sIHdoZW4gY2hhaW5OYW1lIGlzIHByb3ZpZGVkIGFuZCBzeW1ib2wgZGlmZmVycyBmcm9tIGl0LlxuICpcbiAqIFN0YWtpbmcgaW50ZW50cyAoQlNDIGRlbGVnYXRlL3VuZGVsZWdhdGUsIENFTE8gc3Rha2UvdW5zdGFrZSwgZXRjLikgYXJlXG4gKiBpZGVudGlmaWVkIGdlbmVyaWNhbGx5IGJ5IHRoZSBwcmVzZW5jZSBvZiBgc3Rha2luZ1JlcXVlc3RJZGAgb24gdGhlIGludGVudCDigJRcbiAqIGEgcmVxdWlyZWQgZmllbGQgb24gQmFzZVN0YWtlSW50ZW50IGluIEBiaXRnby9wdWJsaWMtdHlwZXMuIFRoZXNlIGludGVudHNcbiAqIGhhdmUgbm8gdHhQYXJhbXMgcmVjaXBpZW50cyBieSBkZXNpZ247IHZhbGlkYXRpb24gaXMgZG9uZSBhdCB0aGUgY29pbiBsYXllci5cbiAqXG4gKiBUaHJvd3MgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgaWYgbm8gcmVjaXBpZW50cyBjYW4gYmUgcmVzb2x2ZWQgYW5kIHRoZVxuICogdHJhbnNhY3Rpb24gaXMgbm90IGEga25vd24gbm8tcmVjaXBpZW50IHR5cGUuXG4gKlxuICogQHBhcmFtIHR4UmVxdWVzdCAtIHRoZSB0cmFuc2FjdGlvbiByZXF1ZXN0IGNvbnRhaW5pbmcgdGhlIHBlcnNpc3RlZCBpbnRlbnRcbiAqIEBwYXJhbSB0eFBhcmFtcyAtIHRoZSBjYWxsZXItc3VwcGxpZWQgdHJhbnNhY3Rpb24gcGFyYW1ldGVycyAobWF5IGJlIHVuZGVmaW5lZClcbiAqIEBwYXJhbSBjaGFpbk5hbWUgLSB0aGUgYmFzZSBjaGFpbiBuYW1lIChlLmcuICdzb2wnLCAndHNvbCcpIHVzZWQgdG8gZXhjbHVkZVxuICogICBuYXRpdmUtY29pbiB0cmFuc2ZlcnMgZnJvbSB0b2tlbk5hbWU7IHBhc3MgYmFzZUNvaW4uZ2V0Q2hhaW4oKVxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVzb2x2ZUVmZmVjdGl2ZVR4UGFyYW1zKFxuICB0eFJlcXVlc3Q6IFR4UmVxdWVzdCxcbiAgdHhQYXJhbXM6IFRyYW5zYWN0aW9uUGFyYW1zIHwgdW5kZWZpbmVkLFxuICBjaGFpbk5hbWU/OiBzdHJpbmdcbik6IFRyYW5zYWN0aW9uUGFyYW1zIHtcbiAgY29uc3QgaW50ZW50UmVjaXBpZW50cyA9ICh0eFJlcXVlc3QuaW50ZW50IGFzIFBvcHVsYXRlZEludGVudCk/LnJlY2lwaWVudHM/Lm1hcCgoaW50ZW50UmVjaXBpZW50KSA9PiB7XG4gICAgLy8gUHJlZmVyIHRva2VuRGF0YS50b2tlbk5hbWU7IGZhbGwgYmFjayB0byBhbW91bnQuc3ltYm9sIHdoZW4gY2hhaW5OYW1lIGlzXG4gICAgLy8gcHJvdmlkZWQgYW5kIGRpZmZlcnMgZnJvbSBpdC4gV2hlbiBhYnNlbnQsIHNraXAgdGhlIHN5bWJvbCBmYWxsYmFjay5cbiAgICBjb25zdCB7IHN5bWJvbCB9ID0gaW50ZW50UmVjaXBpZW50LmFtb3VudDtcbiAgICBjb25zdCB0b2tlbk5hbWUgPVxuICAgICAgaW50ZW50UmVjaXBpZW50LnRva2VuRGF0YT8udG9rZW5OYW1lIHx8XG4gICAgICAoY2hhaW5OYW1lICE9PSB1bmRlZmluZWQgJiYgc3ltYm9sICYmIHN5bWJvbCAhPT0gY2hhaW5OYW1lID8gc3ltYm9sIDogdW5kZWZpbmVkKTtcbiAgICByZXR1cm4ge1xuICAgICAgYWRkcmVzczogaW50ZW50UmVjaXBpZW50LmFkZHJlc3MuYWRkcmVzcyxcbiAgICAgIGFtb3VudDogaW50ZW50UmVjaXBpZW50LmFtb3VudC52YWx1ZSxcbiAgICAgIGRhdGE6IGludGVudFJlY2lwaWVudC5kYXRhLFxuICAgICAgLi4uKHRva2VuTmFtZSAmJiB7IHRva2VuTmFtZSB9KSxcbiAgICB9O1xuICB9KTtcblxuICBjb25zdCBlZmZlY3RpdmVUeFBhcmFtczogVHJhbnNhY3Rpb25QYXJhbXMgPSB7XG4gICAgLi4udHhQYXJhbXMsXG4gICAgcmVjaXBpZW50czogdHhQYXJhbXM/LnJlY2lwaWVudHM/Lmxlbmd0aCA/IHR4UGFyYW1zLnJlY2lwaWVudHMgOiBpbnRlbnRSZWNpcGllbnRzLFxuICB9O1xuXG4gIC8vIEZhbGwgYmFjayB0byBpbnRlbnQuaW50ZW50VHlwZSB3aGVuIHR4UGFyYW1zLnR5cGUgaXMgbm90IGV4cGxpY2l0bHkgc2V0LlxuICAvLyBTdGFraW5nIHdhbGxldHMgY2FsbCBzaWduVHJhbnNhY3Rpb24gd2l0aG91dCB0eFBhcmFtcywgc28gdGhlIHR5cGUgbGl2ZXMgb25seSBpbiB0aGUgaW50ZW50LlxuICBjb25zdCB0eFR5cGUgPSBlZmZlY3RpdmVUeFBhcmFtcy50eXBlID8/ICh0eFJlcXVlc3QuaW50ZW50IGFzIFBvcHVsYXRlZEludGVudCk/LmludGVudFR5cGUgPz8gJyc7XG5cbiAgLy8gUHJvcGFnYXRlIHRoZSByZXNvbHZlZCB0eXBlIHNvIGRvd25zdHJlYW0gY2FsbGVyc1xuICBpZiAoIWVmZmVjdGl2ZVR4UGFyYW1zLnR5cGUgJiYgdHhUeXBlKSB7XG4gICAgZWZmZWN0aXZlVHhQYXJhbXMudHlwZSA9IHR4VHlwZTtcbiAgfVxuXG4gIC8vIFByb3BhZ2F0ZSBzdGFraW5nUmVxdWVzdElkIGZyb20gaW50ZW50IGludG8gZWZmZWN0aXZlVHhQYXJhbXMgc28gdmVyaWZ5VHNzVHJhbnNhY3Rpb25cbiAgLy8gb3ZlcnJpZGVzIGNhbiBieXBhc3MgdGhlIG5vLXJlY2lwaWVudCBndWFyZCB3aXRob3V0IG5lZWRpbmcgYWNjZXNzIHRvIHR4UmVxdWVzdCBkaXJlY3RseS5cbiAgY29uc3QgaW50ZW50U3Rha2luZ1JlcXVlc3RJZCA9ICh0eFJlcXVlc3QuaW50ZW50IGFzIFBvcHVsYXRlZEludGVudCk/LnN0YWtpbmdSZXF1ZXN0SWQ7XG4gIGlmIChpbnRlbnRTdGFraW5nUmVxdWVzdElkICYmICFlZmZlY3RpdmVUeFBhcmFtcy5zdGFraW5nUmVxdWVzdElkKSB7XG4gICAgZWZmZWN0aXZlVHhQYXJhbXMuc3Rha2luZ1JlcXVlc3RJZCA9IGludGVudFN0YWtpbmdSZXF1ZXN0SWQ7XG4gIH1cblxuICAvLyBBbGwgc3Rha2luZyBpbnRlbnRzIChCU0MgZGVsZWdhdGUvdW5kZWxlZ2F0ZSwgQ0VMTyBzdGFrZS91bnN0YWtlLCBldGMuKSBjYXJyeVxuICAvLyBzdGFraW5nUmVxdWVzdElkIGFzIGEgcmVxdWlyZWQgZmllbGQgb24gQmFzZVN0YWtlSW50ZW50IChAYml0Z28vcHVibGljLXR5cGVzKS5cbiAgLy8gVXNlIGl0cyBwcmVzZW5jZSBhcyBhIGdlbmVyaWMgc3Rha2luZyBzaWduYWwg4oCUIG5vIG5lZWQgdG8gZW51bWVyYXRlIGV2ZXJ5IGludGVudFR5cGUuXG4gIGNvbnN0IGlzU3Rha2luZ0ludGVudCA9ICEhKHR4UmVxdWVzdC5pbnRlbnQgYXMgUG9wdWxhdGVkSW50ZW50KT8uc3Rha2luZ1JlcXVlc3RJZDtcblxuICAvLyBidWlsZFBhcmFtcy50eXBlIGZyb20gdGhlIHdhbGxldCBVSSBpcyBQYXNjYWxDYXNlICgnSW1wb3J0Jyk7IGludGVudC5pbnRlbnRUeXBlIGZyb20gV1BcbiAgLy8gaXMgbG93ZXJjYXNlICgnaW1wb3J0JykuIEVpdGhlciBtYXkgYmUgdGhlIHNvdXJjZSBvZiB0cnV0aCBkZXBlbmRpbmcgb24gdGhlIHNpZ25pbmcgcGF0aC5cbiAgY29uc3QgaW50ZW50VHlwZSA9ICh0eFJlcXVlc3QuaW50ZW50IGFzIFBvcHVsYXRlZEludGVudCk/LmludGVudFR5cGUgPz8gJyc7XG5cbiAgaWYgKFxuICAgICFlZmZlY3RpdmVUeFBhcmFtcy5yZWNpcGllbnRzPy5sZW5ndGggJiZcbiAgICAhaXNTdGFraW5nSW50ZW50ICYmXG4gICAgIU5PX1JFQ0lQSUVOVF9UWF9UWVBFUy5oYXModHhUeXBlKSAmJlxuICAgICFOT19SRUNJUElFTlRfVFhfVFlQRVMuaGFzKGludGVudFR5cGUpXG4gICkge1xuICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcihcbiAgICAgICdSZWNpcGllbnQgZGV0YWlscyBhcmUgcmVxdWlyZWQgdG8gdmVyaWZ5IHRoaXMgdHJhbnNhY3Rpb24gYmVmb3JlIHNpZ25pbmcuIFBhc3MgdHhQYXJhbXMgd2l0aCBhdCBsZWFzdCBvbmUgcmVjaXBpZW50LidcbiAgICApO1xuICB9XG5cbiAgcmV0dXJuIGVmZmVjdGl2ZVR4UGFyYW1zO1xufVxuIl19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { RedpallasBitgoToOVC1Round1Response, RedpallasBitgoToOVC1Round2Response, RedpallasMPCv2KeyGenRound1Response, RedpallasMPCv2KeyGenRound2Response, RedpallasOVC1ToBitgoRound1Payload, RedpallasOVC2ToBitgoRound2Payload } from '@bitgo/public-types';
|
|
2
|
+
import { IBaseCoin } from '../../../../baseCoin';
|
|
3
|
+
import { BitGoBase } from '../../../../bitgoBase';
|
|
4
|
+
import { Keychain } from '../../../..';
|
|
5
|
+
import { RedpallasMPCv2KeyGenSendFn } from '../redpallasMPCv2KeyGenSender';
|
|
6
|
+
/**
|
|
7
|
+
* Custodial (SMC/OVC) DKG-only key generation for the Zcash Orchard shielded pool (RedPallas).
|
|
8
|
+
*
|
|
9
|
+
* Mirrors for both custodial and SMC wallet
|
|
10
|
+
* ceremonies driven by external OVC (offline vault console) clients: round1/round2 payloads are
|
|
11
|
+
* relayed from OVC1/OVC2 to BitGo and back. There is no round3 (no signing) - RedPallas MPS DKG
|
|
12
|
+
* completes key generation in 2 online rounds, same as EdDSA MPS DKG.
|
|
13
|
+
*/
|
|
14
|
+
export declare class RedpallasMPCv2SMCUtils {
|
|
15
|
+
private bitgo;
|
|
16
|
+
private baseCoin;
|
|
17
|
+
private MPCv2Utils;
|
|
18
|
+
constructor(bitgo: BitGoBase, baseCoin: IBaseCoin);
|
|
19
|
+
keyGenRound1(enterprise: string, payload: RedpallasOVC1ToBitgoRound1Payload): Promise<RedpallasBitgoToOVC1Round1Response>;
|
|
20
|
+
keyGenRound2(enterprise: string, payload: RedpallasOVC2ToBitgoRound2Payload): Promise<RedpallasBitgoToOVC1Round2Response>;
|
|
21
|
+
keyGenRound1BySender(senderFn: RedpallasMPCv2KeyGenSendFn<RedpallasMPCv2KeyGenRound1Response>, payload: RedpallasOVC1ToBitgoRound1Payload): Promise<RedpallasBitgoToOVC1Round1Response>;
|
|
22
|
+
keyGenRound2BySender(senderFn: RedpallasMPCv2KeyGenSendFn<RedpallasMPCv2KeyGenRound2Response>, payload: RedpallasOVC2ToBitgoRound2Payload): Promise<RedpallasBitgoToOVC1Round2Response>;
|
|
23
|
+
uploadClientKeys(bitgoKeyId: string, userCommonKeychain: string, backupCommonKeychain: string): Promise<{
|
|
24
|
+
userKeychain: Keychain;
|
|
25
|
+
backupKeychain: Keychain;
|
|
26
|
+
bitgoKeychain: Keychain;
|
|
27
|
+
}>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../../../src/bitgo/utils/tss/redpallas/SMC/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,kCAAkC,EAClC,kCAAkC,EAElC,kCAAkC,EAClC,kCAAkC,EAClC,iCAAiC,EACjC,iCAAiC,EAClC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAgB,QAAQ,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,0BAA0B,EAAsC,MAAM,+BAA+B,CAAC;AAE/G;;;;;;;GAOG;AACH,qBAAa,sBAAsB;IAGrB,OAAO,CAAC,KAAK;IAAa,OAAO,CAAC,QAAQ;IAFtD,OAAO,CAAC,UAAU,CAAsB;gBAEpB,KAAK,EAAE,SAAS,EAAU,QAAQ,EAAE,SAAS;IAIpD,YAAY,CACvB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,kCAAkC,CAAC;IAIjC,YAAY,CACvB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,kCAAkC,CAAC;IAIjC,oBAAoB,CAC/B,QAAQ,EAAE,0BAA0B,CAAC,kCAAkC,CAAC,EACxE,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,kCAAkC,CAAC;IAwCjC,oBAAoB,CAC/B,QAAQ,EAAE,0BAA0B,CAAC,kCAAkC,CAAC,EACxE,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,kCAAkC,CAAC;IAsDjC,gBAAgB,CAC3B,UAAU,EAAE,MAAM,EAClB,kBAAkB,EAAE,MAAM,EAC1B,oBAAoB,EAAE,MAAM,GAC3B,OAAO,CAAC;QAAE,YAAY,EAAE,QAAQ,CAAC;QAAC,cAAc,EAAE,QAAQ,CAAC;QAAC,aAAa,EAAE,QAAQ,CAAA;KAAE,CAAC;CA8B1F"}
|