@aptos-labs/ts-sdk 1.36.0 → 1.37.0
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/common/{accountAddress-jrha_M3l.d.ts → accountAddress-DZH9Wn5l.d.ts} +28 -1
- package/dist/common/chunk-MVCKMP5U.js +4 -0
- package/dist/common/chunk-MVCKMP5U.js.map +1 -0
- package/dist/common/cli/index.d.ts +1 -1
- package/dist/common/cli/index.js +1 -1
- package/dist/common/cli/index.js.map +1 -1
- package/dist/common/index.d.ts +9288 -8699
- package/dist/common/index.js +32 -32
- package/dist/common/index.js.map +1 -1
- package/dist/esm/{Ed25519Account-D4j3_WIS.d.mts → Ed25519Account-CDURCT1q.d.mts} +59 -3
- package/dist/esm/account/AbstractKeylessAccount.d.mts +23 -13
- package/dist/esm/account/AbstractKeylessAccount.mjs +1 -1
- package/dist/esm/account/AbstractedAccount.d.mts +10 -10
- package/dist/esm/account/AbstractedAccount.mjs +1 -1
- package/dist/esm/account/Account.d.mts +6 -6
- package/dist/esm/account/Account.mjs +1 -1
- package/dist/esm/account/AccountUtils.d.mts +11 -10
- package/dist/esm/account/AccountUtils.mjs +1 -1
- package/dist/esm/account/Ed25519Account.d.mts +5 -5
- package/dist/esm/account/Ed25519Account.mjs +1 -1
- package/dist/esm/account/EphemeralKeyPair.d.mts +3 -1
- package/dist/esm/account/EphemeralKeyPair.mjs +1 -1
- package/dist/esm/account/FederatedKeylessAccount.d.mts +12 -11
- package/dist/esm/account/FederatedKeylessAccount.mjs +1 -1
- package/dist/esm/account/KeylessAccount.d.mts +12 -11
- package/dist/esm/account/KeylessAccount.mjs +1 -1
- package/dist/esm/account/MultiEd25519Account.d.mts +31 -9
- package/dist/esm/account/MultiEd25519Account.mjs +1 -1
- package/dist/esm/account/MultiKeyAccount.d.mts +38 -12
- package/dist/esm/account/MultiKeyAccount.mjs +1 -1
- package/dist/esm/account/SingleKeyAccount.d.mts +6 -6
- package/dist/esm/account/SingleKeyAccount.mjs +1 -1
- package/dist/esm/account/index.d.mts +7 -6
- package/dist/esm/account/index.mjs +1 -1
- package/dist/esm/account/utils.mjs +1 -1
- package/dist/esm/api/account/abstraction.d.mts +9 -9
- package/dist/esm/api/account/abstraction.mjs +1 -1
- package/dist/esm/api/account.d.mts +88 -9
- package/dist/esm/api/account.mjs +1 -1
- package/dist/esm/api/ans.d.mts +13 -13
- package/dist/esm/api/ans.mjs +1 -1
- package/dist/esm/api/aptos.d.mts +6 -5
- package/dist/esm/api/aptos.mjs +1 -1
- package/dist/esm/api/coin.d.mts +11 -11
- package/dist/esm/api/coin.mjs +1 -1
- package/dist/esm/api/digitalAsset.d.mts +5 -5
- package/dist/esm/api/digitalAsset.mjs +1 -1
- package/dist/esm/api/event.mjs +1 -1
- package/dist/esm/api/experimental.d.mts +7 -7
- package/dist/esm/api/experimental.mjs +1 -1
- package/dist/esm/api/faucet.mjs +1 -1
- package/dist/esm/api/fungibleAsset.d.mts +13 -13
- package/dist/esm/api/fungibleAsset.mjs +1 -1
- package/dist/esm/api/general.d.mts +7 -7
- package/dist/esm/api/general.mjs +1 -1
- package/dist/esm/api/index.d.mts +6 -5
- package/dist/esm/api/index.mjs +1 -1
- package/dist/esm/api/keyless.d.mts +20 -19
- package/dist/esm/api/keyless.mjs +1 -1
- package/dist/esm/api/object.mjs +1 -1
- package/dist/esm/api/staking.mjs +1 -1
- package/dist/esm/api/table.mjs +1 -1
- package/dist/esm/api/transaction.d.mts +4 -4
- package/dist/esm/api/transaction.mjs +1 -1
- package/dist/esm/api/transactionSubmission/build.d.mts +9 -9
- package/dist/esm/api/transactionSubmission/build.mjs +1 -1
- package/dist/esm/api/transactionSubmission/management.d.mts +8 -8
- package/dist/esm/api/transactionSubmission/management.mjs +1 -1
- package/dist/esm/api/transactionSubmission/sign.d.mts +3 -3
- package/dist/esm/api/transactionSubmission/sign.mjs +1 -1
- package/dist/esm/api/transactionSubmission/sign.mjs.map +1 -1
- package/dist/esm/api/transactionSubmission/simulate.d.mts +9 -9
- package/dist/esm/api/transactionSubmission/simulate.mjs +1 -1
- package/dist/esm/api/transactionSubmission/submit.d.mts +3 -3
- package/dist/esm/api/transactionSubmission/submit.mjs +1 -1
- package/dist/esm/api/utils.mjs +1 -1
- package/dist/esm/bcs/index.mjs +1 -1
- package/dist/esm/bcs/serializable/movePrimitives.mjs +1 -1
- package/dist/esm/bcs/serializable/moveStructs.mjs +1 -1
- package/dist/esm/{chunk-AIPHJFJL.mjs → chunk-3IGJ2IMB.mjs} +2 -2
- package/dist/esm/{chunk-2P27DDVV.mjs → chunk-5MMTP427.mjs} +2 -2
- package/dist/esm/chunk-6374Q7AG.mjs +2 -0
- package/dist/esm/{chunk-JLZGYZBX.mjs.map → chunk-6374Q7AG.mjs.map} +1 -1
- package/dist/esm/{chunk-AEGA5N2W.mjs → chunk-6J64BOS7.mjs} +2 -2
- package/dist/esm/chunk-7H44HTYE.mjs +4 -0
- package/dist/esm/chunk-7H44HTYE.mjs.map +1 -0
- package/dist/esm/chunk-7VEWPUCH.mjs +2 -0
- package/dist/esm/chunk-7VEWPUCH.mjs.map +1 -0
- package/dist/esm/chunk-ANTUWHYB.mjs +2 -0
- package/dist/esm/chunk-ANTUWHYB.mjs.map +1 -0
- package/dist/esm/{chunk-R6QCPXQG.mjs → chunk-B373VRCY.mjs} +2 -2
- package/dist/esm/chunk-B373VRCY.mjs.map +1 -0
- package/dist/esm/{chunk-TTY5GFMN.mjs → chunk-BSH7B2QT.mjs} +2 -2
- package/dist/esm/chunk-EYLZD4JU.mjs +4 -0
- package/dist/esm/chunk-EYLZD4JU.mjs.map +1 -0
- package/dist/esm/chunk-GPG64UZT.mjs +2 -0
- package/dist/esm/{chunk-X5YB74NB.mjs.map → chunk-GPG64UZT.mjs.map} +1 -1
- package/dist/esm/{chunk-KBC4ECVP.mjs → chunk-HRHICHDX.mjs} +2 -2
- package/dist/esm/{chunk-HWMMVLTP.mjs → chunk-JG4T5BDZ.mjs} +2 -2
- package/dist/esm/chunk-LBA4CTUV.mjs +2 -0
- package/dist/esm/chunk-LBA4CTUV.mjs.map +1 -0
- package/dist/esm/{chunk-H4YAL2IL.mjs → chunk-LGC2JORV.mjs} +2 -2
- package/dist/esm/chunk-LGC2JORV.mjs.map +1 -0
- package/dist/esm/chunk-MIW45ADL.mjs +2 -0
- package/dist/esm/chunk-MIW45ADL.mjs.map +1 -0
- package/dist/esm/{chunk-ZOY6N6UM.mjs → chunk-NZXPT44W.mjs} +2 -2
- package/dist/esm/{chunk-2SAOCLIU.mjs → chunk-POELQOLD.mjs} +2 -2
- package/dist/esm/chunk-PR72YXRK.mjs +2 -0
- package/dist/esm/chunk-PR72YXRK.mjs.map +1 -0
- package/dist/esm/{chunk-ZVYTHOS5.mjs → chunk-PXG3WJIU.mjs} +2 -2
- package/dist/esm/chunk-TTFYJM6A.mjs +2 -0
- package/dist/esm/chunk-TTFYJM6A.mjs.map +1 -0
- package/dist/esm/{chunk-ACE3NEV6.mjs → chunk-VNUNIQAY.mjs} +2 -2
- package/dist/esm/chunk-YHJHXLYS.mjs +7 -0
- package/dist/esm/chunk-YHJHXLYS.mjs.map +1 -0
- package/dist/esm/chunk-YHKWV7NV.mjs +2 -0
- package/dist/esm/chunk-YHKWV7NV.mjs.map +1 -0
- package/dist/esm/cli/index.mjs +1 -1
- package/dist/esm/cli/localNode.mjs +1 -1
- package/dist/esm/client/core.mjs +1 -1
- package/dist/esm/client/get.d.mts +5 -1
- package/dist/esm/client/get.mjs +1 -1
- package/dist/esm/client/index.d.mts +1 -1
- package/dist/esm/client/index.mjs +1 -1
- package/dist/esm/client/post.mjs +1 -1
- package/dist/esm/core/account/index.mjs +1 -1
- package/dist/esm/core/account/utils/address.mjs +1 -1
- package/dist/esm/core/account/utils/index.mjs +1 -1
- package/dist/esm/core/accountAddress.d.mts +18 -0
- package/dist/esm/core/accountAddress.mjs +1 -1
- package/dist/esm/core/authenticationKey.d.mts +3 -1
- package/dist/esm/core/authenticationKey.mjs +1 -1
- package/dist/esm/core/crypto/abstraction.d.mts +4 -1
- package/dist/esm/core/crypto/abstraction.mjs +1 -1
- package/dist/esm/core/crypto/ed25519.d.mts +18 -1
- package/dist/esm/core/crypto/ed25519.mjs +1 -1
- package/dist/esm/core/crypto/ephemeral.d.mts +8 -1
- package/dist/esm/core/crypto/ephemeral.mjs +1 -1
- package/dist/esm/core/crypto/federatedKeyless.d.mts +11 -87
- package/dist/esm/core/crypto/federatedKeyless.mjs +1 -1
- package/dist/esm/core/crypto/index.d.mts +8 -6
- package/dist/esm/core/crypto/index.mjs +1 -1
- package/dist/esm/core/crypto/keyless.d.mts +13 -586
- package/dist/esm/core/crypto/keyless.mjs +1 -1
- package/dist/esm/core/crypto/multiEd25519.d.mts +14 -4
- package/dist/esm/core/crypto/multiEd25519.mjs +1 -1
- package/dist/esm/core/crypto/multiKey.d.mts +42 -3
- package/dist/esm/core/crypto/multiKey.mjs +1 -1
- package/dist/esm/core/crypto/privateKey.d.mts +3 -1
- package/dist/esm/core/crypto/privateKey.mjs +1 -1
- package/dist/esm/core/crypto/proof.mjs +1 -1
- package/dist/esm/core/crypto/publicKey.d.mts +3 -1
- package/dist/esm/core/crypto/publicKey.mjs +1 -1
- package/dist/esm/core/crypto/secp256k1.d.mts +26 -2
- package/dist/esm/core/crypto/secp256k1.mjs +1 -1
- package/dist/esm/core/crypto/signature.mjs +1 -1
- package/dist/esm/core/crypto/singleKey.d.mts +28 -3
- package/dist/esm/core/crypto/singleKey.mjs +1 -1
- package/dist/esm/core/index.d.mts +8 -6
- package/dist/esm/core/index.mjs +1 -1
- package/dist/esm/errors/index.d.mts +10 -2
- package/dist/esm/errors/index.mjs +1 -1
- package/dist/esm/federatedKeyless-J5bdbbLQ.d.mts +875 -0
- package/dist/esm/index.d.mts +10 -9
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/internal/abstraction.d.mts +9 -9
- package/dist/esm/internal/abstraction.mjs +1 -1
- package/dist/esm/internal/account.d.mts +51 -8
- package/dist/esm/internal/account.mjs +1 -1
- package/dist/esm/internal/ans.d.mts +13 -13
- package/dist/esm/internal/ans.mjs +1 -1
- package/dist/esm/internal/coin.d.mts +7 -7
- package/dist/esm/internal/coin.mjs +1 -1
- package/dist/esm/internal/digitalAsset.d.mts +2 -2
- package/dist/esm/internal/digitalAsset.mjs +1 -1
- package/dist/esm/internal/event.mjs +1 -1
- package/dist/esm/internal/experimental.d.mts +7 -7
- package/dist/esm/internal/experimental.mjs +1 -1
- package/dist/esm/internal/faucet.mjs +1 -1
- package/dist/esm/internal/fungibleAsset.d.mts +2 -2
- package/dist/esm/internal/fungibleAsset.mjs +1 -1
- package/dist/esm/internal/general.mjs +1 -1
- package/dist/esm/internal/keyless.d.mts +9 -8
- package/dist/esm/internal/keyless.mjs +1 -1
- package/dist/esm/internal/object.mjs +1 -1
- package/dist/esm/internal/staking.mjs +1 -1
- package/dist/esm/internal/table.mjs +1 -1
- package/dist/esm/internal/transaction.mjs +1 -1
- package/dist/esm/internal/transactionSubmission.d.mts +6 -6
- package/dist/esm/internal/transactionSubmission.mjs +1 -1
- package/dist/esm/internal/utils/index.d.mts +1 -1
- package/dist/esm/internal/utils/index.mjs +1 -1
- package/dist/esm/internal/utils/utils.d.mts +2 -19
- package/dist/esm/internal/utils/utils.mjs +1 -1
- package/dist/esm/internal/view.d.mts +7 -7
- package/dist/esm/internal/view.mjs +1 -1
- package/dist/esm/{publicKey-BMtGNNLg.d.mts → publicKey-pDHBAZlT.d.mts} +27 -1
- package/dist/esm/transactions/authenticator/account.d.mts +3 -1
- package/dist/esm/transactions/authenticator/account.mjs +1 -1
- package/dist/esm/transactions/authenticator/index.d.mts +3 -1
- package/dist/esm/transactions/authenticator/index.mjs +1 -1
- package/dist/esm/transactions/authenticator/transaction.d.mts +4 -2
- package/dist/esm/transactions/authenticator/transaction.mjs +1 -1
- package/dist/esm/transactions/index.d.mts +3 -3
- package/dist/esm/transactions/index.mjs +1 -1
- package/dist/esm/transactions/instances/index.d.mts +4 -2
- package/dist/esm/transactions/instances/index.mjs +1 -1
- package/dist/esm/transactions/instances/moduleId.mjs +1 -1
- package/dist/esm/transactions/instances/multiAgentTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/rawTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/rotationProofChallenge.d.mts +3 -1
- package/dist/esm/transactions/instances/rotationProofChallenge.mjs +1 -1
- package/dist/esm/transactions/instances/signedTransaction.d.mts +3 -1
- package/dist/esm/transactions/instances/signedTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/simpleTransaction.mjs +1 -1
- package/dist/esm/transactions/instances/transactionPayload.mjs +1 -1
- package/dist/esm/transactions/management/accountSequenceNumber.d.mts +2 -2
- package/dist/esm/transactions/management/accountSequenceNumber.mjs +1 -1
- package/dist/esm/transactions/management/index.d.mts +2 -2
- package/dist/esm/transactions/management/index.mjs +1 -1
- package/dist/esm/transactions/management/transactionWorker.d.mts +3 -3
- package/dist/esm/transactions/management/transactionWorker.mjs +1 -1
- package/dist/esm/transactions/scriptComposer/index.d.mts +7 -7
- package/dist/esm/transactions/scriptComposer/index.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/helpers.d.mts +8 -8
- package/dist/esm/transactions/transactionBuilder/helpers.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/index.d.mts +7 -7
- package/dist/esm/transactions/transactionBuilder/index.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/remoteAbi.d.mts +5 -5
- package/dist/esm/transactions/transactionBuilder/remoteAbi.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/signingMessage.d.mts +7 -7
- package/dist/esm/transactions/transactionBuilder/signingMessage.mjs +1 -1
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.d.mts +8 -8
- package/dist/esm/transactions/transactionBuilder/transactionBuilder.mjs +1 -1
- package/dist/esm/transactions/typeTag/index.mjs +1 -1
- package/dist/esm/transactions/typeTag/parser.mjs +1 -1
- package/dist/esm/transactions/types.d.mts +5 -5
- package/dist/esm/types/index.d.mts +1 -1
- package/dist/esm/types/index.mjs +1 -1
- package/dist/esm/types/keyless.d.mts +1 -1
- package/dist/esm/types/types.d.mts +10 -1
- package/dist/esm/types/types.mjs +1 -1
- package/dist/esm/utils/helpers.d.mts +28 -1
- package/dist/esm/utils/helpers.mjs +1 -1
- package/dist/esm/utils/index.d.mts +3 -1
- package/dist/esm/utils/index.mjs +1 -1
- package/dist/esm/utils/normalizeBundle.mjs +1 -1
- package/dist/esm/version.d.mts +1 -1
- package/dist/esm/version.mjs +1 -1
- package/package.json +8 -2
- package/src/account/AbstractKeylessAccount.ts +33 -49
- package/src/account/Account.ts +20 -0
- package/src/account/Ed25519Account.ts +26 -1
- package/src/account/MultiEd25519Account.ts +28 -1
- package/src/account/MultiKeyAccount.ts +25 -16
- package/src/account/SingleKeyAccount.ts +35 -1
- package/src/api/account.ts +84 -4
- package/src/cli/localNode.ts +6 -15
- package/src/client/get.ts +45 -18
- package/src/core/accountAddress.ts +25 -0
- package/src/core/crypto/abstraction.ts +6 -1
- package/src/core/crypto/ed25519.ts +19 -1
- package/src/core/crypto/ephemeral.ts +9 -0
- package/src/core/crypto/federatedKeyless.ts +46 -4
- package/src/core/crypto/index.ts +4 -3
- package/src/core/crypto/keyless.ts +610 -17
- package/src/core/crypto/multiEd25519.ts +11 -3
- package/src/core/crypto/multiKey.ts +86 -5
- package/src/core/crypto/publicKey.ts +28 -0
- package/src/core/crypto/secp256k1.ts +25 -2
- package/src/core/crypto/singleKey.ts +41 -6
- package/src/errors/index.ts +50 -0
- package/src/internal/account.ts +84 -7
- package/src/internal/move/jwks/build/jwk/BuildInfo.yaml +56 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/account.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator_factory.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aggregator_v2.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_account.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_coin.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/aptos_governance.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/block.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/chain_id.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/chain_status.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/code.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/coin.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/config_buffer.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/consensus_config.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/create_signer.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/delegation_pool.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/dispatchable_fungible_asset.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/dkg.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/event.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/execution_config.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/function_info.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/fungible_asset.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/gas_schedule.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/genesis.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/governance_proposal.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/guid.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/jwk_consensus_config.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/jwks.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/keyless_account.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/managed_coin.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/multisig_account.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/object.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/object_code_deployment.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/optional_aggregator.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/primary_fungible_store.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_api_v0_config.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_config.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/randomness_config_seqnum.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration_state.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/reconfiguration_with_dkg.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/resource_account.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/stake.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_config.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_contract.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/staking_proxy.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/state_storage.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/storage_gas.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/system_addresses.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/timestamp.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_context.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_fee.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/transaction_validation.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/util.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/validator_consensus_info.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/version.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/vesting.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosFramework/voting.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/any.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/aptos_hash.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/big_vector.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bls12381.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bls12381_algebra.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/bn254_algebra.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/capability.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/comparator.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/copyable_any.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/crypto_algebra.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/debug.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ed25519.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/fixed_point64.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/from_bcs.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math128.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math64.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math_fixed.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/math_fixed64.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/multi_ed25519.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/pool_u64.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/pool_u64_unbound.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_bulletproofs.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_elgamal.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/ristretto255_pedersen.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/secp256k1.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/simple_map.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/smart_table.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/smart_vector.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/string_utils.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/table.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/table_with_length.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/AptosStdlib/type_info.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/acl.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/bcs.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/bit_vector.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/error.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/features.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/fixed_point32.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/hash.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/option.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/signer.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/string.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_modules/dependencies/MoveStdlib/vector.mv +0 -0
- package/src/internal/move/jwks/build/jwk/bytecode_scripts/main.mv +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/account.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator_factory.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aggregator_v2.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_account.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_coin.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/aptos_governance.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/block.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/chain_id.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/chain_status.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/code.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/coin.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/config_buffer.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/consensus_config.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/create_signer.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/delegation_pool.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/dispatchable_fungible_asset.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/dkg.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/event.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/execution_config.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/function_info.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/fungible_asset.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/gas_schedule.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/genesis.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/governance_proposal.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/guid.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/jwk_consensus_config.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/jwks.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/keyless_account.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/managed_coin.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/multisig_account.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/object.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/object_code_deployment.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/optional_aggregator.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/primary_fungible_store.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_api_v0_config.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_config.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/randomness_config_seqnum.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration_state.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/reconfiguration_with_dkg.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/resource_account.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/stake.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_config.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_contract.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/staking_proxy.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/state_storage.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/storage_gas.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/system_addresses.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/timestamp.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_context.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_fee.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/transaction_validation.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/util.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/validator_consensus_info.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/version.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/vesting.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosFramework/voting.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/any.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/aptos_hash.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/big_vector.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bls12381.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bls12381_algebra.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/bn254_algebra.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/capability.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/comparator.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/copyable_any.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/crypto_algebra.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/debug.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ed25519.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/fixed_point64.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/from_bcs.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math128.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math64.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math_fixed.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/math_fixed64.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/multi_ed25519.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/pool_u64.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/pool_u64_unbound.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_bulletproofs.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_elgamal.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/ristretto255_pedersen.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/secp256k1.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/simple_map.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/smart_table.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/smart_vector.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/string_utils.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/table.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/table_with_length.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/AptosStdlib/type_info.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/acl.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/bcs.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/bit_vector.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/error.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/features.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/fixed_point32.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/hash.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/option.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/signer.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/string.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/dependencies/MoveStdlib/vector.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/source_maps/main.mvsm +0 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/account.move +1533 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator.move +48 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator_factory.move +66 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aggregator_v2.move +280 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_account.move +443 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_coin.move +204 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/aptos_governance.move +1387 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/block.move +394 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/chain_id.move +41 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/chain_status.move +48 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/code.move +367 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/coin.move +2214 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/config_buffer.move +101 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/consensus_config.move +77 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/create_signer.move +21 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/delegation_pool.move +5568 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/dispatchable_fungible_asset.move +228 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/dkg.move +121 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/event.move +92 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/execution_config.move +66 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/function_info.move +100 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/fungible_asset.move +1566 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/gas_schedule.move +176 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/genesis.move +550 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/governance_proposal.move +23 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/guid.move +68 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/jwk_consensus_config.move +148 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/jwks.move +817 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/keyless_account.move +312 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/managed_coin.move +205 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/multisig_account.move +2477 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/object.move +1073 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/object_code_deployment.move +147 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/optional_aggregator.move +295 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/primary_fungible_store.move +405 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness.move +574 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_api_v0_config.move +57 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_config.move +153 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/randomness_config_seqnum.move +49 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration.move +237 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration_state.move +132 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/reconfiguration_with_dkg.move +69 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/resource_account.move +267 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/stake.move +3286 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_config.move +686 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_contract.move +1618 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/staking_proxy.move +228 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/state_storage.move +90 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/storage_gas.move +622 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/system_addresses.move +82 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/timestamp.move +88 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_context.move +262 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_fee.move +457 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/transaction_validation.move +501 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/util.move +16 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/validator_consensus_info.move +42 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/version.move +115 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/vesting.move +2183 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosFramework/voting.move +1279 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/any.move +57 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/aptos_hash.move +253 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/big_vector.move +469 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bls12381.move +985 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bls12381_algebra.move +802 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/bn254_algebra.move +855 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/capability.move +193 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/comparator.move +173 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/copyable_any.move +45 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/crypto_algebra.move +351 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/debug.move +278 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ed25519.move +262 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/fixed_point64.move +447 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/from_bcs.move +91 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math128.move +381 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math64.move +336 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math_fixed.move +139 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/math_fixed64.move +142 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/multi_ed25519.move +482 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/pool_u64.move +571 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/pool_u64_unbound.move +270 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255.move +1310 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_bulletproofs.move +253 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_elgamal.move +234 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/ristretto255_pedersen.move +158 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/secp256k1.move +114 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/simple_map.move +319 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/smart_table.move +769 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/smart_vector.move +766 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/string_utils.move +148 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/table.move +152 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/table_with_length.move +141 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/AptosStdlib/type_info.move +351 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/acl.move +46 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/bcs.move +27 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/bit_vector.move +239 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/error.move +88 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/features.move +780 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/fixed_point32.move +295 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/hash.move +8 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/option.move +356 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/signer.move +21 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/string.move +93 -0
- package/src/internal/move/jwks/build/jwk/sources/dependencies/MoveStdlib/vector.move +669 -0
- package/src/internal/move/jwks/build/jwk/sources/main.move +20 -0
- package/src/internal/utils/utils.ts +2 -32
- package/src/types/keyless.ts +1 -1
- package/src/types/types.ts +10 -0
- package/src/utils/helpers.ts +61 -0
- package/src/version.ts +1 -1
- package/dist/common/chunk-PA2XFIP3.js +0 -4
- package/dist/common/chunk-PA2XFIP3.js.map +0 -1
- package/dist/esm/chunk-2N4EPY2J.mjs +0 -2
- package/dist/esm/chunk-2N4EPY2J.mjs.map +0 -1
- package/dist/esm/chunk-2OBSQ2FK.mjs +0 -2
- package/dist/esm/chunk-2OBSQ2FK.mjs.map +0 -1
- package/dist/esm/chunk-36H47QOE.mjs +0 -2
- package/dist/esm/chunk-36H47QOE.mjs.map +0 -1
- package/dist/esm/chunk-3DHWWNJ3.mjs +0 -2
- package/dist/esm/chunk-3DHWWNJ3.mjs.map +0 -1
- package/dist/esm/chunk-4KKJ36IO.mjs +0 -2
- package/dist/esm/chunk-4KKJ36IO.mjs.map +0 -1
- package/dist/esm/chunk-4NMDYPUD.mjs +0 -1
- package/dist/esm/chunk-4NMDYPUD.mjs.map +0 -1
- package/dist/esm/chunk-4PW3JKQZ.mjs +0 -2
- package/dist/esm/chunk-4PW3JKQZ.mjs.map +0 -1
- package/dist/esm/chunk-4QK4SKAT.mjs +0 -2
- package/dist/esm/chunk-4QK4SKAT.mjs.map +0 -1
- package/dist/esm/chunk-4SWK3JHQ.mjs +0 -2
- package/dist/esm/chunk-4SWK3JHQ.mjs.map +0 -1
- package/dist/esm/chunk-553ZRNUL.mjs +0 -2
- package/dist/esm/chunk-553ZRNUL.mjs.map +0 -1
- package/dist/esm/chunk-5AD7ZF6G.mjs +0 -2
- package/dist/esm/chunk-5AD7ZF6G.mjs.map +0 -1
- package/dist/esm/chunk-5MVHOQKD.mjs +0 -2
- package/dist/esm/chunk-5MVHOQKD.mjs.map +0 -1
- package/dist/esm/chunk-5W5XV63W.mjs +0 -2
- package/dist/esm/chunk-5W5XV63W.mjs.map +0 -1
- package/dist/esm/chunk-5WWU3WSU.mjs +0 -2
- package/dist/esm/chunk-5WWU3WSU.mjs.map +0 -1
- package/dist/esm/chunk-6FQDCTMA.mjs +0 -2
- package/dist/esm/chunk-6FQDCTMA.mjs.map +0 -1
- package/dist/esm/chunk-6IULVNLQ.mjs +0 -2
- package/dist/esm/chunk-6IULVNLQ.mjs.map +0 -1
- package/dist/esm/chunk-6KI24ZRR.mjs +0 -2
- package/dist/esm/chunk-6KI24ZRR.mjs.map +0 -1
- package/dist/esm/chunk-6KZT3KFZ.mjs +0 -2
- package/dist/esm/chunk-6KZT3KFZ.mjs.map +0 -1
- package/dist/esm/chunk-6VGLRQBT.mjs +0 -2
- package/dist/esm/chunk-6VGLRQBT.mjs.map +0 -1
- package/dist/esm/chunk-6YPM7TK2.mjs +0 -2
- package/dist/esm/chunk-6YPM7TK2.mjs.map +0 -1
- package/dist/esm/chunk-7HC33TEX.mjs +0 -2
- package/dist/esm/chunk-7HC33TEX.mjs.map +0 -1
- package/dist/esm/chunk-7KHKP7DY.mjs +0 -2
- package/dist/esm/chunk-7KHKP7DY.mjs.map +0 -1
- package/dist/esm/chunk-7OUPEQRN.mjs +0 -2
- package/dist/esm/chunk-7OUPEQRN.mjs.map +0 -1
- package/dist/esm/chunk-APGCD5FH.mjs +0 -2
- package/dist/esm/chunk-APGCD5FH.mjs.map +0 -1
- package/dist/esm/chunk-BSCOVLWS.mjs +0 -1
- package/dist/esm/chunk-BSCOVLWS.mjs.map +0 -1
- package/dist/esm/chunk-CGTMSLVZ.mjs +0 -2
- package/dist/esm/chunk-CGTMSLVZ.mjs.map +0 -1
- package/dist/esm/chunk-CU6HQJSE.mjs +0 -2
- package/dist/esm/chunk-CU6HQJSE.mjs.map +0 -1
- package/dist/esm/chunk-DAR3R4UP.mjs +0 -2
- package/dist/esm/chunk-DAR3R4UP.mjs.map +0 -1
- package/dist/esm/chunk-DUJJUR7O.mjs +0 -2
- package/dist/esm/chunk-DUJJUR7O.mjs.map +0 -1
- package/dist/esm/chunk-E7FWVXGX.mjs +0 -1
- package/dist/esm/chunk-E7FWVXGX.mjs.map +0 -1
- package/dist/esm/chunk-EHTTY7EF.mjs +0 -2
- package/dist/esm/chunk-EHTTY7EF.mjs.map +0 -1
- package/dist/esm/chunk-FCHN3LT7.mjs +0 -2
- package/dist/esm/chunk-FCHN3LT7.mjs.map +0 -1
- package/dist/esm/chunk-GFPEB22G.mjs +0 -1
- package/dist/esm/chunk-GFPEB22G.mjs.map +0 -1
- package/dist/esm/chunk-GJOUTA7U.mjs +0 -2
- package/dist/esm/chunk-GJOUTA7U.mjs.map +0 -1
- package/dist/esm/chunk-H4YAL2IL.mjs.map +0 -1
- package/dist/esm/chunk-HEZ2ZYZA.mjs +0 -1
- package/dist/esm/chunk-HEZ2ZYZA.mjs.map +0 -1
- package/dist/esm/chunk-HTP5ZVX5.mjs +0 -2
- package/dist/esm/chunk-HTP5ZVX5.mjs.map +0 -1
- package/dist/esm/chunk-HWNPKEOJ.mjs +0 -2
- package/dist/esm/chunk-HWNPKEOJ.mjs.map +0 -1
- package/dist/esm/chunk-IHYTP2EW.mjs +0 -1
- package/dist/esm/chunk-IHYTP2EW.mjs.map +0 -1
- package/dist/esm/chunk-ILUFGYLO.mjs +0 -2
- package/dist/esm/chunk-ILUFGYLO.mjs.map +0 -1
- package/dist/esm/chunk-IM4O756A.mjs +0 -2
- package/dist/esm/chunk-IM4O756A.mjs.map +0 -1
- package/dist/esm/chunk-IMYNN4TW.mjs +0 -2
- package/dist/esm/chunk-IMYNN4TW.mjs.map +0 -1
- package/dist/esm/chunk-JA7CXAVY.mjs +0 -2
- package/dist/esm/chunk-JA7CXAVY.mjs.map +0 -1
- package/dist/esm/chunk-JBARRS6K.mjs +0 -2
- package/dist/esm/chunk-JBARRS6K.mjs.map +0 -1
- package/dist/esm/chunk-JLZGYZBX.mjs +0 -2
- package/dist/esm/chunk-JNNFNYDO.mjs +0 -2
- package/dist/esm/chunk-JNNFNYDO.mjs.map +0 -1
- package/dist/esm/chunk-JXHGJ3AA.mjs +0 -2
- package/dist/esm/chunk-JXHGJ3AA.mjs.map +0 -1
- package/dist/esm/chunk-K4JUKMMY.mjs +0 -2
- package/dist/esm/chunk-K4JUKMMY.mjs.map +0 -1
- package/dist/esm/chunk-LET633ZK.mjs +0 -2
- package/dist/esm/chunk-LET633ZK.mjs.map +0 -1
- package/dist/esm/chunk-LQOSHBB7.mjs +0 -4
- package/dist/esm/chunk-LQOSHBB7.mjs.map +0 -1
- package/dist/esm/chunk-M2GGYCLU.mjs +0 -2
- package/dist/esm/chunk-M2GGYCLU.mjs.map +0 -1
- package/dist/esm/chunk-MY2BEHYF.mjs +0 -2
- package/dist/esm/chunk-MY2BEHYF.mjs.map +0 -1
- package/dist/esm/chunk-MZVVBJVV.mjs +0 -2
- package/dist/esm/chunk-MZVVBJVV.mjs.map +0 -1
- package/dist/esm/chunk-N73S2K2V.mjs +0 -2
- package/dist/esm/chunk-N73S2K2V.mjs.map +0 -1
- package/dist/esm/chunk-NIDF2LHF.mjs +0 -2
- package/dist/esm/chunk-NIDF2LHF.mjs.map +0 -1
- package/dist/esm/chunk-OSZWSLJA.mjs +0 -2
- package/dist/esm/chunk-OSZWSLJA.mjs.map +0 -1
- package/dist/esm/chunk-P265EC4T.mjs +0 -2
- package/dist/esm/chunk-P265EC4T.mjs.map +0 -1
- package/dist/esm/chunk-PE7KT5ZB.mjs +0 -2
- package/dist/esm/chunk-PE7KT5ZB.mjs.map +0 -1
- package/dist/esm/chunk-PICZWW35.mjs +0 -2
- package/dist/esm/chunk-PICZWW35.mjs.map +0 -1
- package/dist/esm/chunk-PWGTRRSJ.mjs +0 -2
- package/dist/esm/chunk-PWGTRRSJ.mjs.map +0 -1
- package/dist/esm/chunk-Q3AVJUBL.mjs +0 -2
- package/dist/esm/chunk-Q3AVJUBL.mjs.map +0 -1
- package/dist/esm/chunk-QLEZDMIK.mjs +0 -2
- package/dist/esm/chunk-QLEZDMIK.mjs.map +0 -1
- package/dist/esm/chunk-QXTQNFEQ.mjs +0 -2
- package/dist/esm/chunk-QXTQNFEQ.mjs.map +0 -1
- package/dist/esm/chunk-R6I6Z3AA.mjs +0 -2
- package/dist/esm/chunk-R6I6Z3AA.mjs.map +0 -1
- package/dist/esm/chunk-R6QCPXQG.mjs.map +0 -1
- package/dist/esm/chunk-RMMOF53Q.mjs +0 -1
- package/dist/esm/chunk-RMMOF53Q.mjs.map +0 -1
- package/dist/esm/chunk-SCLWOTHD.mjs +0 -2
- package/dist/esm/chunk-SCLWOTHD.mjs.map +0 -1
- package/dist/esm/chunk-SZU5Q6CF.mjs +0 -2
- package/dist/esm/chunk-SZU5Q6CF.mjs.map +0 -1
- package/dist/esm/chunk-T3VLXADE.mjs +0 -2
- package/dist/esm/chunk-T3VLXADE.mjs.map +0 -1
- package/dist/esm/chunk-TJICLFR2.mjs +0 -2
- package/dist/esm/chunk-TJICLFR2.mjs.map +0 -1
- package/dist/esm/chunk-U6ZD22B5.mjs +0 -2
- package/dist/esm/chunk-U6ZD22B5.mjs.map +0 -1
- package/dist/esm/chunk-UOBDL2BZ.mjs +0 -2
- package/dist/esm/chunk-UOBDL2BZ.mjs.map +0 -1
- package/dist/esm/chunk-UP36QQGG.mjs +0 -4
- package/dist/esm/chunk-UP36QQGG.mjs.map +0 -1
- package/dist/esm/chunk-VIXTXBYA.mjs +0 -2
- package/dist/esm/chunk-VIXTXBYA.mjs.map +0 -1
- package/dist/esm/chunk-WYV4W2IM.mjs +0 -2
- package/dist/esm/chunk-WYV4W2IM.mjs.map +0 -1
- package/dist/esm/chunk-X5ORWYVO.mjs +0 -7
- package/dist/esm/chunk-X5ORWYVO.mjs.map +0 -1
- package/dist/esm/chunk-X5UJYMJU.mjs +0 -2
- package/dist/esm/chunk-X5UJYMJU.mjs.map +0 -1
- package/dist/esm/chunk-X5YB74NB.mjs +0 -2
- package/dist/esm/chunk-X6H4G6NE.mjs +0 -2
- package/dist/esm/chunk-X6H4G6NE.mjs.map +0 -1
- package/dist/esm/chunk-XFL3B4WZ.mjs +0 -2
- package/dist/esm/chunk-XFL3B4WZ.mjs.map +0 -1
- package/dist/esm/chunk-XX4SFNZY.mjs +0 -2
- package/dist/esm/chunk-XX4SFNZY.mjs.map +0 -1
- package/dist/esm/chunk-YMXJ6GYE.mjs +0 -2
- package/dist/esm/chunk-YMXJ6GYE.mjs.map +0 -1
- package/dist/esm/chunk-ZJCTELB4.mjs +0 -2
- package/dist/esm/chunk-ZJCTELB4.mjs.map +0 -1
- /package/dist/esm/{chunk-AIPHJFJL.mjs.map → chunk-3IGJ2IMB.mjs.map} +0 -0
- /package/dist/esm/{chunk-2P27DDVV.mjs.map → chunk-5MMTP427.mjs.map} +0 -0
- /package/dist/esm/{chunk-AEGA5N2W.mjs.map → chunk-6J64BOS7.mjs.map} +0 -0
- /package/dist/esm/{chunk-TTY5GFMN.mjs.map → chunk-BSH7B2QT.mjs.map} +0 -0
- /package/dist/esm/{chunk-KBC4ECVP.mjs.map → chunk-HRHICHDX.mjs.map} +0 -0
- /package/dist/esm/{chunk-HWMMVLTP.mjs.map → chunk-JG4T5BDZ.mjs.map} +0 -0
- /package/dist/esm/{chunk-ZOY6N6UM.mjs.map → chunk-NZXPT44W.mjs.map} +0 -0
- /package/dist/esm/{chunk-2SAOCLIU.mjs.map → chunk-POELQOLD.mjs.map} +0 -0
- /package/dist/esm/{chunk-ZVYTHOS5.mjs.map → chunk-PXG3WJIU.mjs.map} +0 -0
- /package/dist/esm/{chunk-ACE3NEV6.mjs.map → chunk-VNUNIQAY.mjs.map} +0 -0
|
@@ -18,7 +18,7 @@ import {
|
|
|
18
18
|
MoveResource,
|
|
19
19
|
} from "../../types";
|
|
20
20
|
import { EphemeralPublicKey, EphemeralSignature } from "./ephemeral";
|
|
21
|
-
import { bigIntToBytesLE, bytesToBigIntLE, hashStrToField, poseidonHash } from "./poseidon";
|
|
21
|
+
import { bigIntToBytesLE, bytesToBigIntLE, hashStrToField, padAndPackBytesWithLen, poseidonHash } from "./poseidon";
|
|
22
22
|
import { AuthenticationKey } from "../authenticationKey";
|
|
23
23
|
import { Proof } from "./proof";
|
|
24
24
|
import { Ed25519PublicKey, Ed25519Signature } from "./ed25519";
|
|
@@ -32,8 +32,15 @@ import { AptosConfig } from "../../api/aptosConfig";
|
|
|
32
32
|
import { getAptosFullNode } from "../../client";
|
|
33
33
|
import { memoizeAsync } from "../../utils/memoize";
|
|
34
34
|
import { AccountAddress, AccountAddressInput } from "../accountAddress";
|
|
35
|
-
import { getErrorMessage } from "../../utils";
|
|
35
|
+
import { base64UrlToBytes, getErrorMessage, nowInSeconds } from "../../utils";
|
|
36
36
|
import { KeylessError, KeylessErrorType } from "../../errors";
|
|
37
|
+
import { bn254 } from "@noble/curves/bn254";
|
|
38
|
+
import { bytesToNumberBE } from "@noble/curves/abstract/utils";
|
|
39
|
+
import { FederatedKeylessPublicKey } from "./federatedKeyless";
|
|
40
|
+
import { encode } from "js-base64";
|
|
41
|
+
import { generateSigningMessage } from "../..";
|
|
42
|
+
import { ProjPointType } from "@noble/curves/abstract/weierstrass";
|
|
43
|
+
import { Fp2 } from "@noble/curves/abstract/tower";
|
|
37
44
|
|
|
38
45
|
/**
|
|
39
46
|
* @group Implementation
|
|
@@ -156,13 +163,49 @@ export class KeylessPublicKey extends AccountPublicKey {
|
|
|
156
163
|
* @param args - The arguments for signature verification.
|
|
157
164
|
* @param args.message - The message that was signed.
|
|
158
165
|
* @param args.signature - The signature to verify against the message.
|
|
166
|
+
* @param args.jwk - The JWK to use for verification.
|
|
167
|
+
* @param args.keylessConfig - The keyless configuration to use for verification.
|
|
159
168
|
* @returns true if the signature is valid; otherwise, false.
|
|
160
169
|
* @group Implementation
|
|
161
170
|
* @category Serialization
|
|
162
171
|
*/
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
172
|
+
verifySignature(args: {
|
|
173
|
+
message: HexInput;
|
|
174
|
+
signature: Signature;
|
|
175
|
+
jwk: MoveJWK;
|
|
176
|
+
keylessConfig: KeylessConfiguration;
|
|
177
|
+
}): boolean {
|
|
178
|
+
try {
|
|
179
|
+
verifyKeylessSignatureWithJwkAndConfig({ ...args, publicKey: this });
|
|
180
|
+
return true;
|
|
181
|
+
} catch (error) {
|
|
182
|
+
if (error instanceof KeylessError) {
|
|
183
|
+
return false;
|
|
184
|
+
}
|
|
185
|
+
throw error;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* Verifies a keyless signature for a given message. It will fetch the keyless configuration and the JWK to
|
|
191
|
+
* use for verification from the appropriate network as defined by the aptosConfig.
|
|
192
|
+
*
|
|
193
|
+
* @param args.aptosConfig The aptos config to use for fetching the keyless configuration.
|
|
194
|
+
* @param args.message The message to verify the signature against.
|
|
195
|
+
* @param args.signature The signature to verify.
|
|
196
|
+
* @param args.options.throwErrorWithReason Whether to throw an error with the reason for the failure instead of returning false.
|
|
197
|
+
* @returns true if the signature is valid
|
|
198
|
+
*/
|
|
199
|
+
async verifySignatureAsync(args: {
|
|
200
|
+
aptosConfig: AptosConfig;
|
|
201
|
+
message: HexInput;
|
|
202
|
+
signature: Signature;
|
|
203
|
+
options?: { throwErrorWithReason?: boolean };
|
|
204
|
+
}): Promise<boolean> {
|
|
205
|
+
return verifyKeylessSignature({
|
|
206
|
+
...args,
|
|
207
|
+
publicKey: this,
|
|
208
|
+
});
|
|
166
209
|
}
|
|
167
210
|
|
|
168
211
|
/**
|
|
@@ -293,6 +336,228 @@ export class KeylessPublicKey extends AccountPublicKey {
|
|
|
293
336
|
}
|
|
294
337
|
}
|
|
295
338
|
|
|
339
|
+
export async function verifyKeylessSignature(args: {
|
|
340
|
+
publicKey: KeylessPublicKey | FederatedKeylessPublicKey;
|
|
341
|
+
aptosConfig: AptosConfig;
|
|
342
|
+
message: HexInput;
|
|
343
|
+
signature: Signature;
|
|
344
|
+
keylessConfig?: KeylessConfiguration;
|
|
345
|
+
jwk?: MoveJWK;
|
|
346
|
+
options?: { throwErrorWithReason?: boolean };
|
|
347
|
+
}): Promise<boolean> {
|
|
348
|
+
const {
|
|
349
|
+
aptosConfig,
|
|
350
|
+
publicKey,
|
|
351
|
+
message,
|
|
352
|
+
signature,
|
|
353
|
+
jwk,
|
|
354
|
+
keylessConfig = await getKeylessConfig({ aptosConfig }),
|
|
355
|
+
options,
|
|
356
|
+
} = args;
|
|
357
|
+
try {
|
|
358
|
+
if (!(signature instanceof KeylessSignature)) {
|
|
359
|
+
throw KeylessError.fromErrorType({
|
|
360
|
+
type: KeylessErrorType.SIGNATURE_TYPE_INVALID,
|
|
361
|
+
details: "Not a keyless signature",
|
|
362
|
+
});
|
|
363
|
+
}
|
|
364
|
+
verifyKeylessSignatureWithJwkAndConfig({
|
|
365
|
+
message,
|
|
366
|
+
publicKey,
|
|
367
|
+
signature,
|
|
368
|
+
jwk: jwk ? jwk : await fetchJWK({ aptosConfig, publicKey, kid: signature.getJwkKid() }),
|
|
369
|
+
keylessConfig,
|
|
370
|
+
});
|
|
371
|
+
return true;
|
|
372
|
+
} catch (error) {
|
|
373
|
+
if (options?.throwErrorWithReason) {
|
|
374
|
+
throw error;
|
|
375
|
+
}
|
|
376
|
+
return false;
|
|
377
|
+
}
|
|
378
|
+
}
|
|
379
|
+
|
|
380
|
+
/**
|
|
381
|
+
* Syncronously verifies a keyless signature for a given message. You need to provide the keyless configuration and the
|
|
382
|
+
* JWK to use for verification.
|
|
383
|
+
*
|
|
384
|
+
* @param args.message The message to verify the signature against.
|
|
385
|
+
* @param args.signature The signature to verify.
|
|
386
|
+
* @param args.keylessConfig The keyless configuration.
|
|
387
|
+
* @param args.jwk The JWK to use for verification.
|
|
388
|
+
* @returns true if the signature is valid
|
|
389
|
+
* @throws KeylessError if the signature is invalid
|
|
390
|
+
*/
|
|
391
|
+
export function verifyKeylessSignatureWithJwkAndConfig(args: {
|
|
392
|
+
publicKey: KeylessPublicKey | FederatedKeylessPublicKey;
|
|
393
|
+
message: HexInput;
|
|
394
|
+
signature: Signature;
|
|
395
|
+
keylessConfig: KeylessConfiguration;
|
|
396
|
+
jwk: MoveJWK;
|
|
397
|
+
}): void {
|
|
398
|
+
const { publicKey, message, signature, keylessConfig, jwk } = args;
|
|
399
|
+
const { verificationKey, maxExpHorizonSecs, trainingWheelsPubkey } = keylessConfig;
|
|
400
|
+
if (!(signature instanceof KeylessSignature)) {
|
|
401
|
+
throw KeylessError.fromErrorType({
|
|
402
|
+
type: KeylessErrorType.SIGNATURE_TYPE_INVALID,
|
|
403
|
+
details: "Not a keyless signature",
|
|
404
|
+
});
|
|
405
|
+
}
|
|
406
|
+
if (!(signature.ephemeralCertificate.signature instanceof ZeroKnowledgeSig)) {
|
|
407
|
+
throw KeylessError.fromErrorType({
|
|
408
|
+
type: KeylessErrorType.SIGNATURE_TYPE_INVALID,
|
|
409
|
+
details: "Unsupported ephemeral certificate variant",
|
|
410
|
+
});
|
|
411
|
+
}
|
|
412
|
+
const zkSig = signature.ephemeralCertificate.signature;
|
|
413
|
+
if (!(zkSig.proof.proof instanceof Groth16Zkp)) {
|
|
414
|
+
throw KeylessError.fromErrorType({
|
|
415
|
+
type: KeylessErrorType.SIGNATURE_TYPE_INVALID,
|
|
416
|
+
details: "Unsupported proof variant for ZeroKnowledgeSig",
|
|
417
|
+
});
|
|
418
|
+
}
|
|
419
|
+
const groth16Proof = zkSig.proof.proof;
|
|
420
|
+
if (signature.expiryDateSecs < nowInSeconds()) {
|
|
421
|
+
throw KeylessError.fromErrorType({
|
|
422
|
+
type: KeylessErrorType.SIGNATURE_EXPIRED,
|
|
423
|
+
details: "The expiryDateSecs is in the past",
|
|
424
|
+
});
|
|
425
|
+
}
|
|
426
|
+
if (zkSig.expHorizonSecs > maxExpHorizonSecs) {
|
|
427
|
+
throw KeylessError.fromErrorType({
|
|
428
|
+
type: KeylessErrorType.MAX_EXPIRY_HORIZON_EXCEEDED,
|
|
429
|
+
});
|
|
430
|
+
}
|
|
431
|
+
if (!signature.ephemeralPublicKey.verifySignature({ message, signature: signature.ephemeralSignature })) {
|
|
432
|
+
throw KeylessError.fromErrorType({
|
|
433
|
+
type: KeylessErrorType.EPHEMERAL_SIGNATURE_VERIFICATION_FAILED,
|
|
434
|
+
});
|
|
435
|
+
}
|
|
436
|
+
const publicInputsHash = getPublicInputsHash({ publicKey, signature, jwk, keylessConfig });
|
|
437
|
+
if (!verificationKey.verifyProof({ publicInputsHash, groth16Proof })) {
|
|
438
|
+
throw KeylessError.fromErrorType({
|
|
439
|
+
type: KeylessErrorType.PROOF_VERIFICATION_FAILED,
|
|
440
|
+
});
|
|
441
|
+
}
|
|
442
|
+
if (trainingWheelsPubkey) {
|
|
443
|
+
if (!zkSig.trainingWheelsSignature) {
|
|
444
|
+
throw KeylessError.fromErrorType({
|
|
445
|
+
type: KeylessErrorType.TRAINING_WHEELS_SIGNATURE_MISSING,
|
|
446
|
+
});
|
|
447
|
+
}
|
|
448
|
+
const proofAndStatement = new Groth16ProofAndStatement(groth16Proof, publicInputsHash);
|
|
449
|
+
if (
|
|
450
|
+
!trainingWheelsPubkey.verifySignature({
|
|
451
|
+
message: proofAndStatement.hash(),
|
|
452
|
+
signature: zkSig.trainingWheelsSignature,
|
|
453
|
+
})
|
|
454
|
+
) {
|
|
455
|
+
throw KeylessError.fromErrorType({
|
|
456
|
+
type: KeylessErrorType.TRAINING_WHEELS_SIGNATURE_VERIFICATION_FAILED,
|
|
457
|
+
});
|
|
458
|
+
}
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
|
|
462
|
+
/**
|
|
463
|
+
* Get the public inputs hash for the keyless signature.
|
|
464
|
+
*
|
|
465
|
+
* @param args.signature The signature
|
|
466
|
+
* @param args.jwk The JWK to use for the public inputs hash
|
|
467
|
+
* @param args.keylessConfig The keyless configuration which defines the byte lengths to use when hashing fields.
|
|
468
|
+
* @returns The public inputs hash
|
|
469
|
+
*/
|
|
470
|
+
function getPublicInputsHash(args: {
|
|
471
|
+
publicKey: KeylessPublicKey | FederatedKeylessPublicKey;
|
|
472
|
+
signature: KeylessSignature;
|
|
473
|
+
jwk: MoveJWK;
|
|
474
|
+
keylessConfig: KeylessConfiguration;
|
|
475
|
+
}): bigint {
|
|
476
|
+
const { publicKey, signature, jwk, keylessConfig } = args;
|
|
477
|
+
const innerKeylessPublicKey = publicKey instanceof KeylessPublicKey ? publicKey : publicKey.keylessPublicKey;
|
|
478
|
+
if (!(signature.ephemeralCertificate.signature instanceof ZeroKnowledgeSig)) {
|
|
479
|
+
throw new Error("Signature is not a ZeroKnowledgeSig");
|
|
480
|
+
}
|
|
481
|
+
const proof = signature.ephemeralCertificate.signature;
|
|
482
|
+
const fields = [];
|
|
483
|
+
fields.push(
|
|
484
|
+
...padAndPackBytesWithLen(signature.ephemeralPublicKey.toUint8Array(), keylessConfig.maxCommitedEpkBytes),
|
|
485
|
+
);
|
|
486
|
+
fields.push(bytesToBigIntLE(innerKeylessPublicKey.idCommitment));
|
|
487
|
+
fields.push(signature.expiryDateSecs);
|
|
488
|
+
fields.push(proof.expHorizonSecs);
|
|
489
|
+
fields.push(hashStrToField(innerKeylessPublicKey.iss, keylessConfig.maxIssValBytes));
|
|
490
|
+
if (!proof.extraField) {
|
|
491
|
+
fields.push(0n);
|
|
492
|
+
fields.push(hashStrToField(" ", keylessConfig.maxExtraFieldBytes));
|
|
493
|
+
} else {
|
|
494
|
+
fields.push(1n);
|
|
495
|
+
fields.push(hashStrToField(proof.extraField, keylessConfig.maxExtraFieldBytes));
|
|
496
|
+
}
|
|
497
|
+
fields.push(hashStrToField(encode(signature.jwtHeader, true) + ".", keylessConfig.maxJwtHeaderB64Bytes));
|
|
498
|
+
fields.push(jwk.toScalar());
|
|
499
|
+
if (!proof.overrideAudVal) {
|
|
500
|
+
fields.push(hashStrToField("", MAX_AUD_VAL_BYTES));
|
|
501
|
+
fields.push(0n);
|
|
502
|
+
} else {
|
|
503
|
+
fields.push(hashStrToField(proof.overrideAudVal, MAX_AUD_VAL_BYTES));
|
|
504
|
+
fields.push(1n);
|
|
505
|
+
}
|
|
506
|
+
return poseidonHash(fields);
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
/**
|
|
510
|
+
* Fetches the JWK from the issuer's well-known JWKS endpoint.
|
|
511
|
+
*
|
|
512
|
+
* @param args.publicKey The keyless public key which contains the issuer the address to fetch the JWK from (0x1 if not federated).
|
|
513
|
+
* @param args.kid The kid of the JWK to fetch
|
|
514
|
+
* @returns A JWK matching the `kid` in the JWT header.
|
|
515
|
+
* @throws {KeylessError} If the JWK cannot be fetched
|
|
516
|
+
*/
|
|
517
|
+
export async function fetchJWK(args: {
|
|
518
|
+
aptosConfig: AptosConfig;
|
|
519
|
+
publicKey: KeylessPublicKey | FederatedKeylessPublicKey;
|
|
520
|
+
kid: string;
|
|
521
|
+
}): Promise<MoveJWK> {
|
|
522
|
+
const { aptosConfig, publicKey, kid } = args;
|
|
523
|
+
const keylessPubKey = publicKey instanceof KeylessPublicKey ? publicKey : publicKey.keylessPublicKey;
|
|
524
|
+
const { iss } = keylessPubKey;
|
|
525
|
+
|
|
526
|
+
let allJWKs: Map<string, MoveJWK[]>;
|
|
527
|
+
const jwkAddr = publicKey instanceof FederatedKeylessPublicKey ? publicKey.jwkAddress : undefined;
|
|
528
|
+
try {
|
|
529
|
+
allJWKs = await getKeylessJWKs({ aptosConfig, jwkAddr });
|
|
530
|
+
} catch (error) {
|
|
531
|
+
throw KeylessError.fromErrorType({
|
|
532
|
+
type: KeylessErrorType.FULL_NODE_JWKS_LOOKUP_ERROR,
|
|
533
|
+
error,
|
|
534
|
+
details: `Failed to fetch ${jwkAddr ? "Federated" : "Patched"}JWKs ${jwkAddr ? `for address ${jwkAddr}` : "0x1"}`,
|
|
535
|
+
});
|
|
536
|
+
}
|
|
537
|
+
|
|
538
|
+
// Find the corresponding JWK set by `iss`
|
|
539
|
+
const jwksForIssuer = allJWKs.get(iss);
|
|
540
|
+
|
|
541
|
+
if (jwksForIssuer === undefined) {
|
|
542
|
+
throw KeylessError.fromErrorType({
|
|
543
|
+
type: KeylessErrorType.INVALID_JWT_ISS_NOT_RECOGNIZED,
|
|
544
|
+
details: `JWKs for issuer ${iss} not found.`,
|
|
545
|
+
});
|
|
546
|
+
}
|
|
547
|
+
|
|
548
|
+
// Find the corresponding JWK by `kid`
|
|
549
|
+
const jwk = jwksForIssuer.find((key) => key.kid === kid);
|
|
550
|
+
|
|
551
|
+
if (jwk === undefined) {
|
|
552
|
+
throw KeylessError.fromErrorType({
|
|
553
|
+
type: KeylessErrorType.INVALID_JWT_JWK_NOT_FOUND,
|
|
554
|
+
details: `JWK with kid '${kid}' for issuer '${iss}' not found.`,
|
|
555
|
+
});
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
return jwk;
|
|
559
|
+
}
|
|
560
|
+
|
|
296
561
|
function computeIdCommitment(args: { uidKey: string; uidVal: string; aud: string; pepper: HexInput }): Uint8Array {
|
|
297
562
|
const { uidKey, uidVal, aud, pepper } = args;
|
|
298
563
|
|
|
@@ -435,7 +700,7 @@ export class EphemeralCertificate extends Signature {
|
|
|
435
700
|
* @group Implementation
|
|
436
701
|
* @category Serialization
|
|
437
702
|
*/
|
|
438
|
-
|
|
703
|
+
readonly variant: EphemeralCertificateVariant;
|
|
439
704
|
|
|
440
705
|
constructor(signature: Signature, variant: EphemeralCertificateVariant) {
|
|
441
706
|
super();
|
|
@@ -479,6 +744,8 @@ export class EphemeralCertificate extends Signature {
|
|
|
479
744
|
* @category Serialization
|
|
480
745
|
*/
|
|
481
746
|
class G1Bytes extends Serializable {
|
|
747
|
+
private static readonly B = bn254.fields.Fp.create(3n);
|
|
748
|
+
|
|
482
749
|
data: Uint8Array;
|
|
483
750
|
|
|
484
751
|
constructor(data: HexInput) {
|
|
@@ -497,6 +764,43 @@ class G1Bytes extends Serializable {
|
|
|
497
764
|
const bytes = deserializer.deserializeFixedBytes(32);
|
|
498
765
|
return new G1Bytes(bytes);
|
|
499
766
|
}
|
|
767
|
+
|
|
768
|
+
// Convert the projective coordinates to strings
|
|
769
|
+
toArray(): string[] {
|
|
770
|
+
const point = this.toProjectivePoint();
|
|
771
|
+
return [point.x.toString(), point.y.toString(), point.pz.toString()];
|
|
772
|
+
}
|
|
773
|
+
|
|
774
|
+
/**
|
|
775
|
+
* Converts the G1 bytes to a projective point.
|
|
776
|
+
* @returns The projective point.
|
|
777
|
+
*/
|
|
778
|
+
toProjectivePoint(): ProjPointType<bigint> {
|
|
779
|
+
const bytes = new Uint8Array(this.data);
|
|
780
|
+
// Reverse the bytes to convert from little-endian to big-endian.
|
|
781
|
+
bytes.reverse();
|
|
782
|
+
// This gets the flag bit to determine which y to use.
|
|
783
|
+
const yFlag = (bytes[0] & 0x80) >> 7;
|
|
784
|
+
const { Fp } = bn254.fields;
|
|
785
|
+
const x = Fp.create(bytesToBn254FpBE(bytes));
|
|
786
|
+
const y = Fp.sqrt(Fp.add(Fp.pow(x, 3n), G1Bytes.B));
|
|
787
|
+
const negY = Fp.neg(y);
|
|
788
|
+
const yToUse = y > negY === (yFlag === 1) ? y : negY;
|
|
789
|
+
return bn254.G1.ProjectivePoint.fromAffine({
|
|
790
|
+
x: x,
|
|
791
|
+
y: yToUse,
|
|
792
|
+
});
|
|
793
|
+
}
|
|
794
|
+
}
|
|
795
|
+
|
|
796
|
+
function bytesToBn254FpBE(bytes: Uint8Array): bigint {
|
|
797
|
+
if (bytes.length !== 32) {
|
|
798
|
+
throw new Error("Input should be 32 bytes");
|
|
799
|
+
}
|
|
800
|
+
// Clear the first two bits of the first byte which removes any flags.
|
|
801
|
+
const result = new Uint8Array(bytes);
|
|
802
|
+
result[0] = result[0] & 0x3f; // 0x3F = 00111111 in binary
|
|
803
|
+
return bytesToNumberBE(result);
|
|
500
804
|
}
|
|
501
805
|
|
|
502
806
|
/**
|
|
@@ -508,6 +812,14 @@ class G1Bytes extends Serializable {
|
|
|
508
812
|
* @category Serialization
|
|
509
813
|
*/
|
|
510
814
|
class G2Bytes extends Serializable {
|
|
815
|
+
/**
|
|
816
|
+
* The constant b value used in G2 point calculations
|
|
817
|
+
*/
|
|
818
|
+
private static readonly B = bn254.fields.Fp2.fromBigTuple([
|
|
819
|
+
19485874751759354771024239261021720505790618469301721065564631296452457478373n,
|
|
820
|
+
266929791119991161246907387137283842545076965332900288569378510910307636690n,
|
|
821
|
+
]);
|
|
822
|
+
|
|
511
823
|
data: Uint8Array;
|
|
512
824
|
|
|
513
825
|
constructor(data: HexInput) {
|
|
@@ -526,6 +838,44 @@ class G2Bytes extends Serializable {
|
|
|
526
838
|
const bytes = deserializer.deserializeFixedBytes(64);
|
|
527
839
|
return new G2Bytes(bytes);
|
|
528
840
|
}
|
|
841
|
+
|
|
842
|
+
// Convert the projective coordinates to strings
|
|
843
|
+
toArray(): [string, string][] {
|
|
844
|
+
const point = this.toProjectivePoint();
|
|
845
|
+
return [
|
|
846
|
+
[
|
|
847
|
+
point.x.c0.toString(), // x real part
|
|
848
|
+
point.x.c1.toString(),
|
|
849
|
+
], // x imaginary part
|
|
850
|
+
[
|
|
851
|
+
point.y.c0.toString(), // y real part
|
|
852
|
+
point.y.c1.toString(),
|
|
853
|
+
], // y imaginary part
|
|
854
|
+
[
|
|
855
|
+
point.pz.c0.toString(), // z real part
|
|
856
|
+
point.pz.c1.toString(),
|
|
857
|
+
], // z imaginary part
|
|
858
|
+
];
|
|
859
|
+
}
|
|
860
|
+
|
|
861
|
+
toProjectivePoint(): ProjPointType<Fp2> {
|
|
862
|
+
const bytes = new Uint8Array(this.data);
|
|
863
|
+
// Reverse the bytes to convert from little-endian to big-endian for each part of x.
|
|
864
|
+
const x0 = bytes.slice(0, 32).reverse();
|
|
865
|
+
const x1 = bytes.slice(32, 64).reverse();
|
|
866
|
+
// This gets the flag bit to determine which y to use.
|
|
867
|
+
const yFlag = (x1[0] & 0x80) >> 7;
|
|
868
|
+
const { Fp2 } = bn254.fields;
|
|
869
|
+
const x = Fp2.fromBigTuple([bytesToBn254FpBE(x0), bytesToBn254FpBE(x1)]);
|
|
870
|
+
const y = Fp2.sqrt(Fp2.add(Fp2.pow(x, 3n), G2Bytes.B));
|
|
871
|
+
const negY = Fp2.neg(y);
|
|
872
|
+
const isYGreaterThanNegY = y.c1 > negY.c1 || (y.c1 === negY.c1 && y.c0 > negY.c0);
|
|
873
|
+
const yToUse = isYGreaterThanNegY === (yFlag === 1) ? y : negY;
|
|
874
|
+
return bn254.G2.ProjectivePoint.fromAffine({
|
|
875
|
+
x: x,
|
|
876
|
+
y: yToUse,
|
|
877
|
+
});
|
|
878
|
+
}
|
|
529
879
|
}
|
|
530
880
|
|
|
531
881
|
/**
|
|
@@ -578,6 +928,72 @@ export class Groth16Zkp extends Proof {
|
|
|
578
928
|
const c = G1Bytes.deserialize(deserializer).bcsToBytes();
|
|
579
929
|
return new Groth16Zkp({ a, b, c });
|
|
580
930
|
}
|
|
931
|
+
|
|
932
|
+
toSnarkJsJson() {
|
|
933
|
+
return {
|
|
934
|
+
protocol: "groth16",
|
|
935
|
+
curve: "bn128",
|
|
936
|
+
pi_a: this.a.toArray(),
|
|
937
|
+
pi_b: this.b.toArray(),
|
|
938
|
+
pi_c: this.c.toArray(),
|
|
939
|
+
};
|
|
940
|
+
}
|
|
941
|
+
}
|
|
942
|
+
|
|
943
|
+
/**
|
|
944
|
+
* Represents a Groth16 proof and statement, consisting of a Groth16 proof and a public inputs hash.
|
|
945
|
+
* This is used to generate the signing message for the training wheels signature.
|
|
946
|
+
*
|
|
947
|
+
* @extends Serializable
|
|
948
|
+
* @group Implementation
|
|
949
|
+
* @category Serialization
|
|
950
|
+
*/
|
|
951
|
+
export class Groth16ProofAndStatement extends Serializable {
|
|
952
|
+
/**
|
|
953
|
+
* The Groth16 proof
|
|
954
|
+
* @group Implementation
|
|
955
|
+
* @category Serialization
|
|
956
|
+
*/
|
|
957
|
+
proof: Groth16Zkp;
|
|
958
|
+
|
|
959
|
+
/**
|
|
960
|
+
* The public inputs hash as a 32 byte Uint8Array
|
|
961
|
+
* @group Implementation
|
|
962
|
+
* @category Serialization
|
|
963
|
+
*/
|
|
964
|
+
publicInputsHash: Uint8Array;
|
|
965
|
+
|
|
966
|
+
/**
|
|
967
|
+
* The domain separator prefix used when hashing.
|
|
968
|
+
* @group Implementation
|
|
969
|
+
* @category Account (On-Chain Model)
|
|
970
|
+
*/
|
|
971
|
+
readonly domainSeparator = "APTOS::Groth16ProofAndStatement";
|
|
972
|
+
|
|
973
|
+
constructor(proof: Groth16Zkp, publicInputsHash: HexInput | bigint) {
|
|
974
|
+
super();
|
|
975
|
+
this.proof = proof;
|
|
976
|
+
this.publicInputsHash =
|
|
977
|
+
typeof publicInputsHash === "bigint"
|
|
978
|
+
? bigIntToBytesLE(publicInputsHash, 32)
|
|
979
|
+
: Hex.fromHexInput(publicInputsHash).toUint8Array();
|
|
980
|
+
if (this.publicInputsHash.length !== 32) {
|
|
981
|
+
throw new Error("Invalid public inputs hash");
|
|
982
|
+
}
|
|
983
|
+
}
|
|
984
|
+
|
|
985
|
+
serialize(serializer: Serializer): void {
|
|
986
|
+
this.proof.serialize(serializer);
|
|
987
|
+
serializer.serializeFixedBytes(this.publicInputsHash);
|
|
988
|
+
}
|
|
989
|
+
|
|
990
|
+
static deserialize(deserializer: Deserializer): Groth16ProofAndStatement {
|
|
991
|
+
return new Groth16ProofAndStatement(Groth16Zkp.deserialize(deserializer), deserializer.deserializeFixedBytes(32));
|
|
992
|
+
}
|
|
993
|
+
|
|
994
|
+
hash(): Uint8Array {
|
|
995
|
+
return generateSigningMessage(this.bcsToBytes(), this.domainSeparator);
|
|
996
|
+
}
|
|
581
997
|
}
|
|
582
998
|
|
|
583
999
|
/**
|
|
@@ -595,7 +1011,7 @@ export class ZkProof extends Serializable {
|
|
|
595
1011
|
* @group Implementation
|
|
596
1012
|
* @category Serialization
|
|
597
1013
|
*/
|
|
598
|
-
|
|
1014
|
+
readonly variant: ZkpVariant;
|
|
599
1015
|
|
|
600
1016
|
constructor(proof: Proof, variant: ZkpVariant) {
|
|
601
1017
|
super();
|
|
@@ -733,22 +1149,93 @@ export class KeylessConfiguration {
|
|
|
733
1149
|
*/
|
|
734
1150
|
readonly maxExpHorizonSecs: number;
|
|
735
1151
|
|
|
736
|
-
|
|
1152
|
+
/**
|
|
1153
|
+
* The public key of the training wheels account.
|
|
1154
|
+
* @group Implementation
|
|
1155
|
+
* @category Serialization
|
|
1156
|
+
*/
|
|
1157
|
+
readonly trainingWheelsPubkey?: EphemeralPublicKey;
|
|
1158
|
+
|
|
1159
|
+
/**
|
|
1160
|
+
* The maximum number of bytes that can be used for the extra field.
|
|
1161
|
+
* @group Implementation
|
|
1162
|
+
* @category Serialization
|
|
1163
|
+
*/
|
|
1164
|
+
readonly maxExtraFieldBytes: number;
|
|
1165
|
+
|
|
1166
|
+
/**
|
|
1167
|
+
* The maximum number of bytes that can be used for the JWT header.
|
|
1168
|
+
* @group Implementation
|
|
1169
|
+
* @category Serialization
|
|
1170
|
+
*/
|
|
1171
|
+
readonly maxJwtHeaderB64Bytes: number;
|
|
1172
|
+
|
|
1173
|
+
/**
|
|
1174
|
+
* The maximum number of bytes that can be used for the issuer value.
|
|
1175
|
+
* @group Implementation
|
|
1176
|
+
* @category Serialization
|
|
1177
|
+
*/
|
|
1178
|
+
readonly maxIssValBytes: number;
|
|
1179
|
+
|
|
1180
|
+
/**
|
|
1181
|
+
* The maximum number of bytes that can be used for the committed ephemeral public key.
|
|
1182
|
+
* @group Implementation
|
|
1183
|
+
* @category Serialization
|
|
1184
|
+
*/
|
|
1185
|
+
readonly maxCommitedEpkBytes: number;
|
|
1186
|
+
|
|
1187
|
+
constructor(args: {
|
|
1188
|
+
verificationKey: Groth16VerificationKey;
|
|
1189
|
+
trainingWheelsPubkey?: HexInput;
|
|
1190
|
+
maxExpHorizonSecs?: number;
|
|
1191
|
+
maxExtraFieldBytes?: number;
|
|
1192
|
+
maxJwtHeaderB64Bytes?: number;
|
|
1193
|
+
maxIssValBytes?: number;
|
|
1194
|
+
maxCommitedEpkBytes?: number;
|
|
1195
|
+
}) {
|
|
1196
|
+
const {
|
|
1197
|
+
verificationKey,
|
|
1198
|
+
trainingWheelsPubkey,
|
|
1199
|
+
maxExpHorizonSecs = EPK_HORIZON_SECS,
|
|
1200
|
+
maxExtraFieldBytes = MAX_EXTRA_FIELD_BYTES,
|
|
1201
|
+
maxJwtHeaderB64Bytes = MAX_JWT_HEADER_B64_BYTES,
|
|
1202
|
+
maxIssValBytes = MAX_ISS_VAL_BYTES,
|
|
1203
|
+
maxCommitedEpkBytes = MAX_COMMITED_EPK_BYTES,
|
|
1204
|
+
} = args;
|
|
1205
|
+
|
|
737
1206
|
this.verificationKey = verificationKey;
|
|
738
1207
|
this.maxExpHorizonSecs = maxExpHorizonSecs;
|
|
1208
|
+
if (trainingWheelsPubkey) {
|
|
1209
|
+
this.trainingWheelsPubkey = new EphemeralPublicKey(new Ed25519PublicKey(trainingWheelsPubkey));
|
|
1210
|
+
}
|
|
1211
|
+
this.maxExtraFieldBytes = maxExtraFieldBytes;
|
|
1212
|
+
this.maxJwtHeaderB64Bytes = maxJwtHeaderB64Bytes;
|
|
1213
|
+
this.maxIssValBytes = maxIssValBytes;
|
|
1214
|
+
this.maxCommitedEpkBytes = maxCommitedEpkBytes;
|
|
739
1215
|
}
|
|
740
1216
|
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
1217
|
+
/**
|
|
1218
|
+
* Creates a new KeylessConfiguration instance from a Groth16VerificationKeyResponse and a KeylessConfigurationResponse.
|
|
1219
|
+
* @param res - The Groth16VerificationKeyResponse object containing the verification key data.
|
|
1220
|
+
* @param config - The KeylessConfigurationResponse object containing the configuration data.
|
|
1221
|
+
* @returns A new KeylessConfiguration instance.
|
|
1222
|
+
*/
|
|
1223
|
+
static create(res: Groth16VerificationKeyResponse, config: KeylessConfigurationResponse): KeylessConfiguration {
|
|
1224
|
+
return new KeylessConfiguration({
|
|
1225
|
+
verificationKey: new Groth16VerificationKey({
|
|
744
1226
|
alphaG1: res.alpha_g1,
|
|
745
1227
|
betaG2: res.beta_g2,
|
|
746
1228
|
deltaG2: res.delta_g2,
|
|
747
1229
|
gammaAbcG1: res.gamma_abc_g1,
|
|
748
1230
|
gammaG2: res.gamma_g2,
|
|
749
1231
|
}),
|
|
750
|
-
maxExpHorizonSecs,
|
|
751
|
-
|
|
1232
|
+
maxExpHorizonSecs: Number(config.max_exp_horizon_secs),
|
|
1233
|
+
trainingWheelsPubkey: config.training_wheels_pubkey.vec[0],
|
|
1234
|
+
maxExtraFieldBytes: config.max_extra_field_bytes,
|
|
1235
|
+
maxJwtHeaderB64Bytes: config.max_jwt_header_b64_bytes,
|
|
1236
|
+
maxIssValBytes: config.max_iss_val_bytes,
|
|
1237
|
+
maxCommitedEpkBytes: config.max_commited_epk_bytes,
|
|
1238
|
+
});
|
|
752
1239
|
}
|
|
753
1240
|
}
|
|
754
1241
|
|
|
@@ -853,6 +1340,79 @@ export class Groth16VerificationKey {
|
|
|
853
1340
|
gammaG2: res.gamma_g2,
|
|
854
1341
|
});
|
|
855
1342
|
}
|
|
1343
|
+
|
|
1344
|
+
/**
|
|
1345
|
+
* Verifies a Groth16 proof using the verification key given the public inputs hash and the proof.
|
|
1346
|
+
*
|
|
1347
|
+
* @param args.publicInputsHash The public inputs hash
|
|
1348
|
+
* @param args.groth16Proof The Groth16 proof
|
|
1349
|
+
* @returns true if the proof is valid
|
|
1350
|
+
*/
|
|
1351
|
+
verifyProof(args: { publicInputsHash: bigint; groth16Proof: Groth16Zkp }): boolean {
|
|
1352
|
+
const { publicInputsHash, groth16Proof } = args;
|
|
1353
|
+
|
|
1354
|
+
try {
|
|
1355
|
+
// Get proof points
|
|
1356
|
+
const proofA = groth16Proof.a.toProjectivePoint();
|
|
1357
|
+
const proofB = groth16Proof.b.toProjectivePoint();
|
|
1358
|
+
const proofC = groth16Proof.c.toProjectivePoint();
|
|
1359
|
+
|
|
1360
|
+
// Get verification key points
|
|
1361
|
+
const vkAlpha1 = this.alphaG1.toProjectivePoint();
|
|
1362
|
+
const vkBeta2 = this.betaG2.toProjectivePoint();
|
|
1363
|
+
const vkGamma2 = this.gammaG2.toProjectivePoint();
|
|
1364
|
+
const vkDelta2 = this.deltaG2.toProjectivePoint();
|
|
1365
|
+
const vkIC = this.gammaAbcG1.map((g1) => g1.toProjectivePoint());
|
|
1366
|
+
|
|
1367
|
+
const { Fp12 } = bn254.fields;
|
|
1368
|
+
|
|
1369
|
+
// Check that the following pairing equation holds:
|
|
1370
|
+
// e(A_1, B_2) = e(\alpha_1, \beta_2) + e(\ic_0 + public_inputs_hash \ic_1, \gamma_2) + e(C_1, \delta_2)
|
|
1371
|
+
// Where A_1, B_2, C_1 are the proof points and \alpha_1, \beta_2, \gamma_2, \delta_2, \ic_0, \ic_1
|
|
1372
|
+
// are the verification key points
|
|
1373
|
+
|
|
1374
|
+
// \ic_0 + public_inputs_hash \ic_1
|
|
1375
|
+
let accum = vkIC[0].add(vkIC[1].multiply(publicInputsHash));
|
|
1376
|
+
// e(\ic_0 + public_inputs_hash \ic_1, \gamma_2)
|
|
1377
|
+
const pairingAccumGamma = bn254.pairing(accum, vkGamma2);
|
|
1378
|
+
// e(A_1, B_2)
|
|
1379
|
+
const pairingAB = bn254.pairing(proofA, proofB);
|
|
1380
|
+
// e(\alpha_1, \beta_2)
|
|
1381
|
+
const pairingAlphaBeta = bn254.pairing(vkAlpha1, vkBeta2);
|
|
1382
|
+
// e(C_1, \delta_2)
|
|
1383
|
+
const pairingCDelta = bn254.pairing(proofC, vkDelta2);
|
|
1384
|
+
// Get the result of the right hand side of the pairing equation
|
|
1385
|
+
const product = Fp12.mul(pairingAlphaBeta, Fp12.mul(pairingAccumGamma, pairingCDelta));
|
|
1386
|
+
// Check if the left hand side equals the right hand side
|
|
1387
|
+
return Fp12.eql(pairingAB, product);
|
|
1388
|
+
} catch (error) {
|
|
1389
|
+
throw KeylessError.fromErrorType({
|
|
1390
|
+
type: KeylessErrorType.PROOF_VERIFICATION_FAILED,
|
|
1391
|
+
error,
|
|
1392
|
+
details: "Error encountered when checking zero knowledge relation",
|
|
1393
|
+
});
|
|
1394
|
+
}
|
|
1395
|
+
}
|
|
1396
|
+
|
|
1397
|
+
/**
|
|
1398
|
+
* Converts the verification key to a JSON format compatible with snarkjs groth16.verify
|
|
1399
|
+
*
|
|
1400
|
+
* @returns An object containing the verification key in snarkjs format
|
|
1401
|
+
* @group Implementation
|
|
1402
|
+
* @category Serialization
|
|
1403
|
+
*/
|
|
1404
|
+
toSnarkJsJson() {
|
|
1405
|
+
return {
|
|
1406
|
+
protocol: "groth16",
|
|
1407
|
+
curve: "bn128",
|
|
1408
|
+
nPublic: 1,
|
|
1409
|
+
vk_alpha_1: this.alphaG1.toArray(),
|
|
1410
|
+
vk_beta_2: this.betaG2.toArray(),
|
|
1411
|
+
vk_gamma_2: this.gammaG2.toArray(),
|
|
1412
|
+
vk_delta_2: this.deltaG2.toArray(),
|
|
1413
|
+
IC: this.gammaAbcG1.map((g1) => g1.toArray()),
|
|
1414
|
+
};
|
|
1415
|
+
}
|
|
856
1416
|
}
|
|
857
1417
|
|
|
858
1418
|
/**
|
|
@@ -875,9 +1435,11 @@ export async function getKeylessConfig(args: {
|
|
|
875
1435
|
try {
|
|
876
1436
|
return await memoizeAsync(
|
|
877
1437
|
async () => {
|
|
878
|
-
const config = await
|
|
879
|
-
|
|
880
|
-
|
|
1438
|
+
const [config, vk] = await Promise.all([
|
|
1439
|
+
getKeylessConfigurationResource(args),
|
|
1440
|
+
getGroth16VerificationKeyResource(args),
|
|
1441
|
+
]);
|
|
1442
|
+
return KeylessConfiguration.create(vk, config);
|
|
881
1443
|
},
|
|
882
1444
|
`keyless-configuration-${aptosConfig.network}`,
|
|
883
1445
|
1000 * 60 * 5, // 5 minutes
|
|
@@ -1076,16 +1638,47 @@ export class MoveJWK extends Serializable {
|
|
|
1076
1638
|
return MoveJWK.deserialize(deserializer);
|
|
1077
1639
|
}
|
|
1078
1640
|
|
|
1641
|
+
toScalar(): bigint {
|
|
1642
|
+
if (this.alg !== "RS256") {
|
|
1643
|
+
throw KeylessError.fromErrorType({
|
|
1644
|
+
type: KeylessErrorType.PROOF_VERIFICATION_FAILED,
|
|
1645
|
+
details:
|
|
1646
|
+
"Failed to convert JWK to scalar when calculating the public inputs hash. Only RSA 256 is supported currently",
|
|
1647
|
+
});
|
|
1648
|
+
}
|
|
1649
|
+
const uint8Array = base64UrlToBytes(this.n);
|
|
1650
|
+
const chunks = chunkInto24Bytes(uint8Array.reverse());
|
|
1651
|
+
const scalars = chunks.map((chunk) => bytesToBigIntLE(chunk));
|
|
1652
|
+
scalars.push(256n); // Add the modulus size
|
|
1653
|
+
return poseidonHash(scalars);
|
|
1654
|
+
}
|
|
1655
|
+
|
|
1079
1656
|
static deserialize(deserializer: Deserializer): MoveJWK {
|
|
1080
1657
|
const kid = deserializer.deserializeStr();
|
|
1081
1658
|
const kty = deserializer.deserializeStr();
|
|
1082
1659
|
const alg = deserializer.deserializeStr();
|
|
1083
|
-
const n = deserializer.deserializeStr();
|
|
1084
1660
|
const e = deserializer.deserializeStr();
|
|
1661
|
+
const n = deserializer.deserializeStr();
|
|
1085
1662
|
return new MoveJWK({ kid, kty, alg, n, e });
|
|
1086
1663
|
}
|
|
1087
1664
|
}
|
|
1088
1665
|
|
|
1666
|
+
function chunkInto24Bytes(data: Uint8Array): Uint8Array[] {
|
|
1667
|
+
const chunks: Uint8Array[] = [];
|
|
1668
|
+
for (let i = 0; i < data.length; i += 24) {
|
|
1669
|
+
const chunk = data.slice(i, Math.min(i + 24, data.length));
|
|
1670
|
+
// Pad last chunk with zeros if needed
|
|
1671
|
+
if (chunk.length < 24) {
|
|
1672
|
+
const paddedChunk = new Uint8Array(24);
|
|
1673
|
+
paddedChunk.set(chunk);
|
|
1674
|
+
chunks.push(paddedChunk);
|
|
1675
|
+
} else {
|
|
1676
|
+
chunks.push(chunk);
|
|
1677
|
+
}
|
|
1678
|
+
}
|
|
1679
|
+
return chunks;
|
|
1680
|
+
}
|
|
1681
|
+
|
|
1089
1682
|
interface JwtHeader {
|
|
1090
1683
|
kid: string; // Key ID
|
|
1091
1684
|
}
|