@bsv/sdk 1.3.13 → 1.3.14
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/cjs/mod.js +15 -15
- package/dist/cjs/mod.js.map +1 -1
- package/dist/cjs/package.json +7 -3
- package/dist/cjs/src/auth/Peer.js +71 -61
- package/dist/cjs/src/auth/Peer.js.map +1 -1
- package/dist/cjs/src/auth/SessionManager.js +10 -5
- package/dist/cjs/src/auth/SessionManager.js.map +1 -1
- package/dist/cjs/src/auth/certificates/Certificate.js +33 -30
- package/dist/cjs/src/auth/certificates/Certificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/MasterCertificate.js +36 -36
- package/dist/cjs/src/auth/certificates/MasterCertificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/VerifiableCertificate.js +9 -9
- package/dist/cjs/src/auth/certificates/VerifiableCertificate.js.map +1 -1
- package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js +45 -29
- package/dist/cjs/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
- package/dist/cjs/src/auth/certificates/index.js +5 -5
- package/dist/cjs/src/auth/certificates/index.js.map +1 -1
- package/dist/cjs/src/auth/clients/AuthFetch.js +65 -74
- package/dist/cjs/src/auth/clients/AuthFetch.js.map +1 -1
- package/dist/cjs/src/auth/clients/index.js +1 -1
- package/dist/cjs/src/auth/clients/index.js.map +1 -1
- package/dist/cjs/src/auth/index.js +7 -7
- package/dist/cjs/src/auth/index.js.map +1 -1
- package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js +99 -80
- package/dist/cjs/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
- package/dist/cjs/src/auth/transports/index.js +1 -1
- package/dist/cjs/src/auth/transports/index.js.map +1 -1
- package/dist/cjs/src/auth/utils/createNonce.js +6 -5
- package/dist/cjs/src/auth/utils/createNonce.js.map +1 -1
- package/dist/cjs/src/auth/utils/getVerifiableCertificates.js +2 -2
- package/dist/cjs/src/auth/utils/getVerifiableCertificates.js.map +1 -1
- package/dist/cjs/src/auth/utils/index.js +4 -4
- package/dist/cjs/src/auth/utils/index.js.map +1 -1
- package/dist/cjs/src/auth/utils/validateCertificates.js +7 -4
- package/dist/cjs/src/auth/utils/validateCertificates.js.map +1 -1
- package/dist/cjs/src/auth/utils/verifyNonce.js +5 -4
- package/dist/cjs/src/auth/utils/verifyNonce.js.map +1 -1
- package/dist/cjs/src/compat/BSM.js +16 -26
- package/dist/cjs/src/compat/BSM.js.map +1 -1
- package/dist/cjs/src/compat/ECIES.js +50 -52
- package/dist/cjs/src/compat/ECIES.js.map +1 -1
- package/dist/cjs/src/compat/HD.js +36 -46
- package/dist/cjs/src/compat/HD.js.map +1 -1
- package/dist/cjs/src/compat/Mnemonic.js +30 -39
- package/dist/cjs/src/compat/Mnemonic.js.map +1 -1
- package/dist/cjs/src/compat/Utxo.js +5 -5
- package/dist/cjs/src/compat/Utxo.js.map +1 -1
- package/dist/cjs/src/compat/index.js +16 -26
- package/dist/cjs/src/compat/index.js.map +1 -1
- package/dist/cjs/src/messages/EncryptedMessage.js +14 -14
- package/dist/cjs/src/messages/EncryptedMessage.js.map +1 -1
- package/dist/cjs/src/messages/SignedMessage.js +21 -20
- package/dist/cjs/src/messages/SignedMessage.js.map +1 -1
- package/dist/cjs/src/messages/index.js +9 -19
- package/dist/cjs/src/messages/index.js.map +1 -1
- package/dist/cjs/src/overlay-tools/LookupResolver.js +44 -32
- package/dist/cjs/src/overlay-tools/LookupResolver.js.map +1 -1
- package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js +12 -12
- package/dist/cjs/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
- package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js +11 -10
- package/dist/cjs/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
- package/dist/cjs/src/overlay-tools/index.js +8 -8
- package/dist/cjs/src/overlay-tools/index.js.map +1 -1
- package/dist/cjs/src/primitives/AESGCM.js +6 -5
- package/dist/cjs/src/primitives/AESGCM.js.map +1 -1
- package/dist/cjs/src/primitives/BasePoint.js +2 -2
- package/dist/cjs/src/primitives/BasePoint.js.map +1 -1
- package/dist/cjs/src/primitives/BigNumber.js +5 -4
- package/dist/cjs/src/primitives/BigNumber.js.map +1 -1
- package/dist/cjs/src/primitives/Curve.js +70 -36
- package/dist/cjs/src/primitives/Curve.js.map +1 -1
- package/dist/cjs/src/primitives/DRBG.js +6 -6
- package/dist/cjs/src/primitives/DRBG.js.map +1 -1
- package/dist/cjs/src/primitives/ECDSA.js +71 -55
- package/dist/cjs/src/primitives/ECDSA.js.map +1 -1
- package/dist/cjs/src/primitives/Hash.js +115 -105
- package/dist/cjs/src/primitives/Hash.js.map +1 -1
- package/dist/cjs/src/primitives/JacobianPoint.js +25 -15
- package/dist/cjs/src/primitives/JacobianPoint.js.map +1 -1
- package/dist/cjs/src/primitives/K256.js +2 -2
- package/dist/cjs/src/primitives/K256.js.map +1 -1
- package/dist/cjs/src/primitives/Mersenne.js +4 -4
- package/dist/cjs/src/primitives/Mersenne.js.map +1 -1
- package/dist/cjs/src/primitives/MontgomoryMethod.js +5 -5
- package/dist/cjs/src/primitives/MontgomoryMethod.js.map +1 -1
- package/dist/cjs/src/primitives/Point.js +114 -87
- package/dist/cjs/src/primitives/Point.js.map +1 -1
- package/dist/cjs/src/primitives/Polynomial.js +14 -14
- package/dist/cjs/src/primitives/Polynomial.js.map +1 -1
- package/dist/cjs/src/primitives/PrivateKey.js +48 -58
- package/dist/cjs/src/primitives/PrivateKey.js.map +1 -1
- package/dist/cjs/src/primitives/PublicKey.js +23 -23
- package/dist/cjs/src/primitives/PublicKey.js.map +1 -1
- package/dist/cjs/src/primitives/Random.js +2 -1
- package/dist/cjs/src/primitives/Random.js.map +1 -1
- package/dist/cjs/src/primitives/ReductionContext.js +10 -10
- package/dist/cjs/src/primitives/ReductionContext.js.map +1 -1
- package/dist/cjs/src/primitives/Schnorr.js +8 -8
- package/dist/cjs/src/primitives/Schnorr.js.map +1 -1
- package/dist/cjs/src/primitives/Signature.js +23 -23
- package/dist/cjs/src/primitives/Signature.js.map +1 -1
- package/dist/cjs/src/primitives/SymmetricKey.js +13 -13
- package/dist/cjs/src/primitives/SymmetricKey.js.map +1 -1
- package/dist/cjs/src/primitives/TransactionSignature.js +38 -38
- package/dist/cjs/src/primitives/TransactionSignature.js.map +1 -1
- package/dist/cjs/src/primitives/index.js +34 -44
- package/dist/cjs/src/primitives/index.js.map +1 -1
- package/dist/cjs/src/primitives/utils.js +38 -37
- package/dist/cjs/src/primitives/utils.js.map +1 -1
- package/dist/cjs/src/script/LockingScript.js +2 -2
- package/dist/cjs/src/script/LockingScript.js.map +1 -1
- package/dist/cjs/src/script/OP.js +3 -3
- package/dist/cjs/src/script/OP.js.map +1 -1
- package/dist/cjs/src/script/Script.js +47 -47
- package/dist/cjs/src/script/Script.js.map +1 -1
- package/dist/cjs/src/script/Spend.js +304 -311
- package/dist/cjs/src/script/Spend.js.map +1 -1
- package/dist/cjs/src/script/UnlockingScript.js +2 -2
- package/dist/cjs/src/script/UnlockingScript.js.map +1 -1
- package/dist/cjs/src/script/index.js +11 -11
- package/dist/cjs/src/script/index.js.map +1 -1
- package/dist/cjs/src/script/templates/P2PKH.js +55 -47
- package/dist/cjs/src/script/templates/P2PKH.js.map +1 -1
- package/dist/cjs/src/script/templates/PushDrop.js +57 -51
- package/dist/cjs/src/script/templates/PushDrop.js.map +1 -1
- package/dist/cjs/src/script/templates/RPuzzle.js +49 -48
- package/dist/cjs/src/script/templates/RPuzzle.js.map +1 -1
- package/dist/cjs/src/script/templates/index.js +6 -6
- package/dist/cjs/src/script/templates/index.js.map +1 -1
- package/dist/cjs/src/totp/index.js +1 -1
- package/dist/cjs/src/totp/index.js.map +1 -1
- package/dist/cjs/src/totp/totp.js +9 -8
- package/dist/cjs/src/totp/totp.js.map +1 -1
- package/dist/cjs/src/transaction/Beef.js +78 -67
- package/dist/cjs/src/transaction/Beef.js.map +1 -1
- package/dist/cjs/src/transaction/BeefParty.js +5 -5
- package/dist/cjs/src/transaction/BeefParty.js.map +1 -1
- package/dist/cjs/src/transaction/BeefTx.js +39 -33
- package/dist/cjs/src/transaction/BeefTx.js.map +1 -1
- package/dist/cjs/src/transaction/Broadcaster.js +3 -2
- package/dist/cjs/src/transaction/Broadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/MerklePath.js +60 -38
- package/dist/cjs/src/transaction/MerklePath.js.map +1 -1
- package/dist/cjs/src/transaction/Transaction.js +127 -85
- package/dist/cjs/src/transaction/Transaction.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/ARC.js +48 -43
- package/dist/cjs/src/transaction/broadcasters/ARC.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js +4 -3
- package/dist/cjs/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js +15 -15
- package/dist/cjs/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
- package/dist/cjs/src/transaction/broadcasters/index.js +6 -6
- package/dist/cjs/src/transaction/broadcasters/index.js.map +1 -1
- package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js +4 -3
- package/dist/cjs/src/transaction/chaintrackers/DefaultChainTracker.js.map +1 -1
- package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js +11 -11
- package/dist/cjs/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
- package/dist/cjs/src/transaction/chaintrackers/index.js +4 -4
- package/dist/cjs/src/transaction/chaintrackers/index.js.map +1 -1
- package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js +3 -3
- package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
- package/dist/cjs/src/transaction/fee-models/index.js +2 -2
- package/dist/cjs/src/transaction/fee-models/index.js.map +1 -1
- package/dist/cjs/src/transaction/http/DefaultHttpClient.js +12 -10
- package/dist/cjs/src/transaction/http/DefaultHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/FetchHttpClient.js +2 -1
- package/dist/cjs/src/transaction/http/FetchHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/NodejsHttpClient.js +8 -8
- package/dist/cjs/src/transaction/http/NodejsHttpClient.js.map +1 -1
- package/dist/cjs/src/transaction/http/index.js +6 -6
- package/dist/cjs/src/transaction/http/index.js.map +1 -1
- package/dist/cjs/src/transaction/index.js +12 -12
- package/dist/cjs/src/transaction/index.js.map +1 -1
- package/dist/cjs/src/wallet/CachedKeyDeriver.js +34 -11
- package/dist/cjs/src/wallet/CachedKeyDeriver.js.map +1 -1
- package/dist/cjs/src/wallet/KeyDeriver.js +10 -9
- package/dist/cjs/src/wallet/KeyDeriver.js.map +1 -1
- package/dist/cjs/src/wallet/ProtoWallet.js +68 -31
- package/dist/cjs/src/wallet/ProtoWallet.js.map +1 -1
- package/dist/cjs/src/wallet/WalletClient.js +18 -14
- package/dist/cjs/src/wallet/WalletClient.js.map +1 -1
- package/dist/cjs/src/wallet/WalletError.js +2 -2
- package/dist/cjs/src/wallet/WalletError.js.map +1 -1
- package/dist/cjs/src/wallet/index.js +12 -12
- package/dist/cjs/src/wallet/index.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js +2 -1
- package/dist/cjs/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js +11 -11
- package/dist/cjs/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireCalls.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js +239 -238
- package/dist/cjs/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js +311 -300
- package/dist/cjs/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/XDM.js +9 -7
- package/dist/cjs/src/wallet/substrates/XDM.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/index.js +12 -12
- package/dist/cjs/src/wallet/substrates/index.js.map +1 -1
- package/dist/cjs/src/wallet/substrates/window.CWI.js +32 -32
- package/dist/cjs/src/wallet/substrates/window.CWI.js.map +1 -1
- package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/esm/mod.js +15 -31
- package/dist/esm/mod.js.map +1 -1
- package/dist/esm/src/auth/Peer.js +64 -63
- package/dist/esm/src/auth/Peer.js.map +1 -1
- package/dist/esm/src/auth/SessionManager.js +11 -10
- package/dist/esm/src/auth/SessionManager.js.map +1 -1
- package/dist/esm/src/auth/certificates/Certificate.js +32 -34
- package/dist/esm/src/auth/certificates/Certificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/MasterCertificate.js +36 -43
- package/dist/esm/src/auth/certificates/MasterCertificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/VerifiableCertificate.js +9 -16
- package/dist/esm/src/auth/certificates/VerifiableCertificate.js.map +1 -1
- package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js +46 -33
- package/dist/esm/src/auth/certificates/__tests/CompletedProtoWallet.js.map +1 -1
- package/dist/esm/src/auth/certificates/index.js +4 -25
- package/dist/esm/src/auth/certificates/index.js.map +1 -1
- package/dist/esm/src/auth/clients/AuthFetch.js +66 -79
- package/dist/esm/src/auth/clients/AuthFetch.js.map +1 -1
- package/dist/esm/src/auth/clients/index.js +1 -17
- package/dist/esm/src/auth/clients/index.js.map +1 -1
- package/dist/esm/src/auth/index.js +7 -23
- package/dist/esm/src/auth/index.js.map +1 -1
- package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js +99 -85
- package/dist/esm/src/auth/transports/SimplifiedFetchTransport.js.map +1 -1
- package/dist/esm/src/auth/transports/index.js +1 -17
- package/dist/esm/src/auth/transports/index.js.map +1 -1
- package/dist/esm/src/auth/types.js +1 -2
- package/dist/esm/src/auth/utils/createNonce.js +5 -8
- package/dist/esm/src/auth/utils/createNonce.js.map +1 -1
- package/dist/esm/src/auth/utils/getVerifiableCertificates.js +3 -7
- package/dist/esm/src/auth/utils/getVerifiableCertificates.js.map +1 -1
- package/dist/esm/src/auth/utils/index.js +4 -20
- package/dist/esm/src/auth/utils/index.js.map +1 -1
- package/dist/esm/src/auth/utils/validateCertificates.js +8 -9
- package/dist/esm/src/auth/utils/validateCertificates.js.map +1 -1
- package/dist/esm/src/auth/utils/verifyNonce.js +4 -7
- package/dist/esm/src/auth/utils/verifyNonce.js.map +1 -1
- package/dist/esm/src/compat/BSM.js +14 -56
- package/dist/esm/src/compat/BSM.js.map +1 -1
- package/dist/esm/src/compat/ECIES.js +44 -75
- package/dist/esm/src/compat/ECIES.js.map +1 -1
- package/dist/esm/src/compat/HD.js +30 -69
- package/dist/esm/src/compat/HD.js.map +1 -1
- package/dist/esm/src/compat/Mnemonic.js +24 -62
- package/dist/esm/src/compat/Mnemonic.js.map +1 -1
- package/dist/esm/src/compat/Utxo.js +5 -11
- package/dist/esm/src/compat/Utxo.js.map +1 -1
- package/dist/esm/src/compat/bip-39-wordlist-en.js +1 -4
- package/dist/esm/src/compat/bip-39-wordlist-en.js.map +1 -1
- package/dist/esm/src/compat/index.js +5 -48
- package/dist/esm/src/compat/index.js.map +1 -1
- package/dist/esm/src/messages/EncryptedMessage.js +16 -24
- package/dist/esm/src/messages/EncryptedMessage.js.map +1 -1
- package/dist/esm/src/messages/SignedMessage.js +23 -30
- package/dist/esm/src/messages/SignedMessage.js.map +1 -1
- package/dist/esm/src/messages/index.js +2 -38
- package/dist/esm/src/messages/index.js.map +1 -1
- package/dist/esm/src/overlay-tools/LookupResolver.js +46 -43
- package/dist/esm/src/overlay-tools/LookupResolver.js.map +1 -1
- package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js +13 -19
- package/dist/esm/src/overlay-tools/OverlayAdminTokenTemplate.js.map +1 -1
- package/dist/esm/src/overlay-tools/SHIPBroadcaster.js +13 -20
- package/dist/esm/src/overlay-tools/SHIPBroadcaster.js.map +1 -1
- package/dist/esm/src/overlay-tools/index.js +5 -28
- package/dist/esm/src/overlay-tools/index.js.map +1 -1
- package/dist/esm/src/primitives/AESGCM.js +27 -39
- package/dist/esm/src/primitives/AESGCM.js.map +1 -1
- package/dist/esm/src/primitives/BasePoint.js +3 -9
- package/dist/esm/src/primitives/BasePoint.js.map +1 -1
- package/dist/esm/src/primitives/BigNumber.js +6 -8
- package/dist/esm/src/primitives/BigNumber.js.map +1 -1
- package/dist/esm/src/primitives/Curve.js +70 -43
- package/dist/esm/src/primitives/Curve.js.map +1 -1
- package/dist/esm/src/primitives/DRBG.js +7 -10
- package/dist/esm/src/primitives/DRBG.js.map +1 -1
- package/dist/esm/src/primitives/ECDSA.js +72 -65
- package/dist/esm/src/primitives/ECDSA.js.map +1 -1
- package/dist/esm/src/primitives/Hash.js +131 -141
- package/dist/esm/src/primitives/Hash.js.map +1 -1
- package/dist/esm/src/primitives/JacobianPoint.js +24 -21
- package/dist/esm/src/primitives/JacobianPoint.js.map +1 -1
- package/dist/esm/src/primitives/K256.js +2 -8
- package/dist/esm/src/primitives/K256.js.map +1 -1
- package/dist/esm/src/primitives/Mersenne.js +5 -11
- package/dist/esm/src/primitives/Mersenne.js.map +1 -1
- package/dist/esm/src/primitives/MontgomoryMethod.js +5 -11
- package/dist/esm/src/primitives/MontgomoryMethod.js.map +1 -1
- package/dist/esm/src/primitives/Point.js +104 -93
- package/dist/esm/src/primitives/Point.js.map +1 -1
- package/dist/esm/src/primitives/Polynomial.js +16 -24
- package/dist/esm/src/primitives/Polynomial.js.map +1 -1
- package/dist/esm/src/primitives/PrivateKey.js +42 -83
- package/dist/esm/src/primitives/PrivateKey.js.map +1 -1
- package/dist/esm/src/primitives/PublicKey.js +23 -29
- package/dist/esm/src/primitives/PublicKey.js.map +1 -1
- package/dist/esm/src/primitives/Random.js +4 -5
- package/dist/esm/src/primitives/Random.js.map +1 -1
- package/dist/esm/src/primitives/ReductionContext.js +11 -17
- package/dist/esm/src/primitives/ReductionContext.js.map +1 -1
- package/dist/esm/src/primitives/Schnorr.js +9 -15
- package/dist/esm/src/primitives/Schnorr.js.map +1 -1
- package/dist/esm/src/primitives/Signature.js +24 -30
- package/dist/esm/src/primitives/Signature.js.map +1 -1
- package/dist/esm/src/primitives/SymmetricKey.js +13 -19
- package/dist/esm/src/primitives/SymmetricKey.js.map +1 -1
- package/dist/esm/src/primitives/TransactionSignature.js +29 -60
- package/dist/esm/src/primitives/TransactionSignature.js.map +1 -1
- package/dist/esm/src/primitives/index.js +14 -66
- package/dist/esm/src/primitives/index.js.map +1 -1
- package/dist/esm/src/primitives/utils.js +55 -74
- package/dist/esm/src/primitives/utils.js.map +1 -1
- package/dist/esm/src/script/LockingScript.js +2 -8
- package/dist/esm/src/script/LockingScript.js.map +1 -1
- package/dist/esm/src/script/OP.js +4 -6
- package/dist/esm/src/script/OP.js.map +1 -1
- package/dist/esm/src/script/Script.js +48 -54
- package/dist/esm/src/script/Script.js.map +1 -1
- package/dist/esm/src/script/ScriptChunk.js +1 -2
- package/dist/esm/src/script/ScriptTemplate.js +1 -2
- package/dist/esm/src/script/Spend.js +297 -334
- package/dist/esm/src/script/Spend.js.map +1 -1
- package/dist/esm/src/script/UnlockingScript.js +2 -8
- package/dist/esm/src/script/UnlockingScript.js.map +1 -1
- package/dist/esm/src/script/index.js +6 -31
- package/dist/esm/src/script/index.js.map +1 -1
- package/dist/esm/src/script/templates/P2PKH.js +53 -51
- package/dist/esm/src/script/templates/P2PKH.js.map +1 -1
- package/dist/esm/src/script/templates/PushDrop.js +54 -52
- package/dist/esm/src/script/templates/PushDrop.js.map +1 -1
- package/dist/esm/src/script/templates/RPuzzle.js +51 -55
- package/dist/esm/src/script/templates/RPuzzle.js.map +1 -1
- package/dist/esm/src/script/templates/index.js +3 -12
- package/dist/esm/src/script/templates/index.js.map +1 -1
- package/dist/esm/src/totp/index.js +1 -17
- package/dist/esm/src/totp/index.js.map +1 -1
- package/dist/esm/src/totp/totp.js +10 -16
- package/dist/esm/src/totp/totp.js.map +1 -1
- package/dist/esm/src/transaction/Beef.js +89 -86
- package/dist/esm/src/transaction/Beef.js.map +1 -1
- package/dist/esm/src/transaction/BeefParty.js +6 -10
- package/dist/esm/src/transaction/BeefParty.js.map +1 -1
- package/dist/esm/src/transaction/BeefTx.js +40 -40
- package/dist/esm/src/transaction/BeefTx.js.map +1 -1
- package/dist/esm/src/transaction/Broadcaster.js +2 -6
- package/dist/esm/src/transaction/Broadcaster.js.map +1 -1
- package/dist/esm/src/transaction/ChainTracker.js +1 -2
- package/dist/esm/src/transaction/FeeModel.js +1 -2
- package/dist/esm/src/transaction/MerklePath.js +58 -41
- package/dist/esm/src/transaction/MerklePath.js.map +1 -1
- package/dist/esm/src/transaction/Transaction.js +121 -92
- package/dist/esm/src/transaction/Transaction.js.map +1 -1
- package/dist/esm/src/transaction/TransactionInput.js +1 -2
- package/dist/esm/src/transaction/TransactionOutput.js +1 -2
- package/dist/esm/src/transaction/broadcasters/ARC.js +49 -50
- package/dist/esm/src/transaction/broadcasters/ARC.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js +3 -9
- package/dist/esm/src/transaction/broadcasters/DefaultBroadcaster.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js +16 -19
- package/dist/esm/src/transaction/broadcasters/WhatsOnChainBroadcaster.js.map +1 -1
- package/dist/esm/src/transaction/broadcasters/index.js +3 -12
- package/dist/esm/src/transaction/broadcasters/index.js.map +1 -1
- package/dist/esm/src/transaction/chaintrackers/DefaultChainTracker.js +3 -9
- package/dist/esm/src/transaction/chaintrackers/DefaultChainTracker.js.map +1 -1
- package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js +12 -15
- package/dist/esm/src/transaction/chaintrackers/WhatsOnChain.js.map +1 -1
- package/dist/esm/src/transaction/chaintrackers/index.js +2 -10
- package/dist/esm/src/transaction/chaintrackers/index.js.map +1 -1
- package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js +4 -7
- package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -1
- package/dist/esm/src/transaction/fee-models/index.js +1 -8
- package/dist/esm/src/transaction/fee-models/index.js.map +1 -1
- package/dist/esm/src/transaction/http/DefaultHttpClient.js +11 -13
- package/dist/esm/src/transaction/http/DefaultHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/FetchHttpClient.js +2 -6
- package/dist/esm/src/transaction/http/FetchHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/HttpClient.js +1 -2
- package/dist/esm/src/transaction/http/NodejsHttpClient.js +9 -13
- package/dist/esm/src/transaction/http/NodejsHttpClient.js.map +1 -1
- package/dist/esm/src/transaction/http/index.js +3 -9
- package/dist/esm/src/transaction/http/index.js.map +1 -1
- package/dist/esm/src/transaction/index.js +6 -32
- package/dist/esm/src/transaction/index.js.map +1 -1
- package/dist/esm/src/wallet/CachedKeyDeriver.js +35 -15
- package/dist/esm/src/wallet/CachedKeyDeriver.js.map +1 -1
- package/dist/esm/src/wallet/KeyDeriver.js +11 -15
- package/dist/esm/src/wallet/KeyDeriver.js.map +1 -1
- package/dist/esm/src/wallet/ProtoWallet.js +66 -37
- package/dist/esm/src/wallet/ProtoWallet.js.map +1 -1
- package/dist/esm/src/wallet/Wallet.interfaces.js +2 -5
- package/dist/esm/src/wallet/Wallet.interfaces.js.map +1 -1
- package/dist/esm/src/wallet/WalletClient.js +19 -21
- package/dist/esm/src/wallet/WalletClient.js.map +1 -1
- package/dist/esm/src/wallet/WalletError.js +4 -8
- package/dist/esm/src/wallet/WalletError.js.map +1 -1
- package/dist/esm/src/wallet/index.js +8 -32
- package/dist/esm/src/wallet/index.js.map +1 -1
- package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js +3 -6
- package/dist/esm/src/wallet/substrates/HTTPWalletJSON.js.map +1 -1
- package/dist/esm/src/wallet/substrates/HTTPWalletWire.js +12 -18
- package/dist/esm/src/wallet/substrates/HTTPWalletWire.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWire.js +1 -2
- package/dist/esm/src/wallet/substrates/WalletWireCalls.js +1 -3
- package/dist/esm/src/wallet/substrates/WalletWireCalls.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWireProcessor.js +240 -245
- package/dist/esm/src/wallet/substrates/WalletWireProcessor.js.map +1 -1
- package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js +305 -307
- package/dist/esm/src/wallet/substrates/WalletWireTransceiver.js.map +1 -1
- package/dist/esm/src/wallet/substrates/XDM.js +10 -11
- package/dist/esm/src/wallet/substrates/XDM.js.map +1 -1
- package/dist/esm/src/wallet/substrates/index.js +7 -32
- package/dist/esm/src/wallet/substrates/index.js.map +1 -1
- package/dist/esm/src/wallet/substrates/window.CWI.js +33 -36
- package/dist/esm/src/wallet/substrates/window.CWI.js.map +1 -1
- package/dist/esm/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/types/mod.d.ts +15 -15
- package/dist/types/mod.d.ts.map +1 -1
- package/dist/types/src/auth/Peer.d.ts +4 -4
- package/dist/types/src/auth/Peer.d.ts.map +1 -1
- package/dist/types/src/auth/SessionManager.d.ts +1 -1
- package/dist/types/src/auth/SessionManager.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/Certificate.d.ts +6 -6
- package/dist/types/src/auth/certificates/Certificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/MasterCertificate.d.ts +6 -6
- package/dist/types/src/auth/certificates/MasterCertificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts +2 -2
- package/dist/types/src/auth/certificates/VerifiableCertificate.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts +23 -22
- package/dist/types/src/auth/certificates/__tests/CompletedProtoWallet.d.ts.map +1 -1
- package/dist/types/src/auth/certificates/index.d.ts +4 -4
- package/dist/types/src/auth/certificates/index.d.ts.map +1 -1
- package/dist/types/src/auth/clients/AuthFetch.d.ts +9 -9
- package/dist/types/src/auth/clients/AuthFetch.d.ts.map +1 -1
- package/dist/types/src/auth/clients/index.d.ts +1 -1
- package/dist/types/src/auth/clients/index.d.ts.map +1 -1
- package/dist/types/src/auth/index.d.ts +7 -7
- package/dist/types/src/auth/index.d.ts.map +1 -1
- package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts +1 -1
- package/dist/types/src/auth/transports/SimplifiedFetchTransport.d.ts.map +1 -1
- package/dist/types/src/auth/transports/index.d.ts +1 -1
- package/dist/types/src/auth/transports/index.d.ts.map +1 -1
- package/dist/types/src/auth/types.d.ts +1 -1
- package/dist/types/src/auth/types.d.ts.map +1 -1
- package/dist/types/src/auth/utils/createNonce.d.ts +1 -1
- package/dist/types/src/auth/utils/createNonce.d.ts.map +1 -1
- package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts +3 -3
- package/dist/types/src/auth/utils/getVerifiableCertificates.d.ts.map +1 -1
- package/dist/types/src/auth/utils/index.d.ts +4 -4
- package/dist/types/src/auth/utils/index.d.ts.map +1 -1
- package/dist/types/src/auth/utils/validateCertificates.d.ts +2 -2
- package/dist/types/src/auth/utils/validateCertificates.d.ts.map +1 -1
- package/dist/types/src/auth/utils/verifyNonce.d.ts +1 -1
- package/dist/types/src/auth/utils/verifyNonce.d.ts.map +1 -1
- package/dist/types/src/compat/BSM.d.ts +4 -4
- package/dist/types/src/compat/BSM.d.ts.map +1 -1
- package/dist/types/src/compat/ECIES.d.ts +2 -2
- package/dist/types/src/compat/ECIES.d.ts.map +1 -1
- package/dist/types/src/compat/HD.d.ts +2 -2
- package/dist/types/src/compat/HD.d.ts.map +1 -1
- package/dist/types/src/compat/Mnemonic.d.ts.map +1 -1
- package/dist/types/src/compat/Utxo.d.ts +3 -3
- package/dist/types/src/compat/Utxo.d.ts.map +1 -1
- package/dist/types/src/compat/index.d.ts +5 -5
- package/dist/types/src/compat/index.d.ts.map +1 -1
- package/dist/types/src/messages/EncryptedMessage.d.ts +2 -2
- package/dist/types/src/messages/EncryptedMessage.d.ts.map +1 -1
- package/dist/types/src/messages/SignedMessage.d.ts +2 -2
- package/dist/types/src/messages/SignedMessage.d.ts.map +1 -1
- package/dist/types/src/messages/index.d.ts +2 -2
- package/dist/types/src/messages/index.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/LookupResolver.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts +4 -4
- package/dist/types/src/overlay-tools/OverlayAdminTokenTemplate.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts +2 -2
- package/dist/types/src/overlay-tools/SHIPBroadcaster.d.ts.map +1 -1
- package/dist/types/src/overlay-tools/index.d.ts +5 -5
- package/dist/types/src/overlay-tools/index.d.ts.map +1 -1
- package/dist/types/src/primitives/AESGCM.d.ts.map +1 -1
- package/dist/types/src/primitives/BasePoint.d.ts +9 -9
- package/dist/types/src/primitives/BasePoint.d.ts.map +1 -1
- package/dist/types/src/primitives/BigNumber.d.ts +1 -1
- package/dist/types/src/primitives/BigNumber.d.ts.map +1 -1
- package/dist/types/src/primitives/Curve.d.ts +17 -10
- package/dist/types/src/primitives/Curve.d.ts.map +1 -1
- package/dist/types/src/primitives/DRBG.d.ts +1 -1
- package/dist/types/src/primitives/DRBG.d.ts.map +1 -1
- package/dist/types/src/primitives/ECDSA.d.ts +4 -4
- package/dist/types/src/primitives/ECDSA.d.ts.map +1 -1
- package/dist/types/src/primitives/Hash.d.ts +11 -11
- package/dist/types/src/primitives/Hash.d.ts.map +1 -1
- package/dist/types/src/primitives/JacobianPoint.d.ts +3 -3
- package/dist/types/src/primitives/JacobianPoint.d.ts.map +1 -1
- package/dist/types/src/primitives/K256.d.ts +2 -2
- package/dist/types/src/primitives/K256.d.ts.map +1 -1
- package/dist/types/src/primitives/Mersenne.d.ts +1 -1
- package/dist/types/src/primitives/Mersenne.d.ts.map +1 -1
- package/dist/types/src/primitives/MontgomoryMethod.d.ts +2 -2
- package/dist/types/src/primitives/MontgomoryMethod.d.ts.map +1 -1
- package/dist/types/src/primitives/Point.d.ts +3 -3
- package/dist/types/src/primitives/Point.d.ts.map +1 -1
- package/dist/types/src/primitives/Polynomial.d.ts +2 -2
- package/dist/types/src/primitives/Polynomial.d.ts.map +1 -1
- package/dist/types/src/primitives/PrivateKey.d.ts +7 -7
- package/dist/types/src/primitives/PrivateKey.d.ts.map +1 -1
- package/dist/types/src/primitives/PublicKey.d.ts +4 -4
- package/dist/types/src/primitives/PublicKey.d.ts.map +1 -1
- package/dist/types/src/primitives/Random.d.ts.map +1 -1
- package/dist/types/src/primitives/ReductionContext.d.ts +2 -2
- package/dist/types/src/primitives/ReductionContext.d.ts.map +1 -1
- package/dist/types/src/primitives/Schnorr.d.ts +3 -3
- package/dist/types/src/primitives/Schnorr.d.ts.map +1 -1
- package/dist/types/src/primitives/Signature.d.ts +3 -3
- package/dist/types/src/primitives/Signature.d.ts.map +1 -1
- package/dist/types/src/primitives/SymmetricKey.d.ts +1 -1
- package/dist/types/src/primitives/SymmetricKey.d.ts.map +1 -1
- package/dist/types/src/primitives/TransactionSignature.d.ts +5 -5
- package/dist/types/src/primitives/TransactionSignature.d.ts.map +1 -1
- package/dist/types/src/primitives/index.d.ts +14 -14
- package/dist/types/src/primitives/index.d.ts.map +1 -1
- package/dist/types/src/primitives/utils.d.ts +4 -7
- package/dist/types/src/primitives/utils.d.ts.map +1 -1
- package/dist/types/src/script/LockingScript.d.ts +1 -1
- package/dist/types/src/script/LockingScript.d.ts.map +1 -1
- package/dist/types/src/script/Script.d.ts +2 -2
- package/dist/types/src/script/Script.d.ts.map +1 -1
- package/dist/types/src/script/ScriptTemplate.d.ts +5 -5
- package/dist/types/src/script/ScriptTemplate.d.ts.map +1 -1
- package/dist/types/src/script/Spend.d.ts +4 -4
- package/dist/types/src/script/Spend.d.ts.map +1 -1
- package/dist/types/src/script/UnlockingScript.d.ts +1 -1
- package/dist/types/src/script/UnlockingScript.d.ts.map +1 -1
- package/dist/types/src/script/index.d.ts +7 -7
- package/dist/types/src/script/index.d.ts.map +1 -1
- package/dist/types/src/script/templates/P2PKH.d.ts +7 -7
- package/dist/types/src/script/templates/P2PKH.d.ts.map +1 -1
- package/dist/types/src/script/templates/PushDrop.d.ts +6 -7
- package/dist/types/src/script/templates/PushDrop.d.ts.map +1 -1
- package/dist/types/src/script/templates/RPuzzle.d.ts +9 -9
- package/dist/types/src/script/templates/RPuzzle.d.ts.map +1 -1
- package/dist/types/src/script/templates/index.d.ts +3 -3
- package/dist/types/src/script/templates/index.d.ts.map +1 -1
- package/dist/types/src/totp/index.d.ts +1 -1
- package/dist/types/src/totp/index.d.ts.map +1 -1
- package/dist/types/src/totp/totp.d.ts.map +1 -1
- package/dist/types/src/transaction/Beef.d.ts +10 -10
- package/dist/types/src/transaction/Beef.d.ts.map +1 -1
- package/dist/types/src/transaction/BeefParty.d.ts +1 -1
- package/dist/types/src/transaction/BeefParty.d.ts.map +1 -1
- package/dist/types/src/transaction/BeefTx.d.ts +4 -4
- package/dist/types/src/transaction/BeefTx.d.ts.map +1 -1
- package/dist/types/src/transaction/Broadcaster.d.ts +1 -1
- package/dist/types/src/transaction/Broadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/FeeModel.d.ts +1 -1
- package/dist/types/src/transaction/FeeModel.d.ts.map +1 -1
- package/dist/types/src/transaction/MerklePath.d.ts +2 -2
- package/dist/types/src/transaction/MerklePath.d.ts.map +1 -1
- package/dist/types/src/transaction/Transaction.d.ts +7 -7
- package/dist/types/src/transaction/Transaction.d.ts.map +1 -1
- package/dist/types/src/transaction/TransactionInput.d.ts +2 -2
- package/dist/types/src/transaction/TransactionInput.d.ts.map +1 -1
- package/dist/types/src/transaction/TransactionOutput.d.ts +1 -1
- package/dist/types/src/transaction/TransactionOutput.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/ARC.d.ts +4 -4
- package/dist/types/src/transaction/broadcasters/ARC.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts +2 -2
- package/dist/types/src/transaction/broadcasters/DefaultBroadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts +4 -4
- package/dist/types/src/transaction/broadcasters/WhatsOnChainBroadcaster.d.ts.map +1 -1
- package/dist/types/src/transaction/broadcasters/index.d.ts +4 -4
- package/dist/types/src/transaction/broadcasters/index.d.ts.map +1 -1
- package/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts +1 -1
- package/dist/types/src/transaction/chaintrackers/DefaultChainTracker.d.ts.map +1 -1
- package/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts +3 -3
- package/dist/types/src/transaction/chaintrackers/WhatsOnChain.d.ts.map +1 -1
- package/dist/types/src/transaction/chaintrackers/index.d.ts +3 -3
- package/dist/types/src/transaction/chaintrackers/index.d.ts.map +1 -1
- package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts +2 -2
- package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts.map +1 -1
- package/dist/types/src/transaction/fee-models/index.d.ts +1 -1
- package/dist/types/src/transaction/fee-models/index.d.ts.map +1 -1
- package/dist/types/src/transaction/http/DefaultHttpClient.d.ts +1 -1
- package/dist/types/src/transaction/http/DefaultHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/FetchHttpClient.d.ts +1 -1
- package/dist/types/src/transaction/http/FetchHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/HttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/NodejsHttpClient.d.ts +1 -1
- package/dist/types/src/transaction/http/NodejsHttpClient.d.ts.map +1 -1
- package/dist/types/src/transaction/http/index.d.ts +6 -6
- package/dist/types/src/transaction/http/index.d.ts.map +1 -1
- package/dist/types/src/transaction/index.d.ts +10 -10
- package/dist/types/src/transaction/index.d.ts.map +1 -1
- package/dist/types/src/wallet/CachedKeyDeriver.d.ts +3 -3
- package/dist/types/src/wallet/CachedKeyDeriver.d.ts.map +1 -1
- package/dist/types/src/wallet/KeyDeriver.d.ts +2 -2
- package/dist/types/src/wallet/KeyDeriver.d.ts.map +1 -1
- package/dist/types/src/wallet/ProtoWallet.d.ts +12 -12
- package/dist/types/src/wallet/ProtoWallet.d.ts.map +1 -1
- package/dist/types/src/wallet/Wallet.interfaces.d.ts +7 -8
- package/dist/types/src/wallet/Wallet.interfaces.d.ts.map +1 -1
- package/dist/types/src/wallet/WalletClient.d.ts +6 -6
- package/dist/types/src/wallet/WalletClient.d.ts.map +1 -1
- package/dist/types/src/wallet/index.d.ts +8 -8
- package/dist/types/src/wallet/index.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts +7 -7
- package/dist/types/src/wallet/substrates/HTTPWalletJSON.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts +1 -1
- package/dist/types/src/wallet/substrates/HTTPWalletWire.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWire.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireCalls.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts +2 -2
- package/dist/types/src/wallet/substrates/WalletWireProcessor.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts +10 -10
- package/dist/types/src/wallet/substrates/WalletWireTransceiver.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/XDM.d.ts +2 -2
- package/dist/types/src/wallet/substrates/XDM.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/index.d.ts +7 -7
- package/dist/types/src/wallet/substrates/index.d.ts.map +1 -1
- package/dist/types/src/wallet/substrates/window.CWI.d.ts +25 -25
- package/dist/types/src/wallet/substrates/window.CWI.d.ts.map +1 -1
- package/dist/types/tsconfig.types.tsbuildinfo +1 -1
- package/dist/umd/bundle.js +1 -1
- package/docs/auth.md +43 -37
- package/docs/primitives.md +97 -73
- package/docs/script.md +4 -4
- package/docs/swagger/dist/swagger-initializer.js +7 -7
- package/docs/swagger/dist/swagger-ui-bundle.js +1 -1
- package/docs/swagger/dist/swagger-ui-es-bundle-core.js +2 -2
- package/docs/swagger/dist/swagger-ui-es-bundle.js +1 -1
- package/docs/swagger/dist/swagger-ui-standalone-preset.js +1 -1
- package/docs/swagger/dist/swagger-ui.js +2 -2
- package/docs/transaction.md +27 -27
- package/docs/wallet-substrates.md +13 -13
- package/docs/wallet.md +80 -82
- package/mod.ts +15 -15
- package/package.json +7 -3
- package/src/auth/Peer.ts +75 -70
- package/src/auth/SessionManager.ts +11 -6
- package/src/auth/__tests/Peer.test.ts +141 -114
- package/src/auth/__tests/SessionManager.test.ts +67 -19
- package/src/auth/__tests/build.test.ts +11 -0
- package/src/auth/certificates/Certificate.ts +15 -12
- package/src/auth/certificates/MasterCertificate.ts +24 -33
- package/src/auth/certificates/VerifiableCertificate.ts +6 -4
- package/src/auth/certificates/__tests/Certificate.test.ts +140 -139
- package/src/auth/certificates/__tests/CompletedProtoWallet.ts +88 -74
- package/src/auth/certificates/__tests/MasterCertificate.test.ts +7 -15
- package/src/auth/certificates/__tests/VerifiableCertificate.test.ts +1 -6
- package/src/auth/certificates/index.ts +4 -4
- package/src/auth/clients/AuthFetch.ts +232 -316
- package/src/auth/clients/index.ts +1 -1
- package/src/auth/index.ts +7 -7
- package/src/auth/transports/SimplifiedFetchTransport.ts +185 -154
- package/src/auth/transports/index.ts +1 -1
- package/src/auth/types.ts +1 -1
- package/src/auth/utils/__tests/cryptononce.test.ts +7 -5
- package/src/auth/utils/__tests/getVerifiableCertificates.test.ts +12 -12
- package/src/auth/utils/__tests/validateCertificates.test.ts +113 -103
- package/src/auth/utils/createNonce.ts +1 -1
- package/src/auth/utils/getVerifiableCertificates.ts +4 -4
- package/src/auth/utils/index.ts +4 -4
- package/src/auth/utils/validateCertificates.ts +9 -5
- package/src/auth/utils/verifyNonce.ts +1 -1
- package/src/compat/BSM.ts +7 -7
- package/src/compat/ECIES.ts +38 -30
- package/src/compat/HD.ts +12 -13
- package/src/compat/Mnemonic.ts +16 -14
- package/src/compat/Utxo.ts +4 -4
- package/src/compat/__tests/BSM.test.ts +5 -6
- package/src/compat/__tests/HD.test.ts +6 -4
- package/src/compat/__tests/Mnemonic.test.ts +144 -145
- package/src/compat/__tests/Mnemonic.vectors.ts +110 -55
- package/src/compat/index.ts +5 -5
- package/src/messages/EncryptedMessage.ts +5 -5
- package/src/messages/SignedMessage.ts +7 -6
- package/src/messages/__tests/EncryptedMessage.test.ts +39 -39
- package/src/messages/__tests/SignedMessage.test.ts +49 -49
- package/src/messages/index.ts +2 -2
- package/src/overlay-tools/LookupResolver.ts +52 -32
- package/src/overlay-tools/OverlayAdminTokenTemplate.ts +9 -5
- package/src/overlay-tools/SHIPBroadcaster.ts +8 -7
- package/src/overlay-tools/index.ts +5 -5
- package/src/primitives/AESGCM.ts +2 -0
- package/src/primitives/BasePoint.ts +5 -5
- package/src/primitives/BigNumber.ts +8 -6
- package/src/primitives/Curve.ts +79 -27
- package/src/primitives/DRBG.ts +3 -3
- package/src/primitives/ECDSA.ts +62 -42
- package/src/primitives/Hash.ts +215 -163
- package/src/primitives/JacobianPoint.ts +19 -5
- package/src/primitives/K256.ts +2 -2
- package/src/primitives/Mersenne.ts +1 -1
- package/src/primitives/MontgomoryMethod.ts +2 -2
- package/src/primitives/Point.ts +98 -76
- package/src/primitives/Polynomial.ts +6 -6
- package/src/primitives/PrivateKey.ts +24 -24
- package/src/primitives/PublicKey.ts +8 -8
- package/src/primitives/Random.ts +7 -3
- package/src/primitives/ReductionContext.ts +3 -3
- package/src/primitives/Schnorr.ts +5 -5
- package/src/primitives/Signature.ts +14 -12
- package/src/primitives/SymmetricKey.ts +5 -5
- package/src/primitives/TransactionSignature.ts +26 -13
- package/src/primitives/__tests/AESGCM.test.ts +403 -403
- package/src/primitives/__tests/BRC42.private.vectors.ts +30 -15
- package/src/primitives/__tests/BRC42.public.vectors.ts +30 -15
- package/src/primitives/__tests/BigNumber.arithmatic.test.ts +563 -563
- package/src/primitives/__tests/BigNumber.binary.test.ts +211 -211
- package/src/primitives/__tests/BigNumber.constructor.test.ts +8 -4
- package/src/primitives/__tests/BigNumber.dhGroup.test.ts +15 -15
- package/src/primitives/__tests/BigNumber.fixtures.ts +16 -8
- package/src/primitives/__tests/BigNumber.serializers.test.ts +169 -169
- package/src/primitives/__tests/BigNumber.utils.test.ts +328 -328
- package/src/primitives/__tests/Curve.unit.test.ts +152 -145
- package/src/primitives/__tests/DRBG.test.ts +13 -13
- package/src/primitives/__tests/DRBG.vectors.ts +45 -75
- package/src/primitives/__tests/ECDSA.test.ts +51 -51
- package/src/primitives/__tests/HMAC.test.ts +46 -46
- package/src/primitives/__tests/Hash.test.ts +83 -83
- package/src/primitives/__tests/PBKDF2.vectors.ts +130 -117
- package/src/primitives/__tests/PrivateKey.split.test.ts +6 -4
- package/src/primitives/__tests/PrivateKey.test.ts +53 -55
- package/src/primitives/__tests/PublicKey.test.ts +59 -57
- package/src/primitives/__tests/Random.test.ts +10 -10
- package/src/primitives/__tests/ReductionContext.test.ts +222 -222
- package/src/primitives/__tests/Schnorr.test.ts +150 -148
- package/src/primitives/__tests/SymmetricKey.test.ts +44 -44
- package/src/primitives/__tests/SymmetricKey.vectors.ts +16 -8
- package/src/primitives/__tests/bug-31.test.ts +23 -29
- package/src/primitives/__tests/utils.test.ts +1 -1
- package/src/primitives/index.ts +14 -14
- package/src/primitives/utils.ts +25 -26
- package/src/script/LockingScript.ts +1 -1
- package/src/script/Script.ts +13 -11
- package/src/script/ScriptTemplate.ts +5 -5
- package/src/script/Spend.ts +27 -25
- package/src/script/UnlockingScript.ts +1 -1
- package/src/script/__tests/Script.test.ts +7 -3
- package/src/script/__tests/Spend.test.ts +23 -18
- package/src/script/__tests/SpendComplex.test.ts +27 -31
- package/src/script/__tests/script.invalid.vectors.ts +428 -1796
- package/src/script/__tests/script.valid.vectors.ts +1064 -1064
- package/src/script/index.ts +7 -7
- package/src/script/templates/P2PKH.ts +72 -61
- package/src/script/templates/PushDrop.ts +101 -95
- package/src/script/templates/RPuzzle.ts +65 -62
- package/src/script/templates/__tests/PushDrop.test.ts +2 -3
- package/src/script/templates/index.ts +3 -3
- package/src/totp/__tests/totp.test.ts +12 -11
- package/src/totp/index.ts +1 -1
- package/src/totp/totp.ts +5 -4
- package/src/transaction/Beef.ts +84 -59
- package/src/transaction/BeefParty.ts +9 -7
- package/src/transaction/BeefTx.ts +32 -26
- package/src/transaction/Broadcaster.ts +1 -1
- package/src/transaction/FeeModel.ts +1 -2
- package/src/transaction/MerklePath.ts +58 -37
- package/src/transaction/Transaction.ts +127 -103
- package/src/transaction/TransactionInput.ts +2 -2
- package/src/transaction/TransactionOutput.ts +1 -2
- package/src/transaction/__tests/Beef.test.ts +109 -68
- package/src/transaction/__tests/MerklePath.test.ts +132 -131
- package/src/transaction/__tests/Transaction.benchmarks.test.ts +10 -13
- package/src/transaction/__tests/Transaction.test.ts +20 -31
- package/src/transaction/__tests/bigtx.vectors.ts +2 -1
- package/src/transaction/__tests/bump.invalid.vectors.ts +24 -6
- package/src/transaction/__tests/bump.valid.vectors.ts +6 -2
- package/src/transaction/__tests/tx.invalid.vectors.ts +881 -185
- package/src/transaction/__tests/tx.valid.vectors.ts +1210 -257
- package/src/transaction/broadcasters/ARC.ts +117 -112
- package/src/transaction/broadcasters/DefaultBroadcaster.ts +4 -4
- package/src/transaction/broadcasters/WhatsOnChainBroadcaster.ts +32 -32
- package/src/transaction/broadcasters/__tests/ARC.test.ts +63 -27
- package/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.ts +9 -8
- package/src/transaction/broadcasters/index.ts +4 -4
- package/src/transaction/chaintrackers/DefaultChainTracker.ts +3 -3
- package/src/transaction/chaintrackers/WhatsOnChain.ts +39 -38
- package/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.ts +99 -99
- package/src/transaction/chaintrackers/index.ts +3 -3
- package/src/transaction/fee-models/SatoshisPerKilobyte.ts +30 -31
- package/src/transaction/fee-models/index.ts +1 -1
- package/src/transaction/http/DefaultHttpClient.ts +14 -13
- package/src/transaction/http/FetchHttpClient.ts +3 -3
- package/src/transaction/http/HttpClient.ts +20 -20
- package/src/transaction/http/NodejsHttpClient.ts +27 -27
- package/src/transaction/http/index.ts +7 -7
- package/src/transaction/index.ts +10 -10
- package/src/wallet/CachedKeyDeriver.ts +39 -16
- package/src/wallet/KeyDeriver.ts +4 -4
- package/src/wallet/ProtoWallet.ts +77 -44
- package/src/wallet/Wallet.interfaces.ts +10 -8
- package/src/wallet/WalletClient.ts +21 -24
- package/src/wallet/WalletError.ts +2 -2
- package/src/wallet/__tests/CachedKeyDeriver.test.ts +15 -12
- package/src/wallet/__tests/KeyDeriver.test.ts +115 -115
- package/src/wallet/__tests/ProtoWallet.test.ts +320 -313
- package/src/wallet/index.ts +8 -8
- package/src/wallet/substrates/HTTPWalletJSON.ts +54 -40
- package/src/wallet/substrates/HTTPWalletWire.ts +27 -27
- package/src/wallet/substrates/WalletWire.ts +1 -1
- package/src/wallet/substrates/WalletWireCalls.ts +2 -2
- package/src/wallet/substrates/WalletWireProcessor.ts +966 -967
- package/src/wallet/substrates/WalletWireTransceiver.ts +1012 -1007
- package/src/wallet/substrates/XDM.ts +18 -19
- package/src/wallet/substrates/__tests/WalletWire.integration.test.ts +6 -4
- package/src/wallet/substrates/__tests/XDM.test.ts +343 -341
- package/src/wallet/substrates/index.ts +7 -7
- package/src/wallet/substrates/window.CWI.ts +330 -330
- package/dist/cjs/src/auth/__tests/Peer.test.js +0 -446
- package/dist/cjs/src/auth/__tests/Peer.test.js.map +0 -1
- package/dist/cjs/src/auth/__tests/SessionManager.test.js +0 -69
- package/dist/cjs/src/auth/__tests/SessionManager.test.js.map +0 -1
- package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js +0 -182
- package/dist/cjs/src/auth/certificates/__tests/Certificate.test.js.map +0 -1
- package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js +0 -184
- package/dist/cjs/src/auth/certificates/__tests/MasterCertificate.test.js.map +0 -1
- package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js +0 -75
- package/dist/cjs/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +0 -1
- package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js +0 -101
- package/dist/cjs/src/auth/utils/__tests/cryptononce.test.js.map +0 -1
- package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js +0 -106
- package/dist/cjs/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +0 -1
- package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js +0 -111
- package/dist/cjs/src/auth/utils/__tests/validateCertificates.test.js.map +0 -1
- package/dist/cjs/src/compat/__tests/BSM.test.js +0 -69
- package/dist/cjs/src/compat/__tests/BSM.test.js.map +0 -1
- package/dist/cjs/src/compat/__tests/ECIES.test.js +0 -115
- package/dist/cjs/src/compat/__tests/ECIES.test.js.map +0 -1
- package/dist/cjs/src/compat/__tests/HD.test.js +0 -336
- package/dist/cjs/src/compat/__tests/HD.test.js.map +0 -1
- package/dist/cjs/src/compat/__tests/Mnemonic.test.js +0 -150
- package/dist/cjs/src/compat/__tests/Mnemonic.test.js.map +0 -1
- package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js +0 -175
- package/dist/cjs/src/compat/__tests/Mnemonic.vectors.js.map +0 -1
- package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js +0 -57
- package/dist/cjs/src/messages/__tests/EncryptedMessage.test.js.map +0 -1
- package/dist/cjs/src/messages/__tests/SignedMessage.test.js +0 -52
- package/dist/cjs/src/messages/__tests/SignedMessage.test.js.map +0 -1
- package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js +0 -1471
- package/dist/cjs/src/overlay-tools/__tests/LookupResolver.test.js.map +0 -1
- package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +0 -78
- package/dist/cjs/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +0 -1
- package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js +0 -933
- package/dist/cjs/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/AESGCM.test.js +0 -248
- package/dist/cjs/src/primitives/__tests/AESGCM.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js +0 -36
- package/dist/cjs/src/primitives/__tests/BRC42.private.vectors.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js +0 -36
- package/dist/cjs/src/primitives/__tests/BRC42.public.vectors.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js +0 -501
- package/dist/cjs/src/primitives/__tests/BigNumber.arithmatic.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js +0 -185
- package/dist/cjs/src/primitives/__tests/BigNumber.binary.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js +0 -149
- package/dist/cjs/src/primitives/__tests/BigNumber.constructor.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js +0 -23
- package/dist/cjs/src/primitives/__tests/BigNumber.dhGroup.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js +0 -268
- package/dist/cjs/src/primitives/__tests/BigNumber.fixtures.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js +0 -147
- package/dist/cjs/src/primitives/__tests/BigNumber.serializers.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js +0 -322
- package/dist/cjs/src/primitives/__tests/BigNumber.utils.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/Curve.unit.test.js +0 -145
- package/dist/cjs/src/primitives/__tests/Curve.unit.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/DRBG.test.js +0 -22
- package/dist/cjs/src/primitives/__tests/DRBG.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/DRBG.vectors.js +0 -170
- package/dist/cjs/src/primitives/__tests/DRBG.vectors.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/ECDH.test.js +0 -34
- package/dist/cjs/src/primitives/__tests/ECDH.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/ECDSA.test.js +0 -89
- package/dist/cjs/src/primitives/__tests/ECDSA.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/HMAC.test.js +0 -60
- package/dist/cjs/src/primitives/__tests/HMAC.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/Hash.test.js +0 -159
- package/dist/cjs/src/primitives/__tests/Hash.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js +0 -122
- package/dist/cjs/src/primitives/__tests/PBKDF2.vectors.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js +0 -105
- package/dist/cjs/src/primitives/__tests/PrivateKey.split.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/PrivateKey.test.js +0 -90
- package/dist/cjs/src/primitives/__tests/PrivateKey.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/PublicKey.test.js +0 -83
- package/dist/cjs/src/primitives/__tests/PublicKey.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/Random.test.js +0 -19
- package/dist/cjs/src/primitives/__tests/Random.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/Reader.test.js +0 -282
- package/dist/cjs/src/primitives/__tests/Reader.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/ReductionContext.test.js +0 -224
- package/dist/cjs/src/primitives/__tests/ReductionContext.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/Schnorr.test.js +0 -213
- package/dist/cjs/src/primitives/__tests/Schnorr.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js +0 -51
- package/dist/cjs/src/primitives/__tests/SymmetricKey.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js +0 -43
- package/dist/cjs/src/primitives/__tests/SymmetricKey.vectors.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/Writer.test.js +0 -176
- package/dist/cjs/src/primitives/__tests/Writer.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/bug-31.test.js +0 -32
- package/dist/cjs/src/primitives/__tests/bug-31.test.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/sighash.vectors.js +0 -3506
- package/dist/cjs/src/primitives/__tests/sighash.vectors.js.map +0 -1
- package/dist/cjs/src/primitives/__tests/utils.test.js +0 -110
- package/dist/cjs/src/primitives/__tests/utils.test.js.map +0 -1
- package/dist/cjs/src/script/__tests/Script.test.js +0 -347
- package/dist/cjs/src/script/__tests/Script.test.js.map +0 -1
- package/dist/cjs/src/script/__tests/Spend.test.js +0 -282
- package/dist/cjs/src/script/__tests/Spend.test.js.map +0 -1
- package/dist/cjs/src/script/__tests/SpendComplex.test.js +0 -52
- package/dist/cjs/src/script/__tests/SpendComplex.test.js.map +0 -1
- package/dist/cjs/src/script/__tests/script.invalid.vectors.js +0 -2370
- package/dist/cjs/src/script/__tests/script.invalid.vectors.js.map +0 -1
- package/dist/cjs/src/script/__tests/script.valid.vectors.js +0 -1181
- package/dist/cjs/src/script/__tests/script.valid.vectors.js.map +0 -1
- package/dist/cjs/src/script/__tests/spend.valid.vectors.js +0 -2298
- package/dist/cjs/src/script/__tests/spend.valid.vectors.js.map +0 -1
- package/dist/cjs/src/script/templates/__tests/PushDrop.test.js +0 -161
- package/dist/cjs/src/script/templates/__tests/PushDrop.test.js.map +0 -1
- package/dist/cjs/src/totp/__tests/totp.test.js +0 -67
- package/dist/cjs/src/totp/__tests/totp.test.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/Beef.test.js +0 -393
- package/dist/cjs/src/transaction/__tests/Beef.test.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/MerklePath.test.js +0 -209
- package/dist/cjs/src/transaction/__tests/MerklePath.test.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js +0 -219
- package/dist/cjs/src/transaction/__tests/Transaction.benchmarks.test.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/Transaction.test.js +0 -1073
- package/dist/cjs/src/transaction/__tests/Transaction.test.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/bigtx.vectors.js +0 -7
- package/dist/cjs/src/transaction/__tests/bigtx.vectors.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js +0 -11
- package/dist/cjs/src/transaction/__tests/bump.invalid.vectors.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js +0 -7
- package/dist/cjs/src/transaction/__tests/bump.valid.vectors.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js +0 -230
- package/dist/cjs/src/transaction/__tests/tx.invalid.vectors.js.map +0 -1
- package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js +0 -296
- package/dist/cjs/src/transaction/__tests/tx.valid.vectors.js.map +0 -1
- package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js +0 -246
- package/dist/cjs/src/transaction/broadcasters/__tests/ARC.test.js.map +0 -1
- package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +0 -148
- package/dist/cjs/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +0 -1
- package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +0 -155
- package/dist/cjs/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +0 -1
- package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js +0 -269
- package/dist/cjs/src/wallet/__tests/CachedKeyDeriver.test.js.map +0 -1
- package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js +0 -114
- package/dist/cjs/src/wallet/__tests/KeyDeriver.test.js.map +0 -1
- package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js +0 -475
- package/dist/cjs/src/wallet/__tests/ProtoWallet.test.js.map +0 -1
- package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js +0 -1962
- package/dist/cjs/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +0 -1
- package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js +0 -579
- package/dist/cjs/src/wallet/substrates/__tests/XDM.test.js.map +0 -1
- package/dist/esm/src/auth/__tests/Peer.test.js +0 -448
- package/dist/esm/src/auth/__tests/Peer.test.js.map +0 -1
- package/dist/esm/src/auth/__tests/SessionManager.test.js +0 -69
- package/dist/esm/src/auth/__tests/SessionManager.test.js.map +0 -1
- package/dist/esm/src/auth/certificates/__tests/Certificate.test.js +0 -182
- package/dist/esm/src/auth/certificates/__tests/Certificate.test.js.map +0 -1
- package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js +0 -184
- package/dist/esm/src/auth/certificates/__tests/MasterCertificate.test.js.map +0 -1
- package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js +0 -75
- package/dist/esm/src/auth/certificates/__tests/VerifiableCertificate.test.js.map +0 -1
- package/dist/esm/src/auth/utils/__tests/cryptononce.test.js +0 -101
- package/dist/esm/src/auth/utils/__tests/cryptononce.test.js.map +0 -1
- package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js +0 -106
- package/dist/esm/src/auth/utils/__tests/getVerifiableCertificates.test.js.map +0 -1
- package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js +0 -111
- package/dist/esm/src/auth/utils/__tests/validateCertificates.test.js.map +0 -1
- package/dist/esm/src/compat/__tests/BSM.test.js +0 -69
- package/dist/esm/src/compat/__tests/BSM.test.js.map +0 -1
- package/dist/esm/src/compat/__tests/ECIES.test.js +0 -115
- package/dist/esm/src/compat/__tests/ECIES.test.js.map +0 -1
- package/dist/esm/src/compat/__tests/HD.test.js +0 -336
- package/dist/esm/src/compat/__tests/HD.test.js.map +0 -1
- package/dist/esm/src/compat/__tests/Mnemonic.test.js +0 -150
- package/dist/esm/src/compat/__tests/Mnemonic.test.js.map +0 -1
- package/dist/esm/src/compat/__tests/Mnemonic.vectors.js +0 -175
- package/dist/esm/src/compat/__tests/Mnemonic.vectors.js.map +0 -1
- package/dist/esm/src/messages/__tests/EncryptedMessage.test.js +0 -57
- package/dist/esm/src/messages/__tests/EncryptedMessage.test.js.map +0 -1
- package/dist/esm/src/messages/__tests/SignedMessage.test.js +0 -52
- package/dist/esm/src/messages/__tests/SignedMessage.test.js.map +0 -1
- package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js +0 -1471
- package/dist/esm/src/overlay-tools/__tests/LookupResolver.test.js.map +0 -1
- package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js +0 -78
- package/dist/esm/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.js.map +0 -1
- package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js +0 -933
- package/dist/esm/src/overlay-tools/__tests/SHIPBroadcaster.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/AESGCM.test.js +0 -248
- package/dist/esm/src/primitives/__tests/AESGCM.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js +0 -36
- package/dist/esm/src/primitives/__tests/BRC42.private.vectors.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js +0 -36
- package/dist/esm/src/primitives/__tests/BRC42.public.vectors.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js +0 -501
- package/dist/esm/src/primitives/__tests/BigNumber.arithmatic.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js +0 -185
- package/dist/esm/src/primitives/__tests/BigNumber.binary.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js +0 -149
- package/dist/esm/src/primitives/__tests/BigNumber.constructor.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js +0 -23
- package/dist/esm/src/primitives/__tests/BigNumber.dhGroup.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js +0 -268
- package/dist/esm/src/primitives/__tests/BigNumber.fixtures.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js +0 -147
- package/dist/esm/src/primitives/__tests/BigNumber.serializers.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js +0 -322
- package/dist/esm/src/primitives/__tests/BigNumber.utils.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/Curve.unit.test.js +0 -145
- package/dist/esm/src/primitives/__tests/Curve.unit.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/DRBG.test.js +0 -22
- package/dist/esm/src/primitives/__tests/DRBG.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/DRBG.vectors.js +0 -170
- package/dist/esm/src/primitives/__tests/DRBG.vectors.js.map +0 -1
- package/dist/esm/src/primitives/__tests/ECDH.test.js +0 -34
- package/dist/esm/src/primitives/__tests/ECDH.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/ECDSA.test.js +0 -89
- package/dist/esm/src/primitives/__tests/ECDSA.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/HMAC.test.js +0 -60
- package/dist/esm/src/primitives/__tests/HMAC.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/Hash.test.js +0 -159
- package/dist/esm/src/primitives/__tests/Hash.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js +0 -122
- package/dist/esm/src/primitives/__tests/PBKDF2.vectors.js.map +0 -1
- package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js +0 -105
- package/dist/esm/src/primitives/__tests/PrivateKey.split.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/PrivateKey.test.js +0 -90
- package/dist/esm/src/primitives/__tests/PrivateKey.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/PublicKey.test.js +0 -83
- package/dist/esm/src/primitives/__tests/PublicKey.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/Random.test.js +0 -19
- package/dist/esm/src/primitives/__tests/Random.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/Reader.test.js +0 -282
- package/dist/esm/src/primitives/__tests/Reader.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/ReductionContext.test.js +0 -223
- package/dist/esm/src/primitives/__tests/ReductionContext.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/Schnorr.test.js +0 -213
- package/dist/esm/src/primitives/__tests/Schnorr.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/SymmetricKey.test.js +0 -51
- package/dist/esm/src/primitives/__tests/SymmetricKey.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js +0 -43
- package/dist/esm/src/primitives/__tests/SymmetricKey.vectors.js.map +0 -1
- package/dist/esm/src/primitives/__tests/Writer.test.js +0 -176
- package/dist/esm/src/primitives/__tests/Writer.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/bug-31.test.js +0 -32
- package/dist/esm/src/primitives/__tests/bug-31.test.js.map +0 -1
- package/dist/esm/src/primitives/__tests/sighash.vectors.js +0 -3506
- package/dist/esm/src/primitives/__tests/sighash.vectors.js.map +0 -1
- package/dist/esm/src/primitives/__tests/utils.test.js +0 -110
- package/dist/esm/src/primitives/__tests/utils.test.js.map +0 -1
- package/dist/esm/src/script/__tests/Script.test.js +0 -347
- package/dist/esm/src/script/__tests/Script.test.js.map +0 -1
- package/dist/esm/src/script/__tests/Spend.test.js +0 -282
- package/dist/esm/src/script/__tests/Spend.test.js.map +0 -1
- package/dist/esm/src/script/__tests/SpendComplex.test.js +0 -51
- package/dist/esm/src/script/__tests/SpendComplex.test.js.map +0 -1
- package/dist/esm/src/script/__tests/script.invalid.vectors.js +0 -2370
- package/dist/esm/src/script/__tests/script.invalid.vectors.js.map +0 -1
- package/dist/esm/src/script/__tests/script.valid.vectors.js +0 -1181
- package/dist/esm/src/script/__tests/script.valid.vectors.js.map +0 -1
- package/dist/esm/src/script/__tests/spend.valid.vectors.js +0 -2298
- package/dist/esm/src/script/__tests/spend.valid.vectors.js.map +0 -1
- package/dist/esm/src/script/templates/__tests/PushDrop.test.js +0 -161
- package/dist/esm/src/script/templates/__tests/PushDrop.test.js.map +0 -1
- package/dist/esm/src/totp/__tests/totp.test.js +0 -67
- package/dist/esm/src/totp/__tests/totp.test.js.map +0 -1
- package/dist/esm/src/transaction/__tests/Beef.test.js +0 -393
- package/dist/esm/src/transaction/__tests/Beef.test.js.map +0 -1
- package/dist/esm/src/transaction/__tests/MerklePath.test.js +0 -209
- package/dist/esm/src/transaction/__tests/MerklePath.test.js.map +0 -1
- package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js +0 -219
- package/dist/esm/src/transaction/__tests/Transaction.benchmarks.test.js.map +0 -1
- package/dist/esm/src/transaction/__tests/Transaction.test.js +0 -1072
- package/dist/esm/src/transaction/__tests/Transaction.test.js.map +0 -1
- package/dist/esm/src/transaction/__tests/bigtx.vectors.js +0 -7
- package/dist/esm/src/transaction/__tests/bigtx.vectors.js.map +0 -1
- package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js +0 -11
- package/dist/esm/src/transaction/__tests/bump.invalid.vectors.js.map +0 -1
- package/dist/esm/src/transaction/__tests/bump.valid.vectors.js +0 -7
- package/dist/esm/src/transaction/__tests/bump.valid.vectors.js.map +0 -1
- package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js +0 -230
- package/dist/esm/src/transaction/__tests/tx.invalid.vectors.js.map +0 -1
- package/dist/esm/src/transaction/__tests/tx.valid.vectors.js +0 -296
- package/dist/esm/src/transaction/__tests/tx.valid.vectors.js.map +0 -1
- package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js +0 -246
- package/dist/esm/src/transaction/broadcasters/__tests/ARC.test.js.map +0 -1
- package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js +0 -148
- package/dist/esm/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.js.map +0 -1
- package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js +0 -155
- package/dist/esm/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.js.map +0 -1
- package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js +0 -269
- package/dist/esm/src/wallet/__tests/CachedKeyDeriver.test.js.map +0 -1
- package/dist/esm/src/wallet/__tests/KeyDeriver.test.js +0 -113
- package/dist/esm/src/wallet/__tests/KeyDeriver.test.js.map +0 -1
- package/dist/esm/src/wallet/__tests/ProtoWallet.test.js +0 -475
- package/dist/esm/src/wallet/__tests/ProtoWallet.test.js.map +0 -1
- package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js +0 -1962
- package/dist/esm/src/wallet/substrates/__tests/WalletWire.integration.test.js.map +0 -1
- package/dist/esm/src/wallet/substrates/__tests/XDM.test.js +0 -579
- package/dist/esm/src/wallet/substrates/__tests/XDM.test.js.map +0 -1
- package/dist/types/src/auth/__tests/Peer.test.d.ts +0 -2
- package/dist/types/src/auth/__tests/Peer.test.d.ts.map +0 -1
- package/dist/types/src/auth/__tests/SessionManager.test.d.ts +0 -2
- package/dist/types/src/auth/__tests/SessionManager.test.d.ts.map +0 -1
- package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts +0 -2
- package/dist/types/src/auth/certificates/__tests/Certificate.test.d.ts.map +0 -1
- package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts +0 -2
- package/dist/types/src/auth/certificates/__tests/MasterCertificate.test.d.ts.map +0 -1
- package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts +0 -2
- package/dist/types/src/auth/certificates/__tests/VerifiableCertificate.test.d.ts.map +0 -1
- package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts +0 -2
- package/dist/types/src/auth/utils/__tests/cryptononce.test.d.ts.map +0 -1
- package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts +0 -2
- package/dist/types/src/auth/utils/__tests/getVerifiableCertificates.test.d.ts.map +0 -1
- package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts +0 -2
- package/dist/types/src/auth/utils/__tests/validateCertificates.test.d.ts.map +0 -1
- package/dist/types/src/compat/__tests/BSM.test.d.ts +0 -2
- package/dist/types/src/compat/__tests/BSM.test.d.ts.map +0 -1
- package/dist/types/src/compat/__tests/ECIES.test.d.ts +0 -2
- package/dist/types/src/compat/__tests/ECIES.test.d.ts.map +0 -1
- package/dist/types/src/compat/__tests/HD.test.d.ts +0 -2
- package/dist/types/src/compat/__tests/HD.test.d.ts.map +0 -1
- package/dist/types/src/compat/__tests/Mnemonic.test.d.ts +0 -2
- package/dist/types/src/compat/__tests/Mnemonic.test.d.ts.map +0 -1
- package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts +0 -11
- package/dist/types/src/compat/__tests/Mnemonic.vectors.d.ts.map +0 -1
- package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts +0 -2
- package/dist/types/src/messages/__tests/EncryptedMessage.test.d.ts.map +0 -1
- package/dist/types/src/messages/__tests/SignedMessage.test.d.ts +0 -2
- package/dist/types/src/messages/__tests/SignedMessage.test.d.ts.map +0 -1
- package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts +0 -2
- package/dist/types/src/overlay-tools/__tests/LookupResolver.test.d.ts.map +0 -1
- package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts +0 -2
- package/dist/types/src/overlay-tools/__tests/OverlayAdminTokenTemplate.test.d.ts.map +0 -1
- package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts +0 -2
- package/dist/types/src/overlay-tools/__tests/SHIPBroadcaster.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/AESGCM.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/AESGCM.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts +0 -8
- package/dist/types/src/primitives/__tests/BRC42.private.vectors.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts +0 -8
- package/dist/types/src/primitives/__tests/BRC42.public.vectors.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/BigNumber.arithmatic.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/BigNumber.binary.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/BigNumber.constructor.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/BigNumber.dhGroup.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts +0 -15
- package/dist/types/src/primitives/__tests/BigNumber.fixtures.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/BigNumber.serializers.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/BigNumber.utils.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/Curve.unit.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/DRBG.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/DRBG.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts +0 -10
- package/dist/types/src/primitives/__tests/DRBG.vectors.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/ECDH.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/ECDH.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/ECDSA.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/ECDSA.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/HMAC.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/HMAC.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/Hash.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/Hash.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts +0 -68
- package/dist/types/src/primitives/__tests/PBKDF2.vectors.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/PrivateKey.split.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/PrivateKey.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/PublicKey.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/PublicKey.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/Random.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/Random.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/Reader.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/Reader.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/ReductionContext.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/Schnorr.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/Schnorr.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/SymmetricKey.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts +0 -20
- package/dist/types/src/primitives/__tests/SymmetricKey.vectors.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/Writer.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/Writer.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/bug-31.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/bug-31.test.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/sighash.vectors.d.ts +0 -3
- package/dist/types/src/primitives/__tests/sighash.vectors.d.ts.map +0 -1
- package/dist/types/src/primitives/__tests/utils.test.d.ts +0 -2
- package/dist/types/src/primitives/__tests/utils.test.d.ts.map +0 -1
- package/dist/types/src/script/__tests/Script.test.d.ts +0 -2
- package/dist/types/src/script/__tests/Script.test.d.ts.map +0 -1
- package/dist/types/src/script/__tests/Spend.test.d.ts +0 -2
- package/dist/types/src/script/__tests/Spend.test.d.ts.map +0 -1
- package/dist/types/src/script/__tests/SpendComplex.test.d.ts +0 -2
- package/dist/types/src/script/__tests/SpendComplex.test.d.ts.map +0 -1
- package/dist/types/src/script/__tests/script.invalid.vectors.d.ts +0 -3
- package/dist/types/src/script/__tests/script.invalid.vectors.d.ts.map +0 -1
- package/dist/types/src/script/__tests/script.valid.vectors.d.ts +0 -3
- package/dist/types/src/script/__tests/script.valid.vectors.d.ts.map +0 -1
- package/dist/types/src/script/__tests/spend.valid.vectors.d.ts +0 -3
- package/dist/types/src/script/__tests/spend.valid.vectors.d.ts.map +0 -1
- package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts +0 -2
- package/dist/types/src/script/templates/__tests/PushDrop.test.d.ts.map +0 -1
- package/dist/types/src/totp/__tests/totp.test.d.ts +0 -2
- package/dist/types/src/totp/__tests/totp.test.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/Beef.test.d.ts +0 -2
- package/dist/types/src/transaction/__tests/Beef.test.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/MerklePath.test.d.ts +0 -2
- package/dist/types/src/transaction/__tests/MerklePath.test.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts +0 -2
- package/dist/types/src/transaction/__tests/Transaction.benchmarks.test.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/Transaction.test.d.ts +0 -2
- package/dist/types/src/transaction/__tests/Transaction.test.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts +0 -6
- package/dist/types/src/transaction/__tests/bigtx.vectors.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts +0 -6
- package/dist/types/src/transaction/__tests/bump.invalid.vectors.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts +0 -5
- package/dist/types/src/transaction/__tests/bump.valid.vectors.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts +0 -3
- package/dist/types/src/transaction/__tests/tx.invalid.vectors.d.ts.map +0 -1
- package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts +0 -3
- package/dist/types/src/transaction/__tests/tx.valid.vectors.d.ts.map +0 -1
- package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts +0 -2
- package/dist/types/src/transaction/broadcasters/__tests/ARC.test.d.ts.map +0 -1
- package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts +0 -2
- package/dist/types/src/transaction/broadcasters/__tests/WhatsOnChainBroadcaster.test.d.ts.map +0 -1
- package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts +0 -2
- package/dist/types/src/transaction/chaintrackers/__tests/WhatsOnChainChainTracker.test.d.ts.map +0 -1
- package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts +0 -2
- package/dist/types/src/wallet/__tests/CachedKeyDeriver.test.d.ts.map +0 -1
- package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts +0 -2
- package/dist/types/src/wallet/__tests/KeyDeriver.test.d.ts.map +0 -1
- package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts +0 -2
- package/dist/types/src/wallet/__tests/ProtoWallet.test.d.ts.map +0 -1
- package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts +0 -2
- package/dist/types/src/wallet/substrates/__tests/WalletWire.integration.test.d.ts.map +0 -1
- package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts +0 -5
- package/dist/types/src/wallet/substrates/__tests/XDM.test.d.ts.map +0 -1
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import OP from
|
|
2
|
-
import ScriptTemplate from
|
|
3
|
-
import LockingScript from
|
|
4
|
-
import UnlockingScript from
|
|
5
|
-
import Transaction from
|
|
6
|
-
import PrivateKey from
|
|
7
|
-
import TransactionSignature from
|
|
8
|
-
import { sha256 } from
|
|
9
|
-
import ScriptChunk from
|
|
10
|
-
import BigNumber from
|
|
1
|
+
import OP from '../OP.js'
|
|
2
|
+
import ScriptTemplate from '../ScriptTemplate.js'
|
|
3
|
+
import LockingScript from '../LockingScript.js'
|
|
4
|
+
import UnlockingScript from '../UnlockingScript.js'
|
|
5
|
+
import Transaction from '../../transaction/Transaction.js'
|
|
6
|
+
import PrivateKey from '../../primitives/PrivateKey.js'
|
|
7
|
+
import TransactionSignature from '../../primitives/TransactionSignature.js'
|
|
8
|
+
import { sha256 } from '../../primitives/Hash.js'
|
|
9
|
+
import ScriptChunk from '../ScriptChunk.js'
|
|
10
|
+
import BigNumber from '../../primitives/BigNumber.js'
|
|
11
|
+
import Script from '../Script.js'
|
|
11
12
|
|
|
12
13
|
/**
|
|
13
14
|
* RPuzzle class implementing ScriptTemplate.
|
|
@@ -15,7 +16,7 @@ import BigNumber from "../../primitives/BigNumber";
|
|
|
15
16
|
* This class provides methods to create R Puzzle and R Puzzle Hash locking and unlocking scripts, including the unlocking of UTXOs with the correct K value.
|
|
16
17
|
*/
|
|
17
18
|
export default class RPuzzle implements ScriptTemplate {
|
|
18
|
-
type:
|
|
19
|
+
type: 'raw' | 'SHA1' | 'SHA256' | 'HASH256' | 'RIPEMD160' | 'HASH160' = 'raw'
|
|
19
20
|
|
|
20
21
|
/**
|
|
21
22
|
* @constructor
|
|
@@ -25,14 +26,14 @@ export default class RPuzzle implements ScriptTemplate {
|
|
|
25
26
|
*/
|
|
26
27
|
constructor(
|
|
27
28
|
type:
|
|
28
|
-
|
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
|
|
|
32
|
-
|
|
|
33
|
-
|
|
|
29
|
+
| 'raw'
|
|
30
|
+
| 'SHA1'
|
|
31
|
+
| 'SHA256'
|
|
32
|
+
| 'HASH256'
|
|
33
|
+
| 'RIPEMD160'
|
|
34
|
+
| 'HASH160' = 'raw'
|
|
34
35
|
) {
|
|
35
|
-
this.type = type
|
|
36
|
+
this.type = type
|
|
36
37
|
}
|
|
37
38
|
|
|
38
39
|
/**
|
|
@@ -51,17 +52,17 @@ export default class RPuzzle implements ScriptTemplate {
|
|
|
51
52
|
{ op: OP.OP_SPLIT },
|
|
52
53
|
{ op: OP.OP_SWAP },
|
|
53
54
|
{ op: OP.OP_SPLIT },
|
|
54
|
-
{ op: OP.OP_DROP }
|
|
55
|
-
]
|
|
56
|
-
if (this.type !==
|
|
55
|
+
{ op: OP.OP_DROP }
|
|
56
|
+
]
|
|
57
|
+
if (this.type !== 'raw') {
|
|
57
58
|
chunks.push({
|
|
58
|
-
op: OP[
|
|
59
|
-
})
|
|
59
|
+
op: OP['OP_' + this.type]
|
|
60
|
+
})
|
|
60
61
|
}
|
|
61
|
-
chunks.push({ op: value.length, data: value })
|
|
62
|
-
chunks.push({ op: OP.OP_EQUALVERIFY })
|
|
63
|
-
chunks.push({ op: OP.OP_CHECKSIG })
|
|
64
|
-
return new LockingScript(chunks)
|
|
62
|
+
chunks.push({ op: value.length, data: value })
|
|
63
|
+
chunks.push({ op: OP.OP_EQUALVERIFY })
|
|
64
|
+
chunks.push({ op: OP.OP_CHECKSIG })
|
|
65
|
+
return new LockingScript(chunks)
|
|
65
66
|
}
|
|
66
67
|
|
|
67
68
|
/**
|
|
@@ -81,78 +82,80 @@ export default class RPuzzle implements ScriptTemplate {
|
|
|
81
82
|
unlock(
|
|
82
83
|
k: BigNumber,
|
|
83
84
|
privateKey: PrivateKey,
|
|
84
|
-
signOutputs:
|
|
85
|
+
signOutputs: 'all' | 'none' | 'single' = 'all',
|
|
85
86
|
anyoneCanPay: boolean = false
|
|
86
87
|
): {
|
|
87
|
-
sign: (tx: Transaction, inputIndex: number) => Promise<UnlockingScript
|
|
88
|
-
estimateLength: () => Promise<108
|
|
88
|
+
sign: (tx: Transaction, inputIndex: number) => Promise<UnlockingScript>
|
|
89
|
+
estimateLength: () => Promise<108>
|
|
89
90
|
} {
|
|
90
91
|
return {
|
|
91
92
|
sign: async (tx: Transaction, inputIndex: number) => {
|
|
92
|
-
if (typeof privateKey ===
|
|
93
|
-
privateKey = PrivateKey.fromRandom()
|
|
93
|
+
if (typeof privateKey === 'undefined') {
|
|
94
|
+
privateKey = PrivateKey.fromRandom()
|
|
94
95
|
}
|
|
95
|
-
let signatureScope = TransactionSignature.SIGHASH_FORKID
|
|
96
|
-
if (signOutputs ===
|
|
97
|
-
signatureScope |= TransactionSignature.SIGHASH_ALL
|
|
96
|
+
let signatureScope = TransactionSignature.SIGHASH_FORKID
|
|
97
|
+
if (signOutputs === 'all') {
|
|
98
|
+
signatureScope |= TransactionSignature.SIGHASH_ALL
|
|
98
99
|
}
|
|
99
|
-
if (signOutputs ===
|
|
100
|
-
signatureScope |= TransactionSignature.SIGHASH_NONE
|
|
100
|
+
if (signOutputs === 'none') {
|
|
101
|
+
signatureScope |= TransactionSignature.SIGHASH_NONE
|
|
101
102
|
}
|
|
102
|
-
if (signOutputs ===
|
|
103
|
-
signatureScope |= TransactionSignature.SIGHASH_SINGLE
|
|
103
|
+
if (signOutputs === 'single') {
|
|
104
|
+
signatureScope |= TransactionSignature.SIGHASH_SINGLE
|
|
104
105
|
}
|
|
105
106
|
if (anyoneCanPay) {
|
|
106
|
-
signatureScope |= TransactionSignature.SIGHASH_ANYONECANPAY
|
|
107
|
+
signatureScope |= TransactionSignature.SIGHASH_ANYONECANPAY
|
|
107
108
|
}
|
|
108
|
-
const otherInputs = [...tx.inputs]
|
|
109
|
-
const [input] = otherInputs.splice(inputIndex, 1)
|
|
110
|
-
if (typeof input.sourceTransaction !==
|
|
109
|
+
const otherInputs = [...tx.inputs]
|
|
110
|
+
const [input] = otherInputs.splice(inputIndex, 1)
|
|
111
|
+
if (typeof input.sourceTransaction !== 'object') {
|
|
111
112
|
throw new Error(
|
|
112
|
-
|
|
113
|
-
)
|
|
113
|
+
'The source transaction is needed for transaction signing.'
|
|
114
|
+
)
|
|
114
115
|
}
|
|
115
116
|
const preimage = TransactionSignature.format({
|
|
116
|
-
sourceTXID: input.sourceTransaction
|
|
117
|
-
sourceOutputIndex: input.sourceOutputIndex,
|
|
117
|
+
sourceTXID: input.sourceTransaction?.id('hex') ?? '',
|
|
118
|
+
sourceOutputIndex: input.sourceOutputIndex ?? 0,
|
|
118
119
|
sourceSatoshis:
|
|
119
|
-
input.sourceTransaction
|
|
120
|
+
input.sourceTransaction?.outputs[input.sourceOutputIndex]
|
|
121
|
+
?.satoshis ?? 0,
|
|
120
122
|
transactionVersion: tx.version,
|
|
121
123
|
otherInputs,
|
|
122
124
|
inputIndex,
|
|
123
125
|
outputs: tx.outputs,
|
|
124
|
-
inputSequence: input.sequence,
|
|
126
|
+
inputSequence: input.sequence ?? 0xffffffff,
|
|
125
127
|
subscript:
|
|
126
|
-
input.sourceTransaction
|
|
127
|
-
|
|
128
|
+
input.sourceTransaction?.outputs[input.sourceOutputIndex]
|
|
129
|
+
?.lockingScript ?? new Script(),
|
|
128
130
|
lockTime: tx.lockTime,
|
|
129
|
-
scope: signatureScope
|
|
130
|
-
})
|
|
131
|
+
scope: signatureScope
|
|
132
|
+
})
|
|
133
|
+
|
|
131
134
|
const rawSignature = privateKey.sign(
|
|
132
135
|
sha256(preimage),
|
|
133
136
|
undefined,
|
|
134
137
|
true,
|
|
135
138
|
k
|
|
136
|
-
)
|
|
139
|
+
)
|
|
137
140
|
const sig = new TransactionSignature(
|
|
138
141
|
rawSignature.r,
|
|
139
142
|
rawSignature.s,
|
|
140
143
|
signatureScope
|
|
141
|
-
)
|
|
142
|
-
const sigForScript = sig.toChecksigFormat()
|
|
144
|
+
)
|
|
145
|
+
const sigForScript = sig.toChecksigFormat()
|
|
143
146
|
const pubkeyForScript = privateKey
|
|
144
147
|
.toPublicKey()
|
|
145
|
-
.encode(true) as number[]
|
|
148
|
+
.encode(true) as number[]
|
|
146
149
|
return new UnlockingScript([
|
|
147
150
|
{ op: sigForScript.length, data: sigForScript },
|
|
148
|
-
{ op: pubkeyForScript.length, data: pubkeyForScript }
|
|
149
|
-
])
|
|
151
|
+
{ op: pubkeyForScript.length, data: pubkeyForScript }
|
|
152
|
+
])
|
|
150
153
|
},
|
|
151
154
|
estimateLength: async () => {
|
|
152
155
|
// public key (1+33) + signature (1+73)
|
|
153
156
|
// Note: We add 1 to each element's length because of the associated OP_PUSH
|
|
154
|
-
return 108
|
|
155
|
-
}
|
|
156
|
-
}
|
|
157
|
+
return 108
|
|
158
|
+
}
|
|
159
|
+
}
|
|
157
160
|
}
|
|
158
161
|
}
|
|
@@ -6,7 +6,6 @@ import { Script, Spend } from '../../../script/index'
|
|
|
6
6
|
import { Transaction } from '../../../transaction/index'
|
|
7
7
|
|
|
8
8
|
describe('PushDrop', () => {
|
|
9
|
-
let privateKey: typeof PrivateKey
|
|
10
9
|
let wallet
|
|
11
10
|
let pushDrop: PushDrop
|
|
12
11
|
|
|
@@ -17,7 +16,7 @@ describe('PushDrop', () => {
|
|
|
17
16
|
counterparty: string = 'self',
|
|
18
17
|
signOutputs: 'all' | 'none' | 'single' = 'all',
|
|
19
18
|
anyoneCanPay: boolean = false
|
|
20
|
-
) => {
|
|
19
|
+
): Promise<void> => {
|
|
21
20
|
const lockingScript = await pushDrop.lock(
|
|
22
21
|
fields,
|
|
23
22
|
protocolID,
|
|
@@ -82,7 +81,7 @@ describe('PushDrop', () => {
|
|
|
82
81
|
}
|
|
83
82
|
|
|
84
83
|
beforeEach(() => {
|
|
85
|
-
|
|
84
|
+
const privateKey = PrivateKey.fromRandom()
|
|
86
85
|
wallet = new CompletedProtoWallet(privateKey)
|
|
87
86
|
pushDrop = new PushDrop(wallet)
|
|
88
87
|
})
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { default as P2PKH } from
|
|
2
|
-
export { default as RPuzzle } from
|
|
3
|
-
export { default as PushDrop } from
|
|
1
|
+
export { default as P2PKH } from './P2PKH.js'
|
|
2
|
+
export { default as RPuzzle } from './RPuzzle.js'
|
|
3
|
+
export { default as PushDrop } from './PushDrop.js'
|
|
@@ -2,12 +2,12 @@ import { toArray } from '../../primitives/utils'
|
|
|
2
2
|
import { TOTP } from '../../totp/totp'
|
|
3
3
|
|
|
4
4
|
const secret = toArray('48656c6c6f21deadbeef', 'hex')
|
|
5
|
-
const period = 30 //sec
|
|
6
|
-
const periodMS = 30 * 1000 //ms
|
|
5
|
+
const period = 30 // sec
|
|
6
|
+
const periodMS = 30 * 1000 // ms
|
|
7
7
|
const options = {
|
|
8
8
|
digits: 6,
|
|
9
9
|
period,
|
|
10
|
-
algorithm: 'SHA-1' as
|
|
10
|
+
algorithm: 'SHA-1' as const
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
describe('totp generation and validation', () => {
|
|
@@ -43,13 +43,13 @@ describe('totp generation and validation', () => {
|
|
|
43
43
|
])('$description', async ({ time, expected }) => {
|
|
44
44
|
jest.setSystemTime(time)
|
|
45
45
|
|
|
46
|
-
//check if expected passcode is generated
|
|
46
|
+
// check if expected passcode is generated
|
|
47
47
|
const passcode = TOTP.generate(secret, options)
|
|
48
48
|
expect(passcode).toEqual(expected)
|
|
49
49
|
|
|
50
|
-
expect(TOTP.validate(secret, '000000', options)).toEqual(false) //this passcode should not be valid for any of above test cases
|
|
50
|
+
expect(TOTP.validate(secret, '000000', options)).toEqual(false) // this passcode should not be valid for any of above test cases
|
|
51
51
|
|
|
52
|
-
//should not be valid for only a part of passcode
|
|
52
|
+
// should not be valid for only a part of passcode
|
|
53
53
|
expect(TOTP.validate(secret, passcode.slice(1), options)).toEqual(false)
|
|
54
54
|
|
|
55
55
|
expect(TOTP.validate(secret, passcode, options)).toEqual(true)
|
|
@@ -57,7 +57,7 @@ describe('totp generation and validation', () => {
|
|
|
57
57
|
const checkAdjacentWindow = (
|
|
58
58
|
timeOfGeneration: number,
|
|
59
59
|
expected: boolean
|
|
60
|
-
) => {
|
|
60
|
+
): void => {
|
|
61
61
|
jest.setSystemTime(timeOfGeneration)
|
|
62
62
|
const adjacentTimewindowPasscode = TOTP.generate(secret, options)
|
|
63
63
|
|
|
@@ -67,13 +67,14 @@ describe('totp generation and validation', () => {
|
|
|
67
67
|
).toEqual(expected)
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
//because the 'skew' is '1' by default, the passcode for the next window also should be valid
|
|
71
|
-
checkAdjacentWindow(time + periodMS, true)
|
|
70
|
+
// because the 'skew' is '1' by default, the passcode for the next window also should be valid
|
|
71
|
+
checkAdjacentWindow((time as number) + periodMS, true)
|
|
72
|
+
|
|
72
73
|
checkAdjacentWindow(time - periodMS, true)
|
|
73
74
|
|
|
74
|
-
//for 'skew': 1, other passcodes for further timewindows should not be valid
|
|
75
|
+
// for 'skew': 1, other passcodes for further timewindows should not be valid
|
|
75
76
|
for (let i = 2; i < 10; i++) {
|
|
76
|
-
checkAdjacentWindow(time + i * periodMS, false)
|
|
77
|
+
checkAdjacentWindow((time as number) + i * periodMS, false)
|
|
77
78
|
checkAdjacentWindow(time - i * periodMS, false)
|
|
78
79
|
}
|
|
79
80
|
})
|
package/src/totp/index.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from './totp'
|
|
1
|
+
export * from './totp.js'
|
package/src/totp/totp.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { SHA1HMAC, SHA256HMAC, SHA512HMAC } from '../primitives/Hash'
|
|
2
|
-
import BigNumber from '../primitives/BigNumber'
|
|
1
|
+
import { SHA1HMAC, SHA256HMAC, SHA512HMAC } from '../primitives/Hash.js'
|
|
2
|
+
import BigNumber from '../primitives/BigNumber.js'
|
|
3
3
|
|
|
4
4
|
export type TOTPAlgorithm = 'SHA-1' | 'SHA-256' | 'SHA-512'
|
|
5
5
|
|
|
@@ -25,6 +25,7 @@ export type TOTPValidateOptions = TOTPOptions & {
|
|
|
25
25
|
skew?: number
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-extraneous-class
|
|
28
29
|
export class TOTP {
|
|
29
30
|
/**
|
|
30
31
|
* Generates a Time-based One-Time Password (TOTP).
|
|
@@ -54,7 +55,7 @@ export class TOTP {
|
|
|
54
55
|
): boolean {
|
|
55
56
|
const _options = this.withDefaultValidateOptions(options)
|
|
56
57
|
passcode = passcode.trim()
|
|
57
|
-
if (passcode.length
|
|
58
|
+
if (passcode.length !== _options.digits) {
|
|
58
59
|
return false
|
|
59
60
|
}
|
|
60
61
|
|
|
@@ -123,7 +124,7 @@ function calcHMAC (
|
|
|
123
124
|
secret: number[],
|
|
124
125
|
timePad: number[],
|
|
125
126
|
algorithm: TOTPAlgorithm
|
|
126
|
-
) {
|
|
127
|
+
): SHA1HMAC | SHA256HMAC | SHA512HMAC {
|
|
127
128
|
switch (algorithm) {
|
|
128
129
|
case 'SHA-1':
|
|
129
130
|
return new SHA1HMAC(secret).update(timePad)
|
package/src/transaction/Beef.ts
CHANGED
|
@@ -1,9 +1,14 @@
|
|
|
1
|
-
import MerklePath from './MerklePath'
|
|
2
|
-
import Transaction from './Transaction'
|
|
3
|
-
import ChainTracker from './ChainTracker'
|
|
4
|
-
import BeefTx from './BeefTx'
|
|
5
|
-
import { Reader, Writer, toHex, toArray } from '../primitives/utils'
|
|
6
|
-
import { hash256 } from '../primitives/Hash'
|
|
1
|
+
import MerklePath from './MerklePath.js'
|
|
2
|
+
import Transaction from './Transaction.js'
|
|
3
|
+
import ChainTracker from './ChainTracker.js'
|
|
4
|
+
import BeefTx from './BeefTx.js'
|
|
5
|
+
import { Reader, Writer, toHex, toArray } from '../primitives/utils.js'
|
|
6
|
+
import { hash256 } from '../primitives/Hash.js'
|
|
7
|
+
|
|
8
|
+
function verifyTruthy<T> (v: T | undefined): T {
|
|
9
|
+
if (v == null) throw new Error('Expected a valid value, but got undefined.')
|
|
10
|
+
return v
|
|
11
|
+
}
|
|
7
12
|
|
|
8
13
|
export const BEEF_V1 = 4022206465 // 0100BEEF in LE order
|
|
9
14
|
export const BEEF_V2 = 4022206466 // 0200BEEF in LE order
|
|
@@ -111,7 +116,9 @@ export class Beef {
|
|
|
111
116
|
* @returns `MerklePath` with level zero hash equal to txid or undefined.
|
|
112
117
|
*/
|
|
113
118
|
findBump (txid: string): MerklePath | undefined {
|
|
114
|
-
return this.bumps.find((b) =>
|
|
119
|
+
return this.bumps.find((b) =>
|
|
120
|
+
b.path[0].some((leaf) => leaf.hash === txid) // ✅ Ensure boolean return with `.some()`
|
|
121
|
+
)
|
|
115
122
|
}
|
|
116
123
|
|
|
117
124
|
/**
|
|
@@ -125,12 +132,12 @@ export class Beef {
|
|
|
125
132
|
*/
|
|
126
133
|
findTransactionForSigning (txid: string): Transaction | undefined {
|
|
127
134
|
const beefTx = this.findTxid(txid)
|
|
128
|
-
if (
|
|
135
|
+
if ((beefTx == null) || (beefTx.tx == null)) return undefined // Ensure beefTx.tx exists before using it
|
|
129
136
|
|
|
130
137
|
for (const i of beefTx.tx.inputs) {
|
|
131
|
-
if (
|
|
132
|
-
const itx = this.findTxid(i.sourceTXID)
|
|
133
|
-
if (itx) {
|
|
138
|
+
if (i.sourceTransaction == null) {
|
|
139
|
+
const itx = this.findTxid(verifyTruthy(i.sourceTXID)) // Ensure sourceTXID is valid
|
|
140
|
+
if (itx != null) {
|
|
134
141
|
i.sourceTransaction = itx.tx
|
|
135
142
|
}
|
|
136
143
|
}
|
|
@@ -149,23 +156,23 @@ export class Beef {
|
|
|
149
156
|
*/
|
|
150
157
|
findAtomicTransaction (txid: string): Transaction | undefined {
|
|
151
158
|
const beefTx = this.findTxid(txid)
|
|
152
|
-
if (
|
|
159
|
+
if ((beefTx == null) || (beefTx.tx == null)) return undefined // Ensure beefTx.tx exists before using it
|
|
153
160
|
|
|
154
|
-
const addInputProof = (beef: Beef, tx: Transaction) => {
|
|
161
|
+
const addInputProof = (beef: Beef, tx: Transaction): void => {
|
|
155
162
|
const mp = beef.findBump(tx.id('hex'))
|
|
156
|
-
if (mp) {
|
|
163
|
+
if (mp != null) {
|
|
157
164
|
tx.merklePath = mp
|
|
158
165
|
} else {
|
|
159
166
|
for (const i of tx.inputs) {
|
|
160
|
-
if (
|
|
161
|
-
const itx = beef.findTxid(i.sourceTXID)
|
|
162
|
-
if (itx) {
|
|
167
|
+
if (i.sourceTransaction == null) {
|
|
168
|
+
const itx = beef.findTxid(verifyTruthy(i.sourceTXID)) // Ensure sourceTXID is valid
|
|
169
|
+
if (itx != null) {
|
|
163
170
|
i.sourceTransaction = itx.tx
|
|
164
171
|
}
|
|
165
172
|
}
|
|
166
|
-
if (i.sourceTransaction) {
|
|
173
|
+
if (i.sourceTransaction != null) {
|
|
167
174
|
const mp = beef.findBump(i.sourceTransaction.id('hex'))
|
|
168
|
-
if (mp) {
|
|
175
|
+
if (mp != null) {
|
|
169
176
|
i.sourceTransaction.merklePath = mp
|
|
170
177
|
} else {
|
|
171
178
|
addInputProof(beef, i.sourceTransaction)
|
|
@@ -175,7 +182,7 @@ export class Beef {
|
|
|
175
182
|
}
|
|
176
183
|
}
|
|
177
184
|
|
|
178
|
-
addInputProof(this, beefTx.tx)
|
|
185
|
+
addInputProof(this, beefTx.tx) // Safe because we checked that beefTx.tx exists
|
|
179
186
|
|
|
180
187
|
return beefTx.tx
|
|
181
188
|
}
|
|
@@ -213,11 +220,12 @@ export class Beef {
|
|
|
213
220
|
this.bumps.push(bump)
|
|
214
221
|
}
|
|
215
222
|
|
|
216
|
-
//
|
|
223
|
+
// Review if any transactions are proven by this bump
|
|
217
224
|
const b = this.bumps[bumpIndex]
|
|
218
225
|
for (const tx of this.txs) {
|
|
219
226
|
const txid = tx.txid
|
|
220
|
-
|
|
227
|
+
|
|
228
|
+
if (tx.bumpIndex == null) { // ✅ Explicitly check for null or undefined
|
|
221
229
|
for (const n of b.path[0]) {
|
|
222
230
|
if (n.hash === txid) {
|
|
223
231
|
tx.bumpIndex = bumpIndex
|
|
@@ -264,7 +272,7 @@ export class Beef {
|
|
|
264
272
|
const txid = tx.id('hex')
|
|
265
273
|
this.removeExistingTxid(txid)
|
|
266
274
|
let bumpIndex: number | undefined
|
|
267
|
-
if (tx.merklePath) {
|
|
275
|
+
if (tx.merklePath != null) {
|
|
268
276
|
bumpIndex = this.mergeBump(tx.merklePath)
|
|
269
277
|
}
|
|
270
278
|
const newTx = new BeefTx(tx, bumpIndex)
|
|
@@ -273,7 +281,7 @@ export class Beef {
|
|
|
273
281
|
bumpIndex = newTx.bumpIndex
|
|
274
282
|
if (bumpIndex === undefined) {
|
|
275
283
|
for (const input of tx.inputs) {
|
|
276
|
-
if (input.sourceTransaction) {
|
|
284
|
+
if (input.sourceTransaction != null) {
|
|
277
285
|
this.mergeTransaction(input.sourceTransaction)
|
|
278
286
|
}
|
|
279
287
|
}
|
|
@@ -285,7 +293,7 @@ export class Beef {
|
|
|
285
293
|
* Removes an existing transaction from the BEEF, given its TXID
|
|
286
294
|
* @param txid TXID of the transaction to remove
|
|
287
295
|
*/
|
|
288
|
-
removeExistingTxid (txid: string) {
|
|
296
|
+
removeExistingTxid (txid: string): void {
|
|
289
297
|
const existingTxIndex = this.txs.findIndex((t) => t.txid === txid)
|
|
290
298
|
if (existingTxIndex >= 0) {
|
|
291
299
|
this.txs.splice(existingTxIndex, 1)
|
|
@@ -294,7 +302,7 @@ export class Beef {
|
|
|
294
302
|
|
|
295
303
|
mergeTxidOnly (txid: string): BeefTx {
|
|
296
304
|
let tx = this.txs.find((t) => t.txid === txid)
|
|
297
|
-
if (
|
|
305
|
+
if (tx == null) {
|
|
298
306
|
tx = new BeefTx(txid)
|
|
299
307
|
this.txs.push(tx)
|
|
300
308
|
this.tryToValidateBumpIndex(tx)
|
|
@@ -304,17 +312,23 @@ export class Beef {
|
|
|
304
312
|
|
|
305
313
|
mergeBeefTx (btx: BeefTx): BeefTx {
|
|
306
314
|
let beefTx = this.findTxid(btx.txid)
|
|
307
|
-
|
|
315
|
+
|
|
316
|
+
if (btx.isTxidOnly && (beefTx == null)) {
|
|
308
317
|
beefTx = this.mergeTxidOnly(btx.txid)
|
|
309
|
-
} else if (btx._tx && (
|
|
318
|
+
} else if ((btx._tx != null) && ((beefTx == null) || beefTx.isTxidOnly)) {
|
|
310
319
|
beefTx = this.mergeTransaction(btx._tx)
|
|
311
|
-
} else if (btx._rawTx && (
|
|
320
|
+
} else if ((btx._rawTx != null) && ((beefTx == null) || beefTx.isTxidOnly)) {
|
|
312
321
|
beefTx = this.mergeRawTx(btx._rawTx)
|
|
313
322
|
}
|
|
323
|
+
|
|
324
|
+
if (beefTx == null) {
|
|
325
|
+
throw new Error(`Failed to merge BeefTx for txid: ${btx.txid}`)
|
|
326
|
+
}
|
|
327
|
+
|
|
314
328
|
return beefTx
|
|
315
329
|
}
|
|
316
330
|
|
|
317
|
-
mergeBeef (beef: number[] | Beef) {
|
|
331
|
+
mergeBeef (beef: number[] | Beef): void {
|
|
318
332
|
const b: Beef = Array.isArray(beef) ? Beef.fromBinary(beef) : beef
|
|
319
333
|
|
|
320
334
|
for (const bump of b.bumps) {
|
|
@@ -393,14 +407,14 @@ export class Beef {
|
|
|
393
407
|
|
|
394
408
|
for (const tx of this.txs) {
|
|
395
409
|
if (tx.isTxidOnly) {
|
|
396
|
-
if (
|
|
410
|
+
if (allowTxidOnly !== true) return r // ✅ Explicit check for `true`
|
|
397
411
|
txids[tx.txid] = true
|
|
398
412
|
}
|
|
399
413
|
}
|
|
400
414
|
|
|
401
415
|
const confirmComputedRoot = (b: MerklePath, txid: string): boolean => {
|
|
402
416
|
const root = b.computeRoot(txid)
|
|
403
|
-
if (
|
|
417
|
+
if (r.roots[b.blockHeight] === undefined || r.roots[b.blockHeight] === '') {
|
|
404
418
|
// accept the root as valid for this block and reuse for subsequent txids
|
|
405
419
|
r.roots[b.blockHeight] = root
|
|
406
420
|
}
|
|
@@ -412,9 +426,10 @@ export class Beef {
|
|
|
412
426
|
|
|
413
427
|
for (const b of this.bumps) {
|
|
414
428
|
for (const n of b.path[0]) {
|
|
415
|
-
if (n.txid && n.hash) {
|
|
429
|
+
if (n.txid === true && typeof n.hash === 'string' && n.hash.length > 0) {
|
|
416
430
|
txids[n.hash] = true
|
|
417
|
-
|
|
431
|
+
|
|
432
|
+
// All txid hashes in all bumps must agree on computed merkle path roots
|
|
418
433
|
if (!confirmComputedRoot(b, n.hash)) {
|
|
419
434
|
return r
|
|
420
435
|
}
|
|
@@ -438,7 +453,7 @@ export class Beef {
|
|
|
438
453
|
* Serializes this data to `writer`
|
|
439
454
|
* @param writer
|
|
440
455
|
*/
|
|
441
|
-
toWriter (writer: Writer) {
|
|
456
|
+
toWriter (writer: Writer): void {
|
|
442
457
|
writer.writeUInt32LE(this.version)
|
|
443
458
|
|
|
444
459
|
writer.writeVarIntNum(this.bumps.length)
|
|
@@ -472,22 +487,26 @@ export class Beef {
|
|
|
472
487
|
* @param txid
|
|
473
488
|
* @returns serialized contents of this Beef with AtomicBEEF prefix.
|
|
474
489
|
*/
|
|
475
|
-
toBinaryAtomic (txid: string) {
|
|
490
|
+
toBinaryAtomic (txid: string): number[] {
|
|
476
491
|
this.sortTxs()
|
|
477
492
|
const tx = this.findTxid(txid)
|
|
478
|
-
if (
|
|
493
|
+
if (tx == null) {
|
|
479
494
|
throw new Error(`${txid} does not exist in this Beef`)
|
|
480
495
|
}
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
496
|
+
|
|
497
|
+
// If the transaction is not the last one, clone and modify
|
|
498
|
+
const beef = (this.txs[this.txs.length - 1] === tx) ? this : this.clone()
|
|
499
|
+
|
|
500
|
+
if (beef !== this) {
|
|
484
501
|
const i = this.txs.findIndex((t) => t.txid === txid)
|
|
485
502
|
beef.txs.splice(i + 1)
|
|
486
503
|
}
|
|
504
|
+
|
|
487
505
|
const writer = new Writer()
|
|
488
506
|
writer.writeUInt32LE(ATOMIC_BEEF)
|
|
489
507
|
writer.write(toArray(txid, 'hex'))
|
|
490
508
|
beef.toWriter(writer)
|
|
509
|
+
|
|
491
510
|
return writer.toArray()
|
|
492
511
|
}
|
|
493
512
|
|
|
@@ -634,11 +653,12 @@ export class Beef {
|
|
|
634
653
|
// link their inputs that exist in this beef,
|
|
635
654
|
// make a note of missing inputs.
|
|
636
655
|
for (const inputTxid of tx.inputTxids) {
|
|
637
|
-
if (
|
|
656
|
+
if (txidToTx[inputTxid] === undefined) { // Explicitly check for undefined
|
|
638
657
|
missingInputs[inputTxid] = true
|
|
639
658
|
hasMissingInput = true
|
|
640
659
|
}
|
|
641
660
|
}
|
|
661
|
+
|
|
642
662
|
if (hasMissingInput) {
|
|
643
663
|
txsMissingInputs.push(tx)
|
|
644
664
|
} else {
|
|
@@ -698,7 +718,7 @@ export class Beef {
|
|
|
698
718
|
* Ensure that all the txids in `knownTxids` are txidOnly
|
|
699
719
|
* @param knownTxids
|
|
700
720
|
*/
|
|
701
|
-
trimKnownTxids (knownTxids: string[]) {
|
|
721
|
+
trimKnownTxids (knownTxids: string[]): void {
|
|
702
722
|
for (let i = 0; i < this.txs.length;) {
|
|
703
723
|
const tx = this.txs[i]
|
|
704
724
|
if (tx.isTxidOnly && knownTxids.includes(tx.txid)) {
|
|
@@ -723,15 +743,17 @@ export class Beef {
|
|
|
723
743
|
*/
|
|
724
744
|
toLogString (): string {
|
|
725
745
|
let log = ''
|
|
726
|
-
log += `BEEF with ${this.bumps.length} BUMPS and ${this.txs.length} Transactions, isValid ${this.isValid()}\n`
|
|
746
|
+
log += `BEEF with ${this.bumps.length} BUMPS and ${this.txs.length} Transactions, isValid ${this.isValid().toString()}\n`
|
|
727
747
|
let i = -1
|
|
748
|
+
|
|
728
749
|
for (const b of this.bumps) {
|
|
729
750
|
i++
|
|
730
751
|
log += ` BUMP ${i}\n block: ${b.blockHeight}\n txids: [\n${b.path[0]
|
|
731
|
-
.filter((n) =>
|
|
732
|
-
.map((n) => ` '${n.hash}'`)
|
|
752
|
+
.filter((n) => n.txid === true) // ✅ Explicitly check if txid is `true`
|
|
753
|
+
.map((n) => ` '${n.hash ?? ''}'`)
|
|
733
754
|
.join(',\n')}\n ]\n`
|
|
734
755
|
}
|
|
756
|
+
|
|
735
757
|
i = -1
|
|
736
758
|
for (const t of this.txs) {
|
|
737
759
|
i++
|
|
@@ -742,41 +764,44 @@ export class Beef {
|
|
|
742
764
|
if (t.isTxidOnly) {
|
|
743
765
|
log += ' txidOnly\n'
|
|
744
766
|
} else {
|
|
745
|
-
log += ` rawTx length=${t.rawTx
|
|
767
|
+
log += ` rawTx length=${t.rawTx?.length ?? 0}\n` // ✅ Fix applied here
|
|
746
768
|
}
|
|
747
769
|
if (t.inputTxids.length > 0) {
|
|
748
|
-
log += ` inputs: [\n${t.inputTxids
|
|
770
|
+
log += ` inputs: [\n${t.inputTxids
|
|
771
|
+
.map((it) => ` '${it}'`)
|
|
772
|
+
.join(',\n')}\n ]\n`
|
|
749
773
|
}
|
|
750
774
|
}
|
|
775
|
+
|
|
751
776
|
return log
|
|
752
777
|
}
|
|
753
778
|
|
|
754
779
|
/**
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
addComputedLeaves () {
|
|
759
|
-
const beef = this
|
|
780
|
+
* In some circumstances it may be helpful for the BUMP MerklePaths to include
|
|
781
|
+
* leaves that can be computed from row zero.
|
|
782
|
+
*/
|
|
783
|
+
addComputedLeaves (): void {
|
|
760
784
|
const hash = (m: string): string =>
|
|
761
785
|
toHex(hash256(toArray(m, 'hex').reverse()).reverse())
|
|
762
786
|
|
|
763
|
-
for (const bump of
|
|
787
|
+
for (const bump of this.bumps) { // ✅ Use `this` instead of `beef`
|
|
764
788
|
for (let row = 1; row < bump.path.length; row++) {
|
|
765
789
|
for (const leafL of bump.path[row - 1]) {
|
|
766
|
-
if (leafL.hash && (leafL.offset & 1) === 0) {
|
|
790
|
+
if (typeof leafL.hash === 'string' && (leafL.offset & 1) === 0) {
|
|
767
791
|
const leafR = bump.path[row - 1].find(
|
|
768
792
|
(l) => l.offset === leafL.offset + 1
|
|
769
793
|
)
|
|
770
794
|
const offsetOnRow = leafL.offset >> 1
|
|
795
|
+
|
|
771
796
|
if (
|
|
772
|
-
leafR &&
|
|
773
|
-
leafR.hash &&
|
|
774
|
-
bump.path[row].
|
|
797
|
+
leafR !== undefined &&
|
|
798
|
+
typeof leafR.hash === 'string' &&
|
|
799
|
+
bump.path[row].every((l) => l.offset !== offsetOnRow)
|
|
775
800
|
) {
|
|
776
|
-
//
|
|
801
|
+
// Computable leaf is missing... add it.
|
|
777
802
|
bump.path[row].push({
|
|
778
803
|
offset: offsetOnRow,
|
|
779
|
-
//
|
|
804
|
+
// String concatenation puts the right leaf on the left of the left leaf hash
|
|
780
805
|
hash: hash(leafR.hash + leafL.hash)
|
|
781
806
|
})
|
|
782
807
|
}
|