@zudojs/crypto 0.0.1
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 +21 -0
- package/README.md +35 -0
- package/dist/.tsbuildinfo +1 -0
- package/dist/compare/compare.helper.d.ts +8 -0
- package/dist/compare/compare.helper.d.ts.map +1 -0
- package/dist/compare/compare.helper.js +17 -0
- package/dist/compare/compare.helper.js.map +1 -0
- package/dist/compare/index.d.ts +7 -0
- package/dist/compare/index.d.ts.map +1 -0
- package/dist/compare/index.js +7 -0
- package/dist/compare/index.js.map +1 -0
- package/dist/cryptoAlgorithm/index.d.ts +8 -0
- package/dist/cryptoAlgorithm/index.d.ts.map +1 -0
- package/dist/cryptoAlgorithm/index.js +8 -0
- package/dist/cryptoAlgorithm/index.js.map +1 -0
- package/dist/cryptoCipher/cryptoCipher.core.d.ts +25 -0
- package/dist/cryptoCipher/cryptoCipher.core.d.ts.map +1 -0
- package/dist/cryptoCipher/cryptoCipher.core.js +35 -0
- package/dist/cryptoCipher/cryptoCipher.core.js.map +1 -0
- package/dist/cryptoCipher/cryptoCipher.envelope.d.ts +16 -0
- package/dist/cryptoCipher/cryptoCipher.envelope.d.ts.map +1 -0
- package/dist/cryptoCipher/cryptoCipher.envelope.js +50 -0
- package/dist/cryptoCipher/cryptoCipher.envelope.js.map +1 -0
- package/dist/cryptoCipher/cryptoCipher.string.d.ts +10 -0
- package/dist/cryptoCipher/cryptoCipher.string.d.ts.map +1 -0
- package/dist/cryptoCipher/cryptoCipher.string.js +15 -0
- package/dist/cryptoCipher/cryptoCipher.string.js.map +1 -0
- package/dist/cryptoCipher/index.d.ts +9 -0
- package/dist/cryptoCipher/index.d.ts.map +1 -0
- package/dist/cryptoCipher/index.js +9 -0
- package/dist/cryptoCipher/index.js.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.config.d.ts +36 -0
- package/dist/cryptoConstants/cryptoConstants.config.d.ts.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.config.js +29 -0
- package/dist/cryptoConstants/cryptoConstants.config.js.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.guard.d.ts +28 -0
- package/dist/cryptoConstants/cryptoConstants.guard.d.ts.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.guard.js +45 -0
- package/dist/cryptoConstants/cryptoConstants.guard.js.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.security.d.ts +41 -0
- package/dist/cryptoConstants/cryptoConstants.security.d.ts.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.security.js +42 -0
- package/dist/cryptoConstants/cryptoConstants.security.js.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.token.d.ts +47 -0
- package/dist/cryptoConstants/cryptoConstants.token.d.ts.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.token.js +47 -0
- package/dist/cryptoConstants/cryptoConstants.token.js.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.type.d.ts +95 -0
- package/dist/cryptoConstants/cryptoConstants.type.d.ts.map +1 -0
- package/dist/cryptoConstants/cryptoConstants.type.js +116 -0
- package/dist/cryptoConstants/cryptoConstants.type.js.map +1 -0
- package/dist/cryptoConstants/index.d.ts +11 -0
- package/dist/cryptoConstants/index.d.ts.map +1 -0
- package/dist/cryptoConstants/index.js +11 -0
- package/dist/cryptoConstants/index.js.map +1 -0
- package/dist/cryptoEncoding/cryptoEncoding.arrayBuffer.d.ts +9 -0
- package/dist/cryptoEncoding/cryptoEncoding.arrayBuffer.d.ts.map +1 -0
- package/dist/cryptoEncoding/cryptoEncoding.arrayBuffer.js +19 -0
- package/dist/cryptoEncoding/cryptoEncoding.arrayBuffer.js.map +1 -0
- package/dist/cryptoEncoding/cryptoEncoding.compare.d.ts +8 -0
- package/dist/cryptoEncoding/cryptoEncoding.compare.d.ts.map +1 -0
- package/dist/cryptoEncoding/cryptoEncoding.compare.js +16 -0
- package/dist/cryptoEncoding/cryptoEncoding.compare.js.map +1 -0
- package/dist/cryptoEncoding/cryptoEncoding.core.d.ts +21 -0
- package/dist/cryptoEncoding/cryptoEncoding.core.d.ts.map +1 -0
- package/dist/cryptoEncoding/cryptoEncoding.core.js +63 -0
- package/dist/cryptoEncoding/cryptoEncoding.core.js.map +1 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.base64.d.ts +13 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.base64.d.ts.map +1 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.base64.js +35 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.base64.js.map +1 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.base64url.d.ts +13 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.base64url.d.ts.map +1 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.base64url.js +40 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.base64url.js.map +1 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.hex.d.ts +13 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.hex.d.ts.map +1 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.hex.js +31 -0
- package/dist/cryptoEncoding/encoding/cryptoEncoding.hex.js.map +1 -0
- package/dist/cryptoEncoding/encoding/index.d.ts +9 -0
- package/dist/cryptoEncoding/encoding/index.d.ts.map +1 -0
- package/dist/cryptoEncoding/encoding/index.js +9 -0
- package/dist/cryptoEncoding/encoding/index.js.map +1 -0
- package/dist/cryptoEncoding/index.d.ts +12 -0
- package/dist/cryptoEncoding/index.d.ts.map +1 -0
- package/dist/cryptoEncoding/index.js +12 -0
- package/dist/cryptoEncoding/index.js.map +1 -0
- package/dist/cryptoErrors/index.d.ts +11 -0
- package/dist/cryptoErrors/index.d.ts.map +1 -0
- package/dist/cryptoErrors/index.js +10 -0
- package/dist/cryptoErrors/index.js.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.core.d.ts +60 -0
- package/dist/cryptoFactory/cryptoFactory.core.d.ts.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.core.js +105 -0
- package/dist/cryptoFactory/cryptoFactory.core.js.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.encoding.d.ts +5 -0
- package/dist/cryptoFactory/cryptoFactory.encoding.d.ts.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.encoding.js +8 -0
- package/dist/cryptoFactory/cryptoFactory.encoding.js.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.options.d.ts +2 -0
- package/dist/cryptoFactory/cryptoFactory.options.d.ts.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.options.js +6 -0
- package/dist/cryptoFactory/cryptoFactory.options.js.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.password.d.ts +5 -0
- package/dist/cryptoFactory/cryptoFactory.password.d.ts.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.password.js +8 -0
- package/dist/cryptoFactory/cryptoFactory.password.js.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.token.d.ts +10 -0
- package/dist/cryptoFactory/cryptoFactory.token.d.ts.map +1 -0
- package/dist/cryptoFactory/cryptoFactory.token.js +30 -0
- package/dist/cryptoFactory/cryptoFactory.token.js.map +1 -0
- package/dist/cryptoFactory/index.d.ts +7 -0
- package/dist/cryptoFactory/index.d.ts.map +1 -0
- package/dist/cryptoFactory/index.js +7 -0
- package/dist/cryptoFactory/index.js.map +1 -0
- package/dist/cryptoHash/cryptoHash.codec.d.ts +10 -0
- package/dist/cryptoHash/cryptoHash.codec.d.ts.map +1 -0
- package/dist/cryptoHash/cryptoHash.codec.js +39 -0
- package/dist/cryptoHash/cryptoHash.codec.js.map +1 -0
- package/dist/cryptoHash/cryptoHash.compare.d.ts +5 -0
- package/dist/cryptoHash/cryptoHash.compare.d.ts.map +1 -0
- package/dist/cryptoHash/cryptoHash.compare.js +14 -0
- package/dist/cryptoHash/cryptoHash.compare.js.map +1 -0
- package/dist/cryptoHash/cryptoHash.convenience.d.ts +26 -0
- package/dist/cryptoHash/cryptoHash.convenience.d.ts.map +1 -0
- package/dist/cryptoHash/cryptoHash.convenience.js +56 -0
- package/dist/cryptoHash/cryptoHash.convenience.js.map +1 -0
- package/dist/cryptoHash/cryptoHash.core.d.ts +19 -0
- package/dist/cryptoHash/cryptoHash.core.d.ts.map +1 -0
- package/dist/cryptoHash/cryptoHash.core.js +17 -0
- package/dist/cryptoHash/cryptoHash.core.js.map +1 -0
- package/dist/cryptoHash/cryptoHmac.core.d.ts +19 -0
- package/dist/cryptoHash/cryptoHmac.core.d.ts.map +1 -0
- package/dist/cryptoHash/cryptoHmac.core.js +29 -0
- package/dist/cryptoHash/cryptoHmac.core.js.map +1 -0
- package/dist/cryptoHash/index.d.ts +11 -0
- package/dist/cryptoHash/index.d.ts.map +1 -0
- package/dist/cryptoHash/index.js +11 -0
- package/dist/cryptoHash/index.js.map +1 -0
- package/dist/cryptoKey/cryptoKey.factory.d.ts +21 -0
- package/dist/cryptoKey/cryptoKey.factory.d.ts.map +1 -0
- package/dist/cryptoKey/cryptoKey.factory.js +72 -0
- package/dist/cryptoKey/cryptoKey.factory.js.map +1 -0
- package/dist/cryptoKey/cryptoKey.type.d.ts +44 -0
- package/dist/cryptoKey/cryptoKey.type.d.ts.map +1 -0
- package/dist/cryptoKey/cryptoKey.type.js +32 -0
- package/dist/cryptoKey/cryptoKey.type.js.map +1 -0
- package/dist/cryptoKey/cryptoKey.utils.d.ts +13 -0
- package/dist/cryptoKey/cryptoKey.utils.d.ts.map +1 -0
- package/dist/cryptoKey/cryptoKey.utils.js +18 -0
- package/dist/cryptoKey/cryptoKey.utils.js.map +1 -0
- package/dist/cryptoKey/index.d.ts +9 -0
- package/dist/cryptoKey/index.d.ts.map +1 -0
- package/dist/cryptoKey/index.js +9 -0
- package/dist/cryptoKey/index.js.map +1 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.core.d.ts +16 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.core.d.ts.map +1 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.core.js +76 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.core.js.map +1 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.salt.d.ts +5 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.salt.d.ts.map +1 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.salt.js +12 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.salt.js.map +1 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.type.d.ts +23 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.type.d.ts.map +1 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.type.js +2 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.type.js.map +1 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.validate.d.ts +9 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.validate.d.ts.map +1 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.validate.js +35 -0
- package/dist/cryptoKeyDerivation/cryptoKeyDerivation.validate.js.map +1 -0
- package/dist/cryptoKeyDerivation/index.d.ts +10 -0
- package/dist/cryptoKeyDerivation/index.d.ts.map +1 -0
- package/dist/cryptoKeyDerivation/index.js +10 -0
- package/dist/cryptoKeyDerivation/index.js.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.codec.d.ts +14 -0
- package/dist/cryptoPassword/cryptoPassword.codec.d.ts.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.codec.js +87 -0
- package/dist/cryptoPassword/cryptoPassword.codec.js.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.core.d.ts +10 -0
- package/dist/cryptoPassword/cryptoPassword.core.d.ts.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.core.js +59 -0
- package/dist/cryptoPassword/cryptoPassword.core.js.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.helper.d.ts +14 -0
- package/dist/cryptoPassword/cryptoPassword.helper.d.ts.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.helper.js +33 -0
- package/dist/cryptoPassword/cryptoPassword.helper.js.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.type.d.ts +37 -0
- package/dist/cryptoPassword/cryptoPassword.type.d.ts.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.type.js +2 -0
- package/dist/cryptoPassword/cryptoPassword.type.js.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.validate.d.ts +23 -0
- package/dist/cryptoPassword/cryptoPassword.validate.d.ts.map +1 -0
- package/dist/cryptoPassword/cryptoPassword.validate.js +60 -0
- package/dist/cryptoPassword/cryptoPassword.validate.js.map +1 -0
- package/dist/cryptoPassword/index.d.ts +11 -0
- package/dist/cryptoPassword/index.d.ts.map +1 -0
- package/dist/cryptoPassword/index.js +11 -0
- package/dist/cryptoPassword/index.js.map +1 -0
- package/dist/cryptoProvider/cryptoProvider.core.d.ts +10 -0
- package/dist/cryptoProvider/cryptoProvider.core.d.ts.map +1 -0
- package/dist/cryptoProvider/cryptoProvider.core.js +2 -0
- package/dist/cryptoProvider/cryptoProvider.core.js.map +1 -0
- package/dist/cryptoProvider/cryptoProvider.interface.d.ts +91 -0
- package/dist/cryptoProvider/cryptoProvider.interface.d.ts.map +1 -0
- package/dist/cryptoProvider/cryptoProvider.interface.js +2 -0
- package/dist/cryptoProvider/cryptoProvider.interface.js.map +1 -0
- package/dist/cryptoProvider/cryptoProvider.type.d.ts +41 -0
- package/dist/cryptoProvider/cryptoProvider.type.d.ts.map +1 -0
- package/dist/cryptoProvider/cryptoProvider.type.js +2 -0
- package/dist/cryptoProvider/cryptoProvider.type.js.map +1 -0
- package/dist/cryptoProvider/index.d.ts +12 -0
- package/dist/cryptoProvider/index.d.ts.map +1 -0
- package/dist/cryptoProvider/index.js +2 -0
- package/dist/cryptoProvider/index.js.map +1 -0
- package/dist/cryptoProvider/types/cryptoCipher.type.d.ts +28 -0
- package/dist/cryptoProvider/types/cryptoCipher.type.d.ts.map +1 -0
- package/dist/cryptoProvider/types/cryptoCipher.type.js +2 -0
- package/dist/cryptoProvider/types/cryptoCipher.type.js.map +1 -0
- package/dist/cryptoProvider/types/cryptoHash.type.d.ts +14 -0
- package/dist/cryptoProvider/types/cryptoHash.type.d.ts.map +1 -0
- package/dist/cryptoProvider/types/cryptoHash.type.js +2 -0
- package/dist/cryptoProvider/types/cryptoHash.type.js.map +1 -0
- package/dist/cryptoProvider/types/cryptoKeyDerivation.type.d.ts +22 -0
- package/dist/cryptoProvider/types/cryptoKeyDerivation.type.d.ts.map +1 -0
- package/dist/cryptoProvider/types/cryptoKeyDerivation.type.js +2 -0
- package/dist/cryptoProvider/types/cryptoKeyDerivation.type.js.map +1 -0
- package/dist/cryptoProvider/types/cryptoRandom.type.d.ts +9 -0
- package/dist/cryptoProvider/types/cryptoRandom.type.d.ts.map +1 -0
- package/dist/cryptoProvider/types/cryptoRandom.type.js +2 -0
- package/dist/cryptoProvider/types/cryptoRandom.type.js.map +1 -0
- package/dist/cryptoProvider/types/cryptoSignature.type.d.ts +19 -0
- package/dist/cryptoProvider/types/cryptoSignature.type.d.ts.map +1 -0
- package/dist/cryptoProvider/types/cryptoSignature.type.js +2 -0
- package/dist/cryptoProvider/types/cryptoSignature.type.js.map +1 -0
- package/dist/cryptoProvider/types/index.d.ts +12 -0
- package/dist/cryptoProvider/types/index.d.ts.map +1 -0
- package/dist/cryptoProvider/types/index.js +8 -0
- package/dist/cryptoProvider/types/index.js.map +1 -0
- package/dist/cryptoRandom/cryptoRandom.choice.d.ts +14 -0
- package/dist/cryptoRandom/cryptoRandom.choice.d.ts.map +1 -0
- package/dist/cryptoRandom/cryptoRandom.choice.js +30 -0
- package/dist/cryptoRandom/cryptoRandom.choice.js.map +1 -0
- package/dist/cryptoRandom/cryptoRandom.core.d.ts +21 -0
- package/dist/cryptoRandom/cryptoRandom.core.d.ts.map +1 -0
- package/dist/cryptoRandom/cryptoRandom.core.js +31 -0
- package/dist/cryptoRandom/cryptoRandom.core.js.map +1 -0
- package/dist/cryptoRandom/cryptoRandom.string.d.ts +35 -0
- package/dist/cryptoRandom/cryptoRandom.string.d.ts.map +1 -0
- package/dist/cryptoRandom/cryptoRandom.string.js +74 -0
- package/dist/cryptoRandom/cryptoRandom.string.js.map +1 -0
- package/dist/cryptoRandom/index.d.ts +9 -0
- package/dist/cryptoRandom/index.d.ts.map +1 -0
- package/dist/cryptoRandom/index.js +9 -0
- package/dist/cryptoRandom/index.js.map +1 -0
- package/dist/cryptoService/cryptoService.core.d.ts +46 -0
- package/dist/cryptoService/cryptoService.core.d.ts.map +1 -0
- package/dist/cryptoService/cryptoService.core.js +101 -0
- package/dist/cryptoService/cryptoService.core.js.map +1 -0
- package/dist/cryptoService/cryptoService.derivation.d.ts +6 -0
- package/dist/cryptoService/cryptoService.derivation.d.ts.map +1 -0
- package/dist/cryptoService/cryptoService.derivation.js +12 -0
- package/dist/cryptoService/cryptoService.derivation.js.map +1 -0
- package/dist/cryptoService/cryptoService.encoding.d.ts +5 -0
- package/dist/cryptoService/cryptoService.encoding.d.ts.map +1 -0
- package/dist/cryptoService/cryptoService.encoding.js +19 -0
- package/dist/cryptoService/cryptoService.encoding.js.map +1 -0
- package/dist/cryptoService/index.d.ts +11 -0
- package/dist/cryptoService/index.d.ts.map +1 -0
- package/dist/cryptoService/index.js +11 -0
- package/dist/cryptoService/index.js.map +1 -0
- package/dist/cryptoService/operations/cryptoService.cipher.d.ts +5 -0
- package/dist/cryptoService/operations/cryptoService.cipher.d.ts.map +1 -0
- package/dist/cryptoService/operations/cryptoService.cipher.js +19 -0
- package/dist/cryptoService/operations/cryptoService.cipher.js.map +1 -0
- package/dist/cryptoService/operations/cryptoService.hash.d.ts +3 -0
- package/dist/cryptoService/operations/cryptoService.hash.d.ts.map +1 -0
- package/dist/cryptoService/operations/cryptoService.hash.js +16 -0
- package/dist/cryptoService/operations/cryptoService.hash.js.map +1 -0
- package/dist/cryptoService/operations/cryptoService.password.d.ts +5 -0
- package/dist/cryptoService/operations/cryptoService.password.d.ts.map +1 -0
- package/dist/cryptoService/operations/cryptoService.password.js +19 -0
- package/dist/cryptoService/operations/cryptoService.password.js.map +1 -0
- package/dist/cryptoService/operations/cryptoService.token.d.ts +7 -0
- package/dist/cryptoService/operations/cryptoService.token.d.ts.map +1 -0
- package/dist/cryptoService/operations/cryptoService.token.js +36 -0
- package/dist/cryptoService/operations/cryptoService.token.js.map +1 -0
- package/dist/cryptoService/operations/index.d.ts +11 -0
- package/dist/cryptoService/operations/index.d.ts.map +1 -0
- package/dist/cryptoService/operations/index.js +11 -0
- package/dist/cryptoService/operations/index.js.map +1 -0
- package/dist/cryptoSignature/cryptoSignature.core.d.ts +25 -0
- package/dist/cryptoSignature/cryptoSignature.core.d.ts.map +1 -0
- package/dist/cryptoSignature/cryptoSignature.core.js +36 -0
- package/dist/cryptoSignature/cryptoSignature.core.js.map +1 -0
- package/dist/cryptoSignature/index.d.ts +7 -0
- package/dist/cryptoSignature/index.d.ts.map +1 -0
- package/dist/cryptoSignature/index.js +7 -0
- package/dist/cryptoSignature/index.js.map +1 -0
- package/dist/cryptoToken/cryptoToken.core.d.ts +55 -0
- package/dist/cryptoToken/cryptoToken.core.d.ts.map +1 -0
- package/dist/cryptoToken/cryptoToken.core.js +90 -0
- package/dist/cryptoToken/cryptoToken.core.js.map +1 -0
- package/dist/cryptoToken/cryptoToken.hash.d.ts +24 -0
- package/dist/cryptoToken/cryptoToken.hash.d.ts.map +1 -0
- package/dist/cryptoToken/cryptoToken.hash.js +82 -0
- package/dist/cryptoToken/cryptoToken.hash.js.map +1 -0
- package/dist/cryptoToken/cryptoToken.utils.d.ts +13 -0
- package/dist/cryptoToken/cryptoToken.utils.d.ts.map +1 -0
- package/dist/cryptoToken/cryptoToken.utils.js +30 -0
- package/dist/cryptoToken/cryptoToken.utils.js.map +1 -0
- package/dist/cryptoToken/index.d.ts +9 -0
- package/dist/cryptoToken/index.d.ts.map +1 -0
- package/dist/cryptoToken/index.js +9 -0
- package/dist/cryptoToken/index.js.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.compare.d.ts +11 -0
- package/dist/cryptoUtils/cryptoUtils.compare.d.ts.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.compare.js +27 -0
- package/dist/cryptoUtils/cryptoUtils.compare.js.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.conversion.d.ts +25 -0
- package/dist/cryptoUtils/cryptoUtils.conversion.d.ts.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.conversion.js +50 -0
- package/dist/cryptoUtils/cryptoUtils.conversion.js.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.number.d.ts +9 -0
- package/dist/cryptoUtils/cryptoUtils.number.d.ts.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.number.js +35 -0
- package/dist/cryptoUtils/cryptoUtils.number.js.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.text.d.ts +13 -0
- package/dist/cryptoUtils/cryptoUtils.text.d.ts.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.text.js +23 -0
- package/dist/cryptoUtils/cryptoUtils.text.js.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.validation.d.ts +17 -0
- package/dist/cryptoUtils/cryptoUtils.validation.d.ts.map +1 -0
- package/dist/cryptoUtils/cryptoUtils.validation.js +29 -0
- package/dist/cryptoUtils/cryptoUtils.validation.js.map +1 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.base64.d.ts +9 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.base64.d.ts.map +1 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.base64.js +28 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.base64.js.map +1 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.base64url.d.ts +9 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.base64url.d.ts.map +1 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.base64url.js +37 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.base64url.js.map +1 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.hex.d.ts +9 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.hex.d.ts.map +1 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.hex.js +25 -0
- package/dist/cryptoUtils/encoding/cryptoUtils.hex.js.map +1 -0
- package/dist/cryptoUtils/encoding/index.d.ts +10 -0
- package/dist/cryptoUtils/encoding/index.d.ts.map +1 -0
- package/dist/cryptoUtils/encoding/index.js +10 -0
- package/dist/cryptoUtils/encoding/index.js.map +1 -0
- package/dist/cryptoUtils/index.d.ts +13 -0
- package/dist/cryptoUtils/index.d.ts.map +1 -0
- package/dist/cryptoUtils/index.js +13 -0
- package/dist/cryptoUtils/index.js.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +26 -0
- package/dist/index.js.map +1 -0
- package/dist/node/index.d.ts +8 -0
- package/dist/node/index.d.ts.map +1 -0
- package/dist/node/index.js +8 -0
- package/dist/node/index.js.map +1 -0
- package/dist/node/nodeCryptoProvider/index.d.ts +14 -0
- package/dist/node/nodeCryptoProvider/index.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/index.js +14 -0
- package/dist/node/nodeCryptoProvider/index.js.map +1 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.core.d.ts +42 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.core.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.core.js +56 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.core.js.map +1 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.factory.d.ts +3 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.factory.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.factory.js +5 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.factory.js.map +1 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.helper.d.ts +8 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.helper.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.helper.js +55 -0
- package/dist/node/nodeCryptoProvider/nodeCryptoProvider.helper.js.map +1 -0
- package/dist/node/nodeCryptoProvider/operations/index.d.ts +8 -0
- package/dist/node/nodeCryptoProvider/operations/index.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/operations/index.js +8 -0
- package/dist/node/nodeCryptoProvider/operations/index.js.map +1 -0
- package/dist/node/nodeCryptoProvider/operations/nodeCryptoProvider.derivation.d.ts +3 -0
- package/dist/node/nodeCryptoProvider/operations/nodeCryptoProvider.derivation.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/operations/nodeCryptoProvider.derivation.js +45 -0
- package/dist/node/nodeCryptoProvider/operations/nodeCryptoProvider.derivation.js.map +1 -0
- package/dist/node/nodeCryptoProvider/operations/nodeCryptoProvider.password.d.ts +12 -0
- package/dist/node/nodeCryptoProvider/operations/nodeCryptoProvider.password.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/operations/nodeCryptoProvider.password.js +94 -0
- package/dist/node/nodeCryptoProvider/operations/nodeCryptoProvider.password.js.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/index.d.ts +10 -0
- package/dist/node/nodeCryptoProvider/primitives/index.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/index.js +10 -0
- package/dist/node/nodeCryptoProvider/primitives/index.js.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.encryption.d.ts +13 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.encryption.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.encryption.js +35 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.encryption.js.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.hash.d.ts +4 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.hash.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.hash.js +16 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.hash.js.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.random.d.ts +4 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.random.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.random.js +39 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.random.js.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.signing.d.ts +13 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.signing.d.ts.map +1 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.signing.js +29 -0
- package/dist/node/nodeCryptoProvider/primitives/nodeCryptoProvider.signing.js.map +1 -0
- package/dist/node/signing/index.d.ts +9 -0
- package/dist/node/signing/index.d.ts.map +1 -0
- package/dist/node/signing/index.js +9 -0
- package/dist/node/signing/index.js.map +1 -0
- package/dist/node/signing/signing.conversion.d.ts +9 -0
- package/dist/node/signing/signing.conversion.d.ts.map +1 -0
- package/dist/node/signing/signing.conversion.js +51 -0
- package/dist/node/signing/signing.conversion.js.map +1 -0
- package/dist/node/signing/signing.core.d.ts +21 -0
- package/dist/node/signing/signing.core.d.ts.map +1 -0
- package/dist/node/signing/signing.core.js +45 -0
- package/dist/node/signing/signing.core.js.map +1 -0
- package/dist/node/signing/signing.utils.d.ts +15 -0
- package/dist/node/signing/signing.utils.d.ts.map +1 -0
- package/dist/node/signing/signing.utils.js +41 -0
- package/dist/node/signing/signing.utils.js.map +1 -0
- package/package.json +51 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { EncryptionAlgorithm } from "../cryptoProvider.type.js";
|
|
2
|
+
/**
|
|
3
|
+
* Result of an encryption operation.
|
|
4
|
+
*/
|
|
5
|
+
export interface EncryptedData {
|
|
6
|
+
readonly algorithm: EncryptionAlgorithm;
|
|
7
|
+
readonly ciphertext: Uint8Array;
|
|
8
|
+
readonly nonce: Uint8Array;
|
|
9
|
+
readonly tag: Uint8Array;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Options for encryption.
|
|
13
|
+
*/
|
|
14
|
+
export interface EncryptOptions {
|
|
15
|
+
readonly key: Uint8Array;
|
|
16
|
+
readonly plaintext: Uint8Array;
|
|
17
|
+
readonly associatedData?: Uint8Array;
|
|
18
|
+
readonly nonce?: Uint8Array;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Options for decryption.
|
|
22
|
+
*/
|
|
23
|
+
export interface DecryptOptions {
|
|
24
|
+
readonly key: Uint8Array;
|
|
25
|
+
readonly encrypted: EncryptedData;
|
|
26
|
+
readonly associatedData?: Uint8Array;
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=cryptoCipher.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoCipher.type.d.ts","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoCipher.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAErE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;IACrC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAClC,QAAQ,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC;CACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoCipher.type.js","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoCipher.type.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { HashAlgorithm } from "../cryptoProvider.type.js";
|
|
2
|
+
/**
|
|
3
|
+
* Result of a hash operation.
|
|
4
|
+
*/
|
|
5
|
+
export interface HashResult {
|
|
6
|
+
readonly algorithm: HashAlgorithm;
|
|
7
|
+
readonly digest: Uint8Array;
|
|
8
|
+
readonly encoded: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Supported hash output encodings.
|
|
12
|
+
*/
|
|
13
|
+
export type HashEncoding = "hex" | "base64" | "base64url";
|
|
14
|
+
//# sourceMappingURL=cryptoHash.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoHash.type.d.ts","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoHash.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC;IAClC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,QAAQ,GAAG,WAAW,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoHash.type.js","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoHash.type.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { KeyDerivationAlgorithm, CryptoInput } from "../cryptoProvider.type.js";
|
|
2
|
+
/**
|
|
3
|
+
* Result of a key derivation operation.
|
|
4
|
+
*/
|
|
5
|
+
export interface DerivedKeyResult {
|
|
6
|
+
readonly key: Uint8Array;
|
|
7
|
+
readonly salt: Uint8Array;
|
|
8
|
+
readonly algorithm: KeyDerivationAlgorithm;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Options for key derivation.
|
|
12
|
+
*/
|
|
13
|
+
export interface DeriveKeyOptions {
|
|
14
|
+
readonly password: CryptoInput;
|
|
15
|
+
readonly salt: Uint8Array;
|
|
16
|
+
readonly algorithm: KeyDerivationAlgorithm;
|
|
17
|
+
readonly keyLength?: number;
|
|
18
|
+
readonly iterations?: number;
|
|
19
|
+
readonly memoryCost?: number;
|
|
20
|
+
readonly parallelism?: number;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=cryptoKeyDerivation.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoKeyDerivation.type.d.ts","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoKeyDerivation.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,WAAW,EACZ,MAAM,2BAA2B,CAAC;AAEnC;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC;IAC/B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAAC;IAC3C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoKeyDerivation.type.js","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoKeyDerivation.type.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { EncodingFormat } from "../cryptoProvider.type.js";
|
|
2
|
+
/**
|
|
3
|
+
* Options for random token generation.
|
|
4
|
+
*/
|
|
5
|
+
export interface RandomTokenOptions {
|
|
6
|
+
readonly bytes?: number;
|
|
7
|
+
readonly encoding?: EncodingFormat;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=cryptoRandom.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoRandom.type.d.ts","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoRandom.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,CAAC,EAAE,cAAc,CAAC;CACpC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoRandom.type.js","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoRandom.type.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { SignatureAlgorithm } from "../cryptoProvider.type.js";
|
|
2
|
+
/**
|
|
3
|
+
* Options for signing.
|
|
4
|
+
*/
|
|
5
|
+
export interface SignOptions {
|
|
6
|
+
readonly key: Uint8Array;
|
|
7
|
+
readonly data: Uint8Array;
|
|
8
|
+
readonly algorithm?: SignatureAlgorithm;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Options for verification.
|
|
12
|
+
*/
|
|
13
|
+
export interface VerifyOptions {
|
|
14
|
+
readonly key: Uint8Array;
|
|
15
|
+
readonly data: Uint8Array;
|
|
16
|
+
readonly signature: Uint8Array;
|
|
17
|
+
readonly algorithm?: SignatureAlgorithm;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=cryptoSignature.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoSignature.type.d.ts","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoSignature.type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC;CACzC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoSignature.type.js","sourceRoot":"","sources":["../../../src/cryptoProvider/types/cryptoSignature.type.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @zudojs/crypto/cryptoProvider/types
|
|
3
|
+
*
|
|
4
|
+
* Type definitions for crypto provider capabilities,
|
|
5
|
+
* algorithms, and operation options.
|
|
6
|
+
*/
|
|
7
|
+
export type { HashResult, HashEncoding } from "./cryptoHash.type.js";
|
|
8
|
+
export type { EncryptedData, EncryptOptions, DecryptOptions, } from "./cryptoCipher.type.js";
|
|
9
|
+
export type { SignOptions, VerifyOptions } from "./cryptoSignature.type.js";
|
|
10
|
+
export type { DerivedKeyResult, DeriveKeyOptions, } from "./cryptoKeyDerivation.type.js";
|
|
11
|
+
export type { RandomTokenOptions } from "./cryptoRandom.type.js";
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cryptoProvider/types/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAErE,YAAY,EACV,aAAa,EACb,cAAc,EACd,cAAc,GACf,MAAM,wBAAwB,CAAC;AAEhC,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE5E,YAAY,EACV,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,+BAA+B,CAAC;AAEvC,YAAY,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cryptoProvider/types/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates a cryptographically secure random boolean.
|
|
3
|
+
*/
|
|
4
|
+
export declare function randomBoolean(): Promise<boolean>;
|
|
5
|
+
/**
|
|
6
|
+
* Generates a random value from a collection.
|
|
7
|
+
*/
|
|
8
|
+
export declare function randomChoice<T>(values: readonly T[]): Promise<T>;
|
|
9
|
+
/**
|
|
10
|
+
* Fills an existing Uint8Array with cryptographically secure
|
|
11
|
+
* random bytes.
|
|
12
|
+
*/
|
|
13
|
+
export declare function fillRandomBytes(target: Uint8Array): Promise<Uint8Array>;
|
|
14
|
+
//# sourceMappingURL=cryptoRandom.choice.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoRandom.choice.d.ts","sourceRoot":"","sources":["../../src/cryptoRandom/cryptoRandom.choice.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAEtD;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAMtE;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAU7E"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { createNodeCryptoProvider } from "../node/index.js";
|
|
2
|
+
const provider = createNodeCryptoProvider();
|
|
3
|
+
/**
|
|
4
|
+
* Generates a cryptographically secure random boolean.
|
|
5
|
+
*/
|
|
6
|
+
export async function randomBoolean() {
|
|
7
|
+
return (await provider.randomInt(0, 2)) === 1;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Generates a random value from a collection.
|
|
11
|
+
*/
|
|
12
|
+
export async function randomChoice(values) {
|
|
13
|
+
if (values.length === 0) {
|
|
14
|
+
throw new RangeError("Cannot choose from an empty collection.");
|
|
15
|
+
}
|
|
16
|
+
return values[await provider.randomInt(0, values.length)];
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Fills an existing Uint8Array with cryptographically secure
|
|
20
|
+
* random bytes.
|
|
21
|
+
*/
|
|
22
|
+
export async function fillRandomBytes(target) {
|
|
23
|
+
if (!(target instanceof Uint8Array)) {
|
|
24
|
+
throw new TypeError("target must be a Uint8Array.");
|
|
25
|
+
}
|
|
26
|
+
const bytes = await provider.randomBytes(target.byteLength);
|
|
27
|
+
target.set(bytes);
|
|
28
|
+
return target;
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=cryptoRandom.choice.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoRandom.choice.js","sourceRoot":"","sources":["../../src/cryptoRandom/cryptoRandom.choice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,MAAM,QAAQ,GAAG,wBAAwB,EAAE,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa;IACjC,OAAO,CAAC,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAI,MAAoB;IACxD,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,UAAU,CAAC,yCAAyC,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAE,CAAC;AAC7D,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,MAAkB;IACtD,IAAI,CAAC,CAAC,MAAM,YAAY,UAAU,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,SAAS,CAAC,8BAA8B,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAE5D,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAElB,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates cryptographically secure random bytes.
|
|
3
|
+
*/
|
|
4
|
+
export declare function randomBytesSecure(length: number): Promise<Uint8Array>;
|
|
5
|
+
/**
|
|
6
|
+
* Generates a cryptographically secure random integer.
|
|
7
|
+
*
|
|
8
|
+
* The returned value is in the range:
|
|
9
|
+
* min <= value < max
|
|
10
|
+
*/
|
|
11
|
+
export declare function randomInteger(min: number, max: number): Promise<number>;
|
|
12
|
+
/**
|
|
13
|
+
* Generates a cryptographically secure random integer
|
|
14
|
+
* from zero up to, but excluding, max.
|
|
15
|
+
*/
|
|
16
|
+
export declare function randomIntegerBelow(max: number): Promise<number>;
|
|
17
|
+
/**
|
|
18
|
+
* Generates a random UUID v4.
|
|
19
|
+
*/
|
|
20
|
+
export declare function randomUuid(): Promise<string>;
|
|
21
|
+
//# sourceMappingURL=cryptoRandom.core.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoRandom.core.d.ts","sourceRoot":"","sources":["../../src/cryptoRandom/cryptoRandom.core.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAE3E;AAED;;;;;GAKG;AACH,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAE7E;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAErE;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAElD"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { createNodeCryptoProvider } from "../node/index.js";
|
|
2
|
+
const provider = createNodeCryptoProvider();
|
|
3
|
+
/**
|
|
4
|
+
* Generates cryptographically secure random bytes.
|
|
5
|
+
*/
|
|
6
|
+
export async function randomBytesSecure(length) {
|
|
7
|
+
return provider.randomBytes(length);
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Generates a cryptographically secure random integer.
|
|
11
|
+
*
|
|
12
|
+
* The returned value is in the range:
|
|
13
|
+
* min <= value < max
|
|
14
|
+
*/
|
|
15
|
+
export async function randomInteger(min, max) {
|
|
16
|
+
return provider.randomInt(min, max);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Generates a cryptographically secure random integer
|
|
20
|
+
* from zero up to, but excluding, max.
|
|
21
|
+
*/
|
|
22
|
+
export async function randomIntegerBelow(max) {
|
|
23
|
+
return provider.randomInt(0, max);
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Generates a random UUID v4.
|
|
27
|
+
*/
|
|
28
|
+
export async function randomUuid() {
|
|
29
|
+
return provider.randomUUID();
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=cryptoRandom.core.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoRandom.core.js","sourceRoot":"","sources":["../../src/cryptoRandom/cryptoRandom.core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AAE5D,MAAM,QAAQ,GAAG,wBAAwB,EAAE,CAAC;AAE5C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,MAAc;IACpD,OAAO,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,GAAW,EAAE,GAAW;IAC1D,OAAO,QAAQ,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACtC,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,GAAW;IAClD,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,OAAO,QAAQ,CAAC,UAAU,EAAE,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generates a cryptographically secure random hexadecimal string.
|
|
3
|
+
*/
|
|
4
|
+
export declare function randomHex(length: number): Promise<string>;
|
|
5
|
+
/**
|
|
6
|
+
* Generates a cryptographically secure random base64 string.
|
|
7
|
+
*/
|
|
8
|
+
export declare function randomBase64(byteLength: number): Promise<string>;
|
|
9
|
+
/**
|
|
10
|
+
* Generates a cryptographically secure URL-safe random string.
|
|
11
|
+
*/
|
|
12
|
+
export declare function randomBase64Url(byteLength: number): Promise<string>;
|
|
13
|
+
/**
|
|
14
|
+
* Generates a random token suitable for use as an opaque identifier.
|
|
15
|
+
*
|
|
16
|
+
* The returned token contains only URL-safe characters.
|
|
17
|
+
*/
|
|
18
|
+
export declare function randomToken(byteLength?: number): Promise<string>;
|
|
19
|
+
/**
|
|
20
|
+
* Generates a random numeric code.
|
|
21
|
+
*
|
|
22
|
+
* Leading zeroes are preserved.
|
|
23
|
+
*/
|
|
24
|
+
export declare function randomNumericCode(length?: number): Promise<string>;
|
|
25
|
+
/**
|
|
26
|
+
* Generates a random alphanumeric token.
|
|
27
|
+
*/
|
|
28
|
+
export declare function randomAlphanumeric(length: number): Promise<string>;
|
|
29
|
+
/**
|
|
30
|
+
* Generates random characters from a caller-provided alphabet.
|
|
31
|
+
*
|
|
32
|
+
* The alphabet must not be empty.
|
|
33
|
+
*/
|
|
34
|
+
export declare function randomFromAlphabet(length: number, alphabet: string): Promise<string>;
|
|
35
|
+
//# sourceMappingURL=cryptoRandom.string.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoRandom.string.d.ts","sourceRoot":"","sources":["../../src/cryptoRandom/cryptoRandom.string.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAI/D;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAItE;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAIzE;AAED;;;;GAIG;AACH,wBAAsB,WAAW,CAAC,UAAU,SAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAElE;AAED;;;;GAIG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,SAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAUnE;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAaxE;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAgBjB"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { createNodeCryptoProvider } from "../node/index.js";
|
|
2
|
+
const provider = createNodeCryptoProvider();
|
|
3
|
+
/**
|
|
4
|
+
* Generates a cryptographically secure random hexadecimal string.
|
|
5
|
+
*/
|
|
6
|
+
export async function randomHex(length) {
|
|
7
|
+
const bytes = await provider.randomBytes(Math.ceil(length / 2));
|
|
8
|
+
return Buffer.from(bytes).toString("hex").slice(0, length);
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Generates a cryptographically secure random base64 string.
|
|
12
|
+
*/
|
|
13
|
+
export async function randomBase64(byteLength) {
|
|
14
|
+
const bytes = await provider.randomBytes(byteLength);
|
|
15
|
+
return Buffer.from(bytes).toString("base64");
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Generates a cryptographically secure URL-safe random string.
|
|
19
|
+
*/
|
|
20
|
+
export async function randomBase64Url(byteLength) {
|
|
21
|
+
const bytes = await provider.randomBytes(byteLength);
|
|
22
|
+
return Buffer.from(bytes).toString("base64url");
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Generates a random token suitable for use as an opaque identifier.
|
|
26
|
+
*
|
|
27
|
+
* The returned token contains only URL-safe characters.
|
|
28
|
+
*/
|
|
29
|
+
export async function randomToken(byteLength = 32) {
|
|
30
|
+
return randomBase64Url(byteLength);
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Generates a random numeric code.
|
|
34
|
+
*
|
|
35
|
+
* Leading zeroes are preserved.
|
|
36
|
+
*/
|
|
37
|
+
export async function randomNumericCode(length = 6) {
|
|
38
|
+
let result = "";
|
|
39
|
+
while (result.length < length) {
|
|
40
|
+
const value = await provider.randomInt(0, 1_000_000);
|
|
41
|
+
result += String(value).padStart(6, "0");
|
|
42
|
+
}
|
|
43
|
+
return result.slice(0, length);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Generates a random alphanumeric token.
|
|
47
|
+
*/
|
|
48
|
+
export async function randomAlphanumeric(length) {
|
|
49
|
+
const alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
|
|
50
|
+
let result = "";
|
|
51
|
+
while (result.length < length) {
|
|
52
|
+
const index = await provider.randomInt(0, alphabet.length);
|
|
53
|
+
result += alphabet[index];
|
|
54
|
+
}
|
|
55
|
+
return result;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Generates random characters from a caller-provided alphabet.
|
|
59
|
+
*
|
|
60
|
+
* The alphabet must not be empty.
|
|
61
|
+
*/
|
|
62
|
+
export async function randomFromAlphabet(length, alphabet) {
|
|
63
|
+
if (alphabet.length === 0) {
|
|
64
|
+
throw new RangeError("alphabet must not be empty.");
|
|
65
|
+
}
|
|
66
|
+
const characters = Array.from(alphabet);
|
|
67
|
+
let result = "";
|
|
68
|
+
while (result.length < length) {
|
|
69
|
+
const index = await provider.randomInt(0, characters.length);
|
|
70
|
+
result += characters[index];
|
|
71
|
+
}
|
|
72
|
+
return result;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=cryptoRandom.string.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoRandom.string.js","sourceRoot":"","sources":["../../src/cryptoRandom/cryptoRandom.string.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cryptoRandom/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cryptoRandom/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { CryptoAlgorithm } from "../cryptoConstants/cryptoConstants.type.js";
|
|
2
|
+
import type { CryptoKey as ZudojsCryptoKey } from "../cryptoKey/cryptoKey.type.js";
|
|
3
|
+
/**
|
|
4
|
+
* High-level service facade for cryptographic operations.
|
|
5
|
+
*/
|
|
6
|
+
export declare class CryptoService {
|
|
7
|
+
/** Generates a cryptographic key. */
|
|
8
|
+
generateKey(algorithm?: CryptoAlgorithm): Promise<ZudojsCryptoKey>;
|
|
9
|
+
/** Generates random bytes. */
|
|
10
|
+
randomBytes(length?: number): Promise<Uint8Array>;
|
|
11
|
+
/** Encrypts data using the supplied key. */
|
|
12
|
+
encrypt(plaintext: Uint8Array, key: Uint8Array, options?: import("./operations/cryptoService.cipher.js").CipherOptions): Promise<import("./operations/cryptoService.cipher.js").CipherResult>;
|
|
13
|
+
/** Decrypts data using the supplied key. */
|
|
14
|
+
decrypt(ciphertext: Uint8Array, key: Uint8Array, iv: Uint8Array, authTag: Uint8Array, aad?: Uint8Array): Promise<Uint8Array>;
|
|
15
|
+
/** Hashes arbitrary data with SHA-256. */
|
|
16
|
+
hash(value: string | Uint8Array): Promise<Uint8Array>;
|
|
17
|
+
/** Hashes arbitrary data and returns hexadecimal output. */
|
|
18
|
+
hashHex(value: string | Uint8Array): Promise<string>;
|
|
19
|
+
/** Hashes a password using the configured algorithm. */
|
|
20
|
+
hashPassword(password: string, options?: import("./operations/cryptoService.password.js").PasswordHashOptions): Promise<import("./operations/cryptoService.password.js").PasswordHashResult>;
|
|
21
|
+
/** Verifies a password against a stored password hash. */
|
|
22
|
+
verifyPassword(password: string, encodedHash: string): Promise<boolean>;
|
|
23
|
+
/** Derives a cryptographic key from password material. */
|
|
24
|
+
deriveKey(password: string | Uint8Array, algorithm: CryptoAlgorithm, options?: import("./cryptoService.derivation.js").Pbkdf2Options | import("./cryptoService.derivation.js").ScryptOptions): Promise<import("./cryptoService.derivation.js").DerivedKeyResult>;
|
|
25
|
+
/** Generates a cryptographically secure opaque token. */
|
|
26
|
+
generateToken(options?: import("./operations/cryptoService.token.js").TokenOptions): Promise<string>;
|
|
27
|
+
/** Generates a secure one-time password. */
|
|
28
|
+
generateOtp(digits?: number): Promise<string>;
|
|
29
|
+
/** Hashes an opaque token before database storage. */
|
|
30
|
+
hashToken(token: string): Promise<string>;
|
|
31
|
+
/** Verifies an opaque token against its stored hash. */
|
|
32
|
+
verifyToken(token: string, expectedHash: string): Promise<boolean>;
|
|
33
|
+
/** Encodes binary data. */
|
|
34
|
+
encode(value: Uint8Array, encoding?: import("./cryptoService.encoding.js").CryptoEncoding): string;
|
|
35
|
+
/** Decodes encoded binary data. */
|
|
36
|
+
decode(value: string, encoding?: import("./cryptoService.encoding.js").CryptoEncoding): Uint8Array;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Creates a new CryptoService instance.
|
|
40
|
+
*/
|
|
41
|
+
export declare function createCryptoService(): CryptoService;
|
|
42
|
+
/**
|
|
43
|
+
* Default crypto service instance.
|
|
44
|
+
*/
|
|
45
|
+
export declare const cryptoService: CryptoService;
|
|
46
|
+
//# sourceMappingURL=cryptoService.core.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoService.core.d.ts","sourceRoot":"","sources":["../../src/cryptoService/cryptoService.core.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAsB7E,OAAO,KAAK,EAAE,SAAS,IAAI,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAInF;;GAEG;AACH,qBAAa,aAAa;IACxB,qCAAqC;IAC/B,WAAW,CACf,SAAS,GAAE,eAA6C,GACvD,OAAO,CAAC,eAAe,CAAC,CAS1B;IAED,8BAA8B;IACxB,WAAW,CAAC,MAAM,SAAK,GAAG,OAAO,CAAC,UAAU,CAAC,CAQlD;IAED,4CAA4C;IACtC,OAAO,CACX,SAAS,EAAE,UAAU,EACrB,GAAG,EAAE,UAAU,EACf,OAAO,CAAC,EAAE,OAAO,sCAAsC,EAAE,aAAa,GACrE,OAAO,CAAC,OAAO,sCAAsC,EAAE,YAAY,CAAC,CAEtE;IAED,4CAA4C;IACtC,OAAO,CACX,UAAU,EAAE,UAAU,EACtB,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,UAAU,EACd,OAAO,EAAE,UAAU,EACnB,GAAG,CAAC,EAAE,UAAU,GACf,OAAO,CAAC,UAAU,CAAC,CAErB;IAED,0CAA0C;IACpC,IAAI,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAE1D;IAED,4DAA4D;IACtD,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAEzD;IAED,wDAAwD;IAClD,YAAY,CAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,OAAO,wCAAwC,EAAE,mBAAmB,GAC7E,OAAO,CACR,OAAO,wCAAwC,EAAE,kBAAkB,CACpE,CAEA;IAED,0DAA0D;IACpD,cAAc,CAClB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,OAAO,CAAC,CAElB;IAED,0DAA0D;IACpD,SAAS,CACb,QAAQ,EAAE,MAAM,GAAG,UAAU,EAC7B,SAAS,EAAE,eAAe,EAC1B,OAAO,CAAC,EACJ,OAAO,+BAA+B,EAAE,aAAa,GACrD,OAAO,+BAA+B,EAAE,aAAa,GACxD,OAAO,CAAC,OAAO,+BAA+B,EAAE,gBAAgB,CAAC,CAEnE;IAED,yDAAyD;IACnD,aAAa,CACjB,OAAO,CAAC,EAAE,OAAO,qCAAqC,EAAE,YAAY,GACnE,OAAO,CAAC,MAAM,CAAC,CAEjB;IAED,4CAA4C;IACtC,WAAW,CAAC,MAAM,SAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAE7C;IAED,sDAAsD;IAChD,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAE9C;IAED,wDAAwD;IAClD,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAEvE;IAED,2BAA2B;IAC3B,MAAM,CACJ,KAAK,EAAE,UAAU,EACjB,QAAQ,GAAE,OAAO,6BAA6B,EAAE,cAA4B,GAC3E,MAAM,CAER;IAED,mCAAmC;IACnC,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,QAAQ,GAAE,OAAO,6BAA6B,EAAE,cAA4B,GAC3E,UAAU,CAEZ;CACF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,aAAa,CAEnD;AAED;;GAEG;AACH,eAAO,MAAM,aAAa,eAAwB,CAAC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { createNodeCryptoProvider } from "../node/index.js";
|
|
2
|
+
import { generateCryptoKey } from "../cryptoKey/cryptoKey.factory.js";
|
|
3
|
+
import { CryptoAlgorithm } from "../cryptoConstants/cryptoConstants.type.js";
|
|
4
|
+
import { createCryptoError } from "@zudojs/errors";
|
|
5
|
+
import { serviceEncrypt, serviceDecrypt, } from "./operations/cryptoService.cipher.js";
|
|
6
|
+
import { serviceHash, serviceHashHex, } from "./operations/cryptoService.hash.js";
|
|
7
|
+
import { serviceHashPassword, serviceVerifyPassword, } from "./operations/cryptoService.password.js";
|
|
8
|
+
import { serviceDeriveKey } from "./cryptoService.derivation.js";
|
|
9
|
+
import { serviceGenerateToken, serviceGenerateOtp, serviceHashToken, serviceVerifyToken, } from "./operations/cryptoService.token.js";
|
|
10
|
+
import { serviceEncode, serviceDecode } from "./cryptoService.encoding.js";
|
|
11
|
+
const provider = createNodeCryptoProvider();
|
|
12
|
+
/**
|
|
13
|
+
* High-level service facade for cryptographic operations.
|
|
14
|
+
*/
|
|
15
|
+
export class CryptoService {
|
|
16
|
+
/** Generates a cryptographic key. */
|
|
17
|
+
async generateKey(algorithm = CryptoAlgorithm.AES_256_GCM) {
|
|
18
|
+
const length = algorithm.includes("256")
|
|
19
|
+
? 32
|
|
20
|
+
: algorithm.includes("384")
|
|
21
|
+
? 48
|
|
22
|
+
: algorithm.includes("512")
|
|
23
|
+
? 64
|
|
24
|
+
: 32;
|
|
25
|
+
return generateCryptoKey(length, { algorithm, extractable: true });
|
|
26
|
+
}
|
|
27
|
+
/** Generates random bytes. */
|
|
28
|
+
async randomBytes(length = 32) {
|
|
29
|
+
if (!Number.isInteger(length) || length <= 0)
|
|
30
|
+
throw new TypeError("Random byte length must be a positive integer.");
|
|
31
|
+
try {
|
|
32
|
+
return await provider.randomBytes(length);
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
throw createCryptoError("Failed to generate random bytes.", {});
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
/** Encrypts data using the supplied key. */
|
|
39
|
+
async encrypt(plaintext, key, options) {
|
|
40
|
+
return serviceEncrypt(plaintext, key, options);
|
|
41
|
+
}
|
|
42
|
+
/** Decrypts data using the supplied key. */
|
|
43
|
+
async decrypt(ciphertext, key, iv, authTag, aad) {
|
|
44
|
+
return serviceDecrypt(ciphertext, key, iv, authTag, aad);
|
|
45
|
+
}
|
|
46
|
+
/** Hashes arbitrary data with SHA-256. */
|
|
47
|
+
async hash(value) {
|
|
48
|
+
return serviceHash(value);
|
|
49
|
+
}
|
|
50
|
+
/** Hashes arbitrary data and returns hexadecimal output. */
|
|
51
|
+
async hashHex(value) {
|
|
52
|
+
return serviceHashHex(value);
|
|
53
|
+
}
|
|
54
|
+
/** Hashes a password using the configured algorithm. */
|
|
55
|
+
async hashPassword(password, options) {
|
|
56
|
+
return serviceHashPassword(password, options);
|
|
57
|
+
}
|
|
58
|
+
/** Verifies a password against a stored password hash. */
|
|
59
|
+
async verifyPassword(password, encodedHash) {
|
|
60
|
+
return serviceVerifyPassword(password, encodedHash);
|
|
61
|
+
}
|
|
62
|
+
/** Derives a cryptographic key from password material. */
|
|
63
|
+
async deriveKey(password, algorithm, options) {
|
|
64
|
+
return serviceDeriveKey(password, algorithm, options);
|
|
65
|
+
}
|
|
66
|
+
/** Generates a cryptographically secure opaque token. */
|
|
67
|
+
async generateToken(options) {
|
|
68
|
+
return serviceGenerateToken(options);
|
|
69
|
+
}
|
|
70
|
+
/** Generates a secure one-time password. */
|
|
71
|
+
async generateOtp(digits = 6) {
|
|
72
|
+
return serviceGenerateOtp(digits);
|
|
73
|
+
}
|
|
74
|
+
/** Hashes an opaque token before database storage. */
|
|
75
|
+
async hashToken(token) {
|
|
76
|
+
return serviceHashToken(token);
|
|
77
|
+
}
|
|
78
|
+
/** Verifies an opaque token against its stored hash. */
|
|
79
|
+
async verifyToken(token, expectedHash) {
|
|
80
|
+
return serviceVerifyToken(token, expectedHash);
|
|
81
|
+
}
|
|
82
|
+
/** Encodes binary data. */
|
|
83
|
+
encode(value, encoding = "base64url") {
|
|
84
|
+
return serviceEncode(value, encoding);
|
|
85
|
+
}
|
|
86
|
+
/** Decodes encoded binary data. */
|
|
87
|
+
decode(value, encoding = "base64url") {
|
|
88
|
+
return serviceDecode(value, encoding);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Creates a new CryptoService instance.
|
|
93
|
+
*/
|
|
94
|
+
export function createCryptoService() {
|
|
95
|
+
return new CryptoService();
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Default crypto service instance.
|
|
99
|
+
*/
|
|
100
|
+
export const cryptoService = createCryptoService();
|
|
101
|
+
//# sourceMappingURL=cryptoService.core.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoService.core.js","sourceRoot":"","sources":["../../src/cryptoService/cryptoService.core.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { DerivedKeyResult } from "../cryptoProvider/index.js";
|
|
2
|
+
import type { Pbkdf2Options, ScryptOptions } from "../cryptoKeyDerivation/cryptoKeyDerivation.type.js";
|
|
3
|
+
import { CryptoAlgorithm } from "../cryptoConstants/cryptoConstants.type.js";
|
|
4
|
+
export type { DerivedKeyResult, Pbkdf2Options, ScryptOptions };
|
|
5
|
+
export declare function serviceDeriveKey(password: string | Uint8Array, algorithm: CryptoAlgorithm, options?: Pbkdf2Options | ScryptOptions): Promise<DerivedKeyResult>;
|
|
6
|
+
//# sourceMappingURL=cryptoService.derivation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cryptoService.derivation.d.ts","sourceRoot":"","sources":["../../src/cryptoService/cryptoService.derivation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,KAAK,EACV,aAAa,EACb,aAAa,EACd,MAAM,oDAAoD,CAAC;AAM5D,OAAO,EAAE,eAAe,EAAE,MAAM,4CAA4C,CAAC;AAE7E,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC;AAE/D,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,MAAM,GAAG,UAAU,EAC7B,SAAS,EAAE,eAAe,EAC1B,OAAO,CAAC,EAAE,aAAa,GAAG,aAAa,GACtC,OAAO,CAAC,gBAAgB,CAAC,CAM3B"}
|