react-native-quick-crypto 1.0.17 → 1.0.19

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.
@@ -13,6 +13,8 @@
13
13
  #include <stdexcept>
14
14
  #include <string>
15
15
 
16
+ #include "../sign/SignUtils.hpp"
17
+
16
18
  // OpenSSL EC parameter encoding constants
17
19
  #ifndef OPENSSL_EC_EXPLICIT_CURVE
18
20
  #define OPENSSL_EC_EXPLICIT_CURVE 0x000
@@ -24,6 +26,8 @@
24
26
  #include "HybridEcKeyPair.hpp"
25
27
  #include "QuickCryptoUtils.hpp"
26
28
 
29
+ using margelo::nitro::NativeArrayBuffer;
30
+
27
31
  namespace margelo::nitro::crypto {
28
32
 
29
33
  std::shared_ptr<Promise<void>> HybridEcKeyPair::generateKeyPair() {
@@ -372,8 +376,18 @@ std::shared_ptr<ArrayBuffer> HybridEcKeyPair::sign(const std::shared_ptr<ArrayBu
372
376
  // Resize to actual signature length
373
377
  signature.resize(sig_len);
374
378
 
375
- // Convert to ArrayBuffer
376
- return ToNativeArrayBuffer(std::string(signature.begin(), signature.end()));
379
+ // Web Crypto API requires IEEE P1363 format for ECDSA signatures
380
+ unsigned int n = getBytesOfRS(this->pkey);
381
+ if (n == 0) {
382
+ throw std::runtime_error("Failed to determine EC key order size for P1363 conversion");
383
+ }
384
+ auto p1363_buf = std::make_unique<uint8_t[]>(2 * n);
385
+ std::memset(p1363_buf.get(), 0, 2 * n);
386
+ if (!convertSignatureToP1363(signature.data(), sig_len, p1363_buf.get(), n)) {
387
+ throw std::runtime_error("Failed to convert ECDSA signature from DER to P1363 format");
388
+ }
389
+ uint8_t* raw_ptr = p1363_buf.get();
390
+ return std::make_shared<NativeArrayBuffer>(p1363_buf.release(), 2 * n, [raw_ptr]() { delete[] raw_ptr; });
377
391
  }
378
392
 
379
393
  bool HybridEcKeyPair::verify(const std::shared_ptr<ArrayBuffer>& data, const std::shared_ptr<ArrayBuffer>& signature,
@@ -410,8 +424,24 @@ bool HybridEcKeyPair::verify(const std::shared_ptr<ArrayBuffer>& data, const std
410
424
  throw std::runtime_error("Failed to update ECDSA verification with data");
411
425
  }
412
426
 
413
- // Verify signature
414
- int result = EVP_DigestVerifyFinal(md_ctx.get(), static_cast<const unsigned char*>(signature->data()), signature->size());
427
+ // Web Crypto API passes IEEE P1363 format, OpenSSL expects DER
428
+ const unsigned char* sig_data = static_cast<const unsigned char*>(signature->data());
429
+ size_t sig_len = signature->size();
430
+ std::unique_ptr<uint8_t[]> der_sig_buf;
431
+
432
+ unsigned int n = getBytesOfRS(this->pkey);
433
+ if (n == 0) {
434
+ throw std::runtime_error("Failed to determine EC key order size for DER conversion");
435
+ }
436
+ size_t der_len = 0;
437
+ der_sig_buf = convertSignatureToDER(sig_data, sig_len, n, &der_len);
438
+ if (!der_sig_buf) {
439
+ throw std::runtime_error("Failed to convert ECDSA signature from P1363 to DER format");
440
+ }
441
+ sig_data = der_sig_buf.get();
442
+ sig_len = der_len;
443
+
444
+ int result = EVP_DigestVerifyFinal(md_ctx.get(), sig_data, sig_len);
415
445
 
416
446
  if (result < 0) {
417
447
  throw std::runtime_error("ECDSA verification failed with error");
@@ -10,6 +10,7 @@ exports.createBlake3 = createBlake3;
10
10
  var _reactNativeNitroModules = require("react-native-nitro-modules");
11
11
  var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
12
12
  var _utils = require("./utils");
13
+ var _conversion = require("./utils/conversion");
13
14
  const BLAKE3_KEY_LEN = 32;
14
15
  const BLAKE3_OUT_LEN = 32;
15
16
  class Blake3 {
@@ -24,7 +25,7 @@ class Blake3 {
24
25
  }
25
26
  this.mode = 'keyed';
26
27
  this.keyData = opts.key;
27
- this.native.initKeyed(opts.key.buffer);
28
+ this.native.initKeyed((0, _conversion.toArrayBuffer)(opts.key));
28
29
  } else if (opts?.context !== undefined) {
29
30
  if (typeof opts.context !== 'string' || opts.context.length === 0) {
30
31
  throw new Error('BLAKE3: context must be a non-empty string');
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_utils","BLAKE3_KEY_LEN","BLAKE3_OUT_LEN","Blake3","constructor","opts","native","NitroModules","createHybridObject","key","context","Error","length","mode","keyData","initKeyed","buffer","undefined","contextData","initDeriveKey","initHash","update","data","inputEncoding","binaryLikeToArrayBuffer","digest","encodingOrLength","encoding","result","ab2str","Buffer","from","digestLength","reset","copy","copied","getVersion","exports","createBlake3","blake3","hasher","dkLen","Uint8Array","create","blake3Exports"],"sourceRoot":"../../src","sources":["blake3.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_utils","_conversion","BLAKE3_KEY_LEN","BLAKE3_OUT_LEN","Blake3","constructor","opts","native","NitroModules","createHybridObject","key","context","Error","length","mode","keyData","initKeyed","toArrayBuffer","undefined","contextData","initDeriveKey","initHash","update","data","inputEncoding","buffer","binaryLikeToArrayBuffer","digest","encodingOrLength","encoding","result","ab2str","Buffer","from","digestLength","reset","copy","copied","getVersion","exports","createBlake3","blake3","hasher","dkLen","Uint8Array","create","blake3Exports"],"sourceRoot":"../../src","sources":["blake3.ts"],"mappings":"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","ignoreList":[]}
@@ -9,6 +9,7 @@ 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");
12
+ var _conversion = require("./utils/conversion");
12
13
  class DiffieHellman {
13
14
  constructor(sizeOrPrime, generator, encoding) {
14
15
  this._hybrid = _reactNativeNitroModules.NitroModules.createHybridObject('DiffieHellman');
@@ -32,7 +33,7 @@ class DiffieHellman {
32
33
  } else {
33
34
  genBuf = _reactNativeBuffer.Buffer.from(generator, encoding);
34
35
  }
35
- this._hybrid.init(primeBuf.buffer, genBuf.buffer);
36
+ this._hybrid.init((0, _conversion.toArrayBuffer)(primeBuf), (0, _conversion.toArrayBuffer)(genBuf));
36
37
  }
37
38
  }
38
39
  generateKeys(encoding) {
@@ -47,7 +48,7 @@ class DiffieHellman {
47
48
  } else {
48
49
  keyBuf = _reactNativeBuffer.Buffer.from(otherPublicKey, inputEncoding);
49
50
  }
50
- const secret = _reactNativeBuffer.Buffer.from(this._hybrid.computeSecret(keyBuf.buffer));
51
+ const secret = _reactNativeBuffer.Buffer.from(this._hybrid.computeSecret((0, _conversion.toArrayBuffer)(keyBuf)));
51
52
  if (outputEncoding) return secret.toString(outputEncoding);
52
53
  return secret;
53
54
  }
@@ -78,7 +79,7 @@ class DiffieHellman {
78
79
  } else {
79
80
  keyBuf = _reactNativeBuffer.Buffer.from(publicKey, encoding);
80
81
  }
81
- this._hybrid.setPublicKey(keyBuf.buffer);
82
+ this._hybrid.setPublicKey((0, _conversion.toArrayBuffer)(keyBuf));
82
83
  }
83
84
  setPrivateKey(privateKey, encoding) {
84
85
  let keyBuf;
@@ -87,7 +88,7 @@ class DiffieHellman {
87
88
  } else {
88
89
  keyBuf = _reactNativeBuffer.Buffer.from(privateKey, encoding);
89
90
  }
90
- this._hybrid.setPrivateKey(keyBuf.buffer);
91
+ this._hybrid.setPrivateKey((0, _conversion.toArrayBuffer)(keyBuf));
91
92
  }
92
93
  get verifyError() {
93
94
  return this._hybrid.getVerifyError();
@@ -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","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":[]}
1
+ {"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_dhGroups","_conversion","DiffieHellman","constructor","sizeOrPrime","generator","encoding","_hybrid","NitroModules","createHybridObject","gen","initWithSize","primeBuf","Buffer","isBuffer","from","genBuf","undefined","init","toArrayBuffer","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":[]}
@@ -7,6 +7,7 @@ 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
+ var _conversion = require("./utils/conversion");
10
11
  const POINT_CONVERSION_COMPRESSED = 2;
11
12
  const POINT_CONVERSION_UNCOMPRESSED = 4;
12
13
  const POINT_CONVERSION_HYBRID = 6;
@@ -37,7 +38,7 @@ class ECDH {
37
38
  }
38
39
 
39
40
  // ECDH.computeSecret in Node.js returns Buffer
40
- const secret = this._hybrid.computeSecret(keyBuf.buffer);
41
+ const secret = this._hybrid.computeSecret((0, _conversion.toArrayBuffer)(keyBuf));
41
42
  return _reactNativeBuffer.Buffer.from(secret);
42
43
  }
43
44
  getPrivateKey() {
@@ -50,7 +51,7 @@ class ECDH {
50
51
  } else {
51
52
  keyBuf = _reactNativeBuffer.Buffer.from(privateKey, encoding);
52
53
  }
53
- this._hybrid.setPrivateKey(keyBuf.buffer);
54
+ this._hybrid.setPrivateKey((0, _conversion.toArrayBuffer)(keyBuf));
54
55
  }
55
56
  getPublicKey(encoding) {
56
57
  // Node.js getPublicKey([encoding[, format]])
@@ -70,7 +71,7 @@ class ECDH {
70
71
  } else {
71
72
  keyBuf = _reactNativeBuffer.Buffer.from(publicKey, encoding);
72
73
  }
73
- this._hybrid.setPublicKey(keyBuf.buffer);
74
+ this._hybrid.setPublicKey((0, _conversion.toArrayBuffer)(keyBuf));
74
75
  }
75
76
  static convertKey(key, curve, inputEncoding, outputEncoding, format) {
76
77
  let keyBuf;
@@ -94,7 +95,7 @@ class ECDH {
94
95
  default:
95
96
  throw new TypeError(`Invalid point conversion format: ${format}`);
96
97
  }
97
- const result = _reactNativeBuffer.Buffer.from(ECDH.convertKeyHybrid.convertKey(keyBuf.buffer, curve, formatNum));
98
+ const result = _reactNativeBuffer.Buffer.from(ECDH.convertKeyHybrid.convertKey((0, _conversion.toArrayBuffer)(keyBuf), curve, formatNum));
98
99
  if (outputEncoding) {
99
100
  return result.toString(outputEncoding);
100
101
  }
@@ -1 +1 @@
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":[]}
1
+ {"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_conversion","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","toArrayBuffer","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":[]}
@@ -34,9 +34,11 @@ class Ed {
34
34
  * @returns `Buffer` if no callback, or `void` if callback is provided
35
35
  */
36
36
  diffieHellman(options, callback) {
37
- // extract the private and public keys as ArrayBuffers
38
- const privateKey = (0, _utils.binaryLikeToArrayBuffer)(options.privateKey);
39
- const publicKey = (0, _utils.binaryLikeToArrayBuffer)(options.publicKey);
37
+ // extract raw key bytes from KeyObject instances
38
+ const privKeyObj = options.privateKey;
39
+ const pubKeyObj = options.publicKey;
40
+ const privateKey = privKeyObj.handle.exportKey();
41
+ const publicKey = pubKeyObj.handle.exportKey();
40
42
  try {
41
43
  const ret = this.native.diffieHellman(privateKey, publicKey);
42
44
  if (!ret) {
@@ -109,51 +111,82 @@ function diffieHellman(options, callback) {
109
111
  const ed = new Ed(type, {});
110
112
  return ed.diffieHellman(options, callback);
111
113
  }
114
+ function ed_createKeyObjects(ed) {
115
+ const publicKeyData = ed.getPublicKey();
116
+ const privateKeyData = ed.getPrivateKey();
117
+ const pub = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
118
+ const priv = _classes.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
119
+ return {
120
+ pub,
121
+ priv
122
+ };
123
+ }
112
124
 
113
125
  // Node API
126
+ function ed_formatKeyPairOutput(ed, encoding) {
127
+ const {
128
+ publicFormat,
129
+ privateFormat,
130
+ cipher,
131
+ passphrase
132
+ } = encoding;
133
+ const {
134
+ pub,
135
+ priv
136
+ } = ed_createKeyObjects(ed);
137
+ let publicKey;
138
+ let privateKey;
139
+ if (publicFormat == null || publicFormat === -1) {
140
+ publicKey = pub;
141
+ } else {
142
+ const format = publicFormat === _utils.KFormatType.PEM ? _utils.KFormatType.PEM : _utils.KFormatType.DER;
143
+ const exported = pub.handle.exportKey(format, _utils.KeyEncoding.SPKI);
144
+ if (format === _utils.KFormatType.PEM) {
145
+ publicKey = _reactNativeBuffer.Buffer.from(new Uint8Array(exported)).toString('utf-8');
146
+ } else {
147
+ publicKey = exported;
148
+ }
149
+ }
150
+ if (privateFormat == null || privateFormat === -1) {
151
+ privateKey = priv;
152
+ } else {
153
+ const format = privateFormat === _utils.KFormatType.PEM ? _utils.KFormatType.PEM : _utils.KFormatType.DER;
154
+ const exported = priv.handle.exportKey(format, _utils.KeyEncoding.PKCS8, cipher, passphrase);
155
+ if (format === _utils.KFormatType.PEM) {
156
+ privateKey = _reactNativeBuffer.Buffer.from(new Uint8Array(exported)).toString('utf-8');
157
+ } else {
158
+ privateKey = exported;
159
+ }
160
+ }
161
+ return {
162
+ publicKey,
163
+ privateKey
164
+ };
165
+ }
114
166
  function ed_generateKeyPair(isAsync, type, encoding, callback) {
115
- const ed = new Ed(type, encoding);
116
-
117
- // Helper to convert keys to proper output format
118
- const formatKeys = () => {
119
- const publicKeyRaw = ed.getPublicKey();
120
- const privateKeyRaw = ed.getPrivateKey();
121
-
122
- // Check if PEM format was requested (KFormatType.PEM = 1)
123
- const isPemPublic = encoding.publicFormat === _utils.KFormatType.PEM;
124
- const isPemPrivate = encoding.privateFormat === _utils.KFormatType.PEM;
125
-
126
- // Convert ArrayBuffer to string for PEM format
127
- const arrayBufferToString = ab => {
128
- return _reactNativeBuffer.Buffer.from(new Uint8Array(ab)).toString('utf-8');
129
- };
130
- const publicKey = isPemPublic ? arrayBufferToString(publicKeyRaw) : publicKeyRaw;
131
- const privateKey = isPemPrivate ? arrayBufferToString(privateKeyRaw) : privateKeyRaw;
132
- return {
133
- publicKey,
134
- privateKey
135
- };
167
+ const derConfig = {
168
+ ...encoding,
169
+ publicFormat: _utils.KFormatType.DER,
170
+ publicType: _utils.KeyEncoding.SPKI,
171
+ privateFormat: _utils.KFormatType.DER,
172
+ privateType: _utils.KeyEncoding.PKCS8
136
173
  };
137
-
138
- // Async path
174
+ const ed = new Ed(type, derConfig);
139
175
  if (isAsync) {
140
176
  if (!callback) {
141
- // This should not happen if called from public API
142
177
  throw new Error('A callback is required for async key generation.');
143
178
  }
144
179
  ed.generateKeyPair().then(() => {
145
180
  const {
146
181
  publicKey,
147
182
  privateKey
148
- } = formatKeys();
183
+ } = ed_formatKeyPairOutput(ed, encoding);
149
184
  callback(undefined, publicKey, privateKey);
150
185
  }).catch(err => {
151
186
  callback(err, undefined, undefined);
152
187
  });
153
188
  return;
154
189
  }
155
-
156
- // Sync path
157
190
  let err;
158
191
  try {
159
192
  ed.generateKeyPairSync();
@@ -166,7 +199,7 @@ function ed_generateKeyPair(isAsync, type, encoding, callback) {
166
199
  } = err ? {
167
200
  publicKey: undefined,
168
201
  privateKey: undefined
169
- } : formatKeys();
202
+ } : ed_formatKeyPairOutput(ed, encoding);
170
203
  if (callback) {
171
204
  callback(err, publicKey, privateKey);
172
205
  return;
@@ -273,13 +306,13 @@ async function ed_generateKeyPairWebCrypto(type, extractable, keyUsages) {
273
306
  const ed = new Ed(type, config);
274
307
  await ed.generateKeyPair();
275
308
  const algorithmName = type === 'ed25519' ? 'Ed25519' : 'Ed448';
276
- const publicKeyData = ed.getPublicKey();
277
- const privateKeyData = ed.getPrivateKey();
278
- const pub = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
309
+ const {
310
+ pub,
311
+ priv
312
+ } = ed_createKeyObjects(ed);
279
313
  const publicKey = new _classes.CryptoKey(pub, {
280
314
  name: algorithmName
281
315
  }, publicUsages, true);
282
- const priv = _classes.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
283
316
  const privateKey = new _classes.CryptoKey(priv, {
284
317
  name: algorithmName
285
318
  }, privateUsages, extractable);
@@ -308,13 +341,13 @@ async function x_generateKeyPairWebCrypto(type, extractable, keyUsages) {
308
341
  const ed = new Ed(type, config);
309
342
  await ed.generateKeyPair();
310
343
  const algorithmName = type === 'x25519' ? 'X25519' : 'X448';
311
- const publicKeyData = ed.getPublicKey();
312
- const privateKeyData = ed.getPrivateKey();
313
- const pub = _classes.KeyObject.createKeyObject('public', publicKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.SPKI);
344
+ const {
345
+ pub,
346
+ priv
347
+ } = ed_createKeyObjects(ed);
314
348
  const publicKey = new _classes.CryptoKey(pub, {
315
349
  name: algorithmName
316
350
  }, publicUsages, true);
317
- const priv = _classes.KeyObject.createKeyObject('private', privateKeyData, _utils.KFormatType.DER, _utils.KeyEncoding.PKCS8);
318
351
  const privateKey = new _classes.CryptoKey(priv, {
319
352
  name: algorithmName
320
353
  }, privateUsages, extractable);
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_classes","_utils","_ecdh","Ed","constructor","type","config","native","NitroModules","createHybridObject","setCurve","diffieHellman","options","callback","privateKey","toAB","publicKey","ret","Error","Buffer","from","e","err","undefined","generateKeyPair","publicFormat","publicType","privateFormat","privateType","cipher","passphrase","generateKeyPairSync","getPublicKey","getPrivateKey","getSharedSecret","sign","message","key","signSync","verify","signature","verifySync","exports","checkDiffieHellmanOptions","keyType","asymmetricKeyType","ecDiffieHellman","ed","ed_generateKeyPair","isAsync","encoding","formatKeys","publicKeyRaw","privateKeyRaw","isPemPublic","KFormatType","PEM","isPemPrivate","arrayBufferToString","ab","Uint8Array","toString","then","catch","String","curveName","namedCurve","ecdh","ECDH","jwkPrivate","handle","exportJwk","d","setPrivateKey","jwkPublic","x","y","publicBytes","concat","secret","computeSecret","privateKeyAsym","publicKeyAsym","privateCurve","publicCurve","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","exportKey","publicKeyBytes","privateKeyTyped","publicKeyTyped","byteLength","Math","ceil","slice"],"sourceRoot":"../../src","sources":["ed.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_reactNativeNitroModules","require","_reactNativeBuffer","_classes","_utils","_ecdh","Ed","constructor","type","config","native","NitroModules","createHybridObject","setCurve","diffieHellman","options","callback","privKeyObj","privateKey","pubKeyObj","publicKey","handle","exportKey","ret","Error","Buffer","from","e","err","undefined","generateKeyPair","publicFormat","publicType","privateFormat","privateType","cipher","passphrase","generateKeyPairSync","getPublicKey","getPrivateKey","getSharedSecret","toAB","sign","message","key","signSync","verify","signature","verifySync","exports","checkDiffieHellmanOptions","keyType","asymmetricKeyType","ecDiffieHellman","ed","ed_createKeyObjects","publicKeyData","privateKeyData","pub","KeyObject","createKeyObject","KFormatType","DER","KeyEncoding","SPKI","priv","PKCS8","ed_formatKeyPairOutput","encoding","format","PEM","exported","Uint8Array","toString","ed_generateKeyPair","isAsync","derConfig","then","catch","String","curveName","namedCurve","ecdh","ECDH","jwkPrivate","exportJwk","d","setPrivateKey","jwkPublic","x","y","publicBytes","concat","secret","computeSecret","privateKeyAsym","publicKeyAsym","privateCurve","publicCurve","ed_generateKeyPairWebCrypto","extractable","keyUsages","hasAnyNotIn","lazyDOMException","publicUsages","getUsagesUnion","privateUsages","length","algorithmName","CryptoKey","name","x_generateKeyPairWebCrypto","xDeriveBits","algorithm","baseKey","public","toLowerCase","privateKeyBytes","keyObject","publicKeyBytes","privateKeyTyped","publicKeyTyped","byteLength","Math","ceil","slice"],"sourceRoot":"../../src","sources":["ed.ts"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import { NitroModules } from 'react-native-nitro-modules';
4
4
  import { Buffer } from '@craftzdog/react-native-buffer';
5
5
  import { binaryLikeToArrayBuffer, ab2str } from './utils';
6
+ import { toArrayBuffer } from './utils/conversion';
6
7
  const BLAKE3_KEY_LEN = 32;
7
8
  const BLAKE3_OUT_LEN = 32;
8
9
  export class Blake3 {
@@ -17,7 +18,7 @@ export class Blake3 {
17
18
  }
18
19
  this.mode = 'keyed';
19
20
  this.keyData = opts.key;
20
- this.native.initKeyed(opts.key.buffer);
21
+ this.native.initKeyed(toArrayBuffer(opts.key));
21
22
  } else if (opts?.context !== undefined) {
22
23
  if (typeof opts.context !== 'string' || opts.context.length === 0) {
23
24
  throw new Error('BLAKE3: context must be a non-empty string');
@@ -1 +1 @@
1
- {"version":3,"names":["NitroModules","Buffer","binaryLikeToArrayBuffer","ab2str","BLAKE3_KEY_LEN","BLAKE3_OUT_LEN","Blake3","constructor","opts","native","createHybridObject","key","context","Error","length","mode","keyData","initKeyed","buffer","undefined","contextData","initDeriveKey","initHash","update","data","inputEncoding","digest","encodingOrLength","encoding","result","from","digestLength","reset","copy","copied","getVersion","createBlake3","blake3","hasher","dkLen","Uint8Array","create","blake3Exports"],"sourceRoot":"../../src","sources":["blake3.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NitroModules","Buffer","binaryLikeToArrayBuffer","ab2str","toArrayBuffer","BLAKE3_KEY_LEN","BLAKE3_OUT_LEN","Blake3","constructor","opts","native","createHybridObject","key","context","Error","length","mode","keyData","initKeyed","undefined","contextData","initDeriveKey","initHash","update","data","inputEncoding","buffer","digest","encodingOrLength","encoding","result","from","digestLength","reset","copy","copied","getVersion","createBlake3","blake3","hasher","dkLen","Uint8Array","create","blake3Exports"],"sourceRoot":"../../src","sources":["blake3.ts"],"mappings":"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","ignoreList":[]}
@@ -3,6 +3,7 @@
3
3
  import { NitroModules } from 'react-native-nitro-modules';
4
4
  import { Buffer } from '@craftzdog/react-native-buffer';
5
5
  import { DH_GROUPS } from './dh-groups';
6
+ import { toArrayBuffer } from './utils/conversion';
6
7
  export class DiffieHellman {
7
8
  constructor(sizeOrPrime, generator, encoding) {
8
9
  this._hybrid = NitroModules.createHybridObject('DiffieHellman');
@@ -26,7 +27,7 @@ export class DiffieHellman {
26
27
  } else {
27
28
  genBuf = Buffer.from(generator, encoding);
28
29
  }
29
- this._hybrid.init(primeBuf.buffer, genBuf.buffer);
30
+ this._hybrid.init(toArrayBuffer(primeBuf), toArrayBuffer(genBuf));
30
31
  }
31
32
  }
32
33
  generateKeys(encoding) {
@@ -41,7 +42,7 @@ export class DiffieHellman {
41
42
  } else {
42
43
  keyBuf = Buffer.from(otherPublicKey, inputEncoding);
43
44
  }
44
- const secret = Buffer.from(this._hybrid.computeSecret(keyBuf.buffer));
45
+ const secret = Buffer.from(this._hybrid.computeSecret(toArrayBuffer(keyBuf)));
45
46
  if (outputEncoding) return secret.toString(outputEncoding);
46
47
  return secret;
47
48
  }
@@ -72,7 +73,7 @@ export class DiffieHellman {
72
73
  } else {
73
74
  keyBuf = Buffer.from(publicKey, encoding);
74
75
  }
75
- this._hybrid.setPublicKey(keyBuf.buffer);
76
+ this._hybrid.setPublicKey(toArrayBuffer(keyBuf));
76
77
  }
77
78
  setPrivateKey(privateKey, encoding) {
78
79
  let keyBuf;
@@ -81,7 +82,7 @@ export class DiffieHellman {
81
82
  } else {
82
83
  keyBuf = Buffer.from(privateKey, encoding);
83
84
  }
84
- this._hybrid.setPrivateKey(keyBuf.buffer);
85
+ this._hybrid.setPrivateKey(toArrayBuffer(keyBuf));
85
86
  }
86
87
  get verifyError() {
87
88
  return this._hybrid.getVerifyError();
@@ -1 +1 @@
1
- {"version":3,"names":["NitroModules","Buffer","DH_GROUPS","DiffieHellman","constructor","sizeOrPrime","generator","encoding","_hybrid","createHybridObject","gen","initWithSize","primeBuf","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","createDiffieHellman","primeOrSize","primeEncodingOrGenerator","_generatorEncoding","prime","generatorVal","getDiffieHellman","groupName","group","Error","createDiffieHellmanGroup"],"sourceRoot":"../../src","sources":["diffie-hellman.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NitroModules","Buffer","DH_GROUPS","toArrayBuffer","DiffieHellman","constructor","sizeOrPrime","generator","encoding","_hybrid","createHybridObject","gen","initWithSize","primeBuf","isBuffer","from","genBuf","undefined","init","generateKeys","keys","toString","computeSecret","otherPublicKey","inputEncoding","outputEncoding","keyBuf","secret","getPrime","p","getGenerator","g","getPublicKey","getPrivateKey","setPublicKey","publicKey","setPrivateKey","privateKey","verifyError","getVerifyError","createDiffieHellman","primeOrSize","primeEncodingOrGenerator","_generatorEncoding","prime","generatorVal","getDiffieHellman","groupName","group","Error","createDiffieHellmanGroup"],"sourceRoot":"../../src","sources":["diffie-hellman.ts"],"mappings":"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","ignoreList":[]}