react-native-quick-crypto 1.0.10 → 1.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/android/CMakeLists.txt +16 -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/CCMCipher.cpp +4 -1
- package/cpp/cipher/ChaCha20Cipher.cpp +3 -1
- package/cpp/cipher/ChaCha20Poly1305Cipher.cpp +5 -5
- package/cpp/cipher/ChaCha20Poly1305Cipher.hpp +1 -2
- package/cpp/cipher/HybridCipher.cpp +68 -1
- package/cpp/cipher/HybridCipher.hpp +6 -0
- package/cpp/cipher/HybridRsaCipher.cpp +0 -13
- package/cpp/cipher/XChaCha20Poly1305Cipher.cpp +7 -5
- package/cpp/cipher/XChaCha20Poly1305Cipher.hpp +1 -2
- package/cpp/cipher/XSalsa20Cipher.cpp +4 -0
- package/cpp/cipher/XSalsa20Poly1305Cipher.cpp +7 -5
- package/cpp/cipher/XSalsa20Poly1305Cipher.hpp +1 -2
- package/cpp/dh/HybridDhKeyPair.cpp +179 -0
- package/cpp/dh/HybridDhKeyPair.hpp +37 -0
- package/cpp/dsa/HybridDsaKeyPair.cpp +128 -0
- package/cpp/dsa/HybridDsaKeyPair.hpp +32 -0
- package/cpp/ecdh/HybridECDH.cpp +42 -120
- package/cpp/ecdh/HybridECDH.hpp +1 -0
- package/cpp/keys/HybridKeyObjectHandle.cpp +150 -128
- package/cpp/keys/HybridKeyObjectHandle.hpp +6 -3
- package/cpp/keys/KeyObjectData.hpp +2 -0
- package/cpp/kmac/HybridKmac.cpp +83 -0
- package/cpp/kmac/HybridKmac.hpp +31 -0
- package/cpp/mldsa/HybridMlDsaKeyPair.cpp +11 -20
- package/cpp/mldsa/HybridMlDsaKeyPair.hpp +4 -2
- package/cpp/mlkem/HybridMlKemKeyPair.cpp +319 -0
- package/cpp/mlkem/HybridMlKemKeyPair.hpp +48 -0
- package/cpp/prime/HybridPrime.cpp +81 -0
- package/cpp/prime/HybridPrime.hpp +20 -0
- package/cpp/sign/SignUtils.hpp +9 -26
- package/cpp/utils/QuickCryptoUtils.cpp +44 -0
- package/cpp/utils/QuickCryptoUtils.hpp +39 -0
- package/cpp/x509/HybridX509Certificate.cpp +174 -0
- package/cpp/x509/HybridX509Certificate.hpp +51 -0
- 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 +23 -2
- 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/dsa.js +92 -0
- package/lib/commonjs/dsa.js.map +1 -0
- package/lib/commonjs/ec.js +18 -18
- 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 +9 -9
- package/lib/commonjs/ed.js.map +1 -1
- package/lib/commonjs/hash.js +17 -12
- package/lib/commonjs/hash.js.map +1 -1
- package/lib/commonjs/hkdf.js.map +1 -1
- package/lib/commonjs/index.js +57 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/keys/classes.js +11 -9
- 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/keys/index.js +24 -0
- package/lib/commonjs/keys/index.js.map +1 -1
- package/lib/commonjs/keys/signVerify.js +0 -2
- package/lib/commonjs/keys/signVerify.js.map +1 -1
- package/lib/commonjs/mlkem.js +219 -0
- package/lib/commonjs/mlkem.js.map +1 -0
- package/lib/commonjs/pbkdf2.js +18 -1
- package/lib/commonjs/pbkdf2.js.map +1 -1
- package/lib/commonjs/prime.js +84 -0
- package/lib/commonjs/prime.js.map +1 -0
- package/lib/commonjs/rsa.js +7 -7
- package/lib/commonjs/rsa.js.map +1 -1
- 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/kmac.nitro.js +6 -0
- package/lib/commonjs/specs/kmac.nitro.js.map +1 -0
- package/lib/commonjs/specs/mlKemKeyPair.nitro.js +6 -0
- package/lib/commonjs/specs/mlKemKeyPair.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/specs/x509certificate.nitro.js +6 -0
- package/lib/commonjs/specs/x509certificate.nitro.js.map +1 -0
- package/lib/commonjs/subtle.js +385 -114
- package/lib/commonjs/subtle.js.map +1 -1
- package/lib/commonjs/utils/conversion.js +3 -3
- package/lib/commonjs/utils/conversion.js.map +1 -1
- package/lib/commonjs/utils/hashnames.js +31 -0
- package/lib/commonjs/utils/hashnames.js.map +1 -1
- package/lib/commonjs/utils/types.js.map +1 -1
- package/lib/commonjs/x509certificate.js +189 -0
- package/lib/commonjs/x509certificate.js.map +1 -0
- 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 +23 -3
- 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/dsa.js +85 -0
- package/lib/module/dsa.js.map +1 -0
- package/lib/module/ec.js +6 -6
- 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 -1
- package/lib/module/ed.js.map +1 -1
- package/lib/module/hash.js +17 -12
- package/lib/module/hash.js.map +1 -1
- package/lib/module/hkdf.js.map +1 -1
- package/lib/module/index.js +15 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/keys/classes.js +11 -9
- 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/keys/index.js +25 -1
- package/lib/module/keys/index.js.map +1 -1
- package/lib/module/keys/signVerify.js +0 -2
- package/lib/module/keys/signVerify.js.map +1 -1
- package/lib/module/mlkem.js +211 -0
- package/lib/module/mlkem.js.map +1 -0
- package/lib/module/pbkdf2.js +18 -1
- package/lib/module/pbkdf2.js.map +1 -1
- package/lib/module/prime.js +77 -0
- package/lib/module/prime.js.map +1 -0
- package/lib/module/rsa.js +1 -1
- package/lib/module/rsa.js.map +1 -1
- 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/kmac.nitro.js +4 -0
- package/lib/module/specs/kmac.nitro.js.map +1 -0
- package/lib/module/specs/mlKemKeyPair.nitro.js +4 -0
- package/lib/module/specs/mlKemKeyPair.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/specs/x509certificate.nitro.js +4 -0
- package/lib/module/specs/x509certificate.nitro.js.map +1 -0
- package/lib/module/subtle.js +386 -116
- package/lib/module/subtle.js.map +1 -1
- package/lib/module/utils/conversion.js +3 -4
- package/lib/module/utils/conversion.js.map +1 -1
- package/lib/module/utils/hashnames.js +31 -0
- package/lib/module/utils/hashnames.js.map +1 -1
- package/lib/module/utils/types.js.map +1 -1
- package/lib/module/x509certificate.js +184 -0
- package/lib/module/x509certificate.js.map +1 -0
- 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 +15 -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/dsa.d.ts +19 -0
- package/lib/typescript/dsa.d.ts.map +1 -0
- package/lib/typescript/ec.d.ts +1 -1
- 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 +1 -1
- package/lib/typescript/ed.d.ts.map +1 -1
- package/lib/typescript/hash.d.ts.map +1 -1
- package/lib/typescript/hkdf.d.ts +2 -6
- package/lib/typescript/hkdf.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +32 -4
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/keys/classes.d.ts +7 -5
- package/lib/typescript/keys/classes.d.ts.map +1 -1
- package/lib/typescript/keys/generateKeyPair.d.ts.map +1 -1
- package/lib/typescript/keys/index.d.ts +2 -2
- package/lib/typescript/keys/index.d.ts.map +1 -1
- package/lib/typescript/keys/signVerify.d.ts.map +1 -1
- package/lib/typescript/mlkem.d.ts +30 -0
- package/lib/typescript/mlkem.d.ts.map +1 -0
- package/lib/typescript/pbkdf2.d.ts +2 -2
- package/lib/typescript/pbkdf2.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/rsa.d.ts +1 -1
- package/lib/typescript/rsa.d.ts.map +1 -1
- 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/dsaKeyPair.nitro.d.ts +13 -0
- package/lib/typescript/specs/dsaKeyPair.nitro.d.ts.map +1 -0
- 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 +1 -0
- package/lib/typescript/specs/keyObjectHandle.nitro.d.ts.map +1 -1
- package/lib/typescript/specs/kmac.nitro.d.ts +10 -0
- package/lib/typescript/specs/kmac.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/mlKemKeyPair.nitro.d.ts +18 -0
- package/lib/typescript/specs/mlKemKeyPair.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/prime.nitro.d.ts +11 -0
- package/lib/typescript/specs/prime.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/x509certificate.nitro.d.ts +34 -0
- package/lib/typescript/specs/x509certificate.nitro.d.ts.map +1 -0
- package/lib/typescript/subtle.d.ts +12 -0
- package/lib/typescript/subtle.d.ts.map +1 -1
- package/lib/typescript/utils/conversion.d.ts.map +1 -1
- package/lib/typescript/utils/hashnames.d.ts +1 -1
- package/lib/typescript/utils/hashnames.d.ts.map +1 -1
- package/lib/typescript/utils/types.d.ts +25 -9
- package/lib/typescript/utils/types.d.ts.map +1 -1
- package/lib/typescript/x509certificate.d.ts +64 -0
- package/lib/typescript/x509certificate.d.ts.map +1 -0
- package/nitrogen/generated/android/QuickCrypto+autolinking.cmake +8 -0
- package/nitrogen/generated/android/QuickCryptoOnLoad.cpp +80 -0
- package/nitrogen/generated/ios/QuickCryptoAutolinking.mm +80 -0
- package/nitrogen/generated/shared/c++/AsymmetricKeyType.hpp +12 -0
- 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++/HybridCertificateSpec.cpp +23 -0
- package/nitrogen/generated/shared/c++/HybridCertificateSpec.hpp +64 -0
- package/nitrogen/generated/shared/c++/HybridCipherSpec.cpp +1 -0
- package/nitrogen/generated/shared/c++/HybridCipherSpec.hpp +4 -0
- package/nitrogen/generated/shared/c++/HybridDhKeyPairSpec.cpp +27 -0
- package/nitrogen/generated/shared/c++/HybridDhKeyPairSpec.hpp +69 -0
- 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 +1 -0
- package/nitrogen/generated/shared/c++/HybridECDHSpec.hpp +1 -0
- package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.cpp +1 -0
- package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.hpp +1 -0
- package/nitrogen/generated/shared/c++/HybridKmacSpec.cpp +23 -0
- package/nitrogen/generated/shared/c++/HybridKmacSpec.hpp +66 -0
- package/nitrogen/generated/shared/c++/HybridMlKemKeyPairSpec.cpp +31 -0
- package/nitrogen/generated/shared/c++/HybridMlKemKeyPairSpec.hpp +74 -0
- package/nitrogen/generated/shared/c++/HybridPrimeSpec.cpp +24 -0
- package/nitrogen/generated/shared/c++/HybridPrimeSpec.hpp +67 -0
- package/nitrogen/generated/shared/c++/HybridX509CertificateHandleSpec.cpp +46 -0
- package/nitrogen/generated/shared/c++/HybridX509CertificateHandleSpec.hpp +96 -0
- package/package.json +4 -1
- package/src/argon2.ts +83 -0
- package/src/certificate.ts +41 -0
- package/src/cipher.ts +41 -3
- package/src/dhKeyPair.ts +156 -0
- package/src/dsa.ts +129 -0
- package/src/ec.ts +9 -9
- package/src/ecdh.ts +59 -0
- package/src/ed.ts +2 -2
- package/src/hash.ts +34 -11
- package/src/hkdf.ts +2 -7
- package/src/index.ts +16 -0
- package/src/keys/classes.ts +26 -14
- package/src/keys/generateKeyPair.ts +14 -0
- package/src/keys/index.ts +37 -2
- package/src/keys/signVerify.ts +0 -5
- package/src/mlkem.ts +350 -0
- package/src/pbkdf2.ts +34 -5
- package/src/prime.ts +134 -0
- package/src/rsa.ts +1 -1
- 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/dsaKeyPair.nitro.ts +13 -0
- package/src/specs/ecdh.nitro.ts +1 -0
- package/src/specs/keyObjectHandle.nitro.ts +5 -0
- package/src/specs/kmac.nitro.ts +12 -0
- package/src/specs/mlKemKeyPair.nitro.ts +32 -0
- package/src/specs/prime.nitro.ts +18 -0
- package/src/specs/x509certificate.nitro.ts +38 -0
- package/src/subtle.ts +821 -136
- package/src/utils/conversion.ts +10 -4
- package/src/utils/hashnames.ts +33 -2
- package/src/utils/types.ts +64 -8
- package/src/x509certificate.ts +277 -0
|
@@ -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","_string_decoder","_reactNativeBuffer","_utils","_cipher","e","__esModule","default","CipherUtils","native","NitroModules","createHybridObject","getSupportedCiphers","getCipherInfo","name","keyLength","ivLength","getCiphers","options","length","undefined","CipherCommon","Stream","Transform","_decoder","_decoderEncoding","constructor","isCipher","cipherType","cipherKey","iv","streamOptions","transformKeys","key","authTagLen","getUIntOption","factory","createCipher","binaryLikeToArrayBuffer","getDecoder","encoding","normalized","normalizeEncoding","StringDecoder","Error","update","data","inputEncoding","outputEncoding","defaultEncoding","getDefaultEncoding","validateEncoding","ArrayBuffer","isView","ret","write","Buffer","from","final","end","_transform","chunk","callback","push","_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 _classes = require("./keys/classes");
|
|
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 = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
|
|
69
|
+
const priv = _classes.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","_classes","_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":[]}
|
|
@@ -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 _classes = require("./keys/classes");
|
|
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 = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
|
|
52
|
+
const priv = _classes.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","_classes","_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
|
@@ -12,7 +12,7 @@ exports.ec_generateKeyPairNodeSync = ec_generateKeyPairNodeSync;
|
|
|
12
12
|
exports.ecdsaSignVerify = void 0;
|
|
13
13
|
exports.getCurves = getCurves;
|
|
14
14
|
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
15
|
-
var
|
|
15
|
+
var _classes = require("./keys/classes");
|
|
16
16
|
var _utils = require("./utils");
|
|
17
17
|
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
18
18
|
var _ecdh = require("./ecdh");
|
|
@@ -51,7 +51,7 @@ class Ec {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
|
|
54
|
-
//
|
|
54
|
+
// WebCrypto API - only P-256, P-384, P-521 allowed per spec
|
|
55
55
|
exports.Ec = Ec;
|
|
56
56
|
function ecImportKey(format, keyData, algorithm, extractable, keyUsages) {
|
|
57
57
|
const {
|
|
@@ -107,13 +107,13 @@ function ecImportKey(format, keyData, algorithm, extractable, keyUsages) {
|
|
|
107
107
|
// Create the appropriate KeyObject based on type
|
|
108
108
|
let keyObject;
|
|
109
109
|
if (keyType === 1) {
|
|
110
|
-
keyObject = new
|
|
110
|
+
keyObject = new _classes.PublicKeyObject(handle);
|
|
111
111
|
} else if (keyType === 2) {
|
|
112
|
-
keyObject = new
|
|
112
|
+
keyObject = new _classes.PrivateKeyObject(handle);
|
|
113
113
|
} else {
|
|
114
114
|
throw (0, _utils.lazyDOMException)('Unexpected key type from JWK import', 'DataError');
|
|
115
115
|
}
|
|
116
|
-
return new
|
|
116
|
+
return new _classes.CryptoKey(keyObject, algorithm, keyUsages, extractable);
|
|
117
117
|
}
|
|
118
118
|
|
|
119
119
|
// Handle binary formats (spki, pkcs8, raw)
|
|
@@ -151,12 +151,12 @@ function ecImportKey(format, keyData, algorithm, extractable, keyUsages) {
|
|
|
151
151
|
if (!handle.initECRaw(curveAlias, keyBuffer)) {
|
|
152
152
|
throw (0, _utils.lazyDOMException)('Failed to import EC raw key', 'DataError');
|
|
153
153
|
}
|
|
154
|
-
keyObject = new
|
|
154
|
+
keyObject = new _classes.PublicKeyObject(handle);
|
|
155
155
|
} else {
|
|
156
156
|
// Use standard DER import for spki/pkcs8
|
|
157
|
-
keyObject =
|
|
157
|
+
keyObject = _classes.KeyObject.createKeyObject(expectedKeyType, keyBuffer, _utils.KFormatType.DER, format === 'spki' ? _utils.KeyEncoding.SPKI : _utils.KeyEncoding.PKCS8);
|
|
158
158
|
}
|
|
159
|
-
return new
|
|
159
|
+
return new _classes.CryptoKey(keyObject, algorithm, keyUsages, extractable);
|
|
160
160
|
}
|
|
161
161
|
|
|
162
162
|
// Node API
|
|
@@ -197,7 +197,7 @@ const ecdsaSignVerify = (key, data, {
|
|
|
197
197
|
}
|
|
198
198
|
};
|
|
199
199
|
|
|
200
|
-
//
|
|
200
|
+
// WebCrypto API - only P-256, P-384, P-521 allowed per spec
|
|
201
201
|
exports.ecdsaSignVerify = ecdsaSignVerify;
|
|
202
202
|
async function ec_generateKeyPair(name, namedCurve, extractable, keyUsages,
|
|
203
203
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
@@ -242,12 +242,12 @@ _options // TODO: Implement format options support
|
|
|
242
242
|
// These methods export in DER format (SPKI for public, PKCS8 for private)
|
|
243
243
|
const publicKeyData = ec.native.getPublicKey();
|
|
244
244
|
const privateKeyData = ec.native.getPrivateKey();
|
|
245
|
-
const pub =
|
|
246
|
-
const publicKey = new
|
|
245
|
+
const pub = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
|
|
246
|
+
const publicKey = new _classes.CryptoKey(pub, keyAlgorithm, publicUsages, true);
|
|
247
247
|
|
|
248
248
|
// All keys are now exported in PKCS8 format for consistency
|
|
249
|
-
const priv =
|
|
250
|
-
const privateKey = new
|
|
249
|
+
const priv = _classes.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
|
|
250
|
+
const privateKey = new _classes.CryptoKey(priv, keyAlgorithm, privateUsages, extractable);
|
|
251
251
|
return {
|
|
252
252
|
publicKey,
|
|
253
253
|
privateKey
|
|
@@ -260,8 +260,8 @@ function ec_prepareKeyGenParams(options) {
|
|
|
260
260
|
const {
|
|
261
261
|
namedCurve
|
|
262
262
|
} = options;
|
|
263
|
-
if (!namedCurve
|
|
264
|
-
throw new Error(
|
|
263
|
+
if (!namedCurve) {
|
|
264
|
+
throw new Error('namedCurve is required for EC key generation');
|
|
265
265
|
}
|
|
266
266
|
return new Ec(namedCurve);
|
|
267
267
|
}
|
|
@@ -276,8 +276,8 @@ function ec_formatKeyPairOutput(ec, encoding) {
|
|
|
276
276
|
} = encoding;
|
|
277
277
|
const publicKeyData = ec.native.getPublicKey();
|
|
278
278
|
const privateKeyData = ec.native.getPrivateKey();
|
|
279
|
-
const pub =
|
|
280
|
-
const priv =
|
|
279
|
+
const pub = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
|
|
280
|
+
const priv = _classes.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
|
|
281
281
|
let publicKey;
|
|
282
282
|
let privateKey;
|
|
283
283
|
if (publicFormat === -1) {
|
|
@@ -356,7 +356,7 @@ function ecDeriveBits(algorithm, baseKey, length) {
|
|
|
356
356
|
// If length is specified, truncate
|
|
357
357
|
const byteLength = Math.ceil(length / 8);
|
|
358
358
|
if (secretBuf.byteLength >= byteLength) {
|
|
359
|
-
return secretBuf.
|
|
359
|
+
return secretBuf.buffer.slice(secretBuf.byteOffset, secretBuf.byteOffset + byteLength);
|
|
360
360
|
}
|
|
361
361
|
throw new Error('Derived key is shorter than requested length');
|
|
362
362
|
}
|
package/lib/commonjs/ec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
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":[]}
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_classes","_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","slice","byteOffset"],"sourceRoot":"../../src","sources":["ec.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/ecdh.js
CHANGED
|
@@ -7,7 +7,16 @@ exports.ECDH = void 0;
|
|
|
7
7
|
exports.createECDH = createECDH;
|
|
8
8
|
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
9
9
|
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
10
|
+
const POINT_CONVERSION_COMPRESSED = 2;
|
|
11
|
+
const POINT_CONVERSION_UNCOMPRESSED = 4;
|
|
12
|
+
const POINT_CONVERSION_HYBRID = 6;
|
|
10
13
|
class ECDH {
|
|
14
|
+
static get convertKeyHybrid() {
|
|
15
|
+
if (!this._convertKeyHybrid) {
|
|
16
|
+
this._convertKeyHybrid = _reactNativeNitroModules.NitroModules.createHybridObject('ECDH');
|
|
17
|
+
}
|
|
18
|
+
return this._convertKeyHybrid;
|
|
19
|
+
}
|
|
11
20
|
constructor(curveName) {
|
|
12
21
|
this._hybrid = _reactNativeNitroModules.NitroModules.createHybridObject('ECDH');
|
|
13
22
|
this._hybrid.init(curveName);
|
|
@@ -63,6 +72,34 @@ class ECDH {
|
|
|
63
72
|
}
|
|
64
73
|
this._hybrid.setPublicKey(keyBuf.buffer);
|
|
65
74
|
}
|
|
75
|
+
static convertKey(key, curve, inputEncoding, outputEncoding, format) {
|
|
76
|
+
let keyBuf;
|
|
77
|
+
if (_reactNativeBuffer.Buffer.isBuffer(key)) {
|
|
78
|
+
keyBuf = key;
|
|
79
|
+
} else {
|
|
80
|
+
keyBuf = _reactNativeBuffer.Buffer.from(key, inputEncoding);
|
|
81
|
+
}
|
|
82
|
+
let formatNum;
|
|
83
|
+
switch (format) {
|
|
84
|
+
case 'compressed':
|
|
85
|
+
formatNum = POINT_CONVERSION_COMPRESSED;
|
|
86
|
+
break;
|
|
87
|
+
case 'hybrid':
|
|
88
|
+
formatNum = POINT_CONVERSION_HYBRID;
|
|
89
|
+
break;
|
|
90
|
+
case 'uncompressed':
|
|
91
|
+
case undefined:
|
|
92
|
+
formatNum = POINT_CONVERSION_UNCOMPRESSED;
|
|
93
|
+
break;
|
|
94
|
+
default:
|
|
95
|
+
throw new TypeError(`Invalid point conversion format: ${format}`);
|
|
96
|
+
}
|
|
97
|
+
const result = _reactNativeBuffer.Buffer.from(ECDH.convertKeyHybrid.convertKey(keyBuf.buffer, curve, formatNum));
|
|
98
|
+
if (outputEncoding) {
|
|
99
|
+
return result.toString(outputEncoding);
|
|
100
|
+
}
|
|
101
|
+
return result;
|
|
102
|
+
}
|
|
66
103
|
}
|
|
67
104
|
exports.ECDH = ECDH;
|
|
68
105
|
function createECDH(curveName) {
|
package/lib/commonjs/ecdh.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","POINT_CONVERSION_COMPRESSED","POINT_CONVERSION_UNCOMPRESSED","POINT_CONVERSION_HYBRID","ECDH","convertKeyHybrid","_convertKeyHybrid","NitroModules","createHybridObject","constructor","curveName","_hybrid","init","generateKeys","key","Buffer","from","computeSecret","otherPublicKey","inputEncoding","keyBuf","isBuffer","TypeError","secret","buffer","getPrivateKey","setPrivateKey","privateKey","encoding","getPublicKey","pub","toString","setPublicKey","publicKey","convertKey","curve","outputEncoding","format","formatNum","undefined","result","exports","createECDH"],"sourceRoot":"../../src","sources":["ecdh.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/ed.js
CHANGED
|
@@ -11,7 +11,7 @@ exports.xDeriveBits = xDeriveBits;
|
|
|
11
11
|
exports.x_generateKeyPairWebCrypto = x_generateKeyPairWebCrypto;
|
|
12
12
|
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
13
13
|
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
14
|
-
var
|
|
14
|
+
var _classes = require("./keys/classes");
|
|
15
15
|
var _utils = require("./utils");
|
|
16
16
|
class Ed {
|
|
17
17
|
constructor(type, config) {
|
|
@@ -240,12 +240,12 @@ async function ed_generateKeyPairWebCrypto(type, extractable, keyUsages) {
|
|
|
240
240
|
const algorithmName = type === 'ed25519' ? 'Ed25519' : 'Ed448';
|
|
241
241
|
const publicKeyData = ed.getPublicKey();
|
|
242
242
|
const privateKeyData = ed.getPrivateKey();
|
|
243
|
-
const pub =
|
|
244
|
-
const publicKey = new
|
|
243
|
+
const pub = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
|
|
244
|
+
const publicKey = new _classes.CryptoKey(pub, {
|
|
245
245
|
name: algorithmName
|
|
246
246
|
}, publicUsages, true);
|
|
247
|
-
const priv =
|
|
248
|
-
const privateKey = new
|
|
247
|
+
const priv = _classes.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
|
|
248
|
+
const privateKey = new _classes.CryptoKey(priv, {
|
|
249
249
|
name: algorithmName
|
|
250
250
|
}, privateUsages, extractable);
|
|
251
251
|
return {
|
|
@@ -275,12 +275,12 @@ async function x_generateKeyPairWebCrypto(type, extractable, keyUsages) {
|
|
|
275
275
|
const algorithmName = type === 'x25519' ? 'X25519' : 'X448';
|
|
276
276
|
const publicKeyData = ed.getPublicKey();
|
|
277
277
|
const privateKeyData = ed.getPrivateKey();
|
|
278
|
-
const pub =
|
|
279
|
-
const publicKey = new
|
|
278
|
+
const pub = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
|
|
279
|
+
const publicKey = new _classes.CryptoKey(pub, {
|
|
280
280
|
name: algorithmName
|
|
281
281
|
}, publicUsages, true);
|
|
282
|
-
const priv =
|
|
283
|
-
const privateKey = new
|
|
282
|
+
const priv = _classes.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
|
|
283
|
+
const privateKey = new _classes.CryptoKey(priv, {
|
|
284
284
|
name: algorithmName
|
|
285
285
|
}, privateUsages, extractable);
|
|
286
286
|
return {
|
package/lib/commonjs/ed.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_keys","_utils","Ed","constructor","type","config","native","NitroModules","createHybridObject","setCurve","diffieHellman","options","callback","checkDiffieHellmanOptions","keyType","privateKey","asymmetricKeyType","Error","toAB","publicKey","ret","Buffer","from","e","err","undefined","generateKeyPair","publicFormat","publicType","privateFormat","privateType","cipher","passphrase","generateKeyPairSync","getPublicKey","getPrivateKey","getSharedSecret","sign","message","key","signSync","verify","signature","verifySync","exports","ed","ed_generateKeyPair","isAsync","encoding","formatKeys","publicKeyRaw","privateKeyRaw","isPemPublic","KFormatType","PEM","isPemPrivate","arrayBufferToString","ab","Uint8Array","toString","then","catch","String","privateKeyAsym","publicKeyAsym","ed_generateKeyPairWebCrypto","extractable","keyUsages","hasAnyNotIn","lazyDOMException","publicUsages","getUsagesUnion","privateUsages","length","DER","KeyEncoding","SPKI","PKCS8","algorithmName","publicKeyData","privateKeyData","pub","KeyObject","createKeyObject","CryptoKey","name","priv","x_generateKeyPairWebCrypto","xDeriveBits","algorithm","baseKey","public","toLowerCase","privateKeyBytes","keyObject","handle","exportKey","publicKeyBytes","privateKeyTyped","publicKeyTyped","secret","byteLength","Math","ceil","slice"],"sourceRoot":"../../src","sources":["ed.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_classes","_utils","Ed","constructor","type","config","native","NitroModules","createHybridObject","setCurve","diffieHellman","options","callback","checkDiffieHellmanOptions","keyType","privateKey","asymmetricKeyType","Error","toAB","publicKey","ret","Buffer","from","e","err","undefined","generateKeyPair","publicFormat","publicType","privateFormat","privateType","cipher","passphrase","generateKeyPairSync","getPublicKey","getPrivateKey","getSharedSecret","sign","message","key","signSync","verify","signature","verifySync","exports","ed","ed_generateKeyPair","isAsync","encoding","formatKeys","publicKeyRaw","privateKeyRaw","isPemPublic","KFormatType","PEM","isPemPrivate","arrayBufferToString","ab","Uint8Array","toString","then","catch","String","privateKeyAsym","publicKeyAsym","ed_generateKeyPairWebCrypto","extractable","keyUsages","hasAnyNotIn","lazyDOMException","publicUsages","getUsagesUnion","privateUsages","length","DER","KeyEncoding","SPKI","PKCS8","algorithmName","publicKeyData","privateKeyData","pub","KeyObject","createKeyObject","CryptoKey","name","priv","x_generateKeyPairWebCrypto","xDeriveBits","algorithm","baseKey","public","toLowerCase","privateKeyBytes","keyObject","handle","exportKey","publicKeyBytes","privateKeyTyped","publicKeyTyped","secret","byteLength","Math","ceil","slice"],"sourceRoot":"../../src","sources":["ed.ts"],"mappings":"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","ignoreList":[]}
|