react-native-quick-crypto 1.0.16 → 1.0.18
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/cpp/ec/HybridEcKeyPair.cpp +34 -4
- package/cpp/utils/HybridUtils.cpp +216 -0
- package/cpp/utils/HybridUtils.hpp +2 -0
- package/lib/commonjs/ed.js +72 -39
- package/lib/commonjs/ed.js.map +1 -1
- package/lib/commonjs/hash.js.map +1 -1
- package/lib/commonjs/utils/conversion.js +24 -0
- package/lib/commonjs/utils/conversion.js.map +1 -1
- package/lib/module/ed.js +72 -39
- package/lib/module/ed.js.map +1 -1
- package/lib/module/hash.js.map +1 -1
- package/lib/module/utils/conversion.js +20 -0
- package/lib/module/utils/conversion.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/lib/typescript/ed.d.ts.map +1 -1
- package/lib/typescript/hash.d.ts +3 -2
- package/lib/typescript/hash.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +2 -0
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/specs/utils.nitro.d.ts +2 -0
- package/lib/typescript/specs/utils.nitro.d.ts.map +1 -1
- package/lib/typescript/utils/conversion.d.ts +4 -0
- package/lib/typescript/utils/conversion.d.ts.map +1 -1
- package/nitrogen/generated/shared/c++/HybridUtilsSpec.cpp +2 -0
- package/nitrogen/generated/shared/c++/HybridUtilsSpec.hpp +3 -0
- package/package.json +1 -1
- package/src/ed.ts +84 -67
- package/src/hash.ts +7 -1
- package/src/specs/utils.nitro.ts +2 -0
- package/src/utils/conversion.ts +38 -2
|
@@ -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
|
-
//
|
|
376
|
-
|
|
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
|
-
//
|
|
414
|
-
|
|
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");
|
|
@@ -1,10 +1,167 @@
|
|
|
1
1
|
#include "HybridUtils.hpp"
|
|
2
2
|
|
|
3
|
+
#include <limits>
|
|
3
4
|
#include <openssl/crypto.h>
|
|
5
|
+
#include <openssl/evp.h>
|
|
4
6
|
#include <stdexcept>
|
|
7
|
+
#include <string>
|
|
8
|
+
|
|
9
|
+
#include "QuickCryptoUtils.hpp"
|
|
5
10
|
|
|
6
11
|
namespace margelo::nitro::crypto {
|
|
7
12
|
|
|
13
|
+
namespace {
|
|
14
|
+
|
|
15
|
+
constexpr char kHexChars[] = "0123456789abcdef";
|
|
16
|
+
|
|
17
|
+
int hexCharToVal(char c) {
|
|
18
|
+
if (c >= '0' && c <= '9')
|
|
19
|
+
return c - '0';
|
|
20
|
+
if (c >= 'a' && c <= 'f')
|
|
21
|
+
return c - 'a' + 10;
|
|
22
|
+
if (c >= 'A' && c <= 'F')
|
|
23
|
+
return c - 'A' + 10;
|
|
24
|
+
return -1;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
std::string encodeHex(const uint8_t* data, size_t len) {
|
|
28
|
+
std::string result;
|
|
29
|
+
result.reserve(len * 2);
|
|
30
|
+
for (size_t i = 0; i < len; i++) {
|
|
31
|
+
result.push_back(kHexChars[data[i] >> 4]);
|
|
32
|
+
result.push_back(kHexChars[data[i] & 0x0F]);
|
|
33
|
+
}
|
|
34
|
+
return result;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
std::vector<uint8_t> decodeHex(const std::string& hex) {
|
|
38
|
+
if (hex.length() % 2 != 0) {
|
|
39
|
+
throw std::runtime_error("Invalid hex string length");
|
|
40
|
+
}
|
|
41
|
+
std::vector<uint8_t> result;
|
|
42
|
+
result.reserve(hex.length() / 2);
|
|
43
|
+
for (size_t i = 0; i < hex.length(); i += 2) {
|
|
44
|
+
int hi = hexCharToVal(hex[i]);
|
|
45
|
+
int lo = hexCharToVal(hex[i + 1]);
|
|
46
|
+
if (hi < 0 || lo < 0) {
|
|
47
|
+
throw std::runtime_error("Invalid hex character");
|
|
48
|
+
}
|
|
49
|
+
result.push_back(static_cast<uint8_t>((hi << 4) | lo));
|
|
50
|
+
}
|
|
51
|
+
return result;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
std::string encodeBase64(const uint8_t* data, size_t len) {
|
|
55
|
+
if (len > static_cast<size_t>(std::numeric_limits<int>::max())) {
|
|
56
|
+
throw std::runtime_error("Input too large for base64 encoding");
|
|
57
|
+
}
|
|
58
|
+
size_t encodedLen = ((len + 2) / 3) * 4;
|
|
59
|
+
std::string result(encodedLen + 1, '\0');
|
|
60
|
+
int written = EVP_EncodeBlock(reinterpret_cast<unsigned char*>(result.data()), data, static_cast<int>(len));
|
|
61
|
+
if (written < 0) {
|
|
62
|
+
throw std::runtime_error("Base64 encoding failed");
|
|
63
|
+
}
|
|
64
|
+
result.resize(static_cast<size_t>(written));
|
|
65
|
+
return result;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
std::vector<uint8_t> decodeBase64(const std::string& b64) {
|
|
69
|
+
if (b64.length() > static_cast<size_t>(std::numeric_limits<int>::max())) {
|
|
70
|
+
throw std::runtime_error("Input too large for base64 decoding");
|
|
71
|
+
}
|
|
72
|
+
size_t maxLen = ((b64.length() + 3) / 4) * 3;
|
|
73
|
+
std::vector<uint8_t> result(maxLen);
|
|
74
|
+
int written = EVP_DecodeBlock(result.data(), reinterpret_cast<const unsigned char*>(b64.data()), static_cast<int>(b64.length()));
|
|
75
|
+
if (written < 0) {
|
|
76
|
+
throw std::runtime_error("Base64 decoding failed");
|
|
77
|
+
}
|
|
78
|
+
// EVP_DecodeBlock doesn't account for padding — trim trailing zeros from padding
|
|
79
|
+
size_t padding = 0;
|
|
80
|
+
if (b64.length() >= 1 && b64[b64.length() - 1] == '=')
|
|
81
|
+
padding++;
|
|
82
|
+
if (b64.length() >= 2 && b64[b64.length() - 2] == '=')
|
|
83
|
+
padding++;
|
|
84
|
+
result.resize(static_cast<size_t>(written) - padding);
|
|
85
|
+
return result;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
std::string encodeBase64Url(const uint8_t* data, size_t len) {
|
|
89
|
+
std::string b64 = encodeBase64(data, len);
|
|
90
|
+
for (auto& c : b64) {
|
|
91
|
+
if (c == '+')
|
|
92
|
+
c = '-';
|
|
93
|
+
else if (c == '/')
|
|
94
|
+
c = '_';
|
|
95
|
+
}
|
|
96
|
+
// Remove trailing '=' padding
|
|
97
|
+
while (!b64.empty() && b64.back() == '=') {
|
|
98
|
+
b64.pop_back();
|
|
99
|
+
}
|
|
100
|
+
return b64;
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
std::vector<uint8_t> decodeBase64Url(const std::string& b64url) {
|
|
104
|
+
std::string b64 = b64url;
|
|
105
|
+
for (auto& c : b64) {
|
|
106
|
+
if (c == '-')
|
|
107
|
+
c = '+';
|
|
108
|
+
else if (c == '_')
|
|
109
|
+
c = '/';
|
|
110
|
+
}
|
|
111
|
+
// Add back padding
|
|
112
|
+
while (b64.length() % 4 != 0) {
|
|
113
|
+
b64.push_back('=');
|
|
114
|
+
}
|
|
115
|
+
return decodeBase64(b64);
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
std::vector<uint8_t> decodeLatin1(const std::string& str) {
|
|
119
|
+
std::vector<uint8_t> result;
|
|
120
|
+
result.reserve(str.size());
|
|
121
|
+
size_t i = 0;
|
|
122
|
+
while (i < str.size()) {
|
|
123
|
+
auto byte = static_cast<uint8_t>(str[i]);
|
|
124
|
+
uint32_t cp;
|
|
125
|
+
if (byte < 0x80) {
|
|
126
|
+
cp = byte;
|
|
127
|
+
i += 1;
|
|
128
|
+
} else if ((byte & 0xE0) == 0xC0 && i + 1 < str.size()) {
|
|
129
|
+
cp = ((byte & 0x1F) << 6) | (static_cast<uint8_t>(str[i + 1]) & 0x3F);
|
|
130
|
+
i += 2;
|
|
131
|
+
} else if ((byte & 0xF0) == 0xE0 && i + 2 < str.size()) {
|
|
132
|
+
cp = ((byte & 0x0F) << 12) | ((static_cast<uint8_t>(str[i + 1]) & 0x3F) << 6) | (static_cast<uint8_t>(str[i + 2]) & 0x3F);
|
|
133
|
+
i += 3;
|
|
134
|
+
} else if ((byte & 0xF8) == 0xF0 && i + 3 < str.size()) {
|
|
135
|
+
cp = ((byte & 0x07) << 18) | ((static_cast<uint8_t>(str[i + 1]) & 0x3F) << 12) | ((static_cast<uint8_t>(str[i + 2]) & 0x3F) << 6) |
|
|
136
|
+
(static_cast<uint8_t>(str[i + 3]) & 0x3F);
|
|
137
|
+
i += 4;
|
|
138
|
+
} else {
|
|
139
|
+
cp = byte;
|
|
140
|
+
i += 1;
|
|
141
|
+
}
|
|
142
|
+
result.push_back(static_cast<uint8_t>(cp & 0xFF));
|
|
143
|
+
}
|
|
144
|
+
return result;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
std::string encodeLatin1(const uint8_t* data, size_t len) {
|
|
148
|
+
std::string result;
|
|
149
|
+
result.reserve(len * 2);
|
|
150
|
+
for (size_t i = 0; i < len; i++) {
|
|
151
|
+
uint8_t byte = data[i];
|
|
152
|
+
if (byte < 0x80) {
|
|
153
|
+
result.push_back(static_cast<char>(byte));
|
|
154
|
+
} else {
|
|
155
|
+
// Latin1 byte 0x80-0xFF → UTF-8 two-byte sequence
|
|
156
|
+
result.push_back(static_cast<char>(0xC0 | (byte >> 6)));
|
|
157
|
+
result.push_back(static_cast<char>(0x80 | (byte & 0x3F)));
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
return result;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
} // anonymous namespace
|
|
164
|
+
|
|
8
165
|
bool HybridUtils::timingSafeEqual(const std::shared_ptr<ArrayBuffer>& a, const std::shared_ptr<ArrayBuffer>& b) {
|
|
9
166
|
size_t aLen = a->size();
|
|
10
167
|
size_t bLen = b->size();
|
|
@@ -16,4 +173,63 @@ bool HybridUtils::timingSafeEqual(const std::shared_ptr<ArrayBuffer>& a, const s
|
|
|
16
173
|
return CRYPTO_memcmp(a->data(), b->data(), aLen) == 0;
|
|
17
174
|
}
|
|
18
175
|
|
|
176
|
+
std::string HybridUtils::bufferToString(const std::shared_ptr<ArrayBuffer>& buffer, const std::string& encoding) {
|
|
177
|
+
const auto* data = reinterpret_cast<const uint8_t*>(buffer->data());
|
|
178
|
+
size_t len = buffer->size();
|
|
179
|
+
|
|
180
|
+
if (encoding == "hex") {
|
|
181
|
+
return encodeHex(data, len);
|
|
182
|
+
}
|
|
183
|
+
if (encoding == "base64") {
|
|
184
|
+
return encodeBase64(data, len);
|
|
185
|
+
}
|
|
186
|
+
if (encoding == "base64url") {
|
|
187
|
+
return encodeBase64Url(data, len);
|
|
188
|
+
}
|
|
189
|
+
if (encoding == "utf8" || encoding == "utf-8") {
|
|
190
|
+
return std::string(reinterpret_cast<const char*>(data), len);
|
|
191
|
+
}
|
|
192
|
+
if (encoding == "latin1" || encoding == "binary") {
|
|
193
|
+
return encodeLatin1(data, len);
|
|
194
|
+
}
|
|
195
|
+
if (encoding == "ascii") {
|
|
196
|
+
std::string result(reinterpret_cast<const char*>(data), len);
|
|
197
|
+
for (auto& c : result) {
|
|
198
|
+
c &= 0x7F;
|
|
199
|
+
}
|
|
200
|
+
return result;
|
|
201
|
+
}
|
|
202
|
+
throw std::runtime_error("Unsupported encoding: " + encoding);
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
std::shared_ptr<ArrayBuffer> HybridUtils::stringToBuffer(const std::string& str, const std::string& encoding) {
|
|
206
|
+
if (encoding == "hex") {
|
|
207
|
+
auto decoded = decodeHex(str);
|
|
208
|
+
return ToNativeArrayBuffer(decoded);
|
|
209
|
+
}
|
|
210
|
+
if (encoding == "base64") {
|
|
211
|
+
auto decoded = decodeBase64(str);
|
|
212
|
+
return ToNativeArrayBuffer(decoded);
|
|
213
|
+
}
|
|
214
|
+
if (encoding == "base64url") {
|
|
215
|
+
auto decoded = decodeBase64Url(str);
|
|
216
|
+
return ToNativeArrayBuffer(decoded);
|
|
217
|
+
}
|
|
218
|
+
if (encoding == "utf8" || encoding == "utf-8") {
|
|
219
|
+
return ToNativeArrayBuffer(str);
|
|
220
|
+
}
|
|
221
|
+
if (encoding == "latin1" || encoding == "binary") {
|
|
222
|
+
auto decoded = decodeLatin1(str);
|
|
223
|
+
return ToNativeArrayBuffer(decoded);
|
|
224
|
+
}
|
|
225
|
+
if (encoding == "ascii") {
|
|
226
|
+
auto decoded = decodeLatin1(str);
|
|
227
|
+
for (auto& b : decoded) {
|
|
228
|
+
b &= 0x7F;
|
|
229
|
+
}
|
|
230
|
+
return ToNativeArrayBuffer(decoded);
|
|
231
|
+
}
|
|
232
|
+
throw std::runtime_error("Unsupported encoding: " + encoding);
|
|
233
|
+
}
|
|
234
|
+
|
|
19
235
|
} // namespace margelo::nitro::crypto
|
|
@@ -10,6 +10,8 @@ class HybridUtils : public HybridUtilsSpec {
|
|
|
10
10
|
|
|
11
11
|
public:
|
|
12
12
|
bool timingSafeEqual(const std::shared_ptr<ArrayBuffer>& a, const std::shared_ptr<ArrayBuffer>& b) override;
|
|
13
|
+
std::string bufferToString(const std::shared_ptr<ArrayBuffer>& buffer, const std::string& encoding) override;
|
|
14
|
+
std::shared_ptr<ArrayBuffer> stringToBuffer(const std::string& str, const std::string& encoding) override;
|
|
13
15
|
};
|
|
14
16
|
|
|
15
17
|
} // namespace margelo::nitro::crypto
|
package/lib/commonjs/ed.js
CHANGED
|
@@ -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
|
|
38
|
-
const
|
|
39
|
-
const
|
|
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
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
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
|
-
} =
|
|
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
|
-
} :
|
|
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
|
|
277
|
-
|
|
278
|
-
|
|
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
|
|
312
|
-
|
|
313
|
-
|
|
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);
|
package/lib/commonjs/ed.js.map
CHANGED
|
@@ -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":[]}
|
package/lib/commonjs/hash.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_readableStream","require","_reactNativeNitroModules","_reactNativeBuffer","_utils","_validation","_errors","_hashnames","HashUtils","native","NitroModules","createHybridObject","getSupportedHashAlgorithms","getHashes","Hash","Stream","Transform","validate","args","algorithm","length","Error","options","outputLength","undefined","constructor","createHash","update","data","inputEncoding","defaultEncoding","binaryLikeToArrayBuffer","digest","encoding","nativeDigest","ab2str","Buffer","from","copy","newOptions","newNativeHash","hash","getOpenSSLVersion","_transform","chunk","callback","_flush","push","asyncDigest","validateMaxBufferLength","name","internalDigest","lazyDOMException","exports","normalizedHashName","normalizeHashName","bufferLikeToArrayBuffer","result","arrayBuffer","ArrayBuffer","view","Uint8Array","set","outputEncoding","h","hashExports"],"sourceRoot":"../../src","sources":["hash.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["_readableStream","require","_reactNativeNitroModules","_reactNativeBuffer","_utils","_validation","_errors","_hashnames","HashUtils","native","NitroModules","createHybridObject","getSupportedHashAlgorithms","getHashes","Hash","Stream","Transform","validate","args","algorithm","length","Error","options","outputLength","undefined","constructor","createHash","update","data","inputEncoding","defaultEncoding","binaryLikeToArrayBuffer","digest","encoding","nativeDigest","ab2str","Buffer","from","copy","newOptions","newNativeHash","hash","getOpenSSLVersion","_transform","chunk","callback","_flush","push","asyncDigest","validateMaxBufferLength","name","internalDigest","lazyDOMException","exports","normalizedHashName","normalizeHashName","bufferLikeToArrayBuffer","result","arrayBuffer","ArrayBuffer","view","Uint8Array","set","outputEncoding","h","hashExports"],"sourceRoot":"../../src","sources":["hash.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,16 +9,21 @@ var _exportNames = {
|
|
|
9
9
|
bufferLikeToArrayBuffer: true,
|
|
10
10
|
binaryLikeToArrayBuffer: true,
|
|
11
11
|
ab2str: true,
|
|
12
|
+
bufferToString: true,
|
|
13
|
+
stringToBuffer: true,
|
|
12
14
|
kEmptyObject: true
|
|
13
15
|
};
|
|
14
16
|
exports.ab2str = ab2str;
|
|
15
17
|
exports.abvToArrayBuffer = void 0;
|
|
16
18
|
exports.binaryLikeToArrayBuffer = binaryLikeToArrayBuffer;
|
|
17
19
|
exports.bufferLikeToArrayBuffer = bufferLikeToArrayBuffer;
|
|
20
|
+
exports.bufferToString = bufferToString;
|
|
18
21
|
exports.kEmptyObject = void 0;
|
|
22
|
+
exports.stringToBuffer = stringToBuffer;
|
|
19
23
|
exports.toArrayBuffer = toArrayBuffer;
|
|
20
24
|
var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
|
|
21
25
|
var _safeBuffer = require("safe-buffer");
|
|
26
|
+
var _reactNativeNitroModules = require("react-native-nitro-modules");
|
|
22
27
|
var _noble = require("./noble");
|
|
23
28
|
Object.keys(_noble).forEach(function (key) {
|
|
24
29
|
if (key === "default" || key === "__esModule") return;
|
|
@@ -31,6 +36,8 @@ Object.keys(_noble).forEach(function (key) {
|
|
|
31
36
|
}
|
|
32
37
|
});
|
|
33
38
|
});
|
|
39
|
+
const utils = _reactNativeNitroModules.NitroModules.createHybridObject('Utils');
|
|
40
|
+
|
|
34
41
|
/**
|
|
35
42
|
* Converts supplied argument to an ArrayBuffer. Note this does not copy the
|
|
36
43
|
* data so it is faster than toArrayBuffer. Not copying is important for
|
|
@@ -107,6 +114,9 @@ encoding = 'utf-8') {
|
|
|
107
114
|
if (encoding === 'buffer') {
|
|
108
115
|
throw new Error('Cannot create a buffer from a string with a buffer encoding');
|
|
109
116
|
}
|
|
117
|
+
if (nativeEncodings.has(encoding)) {
|
|
118
|
+
return utils.stringToBuffer(input, encoding);
|
|
119
|
+
}
|
|
110
120
|
const buffer = _reactNativeBuffer.Buffer.from(input, encoding);
|
|
111
121
|
return buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.byteLength);
|
|
112
122
|
}
|
|
@@ -149,8 +159,22 @@ encoding = 'utf-8') {
|
|
|
149
159
|
}
|
|
150
160
|
throw new Error('Invalid argument type for "key". Need ArrayBuffer, TypedArray, KeyObject, CryptoKey, string');
|
|
151
161
|
}
|
|
162
|
+
const nativeEncodings = new Set(['hex', 'base64', 'base64url', 'utf8', 'utf-8', 'latin1', 'binary', 'ascii']);
|
|
152
163
|
function ab2str(buf, encoding = 'hex') {
|
|
164
|
+
if (nativeEncodings.has(encoding)) {
|
|
165
|
+
return utils.bufferToString(buf, encoding);
|
|
166
|
+
}
|
|
153
167
|
return _reactNativeBuffer.Buffer.from(buf).toString(encoding);
|
|
154
168
|
}
|
|
169
|
+
|
|
170
|
+
/** Native C++ buffer-to-string — exposed for benchmarking */
|
|
171
|
+
function bufferToString(buf, encoding = 'hex') {
|
|
172
|
+
return utils.bufferToString(buf, encoding);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
/** Native C++ string-to-buffer — exposed for benchmarking */
|
|
176
|
+
function stringToBuffer(str, encoding = 'utf-8') {
|
|
177
|
+
return utils.stringToBuffer(str, encoding);
|
|
178
|
+
}
|
|
155
179
|
const kEmptyObject = exports.kEmptyObject = Object.freeze(Object.create(null));
|
|
156
180
|
//# sourceMappingURL=conversion.js.map
|