react-native-quick-crypto 1.0.9 → 1.0.11
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/QuickCrypto.podspec +9 -2
- package/README.md +13 -9
- package/android/CMakeLists.txt +13 -0
- package/cpp/argon2/HybridArgon2.cpp +103 -0
- package/cpp/argon2/HybridArgon2.hpp +32 -0
- package/cpp/certificate/HybridCertificate.cpp +42 -0
- package/cpp/certificate/HybridCertificate.hpp +16 -0
- package/cpp/cipher/HybridCipher.cpp +58 -0
- package/cpp/cipher/HybridCipher.hpp +4 -0
- package/cpp/cipher/HybridCipherFactory.hpp +15 -1
- package/cpp/cipher/OCBCipher.cpp +4 -4
- package/cpp/cipher/XChaCha20Poly1305Cipher.cpp +161 -0
- package/cpp/cipher/XChaCha20Poly1305Cipher.hpp +43 -0
- package/cpp/cipher/XSalsa20Poly1305Cipher.cpp +145 -0
- package/cpp/cipher/XSalsa20Poly1305Cipher.hpp +42 -0
- package/cpp/dh/HybridDhKeyPair.cpp +179 -0
- package/cpp/dh/HybridDhKeyPair.hpp +37 -0
- package/cpp/dh/HybridDiffieHellman.cpp +10 -0
- package/cpp/dh/HybridDiffieHellman.hpp +1 -0
- package/cpp/dsa/HybridDsaKeyPair.cpp +128 -0
- package/cpp/dsa/HybridDsaKeyPair.hpp +32 -0
- package/cpp/ec/HybridEcKeyPair.cpp +21 -0
- package/cpp/ec/HybridEcKeyPair.hpp +1 -0
- package/cpp/ecdh/HybridECDH.cpp +35 -0
- package/cpp/ecdh/HybridECDH.hpp +1 -0
- package/cpp/hash/HybridHash.cpp +1 -1
- package/cpp/hash/HybridHash.hpp +1 -1
- package/cpp/hmac/HybridHmac.cpp +1 -1
- package/cpp/hmac/HybridHmac.hpp +1 -1
- package/cpp/keys/HybridKeyObjectHandle.cpp +131 -1
- package/cpp/keys/HybridKeyObjectHandle.hpp +5 -1
- package/cpp/prime/HybridPrime.cpp +81 -0
- package/cpp/prime/HybridPrime.hpp +20 -0
- package/deps/ncrypto/.bazelrc +0 -1
- package/deps/ncrypto/.bazelversion +1 -1
- package/deps/ncrypto/.github/workflows/commitlint.yml +16 -0
- package/deps/ncrypto/.github/workflows/linter.yml +2 -2
- package/deps/ncrypto/.github/workflows/release-please.yml +16 -0
- package/deps/ncrypto/.github/workflows/ubuntu.yml +82 -0
- package/deps/ncrypto/.release-please-manifest.json +3 -0
- package/deps/ncrypto/BUILD.bazel +9 -1
- package/deps/ncrypto/CHANGELOG.md +37 -0
- package/deps/ncrypto/CMakeLists.txt +35 -11
- package/deps/ncrypto/MODULE.bazel +16 -1
- package/deps/ncrypto/MODULE.bazel.lock +299 -118
- package/deps/ncrypto/cmake/ncrypto-flags.cmake +1 -0
- package/deps/ncrypto/include/ncrypto/aead.h +137 -0
- package/deps/ncrypto/include/ncrypto/version.h +14 -0
- package/deps/ncrypto/include/ncrypto.h +85 -230
- package/deps/ncrypto/ncrypto.pc.in +10 -0
- package/deps/ncrypto/release-please-config.json +11 -0
- package/deps/ncrypto/src/CMakeLists.txt +31 -6
- package/deps/ncrypto/src/aead.cpp +302 -0
- package/deps/ncrypto/src/ncrypto.cpp +274 -556
- package/deps/ncrypto/tests/BUILD.bazel +2 -0
- package/deps/ncrypto/tests/basic.cpp +772 -2
- package/deps/ncrypto/tools/run-clang-format.sh +5 -5
- package/lib/commonjs/argon2.js +39 -0
- package/lib/commonjs/argon2.js.map +1 -0
- package/lib/commonjs/certificate.js +35 -0
- package/lib/commonjs/certificate.js.map +1 -0
- package/lib/commonjs/cipher.js +8 -0
- package/lib/commonjs/cipher.js.map +1 -1
- package/lib/commonjs/dhKeyPair.js +109 -0
- package/lib/commonjs/dhKeyPair.js.map +1 -0
- package/lib/commonjs/diffie-hellman.js +4 -1
- package/lib/commonjs/diffie-hellman.js.map +1 -1
- package/lib/commonjs/dsa.js +92 -0
- package/lib/commonjs/dsa.js.map +1 -0
- package/lib/commonjs/ec.js +20 -25
- package/lib/commonjs/ec.js.map +1 -1
- package/lib/commonjs/ecdh.js +37 -0
- package/lib/commonjs/ecdh.js.map +1 -1
- package/lib/commonjs/ed.js +1 -2
- package/lib/commonjs/ed.js.map +1 -1
- package/lib/commonjs/hash.js +7 -0
- package/lib/commonjs/hash.js.map +1 -1
- package/lib/commonjs/index.js +46 -1
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/keys/classes.js +18 -12
- package/lib/commonjs/keys/classes.js.map +1 -1
- package/lib/commonjs/keys/generateKeyPair.js +11 -0
- package/lib/commonjs/keys/generateKeyPair.js.map +1 -1
- package/lib/commonjs/prime.js +84 -0
- package/lib/commonjs/prime.js.map +1 -0
- package/lib/commonjs/specs/argon2.nitro.js +6 -0
- package/lib/commonjs/specs/argon2.nitro.js.map +1 -0
- package/lib/commonjs/specs/certificate.nitro.js +6 -0
- package/lib/commonjs/specs/certificate.nitro.js.map +1 -0
- package/lib/commonjs/specs/dhKeyPair.nitro.js +6 -0
- package/lib/commonjs/specs/dhKeyPair.nitro.js.map +1 -0
- package/lib/commonjs/specs/dsaKeyPair.nitro.js +6 -0
- package/lib/commonjs/specs/dsaKeyPair.nitro.js.map +1 -0
- package/lib/commonjs/specs/prime.nitro.js +6 -0
- package/lib/commonjs/specs/prime.nitro.js.map +1 -0
- package/lib/commonjs/subtle.js +181 -39
- package/lib/commonjs/subtle.js.map +1 -1
- package/lib/commonjs/utils/types.js.map +1 -1
- package/lib/module/argon2.js +34 -0
- package/lib/module/argon2.js.map +1 -0
- package/lib/module/certificate.js +30 -0
- package/lib/module/certificate.js.map +1 -0
- package/lib/module/cipher.js +7 -0
- package/lib/module/cipher.js.map +1 -1
- package/lib/module/dhKeyPair.js +102 -0
- package/lib/module/dhKeyPair.js.map +1 -0
- package/lib/module/diffie-hellman.js +4 -0
- package/lib/module/diffie-hellman.js.map +1 -1
- package/lib/module/dsa.js +85 -0
- package/lib/module/dsa.js.map +1 -0
- package/lib/module/ec.js +19 -25
- package/lib/module/ec.js.map +1 -1
- package/lib/module/ecdh.js +37 -0
- package/lib/module/ecdh.js.map +1 -1
- package/lib/module/ed.js +1 -2
- package/lib/module/ed.js.map +1 -1
- package/lib/module/hash.js +6 -0
- package/lib/module/hash.js.map +1 -1
- package/lib/module/index.js +12 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/keys/classes.js +18 -12
- package/lib/module/keys/classes.js.map +1 -1
- package/lib/module/keys/generateKeyPair.js +11 -0
- package/lib/module/keys/generateKeyPair.js.map +1 -1
- package/lib/module/prime.js +77 -0
- package/lib/module/prime.js.map +1 -0
- package/lib/module/specs/argon2.nitro.js +4 -0
- package/lib/module/specs/argon2.nitro.js.map +1 -0
- package/lib/module/specs/certificate.nitro.js +4 -0
- package/lib/module/specs/certificate.nitro.js.map +1 -0
- package/lib/module/specs/dhKeyPair.nitro.js +4 -0
- package/lib/module/specs/dhKeyPair.nitro.js.map +1 -0
- package/lib/module/specs/dsaKeyPair.nitro.js +4 -0
- package/lib/module/specs/dsaKeyPair.nitro.js.map +1 -0
- package/lib/module/specs/prime.nitro.js +4 -0
- package/lib/module/specs/prime.nitro.js.map +1 -0
- package/lib/module/subtle.js +183 -42
- package/lib/module/subtle.js.map +1 -1
- package/lib/module/utils/types.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/typescript/argon2.d.ts +16 -0
- package/lib/typescript/argon2.d.ts.map +1 -0
- package/lib/typescript/certificate.d.ts +8 -0
- package/lib/typescript/certificate.d.ts.map +1 -0
- package/lib/typescript/cipher.d.ts +12 -0
- package/lib/typescript/cipher.d.ts.map +1 -1
- package/lib/typescript/dhKeyPair.d.ts +19 -0
- package/lib/typescript/dhKeyPair.d.ts.map +1 -0
- package/lib/typescript/diffie-hellman.d.ts +2 -0
- package/lib/typescript/diffie-hellman.d.ts.map +1 -1
- package/lib/typescript/dsa.d.ts +19 -0
- package/lib/typescript/dsa.d.ts.map +1 -0
- package/lib/typescript/ec.d.ts +1 -0
- package/lib/typescript/ec.d.ts.map +1 -1
- package/lib/typescript/ecdh.d.ts +3 -0
- package/lib/typescript/ecdh.d.ts.map +1 -1
- package/lib/typescript/ed.d.ts.map +1 -1
- package/lib/typescript/hash.d.ts +2 -0
- package/lib/typescript/hash.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +22 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/keys/classes.d.ts +4 -0
- package/lib/typescript/keys/classes.d.ts.map +1 -1
- package/lib/typescript/keys/generateKeyPair.d.ts.map +1 -1
- package/lib/typescript/prime.d.ts +19 -0
- package/lib/typescript/prime.d.ts.map +1 -0
- package/lib/typescript/specs/argon2.nitro.d.ts +9 -0
- package/lib/typescript/specs/argon2.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/certificate.nitro.d.ts +10 -0
- package/lib/typescript/specs/certificate.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/cipher.nitro.d.ts +9 -0
- package/lib/typescript/specs/cipher.nitro.d.ts.map +1 -1
- package/lib/typescript/specs/dhKeyPair.nitro.d.ts +14 -0
- package/lib/typescript/specs/dhKeyPair.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/diffie-hellman.nitro.d.ts +1 -0
- package/lib/typescript/specs/diffie-hellman.nitro.d.ts.map +1 -1
- package/lib/typescript/specs/dsaKeyPair.nitro.d.ts +13 -0
- package/lib/typescript/specs/dsaKeyPair.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/ecKeyPair.nitro.d.ts +1 -0
- package/lib/typescript/specs/ecKeyPair.nitro.d.ts.map +1 -1
- package/lib/typescript/specs/ecdh.nitro.d.ts +1 -0
- package/lib/typescript/specs/ecdh.nitro.d.ts.map +1 -1
- package/lib/typescript/specs/keyObjectHandle.nitro.d.ts +2 -0
- package/lib/typescript/specs/keyObjectHandle.nitro.d.ts.map +1 -1
- package/lib/typescript/specs/prime.nitro.d.ts +11 -0
- package/lib/typescript/specs/prime.nitro.d.ts.map +1 -0
- package/lib/typescript/subtle.d.ts +2 -0
- package/lib/typescript/subtle.d.ts.map +1 -1
- package/lib/typescript/utils/types.d.ts +24 -7
- package/lib/typescript/utils/types.d.ts.map +1 -1
- package/nitrogen/generated/android/QuickCrypto+autolinking.cmake +13 -5
- package/nitrogen/generated/android/QuickCrypto+autolinking.gradle +1 -1
- package/nitrogen/generated/android/QuickCryptoOnLoad.cpp +104 -54
- package/nitrogen/generated/android/QuickCryptoOnLoad.hpp +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/crypto/QuickCryptoOnLoad.kt +1 -1
- package/nitrogen/generated/ios/QuickCrypto+autolinking.rb +2 -2
- package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Bridge.cpp +1 -1
- package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Bridge.hpp +1 -1
- package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Umbrella.hpp +1 -1
- package/nitrogen/generated/ios/QuickCryptoAutolinking.mm +104 -54
- package/nitrogen/generated/ios/QuickCryptoAutolinking.swift +5 -1
- package/nitrogen/generated/shared/c++/AsymmetricKeyType.hpp +1 -1
- package/nitrogen/generated/shared/c++/CipherArgs.hpp +34 -19
- package/nitrogen/generated/shared/c++/CipherInfo.hpp +104 -0
- package/nitrogen/generated/shared/c++/HybridArgon2Spec.cpp +22 -0
- package/nitrogen/generated/shared/c++/HybridArgon2Spec.hpp +66 -0
- package/nitrogen/generated/shared/c++/HybridBlake3Spec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridBlake3Spec.hpp +1 -3
- package/nitrogen/generated/shared/c++/HybridCertificateSpec.cpp +23 -0
- package/nitrogen/generated/shared/c++/HybridCertificateSpec.hpp +64 -0
- package/nitrogen/generated/shared/c++/HybridCipherFactorySpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridCipherFactorySpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridCipherSpec.cpp +2 -1
- package/nitrogen/generated/shared/c++/HybridCipherSpec.hpp +5 -3
- package/nitrogen/generated/shared/c++/HybridDhKeyPairSpec.cpp +27 -0
- package/nitrogen/generated/shared/c++/HybridDhKeyPairSpec.hpp +69 -0
- package/nitrogen/generated/shared/c++/HybridDiffieHellmanSpec.cpp +2 -1
- package/nitrogen/generated/shared/c++/HybridDiffieHellmanSpec.hpp +3 -3
- package/nitrogen/generated/shared/c++/HybridDsaKeyPairSpec.cpp +26 -0
- package/nitrogen/generated/shared/c++/HybridDsaKeyPairSpec.hpp +68 -0
- package/nitrogen/generated/shared/c++/HybridECDHSpec.cpp +2 -1
- package/nitrogen/generated/shared/c++/HybridECDHSpec.hpp +3 -3
- package/nitrogen/generated/shared/c++/HybridEcKeyPairSpec.cpp +2 -1
- package/nitrogen/generated/shared/c++/HybridEcKeyPairSpec.hpp +2 -3
- package/nitrogen/generated/shared/c++/HybridEdKeyPairSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridEdKeyPairSpec.hpp +2 -3
- package/nitrogen/generated/shared/c++/HybridHashSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridHashSpec.hpp +2 -4
- package/nitrogen/generated/shared/c++/HybridHkdfSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridHkdfSpec.hpp +2 -3
- package/nitrogen/generated/shared/c++/HybridHmacSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridHmacSpec.hpp +3 -4
- package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.cpp +3 -1
- package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.hpp +8 -4
- package/nitrogen/generated/shared/c++/HybridMlDsaKeyPairSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridMlDsaKeyPairSpec.hpp +2 -3
- package/nitrogen/generated/shared/c++/HybridPbkdf2Spec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridPbkdf2Spec.hpp +2 -3
- package/nitrogen/generated/shared/c++/HybridPrimeSpec.cpp +24 -0
- package/nitrogen/generated/shared/c++/HybridPrimeSpec.hpp +67 -0
- package/nitrogen/generated/shared/c++/HybridRandomSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridRandomSpec.hpp +2 -3
- package/nitrogen/generated/shared/c++/HybridRsaCipherSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridRsaCipherSpec.hpp +1 -3
- package/nitrogen/generated/shared/c++/HybridRsaKeyPairSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridRsaKeyPairSpec.hpp +1 -3
- package/nitrogen/generated/shared/c++/HybridScryptSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridScryptSpec.hpp +2 -3
- package/nitrogen/generated/shared/c++/HybridSignHandleSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridSignHandleSpec.hpp +1 -3
- package/nitrogen/generated/shared/c++/HybridUtilsSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridUtilsSpec.hpp +2 -3
- package/nitrogen/generated/shared/c++/HybridVerifyHandleSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridVerifyHandleSpec.hpp +1 -3
- package/nitrogen/generated/shared/c++/JWK.hpp +84 -68
- package/nitrogen/generated/shared/c++/JWKkty.hpp +5 -1
- package/nitrogen/generated/shared/c++/JWKuse.hpp +1 -1
- package/nitrogen/generated/shared/c++/KFormatType.hpp +1 -1
- package/nitrogen/generated/shared/c++/KeyDetail.hpp +39 -23
- package/nitrogen/generated/shared/c++/KeyEncoding.hpp +1 -1
- package/nitrogen/generated/shared/c++/KeyObject.hpp +21 -5
- package/nitrogen/generated/shared/c++/KeyType.hpp +1 -1
- package/nitrogen/generated/shared/c++/KeyUsage.hpp +1 -1
- package/nitrogen/generated/shared/c++/NamedCurve.hpp +1 -1
- package/package.json +1 -1
- package/src/argon2.ts +83 -0
- package/src/certificate.ts +41 -0
- package/src/cipher.ts +24 -0
- package/src/dhKeyPair.ts +156 -0
- package/src/diffie-hellman.ts +6 -0
- package/src/dsa.ts +129 -0
- package/src/ec.ts +23 -19
- package/src/ecdh.ts +59 -0
- package/src/ed.ts +1 -2
- package/src/hash.ts +11 -0
- package/src/index.ts +12 -0
- package/src/keys/classes.ts +26 -8
- package/src/keys/generateKeyPair.ts +14 -0
- package/src/prime.ts +134 -0
- package/src/specs/argon2.nitro.ts +29 -0
- package/src/specs/certificate.nitro.ts +8 -0
- package/src/specs/cipher.nitro.ts +14 -0
- package/src/specs/dhKeyPair.nitro.ts +14 -0
- package/src/specs/diffie-hellman.nitro.ts +1 -0
- package/src/specs/dsaKeyPair.nitro.ts +13 -0
- package/src/specs/ecKeyPair.nitro.ts +2 -0
- package/src/specs/ecdh.nitro.ts +1 -0
- package/src/specs/keyObjectHandle.nitro.ts +2 -0
- package/src/specs/prime.nitro.ts +18 -0
- package/src/subtle.ts +400 -42
- package/src/utils/types.ts +39 -5
- package/deps/ncrypto/WORKSPACE +0 -15
|
@@ -25,10 +25,10 @@ SCRIPTPATH="$( cd "$(dirname "$0")" ; pwd -P )"
|
|
|
25
25
|
MAINSOURCE=$SCRIPTPATH/..
|
|
26
26
|
ALL_FILES=$(cd $MAINSOURCE && git ls-tree --full-tree --name-only -r HEAD | grep -e ".*\.\(c\|h\|cc\|cpp\|hh\)\$")
|
|
27
27
|
|
|
28
|
-
if clang-format-
|
|
29
|
-
cd $MAINSOURCE; clang-format-
|
|
28
|
+
if clang-format-21 --version 2>/dev/null | grep -qF 'version 21.'; then
|
|
29
|
+
cd $MAINSOURCE; clang-format-21 --style=file --verbose -i "$@" $ALL_FILES
|
|
30
30
|
exit 0
|
|
31
|
-
elif clang-format --version 2>/dev/null | grep -qF 'version
|
|
31
|
+
elif clang-format --version 2>/dev/null | grep -qF 'version 21.'; then
|
|
32
32
|
cd $MAINSOURCE; clang-format --style=file --verbose -i "$@" $ALL_FILES
|
|
33
33
|
exit 0
|
|
34
34
|
fi
|
|
@@ -37,6 +37,6 @@ command -v docker >/dev/null 2>&1 || { echo >&2 "Please install docker. E.g., go
|
|
|
37
37
|
docker info >/dev/null 2>&1 || { echo >&2 "Docker server is not running? type 'docker info'."; exit 1; }
|
|
38
38
|
|
|
39
39
|
if [ -t 0 ]; then DOCKER_ARGS=-it; fi
|
|
40
|
-
docker pull kszonek/clang-format-
|
|
40
|
+
docker pull kszonek/clang-format-21
|
|
41
41
|
|
|
42
|
-
docker run --rm $DOCKER_ARGS -v "$MAINSOURCE":"$MAINSOURCE":Z -w "$MAINSOURCE" -u "$(id -u $USER):$(id -g $USER)" kszonek/clang-format-
|
|
42
|
+
docker run --rm $DOCKER_ARGS -v "$MAINSOURCE":"$MAINSOURCE":Z -w "$MAINSOURCE" -u "$(id -u $USER):$(id -g $USER)" kszonek/clang-format-21 --style=file --verbose -i "$@" $ALL_FILES
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.argon2 = argon2;
|
|
7
|
+
exports.argon2Sync = argon2Sync;
|
|
8
|
+
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
9
|
+
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
10
|
+
var _utils = require("./utils");
|
|
11
|
+
let native;
|
|
12
|
+
function getNative() {
|
|
13
|
+
if (native == null) {
|
|
14
|
+
native = _reactNativeNitroModules.NitroModules.createHybridObject('Argon2');
|
|
15
|
+
}
|
|
16
|
+
return native;
|
|
17
|
+
}
|
|
18
|
+
const ARGON2_VERSION = 0x13; // v1.3
|
|
19
|
+
|
|
20
|
+
function validateAlgorithm(algorithm) {
|
|
21
|
+
if (algorithm !== 'argon2d' && algorithm !== 'argon2i' && algorithm !== 'argon2id') {
|
|
22
|
+
throw new TypeError(`Unknown argon2 algorithm: ${algorithm}`);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
function toAB(value) {
|
|
26
|
+
return (0, _utils.binaryLikeToArrayBuffer)(value);
|
|
27
|
+
}
|
|
28
|
+
function argon2Sync(algorithm, params) {
|
|
29
|
+
validateAlgorithm(algorithm);
|
|
30
|
+
const version = params.version ?? ARGON2_VERSION;
|
|
31
|
+
const result = getNative().hashSync(algorithm, toAB(params.message), toAB(params.nonce), params.parallelism, params.tagLength, params.memory, params.passes, version, params.secret ? toAB(params.secret) : undefined, params.associatedData ? toAB(params.associatedData) : undefined);
|
|
32
|
+
return _reactNativeBuffer.Buffer.from(result);
|
|
33
|
+
}
|
|
34
|
+
function argon2(algorithm, params, callback) {
|
|
35
|
+
validateAlgorithm(algorithm);
|
|
36
|
+
const version = params.version ?? ARGON2_VERSION;
|
|
37
|
+
getNative().hash(algorithm, toAB(params.message), toAB(params.nonce), params.parallelism, params.tagLength, params.memory, params.passes, version, params.secret ? toAB(params.secret) : undefined, params.associatedData ? toAB(params.associatedData) : undefined).then(ab => callback(null, _reactNativeBuffer.Buffer.from(ab))).catch(err => callback(err, _reactNativeBuffer.Buffer.alloc(0)));
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=argon2.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeBuffer","require","_reactNativeNitroModules","_utils","native","getNative","NitroModules","createHybridObject","ARGON2_VERSION","validateAlgorithm","algorithm","TypeError","toAB","value","binaryLikeToArrayBuffer","argon2Sync","params","version","result","hashSync","message","nonce","parallelism","tagLength","memory","passes","secret","undefined","associatedData","Buffer","from","argon2","callback","hash","then","ab","catch","err","alloc"],"sourceRoot":"../../src","sources":["argon2.ts"],"mappings":";;;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,wBAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AAGA,IAAIG,MAAoB;AACxB,SAASC,SAASA,CAAA,EAAiB;EACjC,IAAID,MAAM,IAAI,IAAI,EAAE;IAClBA,MAAM,GAAGE,qCAAY,CAACC,kBAAkB,CAAe,QAAQ,CAAC;EAClE;EACA,OAAOH,MAAM;AACf;AAcA,MAAMI,cAAc,GAAG,IAAI,CAAC,CAAC;;AAE7B,SAASC,iBAAiBA,CAACC,SAAiB,EAAQ;EAClD,IACEA,SAAS,KAAK,SAAS,IACvBA,SAAS,KAAK,SAAS,IACvBA,SAAS,KAAK,UAAU,EACxB;IACA,MAAM,IAAIC,SAAS,CAAC,6BAA6BD,SAAS,EAAE,CAAC;EAC/D;AACF;AAEA,SAASE,IAAIA,CAACC,KAAiB,EAAe;EAC5C,OAAO,IAAAC,8BAAuB,EAACD,KAAK,CAAC;AACvC;AAEO,SAASE,UAAUA,CAACL,SAAiB,EAAEM,MAAoB,EAAU;EAC1EP,iBAAiB,CAACC,SAAS,CAAC;EAC5B,MAAMO,OAAO,GAAGD,MAAM,CAACC,OAAO,IAAIT,cAAc;EAChD,MAAMU,MAAM,GAAGb,SAAS,CAAC,CAAC,CAACc,QAAQ,CACjCT,SAAS,EACTE,IAAI,CAACI,MAAM,CAACI,OAAO,CAAC,EACpBR,IAAI,CAACI,MAAM,CAACK,KAAK,CAAC,EAClBL,MAAM,CAACM,WAAW,EAClBN,MAAM,CAACO,SAAS,EAChBP,MAAM,CAACQ,MAAM,EACbR,MAAM,CAACS,MAAM,EACbR,OAAO,EACPD,MAAM,CAACU,MAAM,GAAGd,IAAI,CAACI,MAAM,CAACU,MAAM,CAAC,GAAGC,SAAS,EAC/CX,MAAM,CAACY,cAAc,GAAGhB,IAAI,CAACI,MAAM,CAACY,cAAc,CAAC,GAAGD,SACxD,CAAC;EACD,OAAOE,yBAAM,CAACC,IAAI,CAACZ,MAAM,CAAC;AAC5B;AAEO,SAASa,MAAMA,CACpBrB,SAAiB,EACjBM,MAAoB,EACpBgB,QAAqD,EAC/C;EACNvB,iBAAiB,CAACC,SAAS,CAAC;EAC5B,MAAMO,OAAO,GAAGD,MAAM,CAACC,OAAO,IAAIT,cAAc;EAChDH,SAAS,CAAC,CAAC,CACR4B,IAAI,CACHvB,SAAS,EACTE,IAAI,CAACI,MAAM,CAACI,OAAO,CAAC,EACpBR,IAAI,CAACI,MAAM,CAACK,KAAK,CAAC,EAClBL,MAAM,CAACM,WAAW,EAClBN,MAAM,CAACO,SAAS,EAChBP,MAAM,CAACQ,MAAM,EACbR,MAAM,CAACS,MAAM,EACbR,OAAO,EACPD,MAAM,CAACU,MAAM,GAAGd,IAAI,CAACI,MAAM,CAACU,MAAM,CAAC,GAAGC,SAAS,EAC/CX,MAAM,CAACY,cAAc,GAAGhB,IAAI,CAACI,MAAM,CAACY,cAAc,CAAC,GAAGD,SACxD,CAAC,CACAO,IAAI,CAACC,EAAE,IAAIH,QAAQ,CAAC,IAAI,EAAEH,yBAAM,CAACC,IAAI,CAACK,EAAE,CAAC,CAAC,CAAC,CAC3CC,KAAK,CAAEC,GAAU,IAAKL,QAAQ,CAACK,GAAG,EAAER,yBAAM,CAACS,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1D","ignoreList":[]}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Certificate = void 0;
|
|
7
|
+
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
8
|
+
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
9
|
+
var _utils = require("./utils");
|
|
10
|
+
let native;
|
|
11
|
+
function getNative() {
|
|
12
|
+
if (native == null) {
|
|
13
|
+
native = _reactNativeNitroModules.NitroModules.createHybridObject('Certificate');
|
|
14
|
+
}
|
|
15
|
+
return native;
|
|
16
|
+
}
|
|
17
|
+
function toArrayBuffer(spkac, encoding) {
|
|
18
|
+
if (typeof spkac === 'string') {
|
|
19
|
+
return (0, _utils.binaryLikeToArrayBuffer)(spkac, encoding || 'utf8');
|
|
20
|
+
}
|
|
21
|
+
return (0, _utils.binaryLikeToArrayBuffer)(spkac);
|
|
22
|
+
}
|
|
23
|
+
class Certificate {
|
|
24
|
+
static exportChallenge(spkac, encoding) {
|
|
25
|
+
return _reactNativeBuffer.Buffer.from(getNative().exportChallenge(toArrayBuffer(spkac, encoding)));
|
|
26
|
+
}
|
|
27
|
+
static exportPublicKey(spkac, encoding) {
|
|
28
|
+
return _reactNativeBuffer.Buffer.from(getNative().exportPublicKey(toArrayBuffer(spkac, encoding)));
|
|
29
|
+
}
|
|
30
|
+
static verifySpkac(spkac, encoding) {
|
|
31
|
+
return getNative().verifySpkac(toArrayBuffer(spkac, encoding));
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
exports.Certificate = Certificate;
|
|
35
|
+
//# sourceMappingURL=certificate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_utils","native","getNative","NitroModules","createHybridObject","toArrayBuffer","spkac","encoding","binaryLikeToArrayBuffer","Certificate","exportChallenge","Buffer","from","exportPublicKey","verifySpkac","exports"],"sourceRoot":"../../src","sources":["certificate.ts"],"mappings":";;;;;;AAAA,IAAAA,wBAAA,GAAAC,OAAA;AACA,IAAAC,kBAAA,GAAAD,OAAA;AAGA,IAAAE,MAAA,GAAAF,OAAA;AAEA,IAAIG,MAAyB;AAC7B,SAASC,SAASA,CAAA,EAAsB;EACtC,IAAID,MAAM,IAAI,IAAI,EAAE;IAClBA,MAAM,GAAGE,qCAAY,CAACC,kBAAkB,CAAoB,aAAa,CAAC;EAC5E;EACA,OAAOH,MAAM;AACf;AAEA,SAASI,aAAaA,CACpBC,KAAiB,EACjBC,QAAyB,EACZ;EACb,IAAI,OAAOD,KAAK,KAAK,QAAQ,EAAE;IAC7B,OAAO,IAAAE,8BAAuB,EAACF,KAAK,EAAEC,QAAQ,IAAI,MAAM,CAAC;EAC3D;EACA,OAAO,IAAAC,8BAAuB,EAACF,KAAK,CAAC;AACvC;AAEO,MAAMG,WAAW,CAAC;EACvB,OAAOC,eAAeA,CAACJ,KAAiB,EAAEC,QAAyB,EAAU;IAC3E,OAAOI,yBAAM,CAACC,IAAI,CAChBV,SAAS,CAAC,CAAC,CAACQ,eAAe,CAACL,aAAa,CAACC,KAAK,EAAEC,QAAQ,CAAC,CAC5D,CAAC;EACH;EAEA,OAAOM,eAAeA,CAACP,KAAiB,EAAEC,QAAyB,EAAU;IAC3E,OAAOI,yBAAM,CAACC,IAAI,CAChBV,SAAS,CAAC,CAAC,CAACW,eAAe,CAACR,aAAa,CAACC,KAAK,EAAEC,QAAQ,CAAC,CAC5D,CAAC;EACH;EAEA,OAAOO,WAAWA,CAACR,KAAiB,EAAEC,QAAyB,EAAW;IACxE,OAAOL,SAAS,CAAC,CAAC,CAACY,WAAW,CAACT,aAAa,CAACC,KAAK,EAAEC,QAAQ,CAAC,CAAC;EAChE;AACF;AAACQ,OAAA,CAAAN,WAAA,GAAAA,WAAA","ignoreList":[]}
|
package/lib/commonjs/cipher.js
CHANGED
|
@@ -5,6 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.createCipheriv = createCipheriv;
|
|
7
7
|
exports.createDecipheriv = createDecipheriv;
|
|
8
|
+
exports.getCipherInfo = getCipherInfo;
|
|
8
9
|
exports.getCiphers = getCiphers;
|
|
9
10
|
exports.xsalsa20 = xsalsa20;
|
|
10
11
|
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
@@ -20,10 +21,17 @@ class CipherUtils {
|
|
|
20
21
|
static getSupportedCiphers() {
|
|
21
22
|
return this.native.getSupportedCiphers();
|
|
22
23
|
}
|
|
24
|
+
static getCipherInfo(name, keyLength, ivLength) {
|
|
25
|
+
return this.native.getCipherInfo(name, keyLength, ivLength);
|
|
26
|
+
}
|
|
23
27
|
}
|
|
24
28
|
function getCiphers() {
|
|
25
29
|
return CipherUtils.getSupportedCiphers();
|
|
26
30
|
}
|
|
31
|
+
function getCipherInfo(name, options) {
|
|
32
|
+
if (typeof name !== 'string' || name.length === 0) return undefined;
|
|
33
|
+
return CipherUtils.getCipherInfo(name, options?.keyLength, options?.ivLength);
|
|
34
|
+
}
|
|
27
35
|
class CipherCommon extends _readableStream.default.Transform {
|
|
28
36
|
constructor({
|
|
29
37
|
isCipher,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","_readableStream","_interopRequireDefault","_reactNativeBuffer","_utils","_cipher","e","__esModule","default","CipherUtils","native","NitroModules","createHybridObject","getSupportedCiphers","getCiphers","CipherCommon","Stream","Transform","constructor","isCipher","cipherType","cipherKey","iv","
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_readableStream","_interopRequireDefault","_reactNativeBuffer","_utils","_cipher","e","__esModule","default","CipherUtils","native","NitroModules","createHybridObject","getSupportedCiphers","getCipherInfo","name","keyLength","ivLength","getCiphers","options","length","undefined","CipherCommon","Stream","Transform","constructor","isCipher","cipherType","cipherKey","iv","streamOptions","transformKeys","key","authTagLen","getUIntOption","factory","createCipher","binaryLikeToArrayBuffer","update","data","inputEncoding","outputEncoding","defaultEncoding","getDefaultEncoding","validateEncoding","ArrayBuffer","isView","Error","ret","ab2str","Buffer","from","final","_transform","chunk","encoding","callback","push","normalizeEncoding","_flush","setAutoPadding","autoPadding","res","setAAD","buffer","plaintextLength","getAuthTag","setAuthTag","tag","Cipheriv","Decipheriv","createDecipheriv","algorithm","createCipheriv","xsalsa20","nonce","output","counter","result","Uint8Array"],"sourceRoot":"../../src","sources":["cipher.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.DhKeyPairGen = void 0;
|
|
7
|
+
exports.dh_generateKeyPairNode = dh_generateKeyPairNode;
|
|
8
|
+
exports.dh_generateKeyPairNodeSync = dh_generateKeyPairNodeSync;
|
|
9
|
+
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
10
|
+
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
11
|
+
var _keys = require("./keys");
|
|
12
|
+
var _utils = require("./utils");
|
|
13
|
+
var _dhGroups = require("./dh-groups");
|
|
14
|
+
class DhKeyPairGen {
|
|
15
|
+
constructor(options) {
|
|
16
|
+
this.native = _reactNativeNitroModules.NitroModules.createHybridObject('DhKeyPair');
|
|
17
|
+
const {
|
|
18
|
+
groupName,
|
|
19
|
+
prime,
|
|
20
|
+
primeLength,
|
|
21
|
+
generator
|
|
22
|
+
} = options;
|
|
23
|
+
if (groupName) {
|
|
24
|
+
// Resolve named group to prime + generator
|
|
25
|
+
const group = _dhGroups.DH_GROUPS[groupName];
|
|
26
|
+
if (!group) {
|
|
27
|
+
throw new Error(`Unknown DH group: ${groupName}`);
|
|
28
|
+
}
|
|
29
|
+
const primeBuf = _reactNativeBuffer.Buffer.from(group.prime, 'hex');
|
|
30
|
+
this.native.setPrime(primeBuf.buffer.slice(primeBuf.byteOffset, primeBuf.byteOffset + primeBuf.byteLength));
|
|
31
|
+
const gen = parseInt(group.generator, 16);
|
|
32
|
+
this.native.setGenerator(gen);
|
|
33
|
+
} else if (prime) {
|
|
34
|
+
// Custom prime as Buffer
|
|
35
|
+
const primeBuf = _reactNativeBuffer.Buffer.from(prime);
|
|
36
|
+
this.native.setPrime(primeBuf.buffer.slice(primeBuf.byteOffset, primeBuf.byteOffset + primeBuf.byteLength));
|
|
37
|
+
this.native.setGenerator(generator ?? 2);
|
|
38
|
+
} else if (primeLength) {
|
|
39
|
+
this.native.setPrimeLength(primeLength);
|
|
40
|
+
this.native.setGenerator(generator ?? 2);
|
|
41
|
+
} else {
|
|
42
|
+
throw new Error('DH key generation requires one of: groupName, prime, or primeLength');
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
async generateKeyPair() {
|
|
46
|
+
await this.native.generateKeyPair();
|
|
47
|
+
}
|
|
48
|
+
generateKeyPairSync() {
|
|
49
|
+
this.native.generateKeyPairSync();
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
exports.DhKeyPairGen = DhKeyPairGen;
|
|
53
|
+
function dh_prepareKeyGenParams(options) {
|
|
54
|
+
if (!options) {
|
|
55
|
+
throw new Error('Options are required for DH key generation');
|
|
56
|
+
}
|
|
57
|
+
return new DhKeyPairGen(options);
|
|
58
|
+
}
|
|
59
|
+
function dh_formatKeyPairOutput(dh, encoding) {
|
|
60
|
+
const {
|
|
61
|
+
publicFormat,
|
|
62
|
+
privateFormat,
|
|
63
|
+
cipher,
|
|
64
|
+
passphrase
|
|
65
|
+
} = encoding;
|
|
66
|
+
const publicKeyData = dh.native.getPublicKey();
|
|
67
|
+
const privateKeyData = dh.native.getPrivateKey();
|
|
68
|
+
const pub = _keys.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
|
|
69
|
+
const priv = _keys.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
|
|
70
|
+
let publicKey;
|
|
71
|
+
let privateKey;
|
|
72
|
+
if (publicFormat === -1) {
|
|
73
|
+
publicKey = pub;
|
|
74
|
+
} else {
|
|
75
|
+
const format = publicFormat === _utils.KFormatType.PEM ? _utils.KFormatType.PEM : _utils.KFormatType.DER;
|
|
76
|
+
const exported = pub.handle.exportKey(format, _utils.KeyEncoding.SPKI);
|
|
77
|
+
if (format === _utils.KFormatType.PEM) {
|
|
78
|
+
publicKey = _reactNativeBuffer.Buffer.from(new Uint8Array(exported)).toString('utf-8');
|
|
79
|
+
} else {
|
|
80
|
+
publicKey = exported;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
if (privateFormat === -1) {
|
|
84
|
+
privateKey = priv;
|
|
85
|
+
} else {
|
|
86
|
+
const format = privateFormat === _utils.KFormatType.PEM ? _utils.KFormatType.PEM : _utils.KFormatType.DER;
|
|
87
|
+
const exported = priv.handle.exportKey(format, _utils.KeyEncoding.PKCS8, cipher, passphrase);
|
|
88
|
+
if (format === _utils.KFormatType.PEM) {
|
|
89
|
+
privateKey = _reactNativeBuffer.Buffer.from(new Uint8Array(exported)).toString('utf-8');
|
|
90
|
+
} else {
|
|
91
|
+
privateKey = exported;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
return {
|
|
95
|
+
publicKey,
|
|
96
|
+
privateKey
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
async function dh_generateKeyPairNode(options, encoding) {
|
|
100
|
+
const dh = dh_prepareKeyGenParams(options);
|
|
101
|
+
await dh.generateKeyPair();
|
|
102
|
+
return dh_formatKeyPairOutput(dh, encoding);
|
|
103
|
+
}
|
|
104
|
+
function dh_generateKeyPairNodeSync(options, encoding) {
|
|
105
|
+
const dh = dh_prepareKeyGenParams(options);
|
|
106
|
+
dh.generateKeyPairSync();
|
|
107
|
+
return dh_formatKeyPairOutput(dh, encoding);
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=dhKeyPair.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_keys","_utils","_dhGroups","DhKeyPairGen","constructor","options","native","NitroModules","createHybridObject","groupName","prime","primeLength","generator","group","DH_GROUPS","Error","primeBuf","Buffer","from","setPrime","buffer","slice","byteOffset","byteLength","gen","parseInt","setGenerator","setPrimeLength","generateKeyPair","generateKeyPairSync","exports","dh_prepareKeyGenParams","dh_formatKeyPairOutput","dh","encoding","publicFormat","privateFormat","cipher","passphrase","publicKeyData","getPublicKey","privateKeyData","getPrivateKey","pub","KeyObject","createKeyObject","KFormatType","DER","KeyEncoding","SPKI","priv","PKCS8","publicKey","privateKey","format","PEM","exported","handle","exportKey","Uint8Array","toString","dh_generateKeyPairNode","dh_generateKeyPairNodeSync"],"sourceRoot":"../../src","sources":["dhKeyPair.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.DiffieHellman = void 0;
|
|
7
7
|
exports.createDiffieHellman = createDiffieHellman;
|
|
8
|
-
exports.getDiffieHellman = getDiffieHellman;
|
|
8
|
+
exports.createDiffieHellmanGroup = exports.getDiffieHellman = getDiffieHellman;
|
|
9
9
|
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
10
10
|
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
11
11
|
var _dhGroups = require("./dh-groups");
|
|
@@ -89,6 +89,9 @@ class DiffieHellman {
|
|
|
89
89
|
}
|
|
90
90
|
this._hybrid.setPrivateKey(keyBuf.buffer);
|
|
91
91
|
}
|
|
92
|
+
get verifyError() {
|
|
93
|
+
return this._hybrid.getVerifyError();
|
|
94
|
+
}
|
|
92
95
|
}
|
|
93
96
|
exports.DiffieHellman = DiffieHellman;
|
|
94
97
|
function createDiffieHellman(primeOrSize, primeEncodingOrGenerator, generator, _generatorEncoding) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_dhGroups","DiffieHellman","constructor","sizeOrPrime","generator","encoding","_hybrid","NitroModules","createHybridObject","gen","initWithSize","primeBuf","Buffer","isBuffer","from","genBuf","undefined","init","buffer","generateKeys","keys","toString","computeSecret","otherPublicKey","inputEncoding","outputEncoding","keyBuf","secret","getPrime","p","getGenerator","g","getPublicKey","getPrivateKey","setPublicKey","publicKey","setPrivateKey","privateKey","exports","createDiffieHellman","primeOrSize","primeEncodingOrGenerator","_generatorEncoding","prime","generatorVal","getDiffieHellman","groupName","group","DH_GROUPS","Error"],"sourceRoot":"../../src","sources":["diffie-hellman.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_dhGroups","DiffieHellman","constructor","sizeOrPrime","generator","encoding","_hybrid","NitroModules","createHybridObject","gen","initWithSize","primeBuf","Buffer","isBuffer","from","genBuf","undefined","init","buffer","generateKeys","keys","toString","computeSecret","otherPublicKey","inputEncoding","outputEncoding","keyBuf","secret","getPrime","p","getGenerator","g","getPublicKey","getPrivateKey","setPublicKey","publicKey","setPrivateKey","privateKey","verifyError","getVerifyError","exports","createDiffieHellman","primeOrSize","primeEncodingOrGenerator","_generatorEncoding","prime","generatorVal","getDiffieHellman","groupName","group","DH_GROUPS","Error"],"sourceRoot":"../../src","sources":["diffie-hellman.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.Dsa = void 0;
|
|
7
|
+
exports.dsa_generateKeyPairNode = dsa_generateKeyPairNode;
|
|
8
|
+
exports.dsa_generateKeyPairNodeSync = dsa_generateKeyPairNodeSync;
|
|
9
|
+
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
10
|
+
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
11
|
+
var _keys = require("./keys");
|
|
12
|
+
var _utils = require("./utils");
|
|
13
|
+
class Dsa {
|
|
14
|
+
constructor(modulusLength, divisorLength) {
|
|
15
|
+
this.native = _reactNativeNitroModules.NitroModules.createHybridObject('DsaKeyPair');
|
|
16
|
+
this.native.setModulusLength(modulusLength);
|
|
17
|
+
if (divisorLength !== undefined && divisorLength >= 0) {
|
|
18
|
+
this.native.setDivisorLength(divisorLength);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
async generateKeyPair() {
|
|
22
|
+
await this.native.generateKeyPair();
|
|
23
|
+
}
|
|
24
|
+
generateKeyPairSync() {
|
|
25
|
+
this.native.generateKeyPairSync();
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
exports.Dsa = Dsa;
|
|
29
|
+
function dsa_prepareKeyGenParams(options) {
|
|
30
|
+
if (!options) {
|
|
31
|
+
throw new Error('Options are required for DSA key generation');
|
|
32
|
+
}
|
|
33
|
+
const {
|
|
34
|
+
modulusLength,
|
|
35
|
+
divisorLength
|
|
36
|
+
} = options;
|
|
37
|
+
if (!modulusLength || modulusLength <= 0) {
|
|
38
|
+
throw new Error('Invalid or missing modulusLength for DSA key generation');
|
|
39
|
+
}
|
|
40
|
+
return new Dsa(modulusLength, divisorLength);
|
|
41
|
+
}
|
|
42
|
+
function dsa_formatKeyPairOutput(dsa, encoding) {
|
|
43
|
+
const {
|
|
44
|
+
publicFormat,
|
|
45
|
+
privateFormat,
|
|
46
|
+
cipher,
|
|
47
|
+
passphrase
|
|
48
|
+
} = encoding;
|
|
49
|
+
const publicKeyData = dsa.native.getPublicKey();
|
|
50
|
+
const privateKeyData = dsa.native.getPrivateKey();
|
|
51
|
+
const pub = _keys.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
|
|
52
|
+
const priv = _keys.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
|
|
53
|
+
let publicKey;
|
|
54
|
+
let privateKey;
|
|
55
|
+
if (publicFormat === -1) {
|
|
56
|
+
publicKey = pub;
|
|
57
|
+
} else {
|
|
58
|
+
const format = publicFormat === _utils.KFormatType.PEM ? _utils.KFormatType.PEM : _utils.KFormatType.DER;
|
|
59
|
+
const exported = pub.handle.exportKey(format, _utils.KeyEncoding.SPKI);
|
|
60
|
+
if (format === _utils.KFormatType.PEM) {
|
|
61
|
+
publicKey = _reactNativeBuffer.Buffer.from(new Uint8Array(exported)).toString('utf-8');
|
|
62
|
+
} else {
|
|
63
|
+
publicKey = exported;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
if (privateFormat === -1) {
|
|
67
|
+
privateKey = priv;
|
|
68
|
+
} else {
|
|
69
|
+
const format = privateFormat === _utils.KFormatType.PEM ? _utils.KFormatType.PEM : _utils.KFormatType.DER;
|
|
70
|
+
const exported = priv.handle.exportKey(format, _utils.KeyEncoding.PKCS8, cipher, passphrase);
|
|
71
|
+
if (format === _utils.KFormatType.PEM) {
|
|
72
|
+
privateKey = _reactNativeBuffer.Buffer.from(new Uint8Array(exported)).toString('utf-8');
|
|
73
|
+
} else {
|
|
74
|
+
privateKey = exported;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return {
|
|
78
|
+
publicKey,
|
|
79
|
+
privateKey
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
async function dsa_generateKeyPairNode(options, encoding) {
|
|
83
|
+
const dsa = dsa_prepareKeyGenParams(options);
|
|
84
|
+
await dsa.generateKeyPair();
|
|
85
|
+
return dsa_formatKeyPairOutput(dsa, encoding);
|
|
86
|
+
}
|
|
87
|
+
function dsa_generateKeyPairNodeSync(options, encoding) {
|
|
88
|
+
const dsa = dsa_prepareKeyGenParams(options);
|
|
89
|
+
dsa.generateKeyPairSync();
|
|
90
|
+
return dsa_formatKeyPairOutput(dsa, encoding);
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=dsa.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_keys","_utils","Dsa","constructor","modulusLength","divisorLength","native","NitroModules","createHybridObject","setModulusLength","undefined","setDivisorLength","generateKeyPair","generateKeyPairSync","exports","dsa_prepareKeyGenParams","options","Error","dsa_formatKeyPairOutput","dsa","encoding","publicFormat","privateFormat","cipher","passphrase","publicKeyData","getPublicKey","privateKeyData","getPrivateKey","pub","KeyObject","createKeyObject","KFormatType","DER","KeyEncoding","SPKI","priv","PKCS8","publicKey","privateKey","format","PEM","exported","handle","exportKey","Buffer","from","Uint8Array","toString","dsa_generateKeyPairNode","dsa_generateKeyPairNodeSync"],"sourceRoot":"../../src","sources":["dsa.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/ec.js
CHANGED
|
@@ -10,11 +10,26 @@ exports.ec_generateKeyPair = ec_generateKeyPair;
|
|
|
10
10
|
exports.ec_generateKeyPairNode = ec_generateKeyPairNode;
|
|
11
11
|
exports.ec_generateKeyPairNodeSync = ec_generateKeyPairNodeSync;
|
|
12
12
|
exports.ecdsaSignVerify = void 0;
|
|
13
|
+
exports.getCurves = getCurves;
|
|
13
14
|
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
14
15
|
var _keys = require("./keys");
|
|
15
16
|
var _utils = require("./utils");
|
|
16
17
|
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
17
18
|
var _ecdh = require("./ecdh");
|
|
19
|
+
class EcUtils {
|
|
20
|
+
static get native() {
|
|
21
|
+
if (!this._native) {
|
|
22
|
+
this._native = _reactNativeNitroModules.NitroModules.createHybridObject('EcKeyPair');
|
|
23
|
+
}
|
|
24
|
+
return this._native;
|
|
25
|
+
}
|
|
26
|
+
static getSupportedCurves() {
|
|
27
|
+
return this.native.getSupportedCurves();
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
function getCurves() {
|
|
31
|
+
return EcUtils.getSupportedCurves();
|
|
32
|
+
}
|
|
18
33
|
class Ec {
|
|
19
34
|
constructor(curve) {
|
|
20
35
|
this.native = _reactNativeNitroModules.NitroModules.createHybridObject('EcKeyPair');
|
|
@@ -305,8 +320,7 @@ function ec_generateKeyPairNodeSync(options, encoding) {
|
|
|
305
320
|
return ec_formatKeyPairOutput(ec, encoding);
|
|
306
321
|
}
|
|
307
322
|
function ecDeriveBits(algorithm, baseKey, length) {
|
|
308
|
-
const
|
|
309
|
-
const publicKey = publicParams.public;
|
|
323
|
+
const publicKey = algorithm.public;
|
|
310
324
|
if (!publicKey) {
|
|
311
325
|
throw new Error('Public key is required for ECDH derivation');
|
|
312
326
|
}
|
|
@@ -320,35 +334,16 @@ function ecDeriveBits(algorithm, baseKey, length) {
|
|
|
320
334
|
if (!namedCurve) {
|
|
321
335
|
throw new Error('Curve name is missing');
|
|
322
336
|
}
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
const
|
|
326
|
-
|
|
327
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
328
|
-
const jwkPrivate = baseKey.keyObject.export({
|
|
329
|
-
format: 'jwk'
|
|
330
|
-
});
|
|
337
|
+
const opensslCurve = _utils.kNamedCurveAliases[namedCurve];
|
|
338
|
+
const ecdh = new _ecdh.ECDH(opensslCurve);
|
|
339
|
+
const jwkPrivate = baseKey.keyObject.handle.exportJwk({}, false);
|
|
331
340
|
if (!jwkPrivate.d) throw new Error('Invalid private key');
|
|
332
341
|
const privateBytes = _reactNativeBuffer.Buffer.from(jwkPrivate.d, 'base64');
|
|
333
342
|
ecdh.setPrivateKey(privateBytes);
|
|
334
|
-
|
|
335
|
-
// Public key
|
|
336
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
337
|
-
const jwkPublic = publicKey.keyObject.export({
|
|
338
|
-
format: 'jwk'
|
|
339
|
-
});
|
|
340
|
-
|
|
341
|
-
// HybridECDH `computeSecret` takes public key.
|
|
342
|
-
// My implementation `HybridECDH.cpp` `computeSecret` expects what?
|
|
343
|
-
// `derive_secret` -> `EVP_PKEY_derive_set_peer`
|
|
344
|
-
// `computeSecret` calls `EC_POINT_oct2point`. So it expects an uncompressed/compressed point (04... or 02/03...).
|
|
345
|
-
// JWK gives `x` and `y`. We can construct the uncompressed point 04 + x + y.
|
|
346
|
-
|
|
343
|
+
const jwkPublic = publicKey.keyObject.handle.exportJwk({}, false);
|
|
347
344
|
if (!jwkPublic.x || !jwkPublic.y) throw new Error('Invalid public key');
|
|
348
345
|
const x = _reactNativeBuffer.Buffer.from(jwkPublic.x, 'base64');
|
|
349
346
|
const y = _reactNativeBuffer.Buffer.from(jwkPublic.y, 'base64');
|
|
350
|
-
|
|
351
|
-
// Uncompressed point: 0x04 || x || y
|
|
352
347
|
const publicBytes = _reactNativeBuffer.Buffer.concat([_reactNativeBuffer.Buffer.from([0x04]), x, y]);
|
|
353
348
|
const secret = ecdh.computeSecret(publicBytes);
|
|
354
349
|
const secretBuf = _reactNativeBuffer.Buffer.from(secret);
|
package/lib/commonjs/ec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","_keys","_utils","_reactNativeBuffer","_ecdh","Ec","constructor","curve","native","NitroModules","createHybridObject","setCurve","generateKeyPair","publicKey","getPublicKey","privateKey","getPrivateKey","generateKeyPairSync","exports","ecImportKey","format","keyData","algorithm","extractable","keyUsages","name","namedCurve","kNamedCurveAliases","lazyDOMException","jwk","kty","crv","use","undefined","expectedUse","alg","expectedAlg","handle","keyType","initJwk","keyObject","PublicKeyObject","PrivateKeyObject","CryptoKey","expectedKeyType","isPublicKey","validUsages","hasAnyNotIn","keyBuffer","bufferLikeToArrayBuffer","curveAlias","initECRaw","KeyObject","createKeyObject","KFormatType","DER","KeyEncoding","SPKI","PKCS8","ecdsaSignVerify","key","data","hash","signature","isSign","type","hashName","normalizedHashName","normalizeHashName","HashContext","WebCrypto","ec","encoding","exportKey","importKey","usages","dataBuffer","sign","signatureBuffer","verify","ec_generateKeyPair","_options","Object","keys","includes","publicUsages","privateUsages","getUsagesUnion","keyAlgorithm","publicKeyData","privateKeyData","pub","priv","ec_prepareKeyGenParams","options","Error","ec_formatKeyPairOutput","publicFormat","publicType","privateFormat","privateType","cipher","passphrase","PEM","keyEncoding","exported","Buffer","from","Uint8Array","toString","SEC1","ec_generateKeyPairNode","ec_generateKeyPairNodeSync","ecDeriveBits","baseKey","length","publicParams","public","ecdh","ECDH","jwkPrivate","export","d","privateBytes","setPrivateKey","jwkPublic","x","y","publicBytes","concat","secret","computeSecret","secretBuf","buffer","byteLength","Math","ceil","subarray"],"sourceRoot":"../../src","sources":["ec.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_keys","_utils","_reactNativeBuffer","_ecdh","EcUtils","native","_native","NitroModules","createHybridObject","getSupportedCurves","getCurves","Ec","constructor","curve","setCurve","generateKeyPair","publicKey","getPublicKey","privateKey","getPrivateKey","generateKeyPairSync","exports","ecImportKey","format","keyData","algorithm","extractable","keyUsages","name","namedCurve","kNamedCurveAliases","lazyDOMException","jwk","kty","crv","use","undefined","expectedUse","alg","expectedAlg","handle","keyType","initJwk","keyObject","PublicKeyObject","PrivateKeyObject","CryptoKey","expectedKeyType","isPublicKey","validUsages","hasAnyNotIn","keyBuffer","bufferLikeToArrayBuffer","curveAlias","initECRaw","KeyObject","createKeyObject","KFormatType","DER","KeyEncoding","SPKI","PKCS8","ecdsaSignVerify","key","data","hash","signature","isSign","type","hashName","normalizedHashName","normalizeHashName","HashContext","WebCrypto","ec","encoding","exportKey","importKey","usages","dataBuffer","sign","signatureBuffer","verify","ec_generateKeyPair","_options","Object","keys","includes","publicUsages","privateUsages","getUsagesUnion","keyAlgorithm","publicKeyData","privateKeyData","pub","priv","ec_prepareKeyGenParams","options","Error","ec_formatKeyPairOutput","publicFormat","publicType","privateFormat","privateType","cipher","passphrase","PEM","keyEncoding","exported","Buffer","from","Uint8Array","toString","SEC1","ec_generateKeyPairNode","ec_generateKeyPairNodeSync","ecDeriveBits","baseKey","length","public","opensslCurve","ecdh","ECDH","jwkPrivate","exportJwk","d","privateBytes","setPrivateKey","jwkPublic","x","y","publicBytes","concat","secret","computeSecret","secretBuf","buffer","byteLength","Math","ceil","subarray"],"sourceRoot":"../../src","sources":["ec.ts"],"mappings":"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","ignoreList":[]}
|