@0xpolygonid/js-sdk 1.0.0-beta.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/LICENSE +661 -0
- package/README.md +40 -0
- package/dist/cjs/auth/auth.js +179 -0
- package/dist/cjs/auth/auth.js.map +1 -0
- package/dist/cjs/auth/index.js +18 -0
- package/dist/cjs/auth/index.js.map +1 -0
- package/dist/cjs/circuits/atomic-query-mtp-v2.js +181 -0
- package/dist/cjs/circuits/atomic-query-mtp-v2.js.map +1 -0
- package/dist/cjs/circuits/atomic-query-sig-v2.js +219 -0
- package/dist/cjs/circuits/atomic-query-sig-v2.js.map +1 -0
- package/dist/cjs/circuits/auth-v2.js +99 -0
- package/dist/cjs/circuits/auth-v2.js.map +1 -0
- package/dist/cjs/circuits/common.js +193 -0
- package/dist/cjs/circuits/common.js.map +1 -0
- package/dist/cjs/circuits/comparer.js +132 -0
- package/dist/cjs/circuits/comparer.js.map +1 -0
- package/dist/cjs/circuits/index.js +24 -0
- package/dist/cjs/circuits/index.js.map +1 -0
- package/dist/cjs/circuits/models.js +110 -0
- package/dist/cjs/circuits/models.js.map +1 -0
- package/dist/cjs/circuits/state-transition.js +94 -0
- package/dist/cjs/circuits/state-transition.js.map +1 -0
- package/dist/cjs/credentials/credential-wallet.js +264 -0
- package/dist/cjs/credentials/credential-wallet.js.map +1 -0
- package/dist/cjs/credentials/index.js +18 -0
- package/dist/cjs/credentials/index.js.map +1 -0
- package/dist/cjs/credentials/revocation.js +290 -0
- package/dist/cjs/credentials/revocation.js.map +1 -0
- package/dist/cjs/iden3comm/constants.js +45 -0
- package/dist/cjs/iden3comm/constants.js.map +1 -0
- package/dist/cjs/iden3comm/errors.js +15 -0
- package/dist/cjs/iden3comm/errors.js.map +1 -0
- package/dist/cjs/iden3comm/index.js +35 -0
- package/dist/cjs/iden3comm/index.js.map +1 -0
- package/dist/cjs/iden3comm/packageManager.js +78 -0
- package/dist/cjs/iden3comm/packageManager.js.map +1 -0
- package/dist/cjs/iden3comm/packers/index.js +19 -0
- package/dist/cjs/iden3comm/packers/index.js.map +1 -0
- package/dist/cjs/iden3comm/packers/plain.js +49 -0
- package/dist/cjs/iden3comm/packers/plain.js.map +1 -0
- package/dist/cjs/iden3comm/packers/zkp.js +155 -0
- package/dist/cjs/iden3comm/packers/zkp.js.map +1 -0
- package/dist/cjs/iden3comm/types/index.js +24 -0
- package/dist/cjs/iden3comm/types/index.js.map +1 -0
- package/dist/cjs/iden3comm/types/packageManager.js +3 -0
- package/dist/cjs/iden3comm/types/packageManager.js.map +1 -0
- package/dist/cjs/iden3comm/types/packer.js +3 -0
- package/dist/cjs/iden3comm/types/packer.js.map +1 -0
- package/dist/cjs/iden3comm/types/protocol/auth.js +3 -0
- package/dist/cjs/iden3comm/types/protocol/auth.js.map +1 -0
- package/dist/cjs/iden3comm/types/protocol/credentials.js +3 -0
- package/dist/cjs/iden3comm/types/protocol/credentials.js.map +1 -0
- package/dist/cjs/iden3comm/types/protocol/messages.js +3 -0
- package/dist/cjs/iden3comm/types/protocol/messages.js.map +1 -0
- package/dist/cjs/iden3comm/types/protocol/proof.js +3 -0
- package/dist/cjs/iden3comm/types/protocol/proof.js.map +1 -0
- package/dist/cjs/iden3comm/types/protocol/revocation.js +3 -0
- package/dist/cjs/iden3comm/types/protocol/revocation.js.map +1 -0
- package/dist/cjs/iden3comm/utils/bytes.js +20 -0
- package/dist/cjs/iden3comm/utils/bytes.js.map +1 -0
- package/dist/cjs/iden3comm/utils/envelope.js +99 -0
- package/dist/cjs/iden3comm/utils/envelope.js.map +1 -0
- package/dist/cjs/iden3comm/utils/index.js +6 -0
- package/dist/cjs/iden3comm/utils/index.js.map +1 -0
- package/dist/cjs/iden3comm/utils/message.js +43 -0
- package/dist/cjs/iden3comm/utils/message.js.map +1 -0
- package/dist/cjs/identity/common.js +40 -0
- package/dist/cjs/identity/common.js.map +1 -0
- package/dist/cjs/identity/identity-wallet.js +422 -0
- package/dist/cjs/identity/identity-wallet.js.map +1 -0
- package/dist/cjs/identity/index.js +19 -0
- package/dist/cjs/identity/index.js.map +1 -0
- package/dist/cjs/index.js +42 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/kms/bjj-provider.js +101 -0
- package/dist/cjs/kms/bjj-provider.js.map +1 -0
- package/dist/cjs/kms/index.js +20 -0
- package/dist/cjs/kms/index.js.map +1 -0
- package/dist/cjs/kms/kms.js +74 -0
- package/dist/cjs/kms/kms.js.map +1 -0
- package/dist/cjs/kms/provider-helpers.js +49 -0
- package/dist/cjs/kms/provider-helpers.js.map +1 -0
- package/dist/cjs/kms/store/abstract-key-store.js +15 -0
- package/dist/cjs/kms/store/abstract-key-store.js.map +1 -0
- package/dist/cjs/kms/store/index.js +21 -0
- package/dist/cjs/kms/store/index.js.map +1 -0
- package/dist/cjs/kms/store/local-storage-key-store.js +56 -0
- package/dist/cjs/kms/store/local-storage-key-store.js.map +1 -0
- package/dist/cjs/kms/store/memory-key-store.js +28 -0
- package/dist/cjs/kms/store/memory-key-store.js.map +1 -0
- package/dist/cjs/kms/store/types.js +15 -0
- package/dist/cjs/kms/store/types.js.map +1 -0
- package/dist/cjs/loaders/index.js +19 -0
- package/dist/cjs/loaders/index.js.map +1 -0
- package/dist/cjs/loaders/key.js +50 -0
- package/dist/cjs/loaders/key.js.map +1 -0
- package/dist/cjs/loaders/schema.js +110 -0
- package/dist/cjs/loaders/schema.js.map +1 -0
- package/dist/cjs/proof/common.js +64 -0
- package/dist/cjs/proof/common.js.map +1 -0
- package/dist/cjs/proof/index.js +20 -0
- package/dist/cjs/proof/index.js.map +1 -0
- package/dist/cjs/proof/proof-service.js +344 -0
- package/dist/cjs/proof/proof-service.js.map +1 -0
- package/dist/cjs/proof/prover.js +79 -0
- package/dist/cjs/proof/prover.js.map +1 -0
- package/dist/cjs/proof/witness_calculator.js +282 -0
- package/dist/cjs/proof/witness_calculator.js.map +1 -0
- package/dist/cjs/schema-processor/index.js +19 -0
- package/dist/cjs/schema-processor/index.js.map +1 -0
- package/dist/cjs/schema-processor/json/index.js +19 -0
- package/dist/cjs/schema-processor/json/index.js.map +1 -0
- package/dist/cjs/schema-processor/json/parser.js +136 -0
- package/dist/cjs/schema-processor/json/parser.js.map +1 -0
- package/dist/cjs/schema-processor/json/validator.js +42 -0
- package/dist/cjs/schema-processor/json/validator.js.map +1 -0
- package/dist/cjs/schema-processor/utils.js +98 -0
- package/dist/cjs/schema-processor/utils.js.map +1 -0
- package/dist/cjs/storage/blockchain/index.js +18 -0
- package/dist/cjs/storage/blockchain/index.js.map +1 -0
- package/dist/cjs/storage/blockchain/state-abi.json +922 -0
- package/dist/cjs/storage/blockchain/state.js +112 -0
- package/dist/cjs/storage/blockchain/state.js.map +1 -0
- package/dist/cjs/storage/entities/circuitData.js +3 -0
- package/dist/cjs/storage/entities/circuitData.js.map +1 -0
- package/dist/cjs/storage/entities/identity.js +3 -0
- package/dist/cjs/storage/entities/identity.js.map +1 -0
- package/dist/cjs/storage/entities/index.js +21 -0
- package/dist/cjs/storage/entities/index.js.map +1 -0
- package/dist/cjs/storage/entities/mt.js +19 -0
- package/dist/cjs/storage/entities/mt.js.map +1 -0
- package/dist/cjs/storage/entities/state.js +3 -0
- package/dist/cjs/storage/entities/state.js.map +1 -0
- package/dist/cjs/storage/errors.js +14 -0
- package/dist/cjs/storage/errors.js.map +1 -0
- package/dist/cjs/storage/filters/index.js +18 -0
- package/dist/cjs/storage/filters/index.js.map +1 -0
- package/dist/cjs/storage/filters/jsonQuery.js +141 -0
- package/dist/cjs/storage/filters/jsonQuery.js.map +1 -0
- package/dist/cjs/storage/index.js +24 -0
- package/dist/cjs/storage/index.js.map +1 -0
- package/dist/cjs/storage/interfaces/circuits.js +3 -0
- package/dist/cjs/storage/interfaces/circuits.js.map +1 -0
- package/dist/cjs/storage/interfaces/credentials.js +3 -0
- package/dist/cjs/storage/interfaces/credentials.js.map +1 -0
- package/dist/cjs/storage/interfaces/data-source.js +3 -0
- package/dist/cjs/storage/interfaces/data-source.js.map +1 -0
- package/dist/cjs/storage/interfaces/data-storage.js +3 -0
- package/dist/cjs/storage/interfaces/data-storage.js.map +1 -0
- package/dist/cjs/storage/interfaces/identity.js +3 -0
- package/dist/cjs/storage/interfaces/identity.js.map +1 -0
- package/dist/cjs/storage/interfaces/index.js +24 -0
- package/dist/cjs/storage/interfaces/index.js.map +1 -0
- package/dist/cjs/storage/interfaces/merkletree.js +3 -0
- package/dist/cjs/storage/interfaces/merkletree.js.map +1 -0
- package/dist/cjs/storage/interfaces/state.js +3 -0
- package/dist/cjs/storage/interfaces/state.js.map +1 -0
- package/dist/cjs/storage/local-storage/data-source.js +89 -0
- package/dist/cjs/storage/local-storage/data-source.js.map +1 -0
- package/dist/cjs/storage/local-storage/index.js +19 -0
- package/dist/cjs/storage/local-storage/index.js.map +1 -0
- package/dist/cjs/storage/local-storage/merkletree.js +148 -0
- package/dist/cjs/storage/local-storage/merkletree.js.map +1 -0
- package/dist/cjs/storage/memory/data-source.js +49 -0
- package/dist/cjs/storage/memory/data-source.js.map +1 -0
- package/dist/cjs/storage/memory/index.js +19 -0
- package/dist/cjs/storage/memory/index.js.map +1 -0
- package/dist/cjs/storage/memory/merkletree.js +94 -0
- package/dist/cjs/storage/memory/merkletree.js.map +1 -0
- package/dist/cjs/storage/shared/circuit-storage.js +46 -0
- package/dist/cjs/storage/shared/circuit-storage.js.map +1 -0
- package/dist/cjs/storage/shared/credential-storage.js +66 -0
- package/dist/cjs/storage/shared/credential-storage.js.map +1 -0
- package/dist/cjs/storage/shared/identity-storage.js +71 -0
- package/dist/cjs/storage/shared/identity-storage.js.map +1 -0
- package/dist/cjs/storage/shared/index.js +20 -0
- package/dist/cjs/storage/shared/index.js.map +1 -0
- package/dist/cjs/verifiable/constants.js +104 -0
- package/dist/cjs/verifiable/constants.js.map +1 -0
- package/dist/cjs/verifiable/credential.js +129 -0
- package/dist/cjs/verifiable/credential.js.map +1 -0
- package/dist/cjs/verifiable/index.js +21 -0
- package/dist/cjs/verifiable/index.js.map +1 -0
- package/dist/cjs/verifiable/proof.js +70 -0
- package/dist/cjs/verifiable/proof.js.map +1 -0
- package/dist/cjs/verifiable/schema.js +245 -0
- package/dist/cjs/verifiable/schema.js.map +1 -0
- package/dist/esm/auth/auth.js +152 -0
- package/dist/esm/auth/auth.js.map +1 -0
- package/dist/esm/auth/index.js +2 -0
- package/dist/esm/auth/index.js.map +1 -0
- package/dist/esm/circuits/atomic-query-mtp-v2.js +176 -0
- package/dist/esm/circuits/atomic-query-mtp-v2.js.map +1 -0
- package/dist/esm/circuits/atomic-query-sig-v2.js +214 -0
- package/dist/esm/circuits/atomic-query-sig-v2.js.map +1 -0
- package/dist/esm/circuits/auth-v2.js +94 -0
- package/dist/esm/circuits/auth-v2.js.map +1 -0
- package/dist/esm/circuits/common.js +186 -0
- package/dist/esm/circuits/common.js.map +1 -0
- package/dist/esm/circuits/comparer.js +126 -0
- package/dist/esm/circuits/comparer.js.map +1 -0
- package/dist/esm/circuits/index.js +8 -0
- package/dist/esm/circuits/index.js.map +1 -0
- package/dist/esm/circuits/models.js +104 -0
- package/dist/esm/circuits/models.js.map +1 -0
- package/dist/esm/circuits/state-transition.js +89 -0
- package/dist/esm/circuits/state-transition.js.map +1 -0
- package/dist/esm/credentials/credential-wallet.js +232 -0
- package/dist/esm/credentials/credential-wallet.js.map +1 -0
- package/dist/esm/credentials/index.js +2 -0
- package/dist/esm/credentials/index.js.map +1 -0
- package/dist/esm/credentials/revocation.js +281 -0
- package/dist/esm/credentials/revocation.js.map +1 -0
- package/dist/esm/iden3comm/constants.js +42 -0
- package/dist/esm/iden3comm/constants.js.map +1 -0
- package/dist/esm/iden3comm/errors.js +12 -0
- package/dist/esm/iden3comm/errors.js.map +1 -0
- package/dist/esm/iden3comm/index.js +6 -0
- package/dist/esm/iden3comm/index.js.map +1 -0
- package/dist/esm/iden3comm/packageManager.js +74 -0
- package/dist/esm/iden3comm/packageManager.js.map +1 -0
- package/dist/esm/iden3comm/packers/index.js +3 -0
- package/dist/esm/iden3comm/packers/index.js.map +1 -0
- package/dist/esm/iden3comm/packers/plain.js +45 -0
- package/dist/esm/iden3comm/packers/plain.js.map +1 -0
- package/dist/esm/iden3comm/packers/zkp.js +149 -0
- package/dist/esm/iden3comm/packers/zkp.js.map +1 -0
- package/dist/esm/iden3comm/types/index.js +8 -0
- package/dist/esm/iden3comm/types/index.js.map +1 -0
- package/dist/esm/iden3comm/types/packageManager.js +2 -0
- package/dist/esm/iden3comm/types/packageManager.js.map +1 -0
- package/dist/esm/iden3comm/types/packer.js +2 -0
- package/dist/esm/iden3comm/types/packer.js.map +1 -0
- package/dist/esm/iden3comm/types/protocol/auth.js +2 -0
- package/dist/esm/iden3comm/types/protocol/auth.js.map +1 -0
- package/dist/esm/iden3comm/types/protocol/credentials.js +2 -0
- package/dist/esm/iden3comm/types/protocol/credentials.js.map +1 -0
- package/dist/esm/iden3comm/types/protocol/messages.js +2 -0
- package/dist/esm/iden3comm/types/protocol/messages.js.map +1 -0
- package/dist/esm/iden3comm/types/protocol/proof.js +2 -0
- package/dist/esm/iden3comm/types/protocol/proof.js.map +1 -0
- package/dist/esm/iden3comm/types/protocol/revocation.js +2 -0
- package/dist/esm/iden3comm/types/protocol/revocation.js.map +1 -0
- package/dist/esm/iden3comm/utils/bytes.js +20 -0
- package/dist/esm/iden3comm/utils/bytes.js.map +1 -0
- package/dist/esm/iden3comm/utils/envelope.js +92 -0
- package/dist/esm/iden3comm/utils/envelope.js.map +1 -0
- package/dist/esm/iden3comm/utils/index.js +3 -0
- package/dist/esm/iden3comm/utils/index.js.map +1 -0
- package/dist/esm/iden3comm/utils/message.js +37 -0
- package/dist/esm/iden3comm/utils/message.js.map +1 -0
- package/dist/esm/identity/common.js +35 -0
- package/dist/esm/identity/common.js.map +1 -0
- package/dist/esm/identity/identity-wallet.js +395 -0
- package/dist/esm/identity/identity-wallet.js.map +1 -0
- package/dist/esm/identity/index.js +3 -0
- package/dist/esm/identity/index.js.map +1 -0
- package/dist/esm/index.js +13 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/kms/bjj-provider.js +74 -0
- package/dist/esm/kms/bjj-provider.js.map +1 -0
- package/dist/esm/kms/index.js +4 -0
- package/dist/esm/kms/index.js.map +1 -0
- package/dist/esm/kms/kms.js +70 -0
- package/dist/esm/kms/kms.js.map +1 -0
- package/dist/esm/kms/provider-helpers.js +44 -0
- package/dist/esm/kms/provider-helpers.js.map +1 -0
- package/dist/esm/kms/store/abstract-key-store.js +11 -0
- package/dist/esm/kms/store/abstract-key-store.js.map +1 -0
- package/dist/esm/kms/store/index.js +5 -0
- package/dist/esm/kms/store/index.js.map +1 -0
- package/dist/esm/kms/store/local-storage-key-store.js +52 -0
- package/dist/esm/kms/store/local-storage-key-store.js.map +1 -0
- package/dist/esm/kms/store/memory-key-store.js +24 -0
- package/dist/esm/kms/store/memory-key-store.js.map +1 -0
- package/dist/esm/kms/store/types.js +12 -0
- package/dist/esm/kms/store/types.js.map +1 -0
- package/dist/esm/loaders/index.js +3 -0
- package/dist/esm/loaders/index.js.map +1 -0
- package/dist/esm/loaders/key.js +23 -0
- package/dist/esm/loaders/key.js.map +1 -0
- package/dist/esm/loaders/schema.js +100 -0
- package/dist/esm/loaders/schema.js.map +1 -0
- package/dist/esm/proof/common.js +59 -0
- package/dist/esm/proof/common.js.map +1 -0
- package/dist/esm/proof/index.js +4 -0
- package/dist/esm/proof/index.js.map +1 -0
- package/dist/esm/proof/proof-service.js +339 -0
- package/dist/esm/proof/proof-service.js.map +1 -0
- package/dist/esm/proof/prover.js +52 -0
- package/dist/esm/proof/prover.js.map +1 -0
- package/dist/esm/proof/witness_calculator.js +278 -0
- package/dist/esm/proof/witness_calculator.js.map +1 -0
- package/dist/esm/schema-processor/index.js +3 -0
- package/dist/esm/schema-processor/index.js.map +1 -0
- package/dist/esm/schema-processor/json/index.js +3 -0
- package/dist/esm/schema-processor/json/index.js.map +1 -0
- package/dist/esm/schema-processor/json/parser.js +132 -0
- package/dist/esm/schema-processor/json/parser.js.map +1 -0
- package/dist/esm/schema-processor/json/validator.js +35 -0
- package/dist/esm/schema-processor/json/validator.js.map +1 -0
- package/dist/esm/schema-processor/utils.js +89 -0
- package/dist/esm/schema-processor/utils.js.map +1 -0
- package/dist/esm/storage/blockchain/index.js +2 -0
- package/dist/esm/storage/blockchain/index.js.map +1 -0
- package/dist/esm/storage/blockchain/state-abi.json +922 -0
- package/dist/esm/storage/blockchain/state.js +105 -0
- package/dist/esm/storage/blockchain/state.js.map +1 -0
- package/dist/esm/storage/entities/circuitData.js +2 -0
- package/dist/esm/storage/entities/circuitData.js.map +1 -0
- package/dist/esm/storage/entities/identity.js +2 -0
- package/dist/esm/storage/entities/identity.js.map +1 -0
- package/dist/esm/storage/entities/index.js +5 -0
- package/dist/esm/storage/entities/index.js.map +1 -0
- package/dist/esm/storage/entities/mt.js +16 -0
- package/dist/esm/storage/entities/mt.js.map +1 -0
- package/dist/esm/storage/entities/state.js +2 -0
- package/dist/esm/storage/entities/state.js.map +1 -0
- package/dist/esm/storage/errors.js +11 -0
- package/dist/esm/storage/errors.js.map +1 -0
- package/dist/esm/storage/filters/index.js +2 -0
- package/dist/esm/storage/filters/index.js.map +1 -0
- package/dist/esm/storage/filters/jsonQuery.js +134 -0
- package/dist/esm/storage/filters/jsonQuery.js.map +1 -0
- package/dist/esm/storage/index.js +8 -0
- package/dist/esm/storage/index.js.map +1 -0
- package/dist/esm/storage/interfaces/circuits.js +2 -0
- package/dist/esm/storage/interfaces/circuits.js.map +1 -0
- package/dist/esm/storage/interfaces/credentials.js +2 -0
- package/dist/esm/storage/interfaces/credentials.js.map +1 -0
- package/dist/esm/storage/interfaces/data-source.js +2 -0
- package/dist/esm/storage/interfaces/data-source.js.map +1 -0
- package/dist/esm/storage/interfaces/data-storage.js +2 -0
- package/dist/esm/storage/interfaces/data-storage.js.map +1 -0
- package/dist/esm/storage/interfaces/identity.js +2 -0
- package/dist/esm/storage/interfaces/identity.js.map +1 -0
- package/dist/esm/storage/interfaces/index.js +8 -0
- package/dist/esm/storage/interfaces/index.js.map +1 -0
- package/dist/esm/storage/interfaces/merkletree.js +2 -0
- package/dist/esm/storage/interfaces/merkletree.js.map +1 -0
- package/dist/esm/storage/interfaces/state.js +2 -0
- package/dist/esm/storage/interfaces/state.js.map +1 -0
- package/dist/esm/storage/local-storage/data-source.js +85 -0
- package/dist/esm/storage/local-storage/data-source.js.map +1 -0
- package/dist/esm/storage/local-storage/index.js +3 -0
- package/dist/esm/storage/local-storage/index.js.map +1 -0
- package/dist/esm/storage/local-storage/merkletree.js +121 -0
- package/dist/esm/storage/local-storage/merkletree.js.map +1 -0
- package/dist/esm/storage/memory/data-source.js +45 -0
- package/dist/esm/storage/memory/data-source.js.map +1 -0
- package/dist/esm/storage/memory/index.js +3 -0
- package/dist/esm/storage/memory/index.js.map +1 -0
- package/dist/esm/storage/memory/merkletree.js +67 -0
- package/dist/esm/storage/memory/merkletree.js.map +1 -0
- package/dist/esm/storage/shared/circuit-storage.js +42 -0
- package/dist/esm/storage/shared/circuit-storage.js.map +1 -0
- package/dist/esm/storage/shared/credential-storage.js +62 -0
- package/dist/esm/storage/shared/credential-storage.js.map +1 -0
- package/dist/esm/storage/shared/identity-storage.js +67 -0
- package/dist/esm/storage/shared/identity-storage.js.map +1 -0
- package/dist/esm/storage/shared/index.js +4 -0
- package/dist/esm/storage/shared/index.js.map +1 -0
- package/dist/esm/verifiable/constants.js +101 -0
- package/dist/esm/verifiable/constants.js.map +1 -0
- package/dist/esm/verifiable/credential.js +124 -0
- package/dist/esm/verifiable/credential.js.map +1 -0
- package/dist/esm/verifiable/index.js +5 -0
- package/dist/esm/verifiable/index.js.map +1 -0
- package/dist/esm/verifiable/proof.js +64 -0
- package/dist/esm/verifiable/proof.js.map +1 -0
- package/dist/esm/verifiable/schema.js +242 -0
- package/dist/esm/verifiable/schema.js.map +1 -0
- package/dist/esm_esbuild/index.js +128087 -0
- package/dist/esm_esbuild/index.js.map +7 -0
- package/dist/types/auth/auth.d.ts +131 -0
- package/dist/types/auth/index.d.ts +1 -0
- package/dist/types/circuits/atomic-query-mtp-v2.d.ts +64 -0
- package/dist/types/circuits/atomic-query-sig-v2.d.ts +65 -0
- package/dist/types/circuits/auth-v2.d.ts +46 -0
- package/dist/types/circuits/common.d.ts +124 -0
- package/dist/types/circuits/comparer.d.ts +87 -0
- package/dist/types/circuits/index.d.ts +7 -0
- package/dist/types/circuits/models.d.ts +181 -0
- package/dist/types/circuits/state-transition.d.ts +50 -0
- package/dist/types/credentials/credential-wallet.d.ts +248 -0
- package/dist/types/credentials/index.d.ts +1 -0
- package/dist/types/credentials/revocation.d.ts +97 -0
- package/dist/types/iden3comm/constants.d.ts +27 -0
- package/dist/types/iden3comm/errors.d.ts +8 -0
- package/dist/types/iden3comm/index.d.ts +5 -0
- package/dist/types/iden3comm/packageManager.d.ts +31 -0
- package/dist/types/iden3comm/packers/index.d.ts +2 -0
- package/dist/types/iden3comm/packers/plain.d.ts +34 -0
- package/dist/types/iden3comm/packers/zkp.d.ts +86 -0
- package/dist/types/iden3comm/types/index.d.ts +15 -0
- package/dist/types/iden3comm/types/packageManager.d.ts +80 -0
- package/dist/types/iden3comm/types/packer.d.ts +59 -0
- package/dist/types/iden3comm/types/protocol/auth.d.ts +49 -0
- package/dist/types/iden3comm/types/protocol/credentials.d.ts +74 -0
- package/dist/types/iden3comm/types/protocol/messages.d.ts +16 -0
- package/dist/types/iden3comm/types/protocol/proof.d.ts +31 -0
- package/dist/types/iden3comm/types/protocol/revocation.d.ts +28 -0
- package/dist/types/iden3comm/utils/bytes.d.ts +8 -0
- package/dist/types/iden3comm/utils/envelope.d.ts +31 -0
- package/dist/types/iden3comm/utils/index.d.ts +2 -0
- package/dist/types/iden3comm/utils/message.d.ts +19 -0
- package/dist/types/identity/common.d.ts +18 -0
- package/dist/types/identity/identity-wallet.d.ts +248 -0
- package/dist/types/identity/index.d.ts +2 -0
- package/dist/types/index.d.ts +12 -0
- package/dist/types/kms/bjj-provider.d.ts +47 -0
- package/dist/types/kms/index.d.ts +3 -0
- package/dist/types/kms/kms.d.ts +80 -0
- package/dist/types/kms/provider-helpers.d.ts +18 -0
- package/dist/types/kms/store/abstract-key-store.d.ts +31 -0
- package/dist/types/kms/store/index.d.ts +4 -0
- package/dist/types/kms/store/local-storage-key-store.d.ts +32 -0
- package/dist/types/kms/store/memory-key-store.d.ts +20 -0
- package/dist/types/kms/store/types.d.ts +21 -0
- package/dist/types/loaders/index.d.ts +2 -0
- package/dist/types/loaders/key.d.ts +29 -0
- package/dist/types/loaders/schema.d.ts +85 -0
- package/dist/types/proof/common.d.ts +17 -0
- package/dist/types/proof/index.d.ts +3 -0
- package/dist/types/proof/proof-service.d.ts +121 -0
- package/dist/types/proof/prover.d.ts +11 -0
- package/dist/types/proof/witness_calculator.d.ts +16 -0
- package/dist/types/schema-processor/index.d.ts +2 -0
- package/dist/types/schema-processor/json/index.d.ts +2 -0
- package/dist/types/schema-processor/json/parser.d.ts +103 -0
- package/dist/types/schema-processor/json/validator.d.ts +22 -0
- package/dist/types/schema-processor/utils.d.ts +49 -0
- package/dist/types/storage/blockchain/index.d.ts +1 -0
- package/dist/types/storage/blockchain/state.d.ts +52 -0
- package/dist/types/storage/entities/circuitData.d.ts +7 -0
- package/dist/types/storage/entities/identity.d.ts +15 -0
- package/dist/types/storage/entities/index.d.ts +4 -0
- package/dist/types/storage/entities/mt.d.ts +23 -0
- package/dist/types/storage/entities/state.d.ts +48 -0
- package/dist/types/storage/errors.d.ts +9 -0
- package/dist/types/storage/filters/index.d.ts +1 -0
- package/dist/types/storage/filters/jsonQuery.d.ts +82 -0
- package/dist/types/storage/index.d.ts +7 -0
- package/dist/types/storage/interfaces/circuits.d.ts +26 -0
- package/dist/types/storage/interfaces/credentials.d.ts +53 -0
- package/dist/types/storage/interfaces/data-source.d.ts +39 -0
- package/dist/types/storage/interfaces/data-storage.d.ts +17 -0
- package/dist/types/storage/interfaces/identity.d.ts +63 -0
- package/dist/types/storage/interfaces/index.d.ts +7 -0
- package/dist/types/storage/interfaces/merkletree.d.ts +44 -0
- package/dist/types/storage/interfaces/state.d.ts +41 -0
- package/dist/types/storage/local-storage/data-source.d.ts +47 -0
- package/dist/types/storage/local-storage/index.d.ts +2 -0
- package/dist/types/storage/local-storage/merkletree.d.ts +46 -0
- package/dist/types/storage/memory/data-source.d.ts +22 -0
- package/dist/types/storage/memory/index.d.ts +2 -0
- package/dist/types/storage/memory/merkletree.d.ts +49 -0
- package/dist/types/storage/shared/circuit-storage.d.ts +35 -0
- package/dist/types/storage/shared/credential-storage.d.ts +39 -0
- package/dist/types/storage/shared/identity-storage.d.ts +40 -0
- package/dist/types/storage/shared/index.d.ts +3 -0
- package/dist/types/verifiable/constants.d.ts +78 -0
- package/dist/types/verifiable/credential.d.ts +123 -0
- package/dist/types/verifiable/index.d.ts +4 -0
- package/dist/types/verifiable/proof.d.ts +123 -0
- package/dist/types/verifiable/schema.d.ts +2 -0
- package/dist/umd/index.js +462 -0
- package/dist/umd/index.js.map +7 -0
- package/package.json +95 -0
|
@@ -0,0 +1,248 @@
|
|
|
1
|
+
import { KMS, KmsKeyId, KmsKeyType } from '../kms';
|
|
2
|
+
import { Blockchain, Claim, DID, DidMethod, NetworkId } from '@iden3/js-iden3-core';
|
|
3
|
+
import { Signature } from '@iden3/js-crypto';
|
|
4
|
+
import { IDataStorage } from '../storage/interfaces/data-storage';
|
|
5
|
+
import { W3CCredential, MerkleTreeProofWithTreeState } from '../verifiable';
|
|
6
|
+
import { CredentialRequest, ICredentialWallet } from '../credentials';
|
|
7
|
+
import { TreesModel } from '../credentials/revocation';
|
|
8
|
+
import { TreeState } from '../circuits';
|
|
9
|
+
/**
|
|
10
|
+
* Credential issue options
|
|
11
|
+
* with publishing to chain and to reverse hash service
|
|
12
|
+
*
|
|
13
|
+
* @export
|
|
14
|
+
* @beta
|
|
15
|
+
* @interface CredentialIssueOptions
|
|
16
|
+
*/
|
|
17
|
+
export interface CredentialIssueOptions {
|
|
18
|
+
/**
|
|
19
|
+
* option to show if reverse hash service is used to check the Credential Status
|
|
20
|
+
*
|
|
21
|
+
*/
|
|
22
|
+
withRHS: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* DID creation options
|
|
26
|
+
* seed - seed to generate BJJ keypair
|
|
27
|
+
* rhsUrl - rhsUrl is url to reverse hash service, so revocation status can be fetched for Auth BJJ credential
|
|
28
|
+
* @export
|
|
29
|
+
* @interface IdentityCreationOptions
|
|
30
|
+
*/
|
|
31
|
+
export interface IdentityCreationOptions {
|
|
32
|
+
method: DidMethod;
|
|
33
|
+
blockchain: Blockchain;
|
|
34
|
+
networkId: NetworkId;
|
|
35
|
+
seed?: Uint8Array;
|
|
36
|
+
rhsUrl?: string;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Proof creation result
|
|
40
|
+
*
|
|
41
|
+
* @export
|
|
42
|
+
* @beta
|
|
43
|
+
* @interface Iden3ProofCreationResult
|
|
44
|
+
*/
|
|
45
|
+
export interface Iden3ProofCreationResult {
|
|
46
|
+
credentials: W3CCredential[];
|
|
47
|
+
oldTreeState: TreeState;
|
|
48
|
+
newTreeState: TreeState;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Interface for IdentityWallet
|
|
52
|
+
* @public
|
|
53
|
+
* @beta
|
|
54
|
+
*/
|
|
55
|
+
export interface IIdentityWallet {
|
|
56
|
+
/**
|
|
57
|
+
* Create Identity creates Auth BJJ credential,
|
|
58
|
+
* Merkle trees for claims, revocations and root of roots,
|
|
59
|
+
* adds auth BJJ credential to claims tree and generates mtp of inclusion
|
|
60
|
+
* based on the resulting state it provides an identifier in DID form.
|
|
61
|
+
*
|
|
62
|
+
* @param {string} hostUrl - hostUrl is used as a part of the identifier of Auth BJJ credential
|
|
63
|
+
* @param {IdentityCreationOptions} opts - default is did:iden3:polygon:mumbai** with generated key.
|
|
64
|
+
* @returns `Promise<{ did: DID; credential: W3CCredential }>` - returns did and Auth BJJ credential
|
|
65
|
+
* @beta
|
|
66
|
+
*/
|
|
67
|
+
createIdentity(hostUrl: string, opts?: IdentityCreationOptions): Promise<{
|
|
68
|
+
did: DID;
|
|
69
|
+
credential: W3CCredential;
|
|
70
|
+
}>;
|
|
71
|
+
/**
|
|
72
|
+
* Creates profile based on genesis identifier
|
|
73
|
+
*
|
|
74
|
+
* @param {DID} did - identity to derive profile from
|
|
75
|
+
* @param {number} nonce - unique integer number to generate a profile
|
|
76
|
+
* @param {string} verifier - verifier identity/alias in a string from
|
|
77
|
+
* @returns `Promise<DID>` - profile did
|
|
78
|
+
*/
|
|
79
|
+
createProfile(did: DID, nonce: number, verifier: string): Promise<DID>;
|
|
80
|
+
/**
|
|
81
|
+
* Generates a new key
|
|
82
|
+
*
|
|
83
|
+
* @param {KmsKeyType} keyType - supported key type by KMS
|
|
84
|
+
* @returns `Promise<KmsKeyId>` - creates a new key BJJ or ECDSA
|
|
85
|
+
*/
|
|
86
|
+
generateKey(keyType: KmsKeyType): Promise<KmsKeyId>;
|
|
87
|
+
/**
|
|
88
|
+
* Issues new credential from issuer according to the claim request
|
|
89
|
+
*
|
|
90
|
+
* @param {DID} issuerDID - issuer identity
|
|
91
|
+
* @param {CredentialRequest} req - claim request
|
|
92
|
+
* @param {string} hostUrl - url that will be a part of credential id prefix
|
|
93
|
+
* @param {CredentialIssueOptions} [opts] - with / without RHS
|
|
94
|
+
* @returns `Promise<W3CCredential>` - returns created W3CCredential
|
|
95
|
+
*/
|
|
96
|
+
issueCredential(issuerDID: DID, req: CredentialRequest, hostUrl: string, opts?: CredentialIssueOptions): Promise<W3CCredential>;
|
|
97
|
+
/**
|
|
98
|
+
* Gets a tree model for given did that includes claims tree, revocation tree, the root of roots tree and calculated state hash
|
|
99
|
+
*
|
|
100
|
+
* @param {DID} did - did which trees info we need to receive
|
|
101
|
+
* @returns `Promise<TreesModel>`
|
|
102
|
+
* */
|
|
103
|
+
getDIDTreeModel(did: DID): Promise<TreesModel>;
|
|
104
|
+
/**
|
|
105
|
+
* Generates proof of credential inclusion / non-inclusion to the given claims tree
|
|
106
|
+
* and its root or to the current root of the Claims tree in the given Merkle tree storage.
|
|
107
|
+
*
|
|
108
|
+
* @param {DID} did - issuer did
|
|
109
|
+
* @param {W3CCredential} credential - credential to generate mtp
|
|
110
|
+
* @param {TreeState} [treeState] - tree state when to generate a proof
|
|
111
|
+
* @returns `Promise<MerkleTreeProofWithTreeState>` - MerkleTreeProof and TreeState on which proof has been generated
|
|
112
|
+
*/
|
|
113
|
+
generateCredentialMtp(did: DID, credential: W3CCredential, treeState?: TreeState): Promise<MerkleTreeProofWithTreeState>;
|
|
114
|
+
/**
|
|
115
|
+
* Generates proof of credential revocation nonce inclusion / non-inclusion to the given revocation tree
|
|
116
|
+
* and its root or to the current root of the Revocation tree in the given Merkle tree storage.
|
|
117
|
+
*
|
|
118
|
+
* @param {DID} did
|
|
119
|
+
* @param {W3CCredential} credential
|
|
120
|
+
* @param {TreeState} [treeState]
|
|
121
|
+
* @returns `Promise<MerkleTreeProofWithTreeState>` - MerkleTreeProof and TreeState on which proof has been generated
|
|
122
|
+
*/
|
|
123
|
+
generateNonRevocationMtp(did: DID, credential: W3CCredential, treeState?: TreeState): Promise<MerkleTreeProofWithTreeState>;
|
|
124
|
+
/**
|
|
125
|
+
* Signs a payload of arbitrary size with an Auth BJJ Credential that identifies a key for signing.
|
|
126
|
+
*
|
|
127
|
+
* @param {Uint8Array} payload
|
|
128
|
+
* @param {W3CCredential} credential - Auth BJJ Credential
|
|
129
|
+
* @returns `Promise<Signature>`- the signature object with R8 and S params
|
|
130
|
+
*/
|
|
131
|
+
sign(payload: Uint8Array, credential: W3CCredential): Promise<Signature>;
|
|
132
|
+
/**
|
|
133
|
+
* Signs a big integer with an Auth BJJ Credential that identifies a key for signing.
|
|
134
|
+
*
|
|
135
|
+
*
|
|
136
|
+
* @param {bigint} payload - big number in Field
|
|
137
|
+
* @param {W3CCredential} credential - Auth BJJ credential
|
|
138
|
+
* @returns `Promise<Signature>` - the signature object with R8 and S params
|
|
139
|
+
*/
|
|
140
|
+
signChallenge(payload: bigint, credential: W3CCredential): Promise<Signature>;
|
|
141
|
+
/**
|
|
142
|
+
*
|
|
143
|
+
*
|
|
144
|
+
* @param {DID} issuerDID - identifier of the issuer
|
|
145
|
+
* @param {W3CCredential} credential - credential to revoke
|
|
146
|
+
* @returns `Promise<number>` a revocation nonce of credential
|
|
147
|
+
*/
|
|
148
|
+
revokeCredential(issuerDID: DID, credential: W3CCredential): Promise<number>;
|
|
149
|
+
/**
|
|
150
|
+
* Generate Iden3SparseMerkleTree proof of inclusion to issuer state of specific credentials
|
|
151
|
+
*
|
|
152
|
+
* @param {DID} issuerDID - issuer did
|
|
153
|
+
* @param {W3CCredential[]} credentials - list of verifiable credentials to generate a proof
|
|
154
|
+
* @param {string} txId - transaction hash in which state transition has been done
|
|
155
|
+
* @param {number} [blockNumber] - block number in which state transition has been done
|
|
156
|
+
* @param {number} [blockTimestamp] - block timestamp in which state transition has been done
|
|
157
|
+
* @returns `Promise<W3CCredential[]>` credentials with an Iden3SparseMerkleTreeProof
|
|
158
|
+
*/
|
|
159
|
+
generateIden3SparseMerkleTreeProof(issuerDID: DID, credentials: W3CCredential[], txId: string, blockNumber?: number, blockTimestamp?: number): Promise<W3CCredential[]>;
|
|
160
|
+
/**
|
|
161
|
+
* Adds verifiable credentials to issuer Claims Merkle tree
|
|
162
|
+
*
|
|
163
|
+
* @param {W3CCredential[]} credentials - credentials to include in the claims tree
|
|
164
|
+
* @param {DID} issuerDID - issuer did
|
|
165
|
+
* @returns `Promise<Iden3ProofCreationResult>`- old tree state and tree state with included credentials
|
|
166
|
+
*/
|
|
167
|
+
addCredentialsToMerkleTree(credentials: W3CCredential[], issuerDID: DID): Promise<Iden3ProofCreationResult>;
|
|
168
|
+
/**
|
|
169
|
+
*
|
|
170
|
+
*
|
|
171
|
+
* @param {DID} issuerDID - issuer did
|
|
172
|
+
* @param {string} rhsURL - reverse hash service URL
|
|
173
|
+
* @param {number[]} [revokedNonces] - revoked nonces for the period from the last published
|
|
174
|
+
* @returns `Promise<void>`
|
|
175
|
+
*/
|
|
176
|
+
publishStateToRHS(issuerDID: DID, rhsURL: string, revokedNonces?: number[]): Promise<void>;
|
|
177
|
+
/**
|
|
178
|
+
* Extracts core claim from signature or merkle tree proof. If both proof persists core claim must be the same
|
|
179
|
+
*
|
|
180
|
+
* @exports
|
|
181
|
+
* @beta
|
|
182
|
+
* @param {W3CCredential} credential - credential to extract core claim
|
|
183
|
+
* @returns `{Promise<Claim>}`
|
|
184
|
+
*/
|
|
185
|
+
getCoreClaimFromCredential(credential: W3CCredential): Promise<Claim>;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* @public
|
|
189
|
+
* Wallet instance to manage the digital identity based on iden3 protocol
|
|
190
|
+
* allows to: create identity/profile, sign payloads (bigint / bytes), generate keys,
|
|
191
|
+
* generate Merkle tree proofs of inclusion / non-inclusion to Merkle trees, issue credentials with a BJJSignature and Iden3SparseMerkleTree Proofs,
|
|
192
|
+
* revoke credentials, add credentials to Merkle trees, push states to reverse hash service
|
|
193
|
+
*
|
|
194
|
+
*
|
|
195
|
+
* @export
|
|
196
|
+
* @beta
|
|
197
|
+
* @class IdentityWallet - class
|
|
198
|
+
* @beta
|
|
199
|
+
* @implements implements IIdentityWallet interface
|
|
200
|
+
*/
|
|
201
|
+
export declare class IdentityWallet implements IIdentityWallet {
|
|
202
|
+
private readonly _kms;
|
|
203
|
+
private readonly _storage;
|
|
204
|
+
private readonly _credentialWallet;
|
|
205
|
+
/**
|
|
206
|
+
* Constructs a new instance of the `IdentityWallet` class
|
|
207
|
+
*
|
|
208
|
+
* @param {KMS} _kms - Key Management System that allows signing data with BJJ key
|
|
209
|
+
* @param {IDataStorage} _storage - data storage to access credential / identity / Merkle tree data
|
|
210
|
+
* @param {ICredentialWallet} _credentialWallet - credential wallet instance to quickly access credential CRUD functionality
|
|
211
|
+
* @public
|
|
212
|
+
*/
|
|
213
|
+
constructor(_kms: KMS, _storage: IDataStorage, _credentialWallet: ICredentialWallet);
|
|
214
|
+
/**
|
|
215
|
+
* {@inheritDoc IIdentityWallet.createIdentity}
|
|
216
|
+
*/
|
|
217
|
+
createIdentity(hostUrl: string, opts?: IdentityCreationOptions): Promise<{
|
|
218
|
+
did: DID;
|
|
219
|
+
credential: W3CCredential;
|
|
220
|
+
}>;
|
|
221
|
+
/** {@inheritDoc IIdentityWallet.createProfile} */
|
|
222
|
+
createProfile(did: DID, nonce: number, verifier: string): Promise<DID>;
|
|
223
|
+
/** {@inheritDoc IIdentityWallet.generateKey} */
|
|
224
|
+
generateKey(keyType: KmsKeyType): Promise<KmsKeyId>;
|
|
225
|
+
/** {@inheritDoc IIdentityWallet.getDIDTreeModel} */
|
|
226
|
+
getDIDTreeModel(did: DID): Promise<TreesModel>;
|
|
227
|
+
/** {@inheritDoc IIdentityWallet.generateClaimMtp} */
|
|
228
|
+
generateCredentialMtp(did: DID, credential: W3CCredential, treeState?: TreeState): Promise<MerkleTreeProofWithTreeState>;
|
|
229
|
+
/** {@inheritDoc IIdentityWallet.generateNonRevocationMtp} */
|
|
230
|
+
generateNonRevocationMtp(did: DID, credential: W3CCredential, treeState?: TreeState): Promise<MerkleTreeProofWithTreeState>;
|
|
231
|
+
/** {@inheritDoc IIdentityWallet.sign} */
|
|
232
|
+
sign(message: Uint8Array, credential: W3CCredential): Promise<Signature>;
|
|
233
|
+
/** {@inheritDoc IIdentityWallet.signChallenge} */
|
|
234
|
+
signChallenge(challenge: bigint, credential: W3CCredential): Promise<Signature>;
|
|
235
|
+
/** {@inheritDoc IIdentityWallet.issueCredential} */
|
|
236
|
+
issueCredential(issuerDID: DID, req: CredentialRequest, hostUrl: string, opts?: CredentialIssueOptions): Promise<W3CCredential>;
|
|
237
|
+
/** {@inheritDoc IIdentityWallet.revokeCredential} */
|
|
238
|
+
revokeCredential(issuerDID: DID, credential: W3CCredential): Promise<number>;
|
|
239
|
+
/** {@inheritDoc IIdentityWallet.addCredentialsToMerkleTree} */
|
|
240
|
+
addCredentialsToMerkleTree(credentials: W3CCredential[], issuerDID: DID): Promise<Iden3ProofCreationResult>;
|
|
241
|
+
/** {@inheritDoc IIdentityWallet.generateIden3SparseMerkleTreeProof} */
|
|
242
|
+
generateIden3SparseMerkleTreeProof(issuerDID: DID, credentials: W3CCredential[], txId: string, blockNumber?: number, blockTimestamp?: number): Promise<W3CCredential[]>;
|
|
243
|
+
/** {@inheritDoc IIdentityWallet.publishStateToRHS} */
|
|
244
|
+
publishStateToRHS(issuerDID: DID, rhsURL: string, revokedNonces?: number[]): Promise<void>;
|
|
245
|
+
private getKMSIdByAuthCredential;
|
|
246
|
+
private defineMTRootPosition;
|
|
247
|
+
getCoreClaimFromCredential(credential: W3CCredential): Promise<Claim>;
|
|
248
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from './identity';
|
|
2
|
+
export * from './credentials';
|
|
3
|
+
export * from './kms';
|
|
4
|
+
export * from './storage';
|
|
5
|
+
export * from './verifiable';
|
|
6
|
+
export * from './schema-processor';
|
|
7
|
+
export * from './proof';
|
|
8
|
+
export * from './iden3comm';
|
|
9
|
+
export * from './circuits';
|
|
10
|
+
export * from './loaders';
|
|
11
|
+
import * as core from '@iden3/js-iden3-core';
|
|
12
|
+
export { core };
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { PublicKey } from '@iden3/js-crypto';
|
|
2
|
+
import { IKeyProvider } from './kms';
|
|
3
|
+
import { AbstractPrivateKeyStore, KmsKeyId, KmsKeyType } from './store';
|
|
4
|
+
/**
|
|
5
|
+
* Provider for Baby Jub Jub keys
|
|
6
|
+
* @beta
|
|
7
|
+
* @export
|
|
8
|
+
* @beta
|
|
9
|
+
* @class BjjProvider
|
|
10
|
+
* @implements implements IKeyProvider interface
|
|
11
|
+
*/
|
|
12
|
+
export declare class BjjProvider implements IKeyProvider {
|
|
13
|
+
/**
|
|
14
|
+
* key type that is handled by BJJ Provider
|
|
15
|
+
* @type {KmsKeyType}
|
|
16
|
+
*/
|
|
17
|
+
keyType: KmsKeyType;
|
|
18
|
+
private keyStore;
|
|
19
|
+
/**
|
|
20
|
+
* Creates an instance of BjjProvider.
|
|
21
|
+
* @param {KmsKeyType} keyType - kms key type
|
|
22
|
+
* @param {AbstractPrivateKeyStore} keyStore - key store for kms
|
|
23
|
+
*/
|
|
24
|
+
constructor(keyType: KmsKeyType, keyStore: AbstractPrivateKeyStore);
|
|
25
|
+
/**
|
|
26
|
+
* generates a baby jub jub key from a seed phrase
|
|
27
|
+
* @param {Uint8Array} seed - byte array seed
|
|
28
|
+
* @returns kms key identifier
|
|
29
|
+
*/
|
|
30
|
+
newPrivateKeyFromSeed(seed: Uint8Array): Promise<KmsKeyId>;
|
|
31
|
+
/**
|
|
32
|
+
* Gets public key by kmsKeyId
|
|
33
|
+
*
|
|
34
|
+
* @param {KmsKeyId} keyId - key identifier
|
|
35
|
+
*/
|
|
36
|
+
publicKey(keyId: KmsKeyId): Promise<PublicKey>;
|
|
37
|
+
/**
|
|
38
|
+
* signs prepared payload of size,
|
|
39
|
+
* with a key id
|
|
40
|
+
*
|
|
41
|
+
* @param {KmsKeyId} keyId - key identifier
|
|
42
|
+
* @param {Uint8Array} data - data to sign (32 bytes)
|
|
43
|
+
* @returns Uint8Array signature
|
|
44
|
+
*/
|
|
45
|
+
sign(keyId: KmsKeyId, data: Uint8Array): Promise<Uint8Array>;
|
|
46
|
+
private privateKey;
|
|
47
|
+
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { PublicKey } from '@iden3/js-crypto';
|
|
2
|
+
import { KmsKeyId, KmsKeyType } from './store';
|
|
3
|
+
/**
|
|
4
|
+
* KeyProvider is responsible for signing and creation of the keys
|
|
5
|
+
*
|
|
6
|
+
* @export
|
|
7
|
+
* @beta
|
|
8
|
+
* @interface IKeyProvider
|
|
9
|
+
*/
|
|
10
|
+
export interface IKeyProvider {
|
|
11
|
+
/**
|
|
12
|
+
* property to store key type
|
|
13
|
+
*
|
|
14
|
+
* @type {KmsKeyType}
|
|
15
|
+
*/
|
|
16
|
+
keyType: KmsKeyType;
|
|
17
|
+
/**
|
|
18
|
+
* gets public key by key id
|
|
19
|
+
*
|
|
20
|
+
* @param {KmsKeyId} keyID - kms key identifier
|
|
21
|
+
* @returns `Promise<PublicKey>`
|
|
22
|
+
*/
|
|
23
|
+
publicKey(keyID: KmsKeyId): Promise<PublicKey>;
|
|
24
|
+
/**
|
|
25
|
+
* sign data with kms key
|
|
26
|
+
*
|
|
27
|
+
* @param {KmsKeyId} keyId - key identifier
|
|
28
|
+
* @param {Uint8Array} data - bytes payload
|
|
29
|
+
* @returns `Promise<Uint8Array>`
|
|
30
|
+
*/
|
|
31
|
+
sign(keyId: KmsKeyId, data: Uint8Array): Promise<Uint8Array>;
|
|
32
|
+
/**
|
|
33
|
+
* creates new key pair from given seed
|
|
34
|
+
*
|
|
35
|
+
* @param {Uint8Array} seed - seed
|
|
36
|
+
* @returns `Promise<KmsKeyId>`
|
|
37
|
+
*/
|
|
38
|
+
newPrivateKeyFromSeed(seed: Uint8Array): Promise<KmsKeyId>;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Key management system class contains different key providers.
|
|
42
|
+
* allows to register custom provider, create key, get public key and sign
|
|
43
|
+
*
|
|
44
|
+
* @beta
|
|
45
|
+
* @export
|
|
46
|
+
* @class KMS - class
|
|
47
|
+
*/
|
|
48
|
+
export declare class KMS {
|
|
49
|
+
private registry;
|
|
50
|
+
/**
|
|
51
|
+
* register key provider in the KMS
|
|
52
|
+
*
|
|
53
|
+
* @param {KmsKeyType} keyType - kms key type
|
|
54
|
+
* @param {IKeyProvider} keyProvider - key provider implementation
|
|
55
|
+
*/
|
|
56
|
+
registerKeyProvider(keyType: KmsKeyType, keyProvider: IKeyProvider): void;
|
|
57
|
+
/**
|
|
58
|
+
* generates a new key and returns it kms key id
|
|
59
|
+
*
|
|
60
|
+
* @param {KmsKeyType} keyType
|
|
61
|
+
* @param {Uint8Array} bytes
|
|
62
|
+
* @returns kms key id
|
|
63
|
+
*/
|
|
64
|
+
createKeyFromSeed(keyType: KmsKeyType, bytes: Uint8Array): Promise<KmsKeyId>;
|
|
65
|
+
/**
|
|
66
|
+
* gets public key for key id
|
|
67
|
+
*
|
|
68
|
+
* @param {KmsKeyId} keyId -- key id
|
|
69
|
+
* @returns public key
|
|
70
|
+
*/
|
|
71
|
+
publicKey(keyId: KmsKeyId): Promise<PublicKey>;
|
|
72
|
+
/**
|
|
73
|
+
* sign Uint8Array with giv KmsKeyIden
|
|
74
|
+
*
|
|
75
|
+
* @param {KmsKeyId} keyId - key id
|
|
76
|
+
* @param {Uint8Array} data - prepared data bytes
|
|
77
|
+
* @returns `Promise<Uint8Array>` - return signature
|
|
78
|
+
*/
|
|
79
|
+
sign(keyId: KmsKeyId, data: Uint8Array): Promise<Uint8Array>;
|
|
80
|
+
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { KmsKeyType } from './store';
|
|
2
|
+
/**
|
|
3
|
+
* builds key path
|
|
4
|
+
*
|
|
5
|
+
* @export
|
|
6
|
+
* @param {KmsKeyType} keyType - key type
|
|
7
|
+
* @param {string} keyID - key id
|
|
8
|
+
* @returns string path
|
|
9
|
+
*/
|
|
10
|
+
export declare function keyPath(keyType: KmsKeyType, keyID: string): string;
|
|
11
|
+
/**
|
|
12
|
+
* generates Uint8Array with random bytes of size n
|
|
13
|
+
*
|
|
14
|
+
* @export
|
|
15
|
+
* @param {number} n - size of array
|
|
16
|
+
* @returns Uint8Array
|
|
17
|
+
*/
|
|
18
|
+
export declare function getRandomBytes(n: number): Uint8Array;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* KeyStore that allows to import and get keys by alias.
|
|
3
|
+
*
|
|
4
|
+
* @export
|
|
5
|
+
* @abstract
|
|
6
|
+
* @beta
|
|
7
|
+
* @class AbstractPrivateKeyStore
|
|
8
|
+
*/
|
|
9
|
+
export declare abstract class AbstractPrivateKeyStore {
|
|
10
|
+
/**
|
|
11
|
+
* imports key by alias
|
|
12
|
+
*
|
|
13
|
+
* @abstract
|
|
14
|
+
* @param {{ alias: string; key: string }} args - key alias and hex representation
|
|
15
|
+
* @returns `Promise<void>`
|
|
16
|
+
*/
|
|
17
|
+
abstract import(args: {
|
|
18
|
+
alias: string;
|
|
19
|
+
key: string;
|
|
20
|
+
}): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* get key by alias
|
|
23
|
+
*
|
|
24
|
+
* @abstract
|
|
25
|
+
* @param {{ alias: string }} args -key alias
|
|
26
|
+
* @returns `Promise<string>`
|
|
27
|
+
*/
|
|
28
|
+
abstract get(args: {
|
|
29
|
+
alias: string;
|
|
30
|
+
}): Promise<string>;
|
|
31
|
+
}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { AbstractPrivateKeyStore } from './abstract-key-store';
|
|
2
|
+
/**
|
|
3
|
+
* Allows storing keys in the local storage of the browser
|
|
4
|
+
* (NOT ENCRYPTED: DO NOT USE IN THE PRODUCTION)
|
|
5
|
+
*
|
|
6
|
+
* @export
|
|
7
|
+
* @beta
|
|
8
|
+
* @class LocalStoragePrivateKeyStore
|
|
9
|
+
* @implements implements AbstractPrivateKeyStore interface
|
|
10
|
+
*/
|
|
11
|
+
export declare class LocalStoragePrivateKeyStore implements AbstractPrivateKeyStore {
|
|
12
|
+
static readonly storageKey = "keystore";
|
|
13
|
+
/**
|
|
14
|
+
* Gets key from the local storage
|
|
15
|
+
*
|
|
16
|
+
* @param {{ alias: string }} args
|
|
17
|
+
* @returns hex string
|
|
18
|
+
*/
|
|
19
|
+
get(args: {
|
|
20
|
+
alias: string;
|
|
21
|
+
}): Promise<string>;
|
|
22
|
+
/**
|
|
23
|
+
* Import key to the local storage
|
|
24
|
+
*
|
|
25
|
+
* @param {{ alias: string; key: string }} args - alias and private key in the hex
|
|
26
|
+
* @returns void
|
|
27
|
+
*/
|
|
28
|
+
import(args: {
|
|
29
|
+
alias: string;
|
|
30
|
+
key: string;
|
|
31
|
+
}): Promise<void>;
|
|
32
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AbstractPrivateKeyStore } from './abstract-key-store';
|
|
2
|
+
/**
|
|
3
|
+
* Key Store to use in memory
|
|
4
|
+
*
|
|
5
|
+
* @export
|
|
6
|
+
* @beta
|
|
7
|
+
* @class InMemoryPrivateKeyStore
|
|
8
|
+
* @implements implements AbstractPrivateKeyStore interface
|
|
9
|
+
*/
|
|
10
|
+
export declare class InMemoryPrivateKeyStore implements AbstractPrivateKeyStore {
|
|
11
|
+
private _data;
|
|
12
|
+
constructor();
|
|
13
|
+
get(args: {
|
|
14
|
+
alias: string;
|
|
15
|
+
}): Promise<string>;
|
|
16
|
+
import(args: {
|
|
17
|
+
alias: string;
|
|
18
|
+
key: string;
|
|
19
|
+
}): Promise<void>;
|
|
20
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Key type that can be used in the key management system
|
|
3
|
+
*
|
|
4
|
+
* @export
|
|
5
|
+
* @enum {number}
|
|
6
|
+
*/
|
|
7
|
+
export declare enum KmsKeyType {
|
|
8
|
+
BabyJubJub = "BJJ",
|
|
9
|
+
Ethereum = "ETH"
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* ID of the key that describe contain key type
|
|
13
|
+
*
|
|
14
|
+
* @export
|
|
15
|
+
* @beta
|
|
16
|
+
* @interface KmsKeyId
|
|
17
|
+
*/
|
|
18
|
+
export interface KmsKeyId {
|
|
19
|
+
type: KmsKeyType;
|
|
20
|
+
id: string;
|
|
21
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Loader interface to load from different sources
|
|
3
|
+
*
|
|
4
|
+
* @export
|
|
5
|
+
* @beta
|
|
6
|
+
* @interface IKeyLoader
|
|
7
|
+
*/
|
|
8
|
+
export interface IKeyLoader {
|
|
9
|
+
/**
|
|
10
|
+
* loads file as a byte array
|
|
11
|
+
*
|
|
12
|
+
* @param {string} path - path to file
|
|
13
|
+
* @returns `Promise<Uint8Array>`
|
|
14
|
+
*/
|
|
15
|
+
load(path: string): Promise<Uint8Array>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Loader from file system
|
|
19
|
+
*
|
|
20
|
+
* @export
|
|
21
|
+
* @beta
|
|
22
|
+
* @class FSKeyLoader
|
|
23
|
+
* @implements implements IKeyLoader interface
|
|
24
|
+
*/
|
|
25
|
+
export declare class FSKeyLoader implements IKeyLoader {
|
|
26
|
+
readonly dir: string;
|
|
27
|
+
constructor(dir: string);
|
|
28
|
+
load(path: string): Promise<Uint8Array>;
|
|
29
|
+
}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Loader interface to load schema
|
|
3
|
+
*
|
|
4
|
+
* @export
|
|
5
|
+
* @beta
|
|
6
|
+
* @interface ISchemaLoader
|
|
7
|
+
*/
|
|
8
|
+
export interface ISchemaLoader {
|
|
9
|
+
/**
|
|
10
|
+
* loads schema by its url
|
|
11
|
+
*
|
|
12
|
+
* @param {string} url
|
|
13
|
+
* @returns `Promise<Uint8Array>`
|
|
14
|
+
*/
|
|
15
|
+
load(url: string): Promise<Uint8Array>;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* loads schemas from ipfs and http sources
|
|
19
|
+
*
|
|
20
|
+
* @export
|
|
21
|
+
* @beta
|
|
22
|
+
* @class UniversalSchemaLoader
|
|
23
|
+
* @implements implements ISchemaLoader interface
|
|
24
|
+
*/
|
|
25
|
+
export declare class UniversalSchemaLoader implements ISchemaLoader {
|
|
26
|
+
private ipfsUrl;
|
|
27
|
+
constructor(ipfsUrl: string);
|
|
28
|
+
/**
|
|
29
|
+
* loads schema by URL
|
|
30
|
+
*
|
|
31
|
+
* @param {string} url - schema URL
|
|
32
|
+
* @returns `Promise<Uint8Array>`
|
|
33
|
+
*/
|
|
34
|
+
load(url: string): Promise<Uint8Array>;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* loads schemas from http source
|
|
38
|
+
*
|
|
39
|
+
* @export
|
|
40
|
+
* @beta
|
|
41
|
+
* @class HttpSchemaLoader
|
|
42
|
+
* @implements implements ISchemaLoader interface
|
|
43
|
+
*/
|
|
44
|
+
export declare class HttpSchemaLoader implements ISchemaLoader {
|
|
45
|
+
/**
|
|
46
|
+
*
|
|
47
|
+
*
|
|
48
|
+
* @param {string} url - schema URL
|
|
49
|
+
* @returns `Promise<Uint8Array>`
|
|
50
|
+
*/
|
|
51
|
+
load(url: string): Promise<Uint8Array>;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* loads schemas from ipfs source
|
|
55
|
+
*
|
|
56
|
+
* @export
|
|
57
|
+
* @beta
|
|
58
|
+
* @class IpfsSchemaLoader
|
|
59
|
+
* @implements implements ISchemaLoader interface
|
|
60
|
+
*/
|
|
61
|
+
export declare class IpfsSchemaLoader implements ISchemaLoader {
|
|
62
|
+
private readonly url;
|
|
63
|
+
private readonly client;
|
|
64
|
+
/**
|
|
65
|
+
* Creates an instance of IpfsSchemaLoader.
|
|
66
|
+
* @param {string} url - host of the ipfs node
|
|
67
|
+
*/
|
|
68
|
+
constructor(url: string);
|
|
69
|
+
/**
|
|
70
|
+
* loads schema from ipfs by its identifier
|
|
71
|
+
*
|
|
72
|
+
* @param {string} url - schema IPFS identifier
|
|
73
|
+
* @returns `Promise<Uint8Array>`
|
|
74
|
+
*/
|
|
75
|
+
load(url: string): Promise<Uint8Array>;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* returns loader for schemas based on the URL protocol
|
|
79
|
+
*
|
|
80
|
+
* @export
|
|
81
|
+
* @param {string} url - schema url
|
|
82
|
+
* @param {string} [ipfsConfigUrl] - ipfs node host url
|
|
83
|
+
* @returns ISchemaLoader
|
|
84
|
+
*/
|
|
85
|
+
export declare function getLoader(url: string, ipfsConfigUrl?: string): ISchemaLoader;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ClaimNonRevStatus, GISTProof } from '../circuits';
|
|
2
|
+
import { StateProof } from '../storage/entities/state';
|
|
3
|
+
import { RevocationStatus } from '../verifiable';
|
|
4
|
+
/**
|
|
5
|
+
* converts verifiable RevocationStatus model to circuits structure
|
|
6
|
+
*
|
|
7
|
+
* @param {RevocationStatus} - credential.status of the verifiable credential
|
|
8
|
+
* @returns {ClaimNonRevStatus}
|
|
9
|
+
*/
|
|
10
|
+
export declare const toClaimNonRevStatus: (s: RevocationStatus) => ClaimNonRevStatus;
|
|
11
|
+
/**
|
|
12
|
+
* converts state info from smart contract to gist proof
|
|
13
|
+
*
|
|
14
|
+
* @param {StateProof} smtProof - state proof from smart contract
|
|
15
|
+
* @returns {GISTProof}
|
|
16
|
+
*/
|
|
17
|
+
export declare const toGISTProof: (smtProof: StateProof) => GISTProof;
|