@pezkuwi/util-crypto 14.0.10 → 14.0.12
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/address/addressToEvm.d.ts +5 -0
- package/address/addressToEvm.js +8 -0
- package/address/check.d.ts +8 -0
- package/address/check.js +26 -0
- package/address/checksum.d.ts +1 -0
- package/address/checksum.js +16 -0
- package/address/decode.d.ts +2 -0
- package/address/decode.js +29 -0
- package/address/defaults.d.ts +6 -0
- package/address/defaults.js +8 -0
- package/address/derive.d.ts +8 -0
- package/address/derive.js +24 -0
- package/address/encode.d.ts +2 -0
- package/address/encode.js +23 -0
- package/address/encodeDerived.d.ts +9 -0
- package/address/encodeDerived.js +12 -0
- package/address/encodeMulti.d.ts +9 -0
- package/address/encodeMulti.js +11 -0
- package/address/eq.d.ts +15 -0
- package/address/eq.js +19 -0
- package/address/evmToAddress.d.ts +7 -0
- package/address/evmToAddress.js +14 -0
- package/address/index.d.ts +16 -0
- package/address/index.js +16 -0
- package/address/is.d.ts +2 -0
- package/address/is.js +9 -0
- package/address/keyDerived.d.ts +2 -0
- package/address/keyDerived.js +8 -0
- package/address/keyMulti.d.ts +2 -0
- package/address/keyMulti.js +8 -0
- package/address/setSS58Format.d.ts +6 -0
- package/address/setSS58Format.js +11 -0
- package/address/sort.d.ts +2 -0
- package/address/sort.js +7 -0
- package/address/sshash.d.ts +1 -0
- package/address/sshash.js +6 -0
- package/address/types.d.ts +1 -0
- package/address/types.js +1 -0
- package/address/util.d.ts +1 -0
- package/address/util.js +4 -0
- package/address/validate.d.ts +2 -0
- package/address/validate.js +4 -0
- package/base32/bs32.d.ts +26 -0
- package/base32/bs32.js +40 -0
- package/base32/helpers.d.ts +25 -0
- package/base32/helpers.js +61 -0
- package/base32/index.d.ts +4 -0
- package/base32/index.js +4 -0
- package/base58/bs58.d.ts +26 -0
- package/base58/bs58.js +34 -0
- package/base58/index.d.ts +4 -0
- package/base58/index.js +4 -0
- package/base64/bs64.d.ts +26 -0
- package/base64/bs64.js +34 -0
- package/base64/index.d.ts +6 -0
- package/base64/index.js +6 -0
- package/base64/pad.d.ts +5 -0
- package/base64/pad.js +7 -0
- package/base64/trim.d.ts +5 -0
- package/base64/trim.js +10 -0
- package/blake2/asU8a.d.ts +20 -0
- package/blake2/asU8a.js +32 -0
- package/blake2/index.d.ts +4 -0
- package/blake2/index.js +4 -0
- package/bn.d.ts +30 -0
- package/bn.js +8 -0
- package/build/blake2/asU8a.d.ts +1 -1
- package/build/bundle-pezkuwi-util-crypto.js +8749 -8246
- package/build/cjs/blake2/asU8a.d.ts +1 -1
- package/build/cjs/keccak/asU8a.d.ts +1 -1
- package/build/cjs/packageInfo.js +1 -1
- package/build/cjs/scrypt/encode.d.ts +1 -1
- package/build/cjs/xxhash/asU8a.d.ts +1 -1
- package/build/keccak/asU8a.d.ts +1 -1
- package/build/package.json +9 -9
- package/build/packageInfo.js +1 -1
- package/build/scrypt/encode.d.ts +1 -1
- package/build/xxhash/asU8a.d.ts +1 -1
- package/build-deno/packageInfo.ts +1 -1
- package/build-tsc/blake2/asU8a.d.ts +1 -1
- package/build-tsc/keccak/asU8a.d.ts +1 -1
- package/build-tsc/scrypt/encode.d.ts +1 -1
- package/build-tsc/xxhash/asU8a.d.ts +1 -1
- package/build-tsc-cjs/packageInfo.js +1 -1
- package/build-tsc-esm/packageInfo.js +1 -1
- package/bundle-pezkuwi-util-crypto.js +8251 -0
- package/bundle.d.ts +26 -0
- package/bundle.js +26 -0
- package/bundleInit.d.ts +1 -0
- package/bundleInit.js +5 -0
- package/cjs/address/addressToEvm.d.ts +5 -0
- package/cjs/address/addressToEvm.js +11 -0
- package/cjs/address/check.d.ts +8 -0
- package/cjs/address/check.js +29 -0
- package/cjs/address/checksum.d.ts +1 -0
- package/cjs/address/checksum.js +19 -0
- package/cjs/address/decode.d.ts +2 -0
- package/cjs/address/decode.js +32 -0
- package/cjs/address/defaults.d.ts +6 -0
- package/cjs/address/defaults.js +11 -0
- package/cjs/address/derive.d.ts +8 -0
- package/cjs/address/derive.js +27 -0
- package/cjs/address/encode.d.ts +2 -0
- package/cjs/address/encode.js +26 -0
- package/cjs/address/encodeDerived.d.ts +9 -0
- package/cjs/address/encodeDerived.js +15 -0
- package/cjs/address/encodeMulti.d.ts +9 -0
- package/cjs/address/encodeMulti.js +14 -0
- package/cjs/address/eq.d.ts +15 -0
- package/cjs/address/eq.js +22 -0
- package/cjs/address/evmToAddress.d.ts +7 -0
- package/cjs/address/evmToAddress.js +17 -0
- package/cjs/address/index.d.ts +16 -0
- package/cjs/address/index.js +35 -0
- package/cjs/address/is.d.ts +2 -0
- package/cjs/address/is.js +12 -0
- package/cjs/address/keyDerived.d.ts +2 -0
- package/cjs/address/keyDerived.js +11 -0
- package/cjs/address/keyMulti.d.ts +2 -0
- package/cjs/address/keyMulti.js +11 -0
- package/cjs/address/setSS58Format.d.ts +6 -0
- package/cjs/address/setSS58Format.js +14 -0
- package/cjs/address/sort.d.ts +2 -0
- package/cjs/address/sort.js +10 -0
- package/cjs/address/sshash.d.ts +1 -0
- package/cjs/address/sshash.js +9 -0
- package/cjs/address/types.d.ts +1 -0
- package/cjs/address/types.js +2 -0
- package/cjs/address/util.d.ts +1 -0
- package/cjs/address/util.js +7 -0
- package/cjs/address/validate.d.ts +2 -0
- package/cjs/address/validate.js +7 -0
- package/cjs/base32/bs32.d.ts +26 -0
- package/cjs/base32/bs32.js +43 -0
- package/cjs/base32/helpers.d.ts +25 -0
- package/cjs/base32/helpers.js +67 -0
- package/cjs/base32/index.d.ts +4 -0
- package/cjs/base32/index.js +11 -0
- package/cjs/base58/bs58.d.ts +26 -0
- package/cjs/base58/bs58.js +37 -0
- package/cjs/base58/index.d.ts +4 -0
- package/cjs/base58/index.js +11 -0
- package/cjs/base64/bs64.d.ts +26 -0
- package/cjs/base64/bs64.js +37 -0
- package/cjs/base64/index.d.ts +6 -0
- package/cjs/base64/index.js +15 -0
- package/cjs/base64/pad.d.ts +5 -0
- package/cjs/base64/pad.js +10 -0
- package/cjs/base64/trim.d.ts +5 -0
- package/cjs/base64/trim.js +13 -0
- package/cjs/blake2/asU8a.d.ts +20 -0
- package/cjs/blake2/asU8a.js +36 -0
- package/cjs/blake2/index.d.ts +4 -0
- package/cjs/blake2/index.js +9 -0
- package/cjs/bn.d.ts +30 -0
- package/cjs/bn.js +11 -0
- package/cjs/bundle.d.ts +26 -0
- package/cjs/bundle.js +31 -0
- package/cjs/bundleInit.d.ts +1 -0
- package/cjs/bundleInit.js +7 -0
- package/cjs/crypto.d.ts +3 -0
- package/cjs/crypto.js +16 -0
- package/cjs/ed25519/deriveHard.d.ts +1 -0
- package/cjs/ed25519/deriveHard.js +12 -0
- package/cjs/ed25519/index.d.ts +10 -0
- package/cjs/ed25519/index.js +20 -0
- package/cjs/ed25519/pair/fromRandom.d.ts +16 -0
- package/cjs/ed25519/pair/fromRandom.js +22 -0
- package/cjs/ed25519/pair/fromSecret.d.ts +16 -0
- package/cjs/ed25519/pair/fromSecret.js +26 -0
- package/cjs/ed25519/pair/fromSeed.d.ts +16 -0
- package/cjs/ed25519/pair/fromSeed.js +34 -0
- package/cjs/ed25519/pair/fromString.d.ts +16 -0
- package/cjs/ed25519/pair/fromString.js +23 -0
- package/cjs/ed25519/sign.d.ts +16 -0
- package/cjs/ed25519/sign.js +33 -0
- package/cjs/ed25519/verify.d.ts +15 -0
- package/cjs/ed25519/verify.js +39 -0
- package/cjs/ethereum/encode.d.ts +2 -0
- package/cjs/ethereum/encode.js +28 -0
- package/cjs/ethereum/index.d.ts +3 -0
- package/cjs/ethereum/index.js +9 -0
- package/cjs/ethereum/isAddress.d.ts +1 -0
- package/cjs/ethereum/isAddress.js +14 -0
- package/cjs/ethereum/isChecksum.d.ts +1 -0
- package/cjs/ethereum/isChecksum.js +20 -0
- package/cjs/hd/ethereum/index.d.ts +2 -0
- package/cjs/hd/ethereum/index.js +47 -0
- package/cjs/hd/index.d.ts +3 -0
- package/cjs/hd/index.js +9 -0
- package/cjs/hd/ledger/derivePrivate.d.ts +1 -0
- package/cjs/hd/ledger/derivePrivate.js +15 -0
- package/cjs/hd/ledger/index.d.ts +2 -0
- package/cjs/hd/ledger/index.js +33 -0
- package/cjs/hd/ledger/master.d.ts +1 -0
- package/cjs/hd/ledger/master.js +19 -0
- package/cjs/hd/validatePath.d.ts +2 -0
- package/cjs/hd/validatePath.js +20 -0
- package/cjs/helpers.d.ts +12 -0
- package/cjs/helpers.js +24 -0
- package/cjs/hmac/index.d.ts +1 -0
- package/cjs/hmac/index.js +7 -0
- package/cjs/hmac/shaAsU8a.d.ts +15 -0
- package/cjs/hmac/shaAsU8a.js +40 -0
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +5 -0
- package/cjs/json/constants.d.ts +6 -0
- package/cjs/json/constants.js +8 -0
- package/cjs/json/decrypt.d.ts +2 -0
- package/cjs/json/decrypt.js +16 -0
- package/cjs/json/decryptData.d.ts +2 -0
- package/cjs/json/decryptData.js +32 -0
- package/cjs/json/encrypt.d.ts +2 -0
- package/cjs/json/encrypt.js +18 -0
- package/cjs/json/encryptFormat.d.ts +2 -0
- package/cjs/json/encryptFormat.js +17 -0
- package/cjs/json/index.d.ts +4 -0
- package/cjs/json/index.js +11 -0
- package/cjs/json/types.d.ts +16 -0
- package/cjs/json/types.js +2 -0
- package/cjs/keccak/asU8a.d.ts +30 -0
- package/cjs/keccak/asU8a.js +36 -0
- package/cjs/keccak/index.d.ts +4 -0
- package/cjs/keccak/index.js +11 -0
- package/cjs/key/DeriveJunction.d.ts +12 -0
- package/cjs/key/DeriveJunction.js +62 -0
- package/cjs/key/extractPath.d.ts +9 -0
- package/cjs/key/extractPath.js +26 -0
- package/cjs/key/extractSuri.d.ts +11 -0
- package/cjs/key/extractSuri.js +25 -0
- package/cjs/key/fromPath.d.ts +3 -0
- package/cjs/key/fromPath.js +21 -0
- package/cjs/key/hdkdDerive.d.ts +3 -0
- package/cjs/key/hdkdDerive.js +11 -0
- package/cjs/key/hdkdEcdsa.d.ts +1 -0
- package/cjs/key/hdkdEcdsa.js +7 -0
- package/cjs/key/hdkdEd25519.d.ts +1 -0
- package/cjs/key/hdkdEd25519.js +6 -0
- package/cjs/key/hdkdSr25519.d.ts +3 -0
- package/cjs/key/hdkdSr25519.js +10 -0
- package/cjs/key/index.d.ts +9 -0
- package/cjs/key/index.js +18 -0
- package/cjs/mnemonic/bip39.d.ts +5 -0
- package/cjs/mnemonic/bip39.js +90 -0
- package/cjs/mnemonic/generate.d.ts +13 -0
- package/cjs/mnemonic/generate.js +23 -0
- package/cjs/mnemonic/index.d.ts +8 -0
- package/cjs/mnemonic/index.js +16 -0
- package/cjs/mnemonic/toEntropy.d.ts +1 -0
- package/cjs/mnemonic/toEntropy.js +11 -0
- package/cjs/mnemonic/toLegacySeed.d.ts +18 -0
- package/cjs/mnemonic/toLegacySeed.js +37 -0
- package/cjs/mnemonic/toMiniSecret.d.ts +1 -0
- package/cjs/mnemonic/toMiniSecret.js +20 -0
- package/cjs/mnemonic/validate.d.ts +14 -0
- package/cjs/mnemonic/validate.js +24 -0
- package/cjs/mnemonic/wordlists/en.d.ts +2 -0
- package/cjs/mnemonic/wordlists/en.js +3 -0
- package/cjs/mnemonic/wordlists/es.d.ts +2 -0
- package/cjs/mnemonic/wordlists/es.js +3 -0
- package/cjs/mnemonic/wordlists/fr.d.ts +2 -0
- package/cjs/mnemonic/wordlists/fr.js +3 -0
- package/cjs/mnemonic/wordlists/index.d.ts +8 -0
- package/cjs/mnemonic/wordlists/index.js +20 -0
- package/cjs/mnemonic/wordlists/it.d.ts +2 -0
- package/cjs/mnemonic/wordlists/it.js +3 -0
- package/cjs/mnemonic/wordlists/jp.d.ts +2 -0
- package/cjs/mnemonic/wordlists/jp.js +3 -0
- package/cjs/mnemonic/wordlists/ko.d.ts +2 -0
- package/cjs/mnemonic/wordlists/ko.js +3 -0
- package/cjs/mnemonic/wordlists/zh-s.d.ts +2 -0
- package/cjs/mnemonic/wordlists/zh-s.js +3 -0
- package/cjs/mnemonic/wordlists/zh-t.d.ts +2 -0
- package/cjs/mnemonic/wordlists/zh-t.js +3 -0
- package/cjs/nacl/decrypt.d.ts +15 -0
- package/cjs/nacl/decrypt.js +21 -0
- package/cjs/nacl/encrypt.d.ts +20 -0
- package/cjs/nacl/encrypt.js +25 -0
- package/cjs/nacl/index.d.ts +5 -0
- package/cjs/nacl/index.js +10 -0
- package/cjs/nacl/tweetnacl.d.ts +2 -0
- package/cjs/nacl/tweetnacl.js +238 -0
- package/cjs/networks.d.ts +1 -0
- package/cjs/networks.js +7 -0
- package/cjs/package.json +3 -0
- package/cjs/packageDetect.d.ts +1 -0
- package/cjs/packageDetect.js +8 -0
- package/cjs/packageInfo.d.ts +6 -0
- package/cjs/packageInfo.js +4 -0
- package/cjs/pbkdf2/encode.d.ts +7 -0
- package/cjs/pbkdf2/encode.js +19 -0
- package/cjs/pbkdf2/index.d.ts +1 -0
- package/cjs/pbkdf2/index.js +5 -0
- package/cjs/random/asNumber.d.ts +15 -0
- package/cjs/random/asNumber.js +23 -0
- package/cjs/random/asU8a.d.ts +20 -0
- package/cjs/random/asU8a.js +28 -0
- package/cjs/random/index.d.ts +5 -0
- package/cjs/random/index.js +11 -0
- package/cjs/scrypt/defaults.d.ts +3 -0
- package/cjs/scrypt/defaults.js +16 -0
- package/cjs/scrypt/encode.d.ts +8 -0
- package/cjs/scrypt/encode.js +18 -0
- package/cjs/scrypt/fromU8a.d.ts +7 -0
- package/cjs/scrypt/fromU8a.js +27 -0
- package/cjs/scrypt/index.d.ts +3 -0
- package/cjs/scrypt/index.js +9 -0
- package/cjs/scrypt/toU8a.d.ts +2 -0
- package/cjs/scrypt/toU8a.js +8 -0
- package/cjs/scrypt/types.d.ts +6 -0
- package/cjs/scrypt/types.js +2 -0
- package/cjs/secp256k1/compress.d.ts +1 -0
- package/cjs/secp256k1/compress.js +17 -0
- package/cjs/secp256k1/deriveHard.d.ts +1 -0
- package/cjs/secp256k1/deriveHard.js +13 -0
- package/cjs/secp256k1/expand.d.ts +1 -0
- package/cjs/secp256k1/expand.js +20 -0
- package/cjs/secp256k1/hasher.d.ts +2 -0
- package/cjs/secp256k1/hasher.js +10 -0
- package/cjs/secp256k1/index.d.ts +7 -0
- package/cjs/secp256k1/index.js +17 -0
- package/cjs/secp256k1/pair/fromSeed.d.ts +6 -0
- package/cjs/secp256k1/pair/fromSeed.js +34 -0
- package/cjs/secp256k1/recover.d.ts +6 -0
- package/cjs/secp256k1/recover.js +29 -0
- package/cjs/secp256k1/sign.d.ts +7 -0
- package/cjs/secp256k1/sign.js +23 -0
- package/cjs/secp256k1/tweakAdd.d.ts +1 -0
- package/cjs/secp256k1/tweakAdd.js +48 -0
- package/cjs/secp256k1/types.d.ts +1 -0
- package/cjs/secp256k1/types.js +2 -0
- package/cjs/secp256k1/verify.d.ts +6 -0
- package/cjs/secp256k1/verify.js +23 -0
- package/cjs/sha/asU8a.d.ts +15 -0
- package/cjs/sha/asU8a.js +22 -0
- package/cjs/sha/index.d.ts +4 -0
- package/cjs/sha/index.js +10 -0
- package/cjs/signature/index.d.ts +4 -0
- package/cjs/signature/index.js +8 -0
- package/cjs/signature/verify.d.ts +2 -0
- package/cjs/signature/verify.js +81 -0
- package/cjs/sr25519/agreement.d.ts +5 -0
- package/cjs/sr25519/agreement.js +20 -0
- package/cjs/sr25519/derive.d.ts +2 -0
- package/cjs/sr25519/derive.js +16 -0
- package/cjs/sr25519/deriveHard.d.ts +1 -0
- package/cjs/sr25519/deriveHard.js +7 -0
- package/cjs/sr25519/derivePublic.d.ts +1 -0
- package/cjs/sr25519/derivePublic.js +16 -0
- package/cjs/sr25519/deriveSoft.d.ts +1 -0
- package/cjs/sr25519/deriveSoft.js +7 -0
- package/cjs/sr25519/index.d.ts +9 -0
- package/cjs/sr25519/index.js +21 -0
- package/cjs/sr25519/pair/fromSeed.d.ts +6 -0
- package/cjs/sr25519/pair/fromSeed.js +22 -0
- package/cjs/sr25519/pair/fromU8a.d.ts +2 -0
- package/cjs/sr25519/pair/fromU8a.js +17 -0
- package/cjs/sr25519/pair/toU8a.d.ts +2 -0
- package/cjs/sr25519/pair/toU8a.js +7 -0
- package/cjs/sr25519/sign.d.ts +6 -0
- package/cjs/sr25519/sign.js +19 -0
- package/cjs/sr25519/verify.d.ts +5 -0
- package/cjs/sr25519/verify.js +21 -0
- package/cjs/sr25519/vrfSign.d.ts +6 -0
- package/cjs/sr25519/vrfSign.js +19 -0
- package/cjs/sr25519/vrfVerify.d.ts +5 -0
- package/cjs/sr25519/vrfVerify.js +22 -0
- package/cjs/types.d.ts +26 -0
- package/cjs/types.js +5 -0
- package/cjs/xxhash/asU8a.d.ts +20 -0
- package/cjs/xxhash/asU8a.js +39 -0
- package/cjs/xxhash/index.d.ts +4 -0
- package/cjs/xxhash/index.js +9 -0
- package/cjs/xxhash/xxhash64.d.ts +1 -0
- package/cjs/xxhash/xxhash64.js +103 -0
- package/crypto.d.ts +3 -0
- package/crypto.js +12 -0
- package/ed25519/deriveHard.d.ts +1 -0
- package/ed25519/deriveHard.js +9 -0
- package/ed25519/index.d.ts +10 -0
- package/ed25519/index.js +10 -0
- package/ed25519/pair/fromRandom.d.ts +16 -0
- package/ed25519/pair/fromRandom.js +19 -0
- package/ed25519/pair/fromSecret.d.ts +16 -0
- package/ed25519/pair/fromSecret.js +23 -0
- package/ed25519/pair/fromSeed.d.ts +16 -0
- package/ed25519/pair/fromSeed.js +31 -0
- package/ed25519/pair/fromString.d.ts +16 -0
- package/ed25519/pair/fromString.js +20 -0
- package/ed25519/sign.d.ts +16 -0
- package/ed25519/sign.js +30 -0
- package/ed25519/verify.d.ts +15 -0
- package/ed25519/verify.js +36 -0
- package/ethereum/encode.d.ts +2 -0
- package/ethereum/encode.js +25 -0
- package/ethereum/index.d.ts +3 -0
- package/ethereum/index.js +3 -0
- package/ethereum/isAddress.d.ts +1 -0
- package/ethereum/isAddress.js +11 -0
- package/ethereum/isChecksum.d.ts +1 -0
- package/ethereum/isChecksum.js +17 -0
- package/hd/ethereum/index.d.ts +2 -0
- package/hd/ethereum/index.js +44 -0
- package/hd/index.d.ts +3 -0
- package/hd/index.js +3 -0
- package/hd/ledger/derivePrivate.d.ts +1 -0
- package/hd/ledger/derivePrivate.js +12 -0
- package/hd/ledger/index.d.ts +2 -0
- package/hd/ledger/index.js +30 -0
- package/hd/ledger/master.d.ts +1 -0
- package/hd/ledger/master.js +16 -0
- package/hd/validatePath.d.ts +2 -0
- package/hd/validatePath.js +16 -0
- package/helpers.d.ts +12 -0
- package/helpers.js +19 -0
- package/hmac/index.d.ts +1 -0
- package/hmac/index.js +1 -0
- package/hmac/shaAsU8a.d.ts +15 -0
- package/hmac/shaAsU8a.js +36 -0
- package/index.d.ts +2 -0
- package/index.js +2 -0
- package/json/constants.d.ts +6 -0
- package/json/constants.js +5 -0
- package/json/decrypt.d.ts +2 -0
- package/json/decrypt.js +13 -0
- package/json/decryptData.d.ts +2 -0
- package/json/decryptData.js +29 -0
- package/json/encrypt.d.ts +2 -0
- package/json/encrypt.js +15 -0
- package/json/encryptFormat.d.ts +2 -0
- package/json/encryptFormat.js +14 -0
- package/json/index.d.ts +4 -0
- package/json/index.js +4 -0
- package/json/types.d.ts +16 -0
- package/json/types.js +1 -0
- package/keccak/asU8a.d.ts +30 -0
- package/keccak/asU8a.js +33 -0
- package/keccak/index.d.ts +4 -0
- package/keccak/index.js +4 -0
- package/key/DeriveJunction.d.ts +12 -0
- package/key/DeriveJunction.js +58 -0
- package/key/extractPath.d.ts +9 -0
- package/key/extractPath.js +23 -0
- package/key/extractSuri.d.ts +11 -0
- package/key/extractSuri.js +22 -0
- package/key/fromPath.d.ts +3 -0
- package/key/fromPath.js +18 -0
- package/key/hdkdDerive.d.ts +3 -0
- package/key/hdkdDerive.js +8 -0
- package/key/hdkdEcdsa.d.ts +1 -0
- package/key/hdkdEcdsa.js +4 -0
- package/key/hdkdEd25519.d.ts +1 -0
- package/key/hdkdEd25519.js +3 -0
- package/key/hdkdSr25519.d.ts +3 -0
- package/key/hdkdSr25519.js +7 -0
- package/key/index.d.ts +9 -0
- package/key/index.js +9 -0
- package/mnemonic/bip39.d.ts +5 -0
- package/mnemonic/bip39.js +82 -0
- package/mnemonic/generate.d.ts +13 -0
- package/mnemonic/generate.js +20 -0
- package/mnemonic/index.d.ts +8 -0
- package/mnemonic/index.js +8 -0
- package/mnemonic/toEntropy.d.ts +1 -0
- package/mnemonic/toEntropy.js +8 -0
- package/mnemonic/toLegacySeed.d.ts +18 -0
- package/mnemonic/toLegacySeed.js +34 -0
- package/mnemonic/toMiniSecret.d.ts +1 -0
- package/mnemonic/toMiniSecret.js +17 -0
- package/mnemonic/validate.d.ts +14 -0
- package/mnemonic/validate.js +21 -0
- package/mnemonic/wordlists/en.d.ts +2 -0
- package/mnemonic/wordlists/en.js +1 -0
- package/mnemonic/wordlists/es.d.ts +2 -0
- package/mnemonic/wordlists/es.js +1 -0
- package/mnemonic/wordlists/fr.d.ts +2 -0
- package/mnemonic/wordlists/fr.js +1 -0
- package/mnemonic/wordlists/index.d.ts +8 -0
- package/mnemonic/wordlists/index.js +8 -0
- package/mnemonic/wordlists/it.d.ts +2 -0
- package/mnemonic/wordlists/it.js +1 -0
- package/mnemonic/wordlists/jp.d.ts +2 -0
- package/mnemonic/wordlists/jp.js +1 -0
- package/mnemonic/wordlists/ko.d.ts +2 -0
- package/mnemonic/wordlists/ko.js +1 -0
- package/mnemonic/wordlists/zh-s.d.ts +2 -0
- package/mnemonic/wordlists/zh-s.js +1 -0
- package/mnemonic/wordlists/zh-t.d.ts +2 -0
- package/mnemonic/wordlists/zh-t.js +1 -0
- package/nacl/decrypt.d.ts +15 -0
- package/nacl/decrypt.js +18 -0
- package/nacl/encrypt.d.ts +20 -0
- package/nacl/encrypt.js +22 -0
- package/nacl/index.d.ts +5 -0
- package/nacl/index.js +5 -0
- package/nacl/tweetnacl.d.ts +2 -0
- package/nacl/tweetnacl.js +234 -0
- package/networks.d.ts +1 -0
- package/networks.js +1 -0
- package/package.json +2023 -11
- package/packageDetect.d.ts +1 -0
- package/packageDetect.js +6 -0
- package/packageInfo.d.ts +6 -0
- package/packageInfo.js +1 -0
- package/pbkdf2/encode.d.ts +7 -0
- package/pbkdf2/encode.js +16 -0
- package/pbkdf2/index.d.ts +1 -0
- package/pbkdf2/index.js +1 -0
- package/random/asNumber.d.ts +15 -0
- package/random/asNumber.js +20 -0
- package/random/asU8a.d.ts +20 -0
- package/random/asU8a.js +24 -0
- package/random/index.d.ts +5 -0
- package/random/index.js +5 -0
- package/scrypt/defaults.d.ts +3 -0
- package/scrypt/defaults.js +13 -0
- package/scrypt/encode.d.ts +8 -0
- package/scrypt/encode.js +15 -0
- package/scrypt/fromU8a.d.ts +7 -0
- package/scrypt/fromU8a.js +24 -0
- package/scrypt/index.d.ts +3 -0
- package/scrypt/index.js +3 -0
- package/scrypt/toU8a.d.ts +2 -0
- package/scrypt/toU8a.js +5 -0
- package/scrypt/types.d.ts +6 -0
- package/scrypt/types.js +1 -0
- package/secp256k1/compress.d.ts +1 -0
- package/secp256k1/compress.js +14 -0
- package/secp256k1/deriveHard.d.ts +1 -0
- package/secp256k1/deriveHard.js +10 -0
- package/secp256k1/expand.d.ts +1 -0
- package/secp256k1/expand.js +17 -0
- package/secp256k1/hasher.d.ts +2 -0
- package/secp256k1/hasher.js +7 -0
- package/secp256k1/index.d.ts +7 -0
- package/secp256k1/index.js +7 -0
- package/secp256k1/pair/fromSeed.d.ts +6 -0
- package/secp256k1/pair/fromSeed.js +31 -0
- package/secp256k1/recover.d.ts +6 -0
- package/secp256k1/recover.js +26 -0
- package/secp256k1/sign.d.ts +7 -0
- package/secp256k1/sign.js +20 -0
- package/secp256k1/tweakAdd.d.ts +1 -0
- package/secp256k1/tweakAdd.js +45 -0
- package/secp256k1/types.d.ts +1 -0
- package/secp256k1/types.js +1 -0
- package/secp256k1/verify.d.ts +6 -0
- package/secp256k1/verify.js +20 -0
- package/sha/asU8a.d.ts +15 -0
- package/sha/asU8a.js +19 -0
- package/sha/index.d.ts +4 -0
- package/sha/index.js +4 -0
- package/signature/index.d.ts +4 -0
- package/signature/index.js +4 -0
- package/signature/verify.d.ts +2 -0
- package/signature/verify.js +78 -0
- package/sr25519/agreement.d.ts +5 -0
- package/sr25519/agreement.js +17 -0
- package/sr25519/derive.d.ts +2 -0
- package/sr25519/derive.js +12 -0
- package/sr25519/deriveHard.d.ts +1 -0
- package/sr25519/deriveHard.js +3 -0
- package/sr25519/derivePublic.d.ts +1 -0
- package/sr25519/derivePublic.js +12 -0
- package/sr25519/deriveSoft.d.ts +1 -0
- package/sr25519/deriveSoft.js +3 -0
- package/sr25519/index.d.ts +9 -0
- package/sr25519/index.js +9 -0
- package/sr25519/pair/fromSeed.d.ts +6 -0
- package/sr25519/pair/fromSeed.js +18 -0
- package/sr25519/pair/fromU8a.d.ts +2 -0
- package/sr25519/pair/fromU8a.js +14 -0
- package/sr25519/pair/toU8a.d.ts +2 -0
- package/sr25519/pair/toU8a.js +4 -0
- package/sr25519/sign.d.ts +6 -0
- package/sr25519/sign.js +15 -0
- package/sr25519/verify.d.ts +5 -0
- package/sr25519/verify.js +17 -0
- package/sr25519/vrfSign.d.ts +6 -0
- package/sr25519/vrfSign.js +15 -0
- package/sr25519/vrfVerify.d.ts +5 -0
- package/sr25519/vrfVerify.js +18 -0
- package/src/packageInfo.ts +1 -1
- package/tsconfig.build.tsbuildinfo +1 -1
- package/tsconfig.spec.tsbuildinfo +1 -1
- package/types.d.ts +26 -0
- package/types.js +2 -0
- package/xxhash/asU8a.d.ts +20 -0
- package/xxhash/asU8a.js +35 -0
- package/xxhash/index.d.ts +4 -0
- package/xxhash/index.js +4 -0
- package/xxhash/xxhash64.d.ts +1 -0
- package/xxhash/xxhash64.js +100 -0
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = '的|一|是|在|不|了|有|和|人|這|中|大|為|上|個|國|我|以|要|他|時|來|用|們|生|到|作|地|於|出|就|分|對|成|會|可|主|發|年|動|同|工|也|能|下|過|子|說|產|種|面|而|方|後|多|定|行|學|法|所|民|得|經|十|三|之|進|著|等|部|度|家|電|力|裡|如|水|化|高|自|二|理|起|小|物|現|實|加|量|都|兩|體|制|機|當|使|點|從|業|本|去|把|性|好|應|開|它|合|還|因|由|其|些|然|前|外|天|政|四|日|那|社|義|事|平|形|相|全|表|間|樣|與|關|各|重|新|線|內|數|正|心|反|你|明|看|原|又|麼|利|比|或|但|質|氣|第|向|道|命|此|變|條|只|沒|結|解|問|意|建|月|公|無|系|軍|很|情|者|最|立|代|想|已|通|並|提|直|題|黨|程|展|五|果|料|象|員|革|位|入|常|文|總|次|品|式|活|設|及|管|特|件|長|求|老|頭|基|資|邊|流|路|級|少|圖|山|統|接|知|較|將|組|見|計|別|她|手|角|期|根|論|運|農|指|幾|九|區|強|放|決|西|被|幹|做|必|戰|先|回|則|任|取|據|處|隊|南|給|色|光|門|即|保|治|北|造|百|規|熱|領|七|海|口|東|導|器|壓|志|世|金|增|爭|濟|階|油|思|術|極|交|受|聯|什|認|六|共|權|收|證|改|清|美|再|採|轉|更|單|風|切|打|白|教|速|花|帶|安|場|身|車|例|真|務|具|萬|每|目|至|達|走|積|示|議|聲|報|鬥|完|類|八|離|華|名|確|才|科|張|信|馬|節|話|米|整|空|元|況|今|集|溫|傳|土|許|步|群|廣|石|記|需|段|研|界|拉|林|律|叫|且|究|觀|越|織|裝|影|算|低|持|音|眾|書|布|复|容|兒|須|際|商|非|驗|連|斷|深|難|近|礦|千|週|委|素|技|備|半|辦|青|省|列|習|響|約|支|般|史|感|勞|便|團|往|酸|歷|市|克|何|除|消|構|府|稱|太|準|精|值|號|率|族|維|劃|選|標|寫|存|候|毛|親|快|效|斯|院|查|江|型|眼|王|按|格|養|易|置|派|層|片|始|卻|專|狀|育|廠|京|識|適|屬|圓|包|火|住|調|滿|縣|局|照|參|紅|細|引|聽|該|鐵|價|嚴|首|底|液|官|德|隨|病|蘇|失|爾|死|講|配|女|黃|推|顯|談|罪|神|藝|呢|席|含|企|望|密|批|營|項|防|舉|球|英|氧|勢|告|李|台|落|木|幫|輪|破|亞|師|圍|注|遠|字|材|排|供|河|態|封|另|施|減|樹|溶|怎|止|案|言|士|均|武|固|葉|魚|波|視|僅|費|緊|愛|左|章|早|朝|害|續|輕|服|試|食|充|兵|源|判|護|司|足|某|練|差|致|板|田|降|黑|犯|負|擊|范|繼|興|似|餘|堅|曲|輸|修|故|城|夫|夠|送|筆|船|佔|右|財|吃|富|春|職|覺|漢|畫|功|巴|跟|雖|雜|飛|檢|吸|助|昇|陽|互|初|創|抗|考|投|壞|策|古|徑|換|未|跑|留|鋼|曾|端|責|站|簡|述|錢|副|盡|帝|射|草|衝|承|獨|令|限|阿|宣|環|雙|請|超|微|讓|控|州|良|軸|找|否|紀|益|依|優|頂|礎|載|倒|房|突|坐|粉|敵|略|客|袁|冷|勝|絕|析|塊|劑|測|絲|協|訴|念|陳|仍|羅|鹽|友|洋|錯|苦|夜|刑|移|頻|逐|靠|混|母|短|皮|終|聚|汽|村|雲|哪|既|距|衛|停|烈|央|察|燒|迅|境|若|印|洲|刻|括|激|孔|搞|甚|室|待|核|校|散|侵|吧|甲|遊|久|菜|味|舊|模|湖|貨|損|預|阻|毫|普|穩|乙|媽|植|息|擴|銀|語|揮|酒|守|拿|序|紙|醫|缺|雨|嗎|針|劉|啊|急|唱|誤|訓|願|審|附|獲|茶|鮮|糧|斤|孩|脫|硫|肥|善|龍|演|父|漸|血|歡|械|掌|歌|沙|剛|攻|謂|盾|討|晚|粒|亂|燃|矛|乎|殺|藥|寧|魯|貴|鐘|煤|讀|班|伯|香|介|迫|句|豐|培|握|蘭|擔|弦|蛋|沉|假|穿|執|答|樂|誰|順|煙|縮|徵|臉|喜|松|腳|困|異|免|背|星|福|買|染|井|概|慢|怕|磁|倍|祖|皇|促|靜|補|評|翻|肉|踐|尼|衣|寬|揚|棉|希|傷|操|垂|秋|宜|氫|套|督|振|架|亮|末|憲|慶|編|牛|觸|映|雷|銷|詩|座|居|抓|裂|胞|呼|娘|景|威|綠|晶|厚|盟|衡|雞|孫|延|危|膠|屋|鄉|臨|陸|顧|掉|呀|燈|歲|措|束|耐|劇|玉|趙|跳|哥|季|課|凱|胡|額|款|紹|卷|齊|偉|蒸|殖|永|宗|苗|川|爐|岩|弱|零|楊|奏|沿|露|桿|探|滑|鎮|飯|濃|航|懷|趕|庫|奪|伊|靈|稅|途|滅|賽|歸|召|鼓|播|盤|裁|險|康|唯|錄|菌|純|借|糖|蓋|橫|符|私|努|堂|域|槍|潤|幅|哈|竟|熟|蟲|澤|腦|壤|碳|歐|遍|側|寨|敢|徹|慮|斜|薄|庭|納|彈|飼|伸|折|麥|濕|暗|荷|瓦|塞|床|築|惡|戶|訪|塔|奇|透|梁|刀|旋|跡|卡|氯|遇|份|毒|泥|退|洗|擺|灰|彩|賣|耗|夏|擇|忙|銅|獻|硬|予|繁|圈|雪|函|亦|抽|篇|陣|陰|丁|尺|追|堆|雄|迎|泛|爸|樓|避|謀|噸|野|豬|旗|累|偏|典|館|索|秦|脂|潮|爺|豆|忽|托|驚|塑|遺|愈|朱|替|纖|粗|傾|尚|痛|楚|謝|奮|購|磨|君|池|旁|碎|骨|監|捕|弟|暴|割|貫|殊|釋|詞|亡|壁|頓|寶|午|塵|聞|揭|炮|殘|冬|橋|婦|警|綜|招|吳|付|浮|遭|徐|您|搖|谷|贊|箱|隔|訂|男|吹|園|紛|唐|敗|宋|玻|巨|耕|坦|榮|閉|灣|鍵|凡|駐|鍋|救|恩|剝|凝|鹼|齒|截|煉|麻|紡|禁|廢|盛|版|緩|淨|睛|昌|婚|涉|筒|嘴|插|岸|朗|莊|街|藏|姑|貿|腐|奴|啦|慣|乘|夥|恢|勻|紗|扎|辯|耳|彪|臣|億|璃|抵|脈|秀|薩|俄|網|舞|店|噴|縱|寸|汗|掛|洪|賀|閃|柬|爆|烯|津|稻|牆|軟|勇|像|滾|厘|蒙|芳|肯|坡|柱|盪|腿|儀|旅|尾|軋|冰|貢|登|黎|削|鑽|勒|逃|障|氨|郭|峰|幣|港|伏|軌|畝|畢|擦|莫|刺|浪|秘|援|株|健|售|股|島|甘|泡|睡|童|鑄|湯|閥|休|匯|舍|牧|繞|炸|哲|磷|績|朋|淡|尖|啟|陷|柴|呈|徒|顏|淚|稍|忘|泵|藍|拖|洞|授|鏡|辛|壯|鋒|貧|虛|彎|摩|泰|幼|廷|尊|窗|綱|弄|隸|疑|氏|宮|姐|震|瑞|怪|尤|琴|循|描|膜|違|夾|腰|緣|珠|窮|森|枝|竹|溝|催|繩|憶|邦|剩|幸|漿|欄|擁|牙|貯|禮|濾|鈉|紋|罷|拍|咱|喊|袖|埃|勤|罰|焦|潛|伍|墨|欲|縫|姓|刊|飽|仿|獎|鋁|鬼|麗|跨|默|挖|鏈|掃|喝|袋|炭|污|幕|諸|弧|勵|梅|奶|潔|災|舟|鑑|苯|訟|抱|毀|懂|寒|智|埔|寄|屆|躍|渡|挑|丹|艱|貝|碰|拔|爹|戴|碼|夢|芽|熔|赤|漁|哭|敬|顆|奔|鉛|仲|虎|稀|妹|乏|珍|申|桌|遵|允|隆|螺|倉|魏|銳|曉|氮|兼|隱|礙|赫|撥|忠|肅|缸|牽|搶|博|巧|殼|兄|杜|訊|誠|碧|祥|柯|頁|巡|矩|悲|灌|齡|倫|票|尋|桂|鋪|聖|恐|恰|鄭|趣|抬|荒|騰|貼|柔|滴|猛|闊|輛|妻|填|撤|儲|簽|鬧|擾|紫|砂|遞|戲|吊|陶|伐|餵|療|瓶|婆|撫|臂|摸|忍|蝦|蠟|鄰|胸|鞏|擠|偶|棄|槽|勁|乳|鄧|吉|仁|爛|磚|租|烏|艦|伴|瓜|淺|丙|暫|燥|橡|柳|迷|暖|牌|秧|膽|詳|簧|踏|瓷|譜|呆|賓|糊|洛|輝|憤|競|隙|怒|粘|乃|緒|肩|籍|敏|塗|熙|皆|偵|懸|掘|享|糾|醒|狂|鎖|淀|恨|牲|霸|爬|賞|逆|玩|陵|祝|秒|浙|貌|役|彼|悉|鴨|趨|鳳|晨|畜|輩|秩|卵|署|梯|炎|灘|棋|驅|篩|峽|冒|啥|壽|譯|浸|泉|帽|遲|矽|疆|貸|漏|稿|冠|嫩|脅|芯|牢|叛|蝕|奧|鳴|嶺|羊|憑|串|塘|繪|酵|融|盆|錫|廟|籌|凍|輔|攝|襲|筋|拒|僚|旱|鉀|鳥|漆|沈|眉|疏|添|棒|穗|硝|韓|逼|扭|僑|涼|挺|碗|栽|炒|杯|患|餾|勸|豪|遼|勃|鴻|旦|吏|拜|狗|埋|輥|掩|飲|搬|罵|辭|勾|扣|估|蔣|絨|霧|丈|朵|姆|擬|宇|輯|陝|雕|償|蓄|崇|剪|倡|廳|咬|駛|薯|刷|斥|番|賦|奉|佛|澆|漫|曼|扇|鈣|桃|扶|仔|返|俗|虧|腔|鞋|棱|覆|框|悄|叔|撞|騙|勘|旺|沸|孤|吐|孟|渠|屈|疾|妙|惜|仰|狠|脹|諧|拋|黴|桑|崗|嘛|衰|盜|滲|臟|賴|湧|甜|曹|閱|肌|哩|厲|烴|緯|毅|昨|偽|症|煮|嘆|釘|搭|莖|籠|酷|偷|弓|錐|恆|傑|坑|鼻|翼|綸|敘|獄|逮|罐|絡|棚|抑|膨|蔬|寺|驟|穆|冶|枯|冊|屍|凸|紳|坯|犧|焰|轟|欣|晉|瘦|禦|錠|錦|喪|旬|鍛|壟|搜|撲|邀|亭|酯|邁|舒|脆|酶|閒|憂|酚|頑|羽|漲|卸|仗|陪|闢|懲|杭|姚|肚|捉|飄|漂|昆|欺|吾|郎|烷|汁|呵|飾|蕭|雅|郵|遷|燕|撒|姻|赴|宴|煩|債|帳|斑|鈴|旨|醇|董|餅|雛|姿|拌|傅|腹|妥|揉|賢|拆|歪|葡|胺|丟|浩|徽|昂|墊|擋|覽|貪|慰|繳|汪|慌|馮|諾|姜|誼|兇|劣|誣|耀|昏|躺|盈|騎|喬|溪|叢|盧|抹|悶|諮|刮|駕|纜|悟|摘|鉺|擲|頗|幻|柄|惠|慘|佳|仇|臘|窩|滌|劍|瞧|堡|潑|蔥|罩|霍|撈|胎|蒼|濱|倆|捅|湘|砍|霞|邵|萄|瘋|淮|遂|熊|糞|烘|宿|檔|戈|駁|嫂|裕|徙|箭|捐|腸|撐|曬|辨|殿|蓮|攤|攪|醬|屏|疫|哀|蔡|堵|沫|皺|暢|疊|閣|萊|敲|轄|鉤|痕|壩|巷|餓|禍|丘|玄|溜|曰|邏|彭|嘗|卿|妨|艇|吞|韋|怨|矮|歇'.split('|');
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name naclDecrypt
|
|
3
|
+
* @summary Decrypts a message using the supplied secretKey and nonce
|
|
4
|
+
* @description
|
|
5
|
+
* Returns an decrypted message, using the `secret` and `nonce`.
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { naclDecrypt } from '@pezkuwi/util-crypto';
|
|
11
|
+
*
|
|
12
|
+
* naclDecrypt([...], [...], [...]); // => [...]
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare function naclDecrypt(encrypted: Uint8Array, nonce: Uint8Array, secret: Uint8Array): Uint8Array | null;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.naclDecrypt = naclDecrypt;
|
|
4
|
+
const tweetnacl_js_1 = require("./tweetnacl.js");
|
|
5
|
+
/**
|
|
6
|
+
* @name naclDecrypt
|
|
7
|
+
* @summary Decrypts a message using the supplied secretKey and nonce
|
|
8
|
+
* @description
|
|
9
|
+
* Returns an decrypted message, using the `secret` and `nonce`.
|
|
10
|
+
* @example
|
|
11
|
+
* <BR>
|
|
12
|
+
*
|
|
13
|
+
* ```javascript
|
|
14
|
+
* import { naclDecrypt } from '@pezkuwi/util-crypto';
|
|
15
|
+
*
|
|
16
|
+
* naclDecrypt([...], [...], [...]); // => [...]
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
function naclDecrypt(encrypted, nonce, secret) {
|
|
20
|
+
return (0, tweetnacl_js_1.naclSecretboxOpen)(encrypted, nonce, secret);
|
|
21
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
interface Encrypted {
|
|
2
|
+
encrypted: Uint8Array;
|
|
3
|
+
nonce: Uint8Array;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* @name naclEncrypt
|
|
7
|
+
* @summary Encrypts a message using the supplied secretKey and nonce
|
|
8
|
+
* @description
|
|
9
|
+
* Returns an encrypted message, using the `secretKey` and `nonce`. If the `nonce` was not supplied, a random value is generated.
|
|
10
|
+
* @example
|
|
11
|
+
* <BR>
|
|
12
|
+
*
|
|
13
|
+
* ```javascript
|
|
14
|
+
* import { naclEncrypt } from '@pezkuwi/util-crypto';
|
|
15
|
+
*
|
|
16
|
+
* naclEncrypt([...], [...]); // => [...]
|
|
17
|
+
* ```
|
|
18
|
+
*/
|
|
19
|
+
export declare function naclEncrypt(message: Uint8Array, secret: Uint8Array, nonce?: Uint8Array): Encrypted;
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.naclEncrypt = naclEncrypt;
|
|
4
|
+
const asU8a_js_1 = require("../random/asU8a.js");
|
|
5
|
+
const tweetnacl_js_1 = require("./tweetnacl.js");
|
|
6
|
+
/**
|
|
7
|
+
* @name naclEncrypt
|
|
8
|
+
* @summary Encrypts a message using the supplied secretKey and nonce
|
|
9
|
+
* @description
|
|
10
|
+
* Returns an encrypted message, using the `secretKey` and `nonce`. If the `nonce` was not supplied, a random value is generated.
|
|
11
|
+
* @example
|
|
12
|
+
* <BR>
|
|
13
|
+
*
|
|
14
|
+
* ```javascript
|
|
15
|
+
* import { naclEncrypt } from '@pezkuwi/util-crypto';
|
|
16
|
+
*
|
|
17
|
+
* naclEncrypt([...], [...]); // => [...]
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
function naclEncrypt(message, secret, nonce = (0, asU8a_js_1.randomAsU8a)(24)) {
|
|
21
|
+
return {
|
|
22
|
+
encrypted: (0, tweetnacl_js_1.naclSecretbox)(message, nonce, secret),
|
|
23
|
+
nonce
|
|
24
|
+
};
|
|
25
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.naclEncrypt = exports.naclDecrypt = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @summary Implements [NaCl](http://nacl.cr.yp.to/) secret-key authenticated encryption, public-key authenticated encryption
|
|
6
|
+
*/
|
|
7
|
+
var decrypt_js_1 = require("./decrypt.js");
|
|
8
|
+
Object.defineProperty(exports, "naclDecrypt", { enumerable: true, get: function () { return decrypt_js_1.naclDecrypt; } });
|
|
9
|
+
var encrypt_js_1 = require("./encrypt.js");
|
|
10
|
+
Object.defineProperty(exports, "naclEncrypt", { enumerable: true, get: function () { return encrypt_js_1.naclEncrypt; } });
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.naclSecretbox = naclSecretbox;
|
|
4
|
+
exports.naclSecretboxOpen = naclSecretboxOpen;
|
|
5
|
+
/* eslint-disable brace-style,camelcase,comma-spacing,curly,one-var,padding-line-between-statements,space-infix-ops */
|
|
6
|
+
function L32(x, c) { return (x << c) | (x >>> (32 - c)); }
|
|
7
|
+
function ld32(x, i) {
|
|
8
|
+
let u = x[i + 3] & 0xff;
|
|
9
|
+
u = (u << 8) | (x[i + 2] & 0xff);
|
|
10
|
+
u = (u << 8) | (x[i + 1] & 0xff);
|
|
11
|
+
return (u << 8) | (x[i + 0] & 0xff);
|
|
12
|
+
}
|
|
13
|
+
function st32(x, j, u) {
|
|
14
|
+
for (let i = 0; i < 4; i++) {
|
|
15
|
+
x[j + i] = u & 255;
|
|
16
|
+
u >>>= 8;
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
function vn(x, xi, y, yi, n) {
|
|
20
|
+
let d = 0;
|
|
21
|
+
for (let i = 0; i < n; i++)
|
|
22
|
+
d |= x[xi + i] ^ y[yi + i];
|
|
23
|
+
return (1 & ((d - 1) >>> 8)) - 1;
|
|
24
|
+
}
|
|
25
|
+
function core(out, inp, k, c, h) {
|
|
26
|
+
const w = new Uint32Array(16), x = new Uint32Array(16), y = new Uint32Array(16), t = new Uint32Array(4);
|
|
27
|
+
let i, j, m;
|
|
28
|
+
for (i = 0; i < 4; i++) {
|
|
29
|
+
x[5 * i] = ld32(c, 4 * i);
|
|
30
|
+
x[1 + i] = ld32(k, 4 * i);
|
|
31
|
+
x[6 + i] = ld32(inp, 4 * i);
|
|
32
|
+
x[11 + i] = ld32(k, 16 + 4 * i);
|
|
33
|
+
}
|
|
34
|
+
for (i = 0; i < 16; i++)
|
|
35
|
+
y[i] = x[i];
|
|
36
|
+
for (i = 0; i < 20; i++) {
|
|
37
|
+
for (j = 0; j < 4; j++) {
|
|
38
|
+
for (m = 0; m < 4; m++)
|
|
39
|
+
t[m] = x[(5 * j + 4 * m) % 16];
|
|
40
|
+
t[1] ^= L32((t[0] + t[3]) | 0, 7);
|
|
41
|
+
t[2] ^= L32((t[1] + t[0]) | 0, 9);
|
|
42
|
+
t[3] ^= L32((t[2] + t[1]) | 0, 13);
|
|
43
|
+
t[0] ^= L32((t[3] + t[2]) | 0, 18);
|
|
44
|
+
for (m = 0; m < 4; m++)
|
|
45
|
+
w[4 * j + (j + m) % 4] = t[m];
|
|
46
|
+
}
|
|
47
|
+
for (m = 0; m < 16; m++)
|
|
48
|
+
x[m] = w[m];
|
|
49
|
+
}
|
|
50
|
+
if (h) {
|
|
51
|
+
for (i = 0; i < 16; i++)
|
|
52
|
+
x[i] = (x[i] + y[i]) | 0;
|
|
53
|
+
for (i = 0; i < 4; i++) {
|
|
54
|
+
x[5 * i] = (x[5 * i] - ld32(c, 4 * i)) | 0;
|
|
55
|
+
x[6 + i] = (x[6 + i] - ld32(inp, 4 * i)) | 0;
|
|
56
|
+
}
|
|
57
|
+
for (i = 0; i < 4; i++) {
|
|
58
|
+
st32(out, 4 * i, x[5 * i]);
|
|
59
|
+
st32(out, 16 + 4 * i, x[6 + i]);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
for (i = 0; i < 16; i++)
|
|
64
|
+
st32(out, 4 * i, (x[i] + y[i]) | 0);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
const sigma = new Uint8Array([101, 120, 112, 97, 110, 100, 32, 51, 50, 45, 98, 121, 116, 101, 32, 107]);
|
|
68
|
+
function crypto_stream_salsa20_xor(c, cpos, m, mpos, b, n, k) {
|
|
69
|
+
const z = new Uint8Array(16), x = new Uint8Array(64);
|
|
70
|
+
let u, i;
|
|
71
|
+
if (!b)
|
|
72
|
+
return 0;
|
|
73
|
+
for (i = 0; i < 16; i++)
|
|
74
|
+
z[i] = 0;
|
|
75
|
+
for (i = 0; i < 8; i++)
|
|
76
|
+
z[i] = n[i];
|
|
77
|
+
while (b >= 64) {
|
|
78
|
+
core(x, z, k, sigma, false);
|
|
79
|
+
for (i = 0; i < 64; i++)
|
|
80
|
+
c[cpos + i] = (m ? m[mpos + i] : 0) ^ x[i];
|
|
81
|
+
u = 1;
|
|
82
|
+
for (i = 8; i < 16; i++) {
|
|
83
|
+
u = u + (z[i] & 0xff) | 0;
|
|
84
|
+
z[i] = u & 0xff;
|
|
85
|
+
u >>>= 8;
|
|
86
|
+
}
|
|
87
|
+
b -= 64;
|
|
88
|
+
cpos += 64;
|
|
89
|
+
if (m)
|
|
90
|
+
mpos += 64;
|
|
91
|
+
}
|
|
92
|
+
if (b > 0) {
|
|
93
|
+
core(x, z, k, sigma, false);
|
|
94
|
+
for (i = 0; i < b; i++)
|
|
95
|
+
c[cpos + i] = (m ? m[mpos + i] : 0) ^ x[i];
|
|
96
|
+
}
|
|
97
|
+
return 0;
|
|
98
|
+
}
|
|
99
|
+
function crypto_stream_xor(c, cpos, m, mpos, d, n, k) {
|
|
100
|
+
const s = new Uint8Array(32);
|
|
101
|
+
core(s, n, k, sigma, true);
|
|
102
|
+
return crypto_stream_salsa20_xor(c, cpos, m, mpos, d, n.subarray(16), s);
|
|
103
|
+
}
|
|
104
|
+
function add1305(h, c) {
|
|
105
|
+
let u = 0;
|
|
106
|
+
for (let j = 0; j < 17; j++) {
|
|
107
|
+
u = (u + ((h[j] + c[j]) | 0)) | 0;
|
|
108
|
+
h[j] = u & 255;
|
|
109
|
+
u >>>= 8;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
const minusp = new Uint32Array([5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 252]);
|
|
113
|
+
function crypto_onetimeauth(out, outpos, m, mpos, n, k) {
|
|
114
|
+
let i, j, u;
|
|
115
|
+
const x = new Uint32Array(17), r = new Uint32Array(17), h = new Uint32Array(17), c = new Uint32Array(17), g = new Uint32Array(17);
|
|
116
|
+
for (j = 0; j < 17; j++)
|
|
117
|
+
r[j] = h[j] = 0;
|
|
118
|
+
for (j = 0; j < 16; j++)
|
|
119
|
+
r[j] = k[j];
|
|
120
|
+
r[3] &= 15;
|
|
121
|
+
r[4] &= 252;
|
|
122
|
+
r[7] &= 15;
|
|
123
|
+
r[8] &= 252;
|
|
124
|
+
r[11] &= 15;
|
|
125
|
+
r[12] &= 252;
|
|
126
|
+
r[15] &= 15;
|
|
127
|
+
while (n > 0) {
|
|
128
|
+
for (j = 0; j < 17; j++)
|
|
129
|
+
c[j] = 0;
|
|
130
|
+
for (j = 0; (j < 16) && (j < n); ++j)
|
|
131
|
+
c[j] = m[mpos + j];
|
|
132
|
+
c[j] = 1;
|
|
133
|
+
mpos += j;
|
|
134
|
+
n -= j;
|
|
135
|
+
add1305(h, c);
|
|
136
|
+
for (i = 0; i < 17; i++) {
|
|
137
|
+
x[i] = 0;
|
|
138
|
+
for (j = 0; j < 17; j++)
|
|
139
|
+
x[i] = (x[i] + (h[j] * ((j <= i) ? r[i - j] : ((320 * r[i + 17 - j]) | 0))) | 0) | 0;
|
|
140
|
+
}
|
|
141
|
+
for (i = 0; i < 17; i++)
|
|
142
|
+
h[i] = x[i];
|
|
143
|
+
u = 0;
|
|
144
|
+
for (j = 0; j < 16; j++) {
|
|
145
|
+
u = (u + h[j]) | 0;
|
|
146
|
+
h[j] = u & 255;
|
|
147
|
+
u >>>= 8;
|
|
148
|
+
}
|
|
149
|
+
u = (u + h[16]) | 0;
|
|
150
|
+
h[16] = u & 3;
|
|
151
|
+
u = (5 * (u >>> 2)) | 0;
|
|
152
|
+
for (j = 0; j < 16; j++) {
|
|
153
|
+
u = (u + h[j]) | 0;
|
|
154
|
+
h[j] = u & 255;
|
|
155
|
+
u >>>= 8;
|
|
156
|
+
}
|
|
157
|
+
u = (u + h[16]) | 0;
|
|
158
|
+
h[16] = u;
|
|
159
|
+
}
|
|
160
|
+
for (j = 0; j < 17; j++)
|
|
161
|
+
g[j] = h[j];
|
|
162
|
+
add1305(h, minusp);
|
|
163
|
+
const s = (-(h[16] >>> 7) | 0);
|
|
164
|
+
for (j = 0; j < 17; j++)
|
|
165
|
+
h[j] ^= s & (g[j] ^ h[j]);
|
|
166
|
+
for (j = 0; j < 16; j++)
|
|
167
|
+
c[j] = k[j + 16];
|
|
168
|
+
c[16] = 0;
|
|
169
|
+
add1305(h, c);
|
|
170
|
+
for (j = 0; j < 16; j++)
|
|
171
|
+
out[outpos + j] = h[j];
|
|
172
|
+
return 0;
|
|
173
|
+
}
|
|
174
|
+
function crypto_onetimeauth_verify(h, hpos, m, mpos, n, k) {
|
|
175
|
+
const x = new Uint8Array(16);
|
|
176
|
+
crypto_onetimeauth(x, 0, m, mpos, n, k);
|
|
177
|
+
return vn(h, hpos, x, 0, 16);
|
|
178
|
+
}
|
|
179
|
+
function crypto_secretbox(c, m, d, n, k) {
|
|
180
|
+
if (d < 32)
|
|
181
|
+
return -1;
|
|
182
|
+
crypto_stream_xor(c, 0, m, 0, d, n, k);
|
|
183
|
+
crypto_onetimeauth(c, 16, c, 32, d - 32, c);
|
|
184
|
+
for (let i = 0; i < 16; i++)
|
|
185
|
+
c[i] = 0;
|
|
186
|
+
return 0;
|
|
187
|
+
}
|
|
188
|
+
function crypto_secretbox_open(m, c, d, n, k) {
|
|
189
|
+
const x = new Uint8Array(32);
|
|
190
|
+
if (d < 32)
|
|
191
|
+
return -1;
|
|
192
|
+
crypto_stream_xor(x, 0, null, 0, 32, n, k);
|
|
193
|
+
if (crypto_onetimeauth_verify(c, 16, c, 32, d - 32, x) !== 0)
|
|
194
|
+
return -1;
|
|
195
|
+
crypto_stream_xor(m, 0, c, 0, d, n, k);
|
|
196
|
+
for (let i = 0; i < 32; i++)
|
|
197
|
+
m[i] = 0;
|
|
198
|
+
return 0;
|
|
199
|
+
}
|
|
200
|
+
const crypto_secretbox_KEYBYTES = 32;
|
|
201
|
+
const crypto_secretbox_NONCEBYTES = 24;
|
|
202
|
+
const crypto_secretbox_ZEROBYTES = 32;
|
|
203
|
+
const crypto_secretbox_BOXZEROBYTES = 16;
|
|
204
|
+
function checkLengths(k, n) {
|
|
205
|
+
if (k.length !== crypto_secretbox_KEYBYTES)
|
|
206
|
+
throw new Error('bad key size');
|
|
207
|
+
if (n.length !== crypto_secretbox_NONCEBYTES)
|
|
208
|
+
throw new Error('bad nonce size');
|
|
209
|
+
}
|
|
210
|
+
function checkArrayTypes(...args) {
|
|
211
|
+
for (let i = 0, count = args.length; i < count; i++) {
|
|
212
|
+
if (!(args[i] instanceof Uint8Array))
|
|
213
|
+
throw new TypeError('unexpected type, use Uint8Array');
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
function naclSecretbox(msg, nonce, key) {
|
|
217
|
+
checkArrayTypes(msg, nonce, key);
|
|
218
|
+
checkLengths(key, nonce);
|
|
219
|
+
const m = new Uint8Array(crypto_secretbox_ZEROBYTES + msg.length);
|
|
220
|
+
const c = new Uint8Array(m.length);
|
|
221
|
+
for (let i = 0; i < msg.length; i++)
|
|
222
|
+
m[i + crypto_secretbox_ZEROBYTES] = msg[i];
|
|
223
|
+
crypto_secretbox(c, m, m.length, nonce, key);
|
|
224
|
+
return c.subarray(crypto_secretbox_BOXZEROBYTES);
|
|
225
|
+
}
|
|
226
|
+
function naclSecretboxOpen(box, nonce, key) {
|
|
227
|
+
checkArrayTypes(box, nonce, key);
|
|
228
|
+
checkLengths(key, nonce);
|
|
229
|
+
const c = new Uint8Array(crypto_secretbox_BOXZEROBYTES + box.length);
|
|
230
|
+
const m = new Uint8Array(c.length);
|
|
231
|
+
for (let i = 0; i < box.length; i++)
|
|
232
|
+
c[i + crypto_secretbox_BOXZEROBYTES] = box[i];
|
|
233
|
+
if (c.length < 32)
|
|
234
|
+
return null;
|
|
235
|
+
if (crypto_secretbox_open(m, c, c.length, nonce, key) !== 0)
|
|
236
|
+
return null;
|
|
237
|
+
return m.subarray(crypto_secretbox_ZEROBYTES);
|
|
238
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { allNetworks, availableNetworks, selectableNetworks } from '@pezkuwi/networks';
|
package/cjs/networks.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.selectableNetworks = exports.availableNetworks = exports.allNetworks = void 0;
|
|
4
|
+
var networks_1 = require("@pezkuwi/networks");
|
|
5
|
+
Object.defineProperty(exports, "allNetworks", { enumerable: true, get: function () { return networks_1.allNetworks; } });
|
|
6
|
+
Object.defineProperty(exports, "availableNetworks", { enumerable: true, get: function () { return networks_1.availableNetworks; } });
|
|
7
|
+
Object.defineProperty(exports, "selectableNetworks", { enumerable: true, get: function () { return networks_1.selectableNetworks; } });
|
package/cjs/package.json
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const packageInfo_1 = require("@pezkuwi/networks/cjs/packageInfo");
|
|
4
|
+
const util_1 = require("@pezkuwi/util");
|
|
5
|
+
const packageInfo_2 = require("@pezkuwi/util/cjs/packageInfo");
|
|
6
|
+
const x_randomvalues_1 = require("@pezkuwi/x-randomvalues");
|
|
7
|
+
const packageInfo_js_1 = require("./packageInfo.js");
|
|
8
|
+
(0, util_1.detectPackage)(packageInfo_js_1.packageInfo, null, [packageInfo_1.packageInfo, x_randomvalues_1.packageInfo, packageInfo_2.packageInfo]);
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pbkdf2Encode = pbkdf2Encode;
|
|
4
|
+
const pbkdf2_1 = require("@noble/hashes/pbkdf2");
|
|
5
|
+
const sha512_1 = require("@noble/hashes/sha512");
|
|
6
|
+
const util_1 = require("@pezkuwi/util");
|
|
7
|
+
const wasm_crypto_1 = require("@pezkuwi/wasm-crypto");
|
|
8
|
+
const asU8a_js_1 = require("../random/asU8a.js");
|
|
9
|
+
function pbkdf2Encode(passphrase, salt = (0, asU8a_js_1.randomAsU8a)(), rounds = 2048, onlyJs) {
|
|
10
|
+
const u8aPass = (0, util_1.u8aToU8a)(passphrase);
|
|
11
|
+
const u8aSalt = (0, util_1.u8aToU8a)(salt);
|
|
12
|
+
return {
|
|
13
|
+
password: !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())
|
|
14
|
+
? (0, wasm_crypto_1.pbkdf2)(u8aPass, u8aSalt, rounds)
|
|
15
|
+
: (0, pbkdf2_1.pbkdf2)(sha512_1.sha512, u8aPass, u8aSalt, { c: rounds, dkLen: 64 }),
|
|
16
|
+
rounds,
|
|
17
|
+
salt
|
|
18
|
+
};
|
|
19
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { pbkdf2Encode } from './encode.js';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.pbkdf2Encode = void 0;
|
|
4
|
+
var encode_js_1 = require("./encode.js");
|
|
5
|
+
Object.defineProperty(exports, "pbkdf2Encode", { enumerable: true, get: function () { return encode_js_1.pbkdf2Encode; } });
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name randomAsNumber
|
|
3
|
+
* @summary Creates a random number from random bytes.
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a random number generated from the secure bytes.
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { randomAsNumber } from '@pezkuwi/util-crypto';
|
|
11
|
+
*
|
|
12
|
+
* randomAsNumber(); // => <random number>
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare function randomAsNumber(): number;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.randomAsNumber = randomAsNumber;
|
|
4
|
+
const util_1 = require("@pezkuwi/util");
|
|
5
|
+
const asU8a_js_1 = require("./asU8a.js");
|
|
6
|
+
const BN_53 = new util_1.BN(0b11111111111111111111111111111111111111111111111111111);
|
|
7
|
+
/**
|
|
8
|
+
* @name randomAsNumber
|
|
9
|
+
* @summary Creates a random number from random bytes.
|
|
10
|
+
* @description
|
|
11
|
+
* Returns a random number generated from the secure bytes.
|
|
12
|
+
* @example
|
|
13
|
+
* <BR>
|
|
14
|
+
*
|
|
15
|
+
* ```javascript
|
|
16
|
+
* import { randomAsNumber } from '@pezkuwi/util-crypto';
|
|
17
|
+
*
|
|
18
|
+
* randomAsNumber(); // => <random number>
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
function randomAsNumber() {
|
|
22
|
+
return (0, util_1.hexToBn)((0, asU8a_js_1.randomAsHex)(8)).and(BN_53).toNumber();
|
|
23
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @name randomAsU8a
|
|
3
|
+
* @summary Creates a Uint8Array filled with random bytes.
|
|
4
|
+
* @description
|
|
5
|
+
* Returns a `Uint8Array` with the specified (optional) length filled with random bytes.
|
|
6
|
+
* @example
|
|
7
|
+
* <BR>
|
|
8
|
+
*
|
|
9
|
+
* ```javascript
|
|
10
|
+
* import { randomAsU8a } from '@pezkuwi/util-crypto';
|
|
11
|
+
*
|
|
12
|
+
* randomAsU8a(); // => Uint8Array([...])
|
|
13
|
+
* ```
|
|
14
|
+
*/
|
|
15
|
+
export declare function randomAsU8a(length?: number): Uint8Array;
|
|
16
|
+
/**
|
|
17
|
+
* @name randomAsHex
|
|
18
|
+
* @description Creates a hex string filled with random bytes.
|
|
19
|
+
*/
|
|
20
|
+
export declare const randomAsHex: (length?: number | undefined) => import("@pezkuwi/util/types").HexString;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.randomAsHex = void 0;
|
|
4
|
+
exports.randomAsU8a = randomAsU8a;
|
|
5
|
+
const x_randomvalues_1 = require("@pezkuwi/x-randomvalues");
|
|
6
|
+
const helpers_js_1 = require("../helpers.js");
|
|
7
|
+
/**
|
|
8
|
+
* @name randomAsU8a
|
|
9
|
+
* @summary Creates a Uint8Array filled with random bytes.
|
|
10
|
+
* @description
|
|
11
|
+
* Returns a `Uint8Array` with the specified (optional) length filled with random bytes.
|
|
12
|
+
* @example
|
|
13
|
+
* <BR>
|
|
14
|
+
*
|
|
15
|
+
* ```javascript
|
|
16
|
+
* import { randomAsU8a } from '@pezkuwi/util-crypto';
|
|
17
|
+
*
|
|
18
|
+
* randomAsU8a(); // => Uint8Array([...])
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
function randomAsU8a(length = 32) {
|
|
22
|
+
return (0, x_randomvalues_1.getRandomValues)(new Uint8Array(length));
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @name randomAsHex
|
|
26
|
+
* @description Creates a hex string filled with random bytes.
|
|
27
|
+
*/
|
|
28
|
+
exports.randomAsHex = (0, helpers_js_1.createAsHex)(randomAsU8a);
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.randomAsU8a = exports.randomAsHex = exports.randomAsNumber = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* @summary Returns a sequence of secure random bytes in a variety of formats
|
|
6
|
+
*/
|
|
7
|
+
var asNumber_js_1 = require("./asNumber.js");
|
|
8
|
+
Object.defineProperty(exports, "randomAsNumber", { enumerable: true, get: function () { return asNumber_js_1.randomAsNumber; } });
|
|
9
|
+
var asU8a_js_1 = require("./asU8a.js");
|
|
10
|
+
Object.defineProperty(exports, "randomAsHex", { enumerable: true, get: function () { return asU8a_js_1.randomAsHex; } });
|
|
11
|
+
Object.defineProperty(exports, "randomAsU8a", { enumerable: true, get: function () { return asU8a_js_1.randomAsU8a; } });
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DEFAULT_PARAMS = exports.ALLOWED_PARAMS = void 0;
|
|
4
|
+
exports.ALLOWED_PARAMS = [
|
|
5
|
+
{ N: 1 << 13, p: 10, r: 8 },
|
|
6
|
+
{ N: 1 << 14, p: 5, r: 8 },
|
|
7
|
+
{ N: 1 << 15, p: 3, r: 8 },
|
|
8
|
+
{ N: 1 << 15, p: 1, r: 8 },
|
|
9
|
+
{ N: 1 << 16, p: 2, r: 8 },
|
|
10
|
+
{ N: 1 << 17, p: 1, r: 8 }
|
|
11
|
+
];
|
|
12
|
+
exports.DEFAULT_PARAMS = {
|
|
13
|
+
N: 1 << 17,
|
|
14
|
+
p: 1,
|
|
15
|
+
r: 8
|
|
16
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { ScryptParams } from './types.js';
|
|
2
|
+
interface Result {
|
|
3
|
+
params: ScryptParams;
|
|
4
|
+
password: Uint8Array;
|
|
5
|
+
salt: Uint8Array;
|
|
6
|
+
}
|
|
7
|
+
export declare function scryptEncode(passphrase?: string | Uint8Array, salt?: Uint8Array, params?: ScryptParams, onlyJs?: boolean): Result;
|
|
8
|
+
export {};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scryptEncode = scryptEncode;
|
|
4
|
+
const scrypt_1 = require("@noble/hashes/scrypt");
|
|
5
|
+
const util_1 = require("@pezkuwi/util");
|
|
6
|
+
const wasm_crypto_1 = require("@pezkuwi/wasm-crypto");
|
|
7
|
+
const asU8a_js_1 = require("../random/asU8a.js");
|
|
8
|
+
const defaults_js_1 = require("./defaults.js");
|
|
9
|
+
function scryptEncode(passphrase, salt = (0, asU8a_js_1.randomAsU8a)(), params = defaults_js_1.DEFAULT_PARAMS, onlyJs) {
|
|
10
|
+
const u8a = (0, util_1.u8aToU8a)(passphrase);
|
|
11
|
+
return {
|
|
12
|
+
params,
|
|
13
|
+
password: !util_1.hasBigInt || (!onlyJs && (0, wasm_crypto_1.isReady)())
|
|
14
|
+
? (0, wasm_crypto_1.scrypt)(u8a, salt, Math.log2(params.N), params.r, params.p)
|
|
15
|
+
: (0, scrypt_1.scrypt)(u8a, salt, (0, util_1.objectSpread)({ dkLen: 64 }, params)),
|
|
16
|
+
salt
|
|
17
|
+
};
|
|
18
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scryptFromU8a = scryptFromU8a;
|
|
4
|
+
const util_1 = require("@pezkuwi/util");
|
|
5
|
+
const bn_js_1 = require("../bn.js");
|
|
6
|
+
const defaults_js_1 = require("./defaults.js");
|
|
7
|
+
function scryptFromU8a(data) {
|
|
8
|
+
if (!(data instanceof Uint8Array)) {
|
|
9
|
+
throw new Error('Expected input to be a Uint8Array');
|
|
10
|
+
}
|
|
11
|
+
// Ensure the input is exactly 44 bytes: 32 for salt + 3 * 4 for N, p, r
|
|
12
|
+
if (data.length < 32 + 12) {
|
|
13
|
+
throw new Error(`Invalid input length: expected 44 bytes, found ${data.length}`);
|
|
14
|
+
}
|
|
15
|
+
const salt = data.subarray(0, 32);
|
|
16
|
+
const N = (0, util_1.u8aToBn)(data.subarray(32, 36), bn_js_1.BN_LE_OPTS).toNumber();
|
|
17
|
+
const p = (0, util_1.u8aToBn)(data.subarray(36, 40), bn_js_1.BN_LE_OPTS).toNumber();
|
|
18
|
+
const r = (0, util_1.u8aToBn)(data.subarray(40, 44), bn_js_1.BN_LE_OPTS).toNumber();
|
|
19
|
+
if (N > (1 << 20) || p > 4 || r > 16) {
|
|
20
|
+
throw new Error('Scrypt parameters exceed safe limits');
|
|
21
|
+
}
|
|
22
|
+
const isAllowed = defaults_js_1.ALLOWED_PARAMS.some((preset) => preset.N === N && preset.p === p && preset.r === r);
|
|
23
|
+
if (!isAllowed) {
|
|
24
|
+
throw new Error('Invalid injected scrypt params found');
|
|
25
|
+
}
|
|
26
|
+
return { params: { N, p, r }, salt };
|
|
27
|
+
}
|