react-native-quick-crypto 0.7.0-rc.8 → 0.7.0
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/Cipher/MGLGenerateKeyPairInstaller.cpp +51 -14
- package/cpp/Cipher/MGLGenerateKeyPairSyncInstaller.cpp +25 -9
- package/cpp/Cipher/MGLRsa.cpp +13 -12
- package/cpp/Cipher/MGLRsa.h +2 -8
- package/cpp/JSIUtils/MGLJSIUtils.h +9 -0
- package/cpp/MGLKeys.cpp +174 -149
- package/cpp/MGLKeys.h +18 -13
- package/cpp/Sig/MGLSignHostObjects.cpp +284 -421
- package/cpp/Sig/MGLSignHostObjects.h +40 -0
- package/cpp/Utils/MGLUtils.cpp +0 -41
- package/cpp/Utils/MGLUtils.h +27 -6
- package/cpp/webcrypto/MGLWebCrypto.cpp +14 -4
- package/cpp/webcrypto/crypto_ec.cpp +106 -0
- package/cpp/webcrypto/crypto_ec.h +18 -0
- package/lib/commonjs/Cipher.js +138 -95
- package/lib/commonjs/Cipher.js.map +1 -1
- package/lib/commonjs/NativeQuickCrypto/Cipher.js +11 -8
- package/lib/commonjs/NativeQuickCrypto/Cipher.js.map +1 -1
- package/lib/commonjs/NativeQuickCrypto/sig.js +17 -0
- package/lib/commonjs/NativeQuickCrypto/sig.js.map +1 -1
- package/lib/commonjs/Utils.js +15 -1
- package/lib/commonjs/Utils.js.map +1 -1
- package/lib/commonjs/ec.js +79 -91
- package/lib/commonjs/ec.js.map +1 -1
- package/lib/commonjs/keys.js +28 -39
- package/lib/commonjs/keys.js.map +1 -1
- package/lib/commonjs/random.js +0 -1
- package/lib/commonjs/random.js.map +1 -1
- package/lib/commonjs/subtle.js +114 -0
- package/lib/commonjs/subtle.js.map +1 -1
- package/lib/module/Cipher.js +136 -93
- package/lib/module/Cipher.js.map +1 -1
- package/lib/module/NativeQuickCrypto/Cipher.js +10 -7
- package/lib/module/NativeQuickCrypto/Cipher.js.map +1 -1
- package/lib/module/NativeQuickCrypto/sig.js +13 -0
- package/lib/module/NativeQuickCrypto/sig.js.map +1 -1
- package/lib/module/Utils.js +12 -0
- package/lib/module/Utils.js.map +1 -1
- package/lib/module/ec.js +76 -93
- package/lib/module/ec.js.map +1 -1
- package/lib/module/keys.js +26 -39
- package/lib/module/keys.js.map +1 -1
- package/lib/module/random.js +0 -1
- package/lib/module/random.js.map +1 -1
- package/lib/module/subtle.js +115 -1
- package/lib/module/subtle.js.map +1 -1
- package/lib/typescript/Cipher.d.ts +23 -13
- package/lib/typescript/Cipher.d.ts.map +1 -1
- package/lib/typescript/NativeQuickCrypto/Cipher.d.ts +11 -6
- package/lib/typescript/NativeQuickCrypto/Cipher.d.ts.map +1 -1
- package/lib/typescript/NativeQuickCrypto/sig.d.ts +10 -0
- package/lib/typescript/NativeQuickCrypto/sig.d.ts.map +1 -1
- package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts +2 -0
- package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts.map +1 -1
- package/lib/typescript/Utils.d.ts +3 -1
- package/lib/typescript/Utils.d.ts.map +1 -1
- package/lib/typescript/ec.d.ts +3 -1
- package/lib/typescript/ec.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +10 -7
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/keys.d.ts +12 -1
- package/lib/typescript/keys.d.ts.map +1 -1
- package/lib/typescript/random.d.ts +1 -1
- package/lib/typescript/random.d.ts.map +1 -1
- package/lib/typescript/subtle.d.ts +4 -1
- package/lib/typescript/subtle.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/Cipher.ts +139 -75
- package/src/NativeQuickCrypto/Cipher.ts +14 -14
- package/src/NativeQuickCrypto/sig.ts +27 -0
- package/src/NativeQuickCrypto/webcrypto.ts +2 -0
- package/src/Utils.ts +24 -1
- package/src/ec.ts +114 -90
- package/src/keys.ts +53 -57
- package/src/random.ts +1 -11
- package/src/subtle.ts +157 -1
package/lib/module/subtle.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CryptoKey, KWebCryptoKeyFormat, createSecretKey } from './keys';
|
|
2
2
|
import { hasAnyNotIn, normalizeAlgorithm, lazyDOMException, normalizeHashName, HashContext } from './Utils';
|
|
3
|
-
import { ecImportKey, ecExportKey } from './ec';
|
|
3
|
+
import { ecImportKey, ecExportKey, ecGenerateKey, ecdsaSignVerify } from './ec';
|
|
4
4
|
import { pbkdf2DeriveBits } from './pbkdf2';
|
|
5
5
|
import { asyncDigest } from './Hash';
|
|
6
6
|
import { aesImportKey, getAlgorithmName } from './aes';
|
|
@@ -159,6 +159,66 @@ const importGenericSecretKey = async ({
|
|
|
159
159
|
}
|
|
160
160
|
throw new Error(`Unable to import ${name} key with format ${format}`);
|
|
161
161
|
};
|
|
162
|
+
|
|
163
|
+
// const checkCryptoKeyUsages = (key: CryptoKey) => {
|
|
164
|
+
// if (
|
|
165
|
+
// (key.type === 'secret' || key.type === 'private') &&
|
|
166
|
+
// key.usages.length === 0
|
|
167
|
+
// ) {
|
|
168
|
+
// throw lazyDOMException(
|
|
169
|
+
// 'Usages cannot be empty when creating a key.',
|
|
170
|
+
// 'SyntaxError'
|
|
171
|
+
// );
|
|
172
|
+
// }
|
|
173
|
+
// };
|
|
174
|
+
|
|
175
|
+
const checkCryptoKeyPairUsages = pair => {
|
|
176
|
+
if (!(pair.privateKey instanceof Buffer) && pair.privateKey && pair.privateKey.hasOwnProperty('keyUsages')) {
|
|
177
|
+
const priv = pair.privateKey;
|
|
178
|
+
if (priv.usages.length > 0) {
|
|
179
|
+
return;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
console.log(pair.privateKey);
|
|
183
|
+
throw lazyDOMException('Usages cannot be empty when creating a key.', 'SyntaxError');
|
|
184
|
+
};
|
|
185
|
+
const signVerify = (algorithm, key, data, signature) => {
|
|
186
|
+
const usage = signature === undefined ? 'sign' : 'verify';
|
|
187
|
+
algorithm = normalizeAlgorithm(algorithm, usage);
|
|
188
|
+
if (!key.usages.includes(usage) || algorithm.name !== key.algorithm.name) {
|
|
189
|
+
throw lazyDOMException(`Unable to use this key to ${usage}`, 'InvalidAccessError');
|
|
190
|
+
}
|
|
191
|
+
switch (algorithm.name) {
|
|
192
|
+
// case 'RSA-PSS':
|
|
193
|
+
// // Fall through
|
|
194
|
+
// case 'RSASSA-PKCS1-v1_5':
|
|
195
|
+
// return require('internal/crypto/rsa').rsaSignVerify(
|
|
196
|
+
// key,
|
|
197
|
+
// data,
|
|
198
|
+
// algorithm,
|
|
199
|
+
// signature
|
|
200
|
+
// );
|
|
201
|
+
case 'ECDSA':
|
|
202
|
+
return ecdsaSignVerify(key, data, algorithm, signature);
|
|
203
|
+
// case 'Ed25519':
|
|
204
|
+
// // Fall through
|
|
205
|
+
// case 'Ed448':
|
|
206
|
+
// return require('internal/crypto/cfrg').eddsaSignVerify(
|
|
207
|
+
// key,
|
|
208
|
+
// data,
|
|
209
|
+
// algorithm,
|
|
210
|
+
// signature
|
|
211
|
+
// );
|
|
212
|
+
// case 'HMAC':
|
|
213
|
+
// return require('internal/crypto/mac').hmacSignVerify(
|
|
214
|
+
// key,
|
|
215
|
+
// data,
|
|
216
|
+
// algorithm,
|
|
217
|
+
// signature
|
|
218
|
+
// );
|
|
219
|
+
}
|
|
220
|
+
throw lazyDOMException(`Unrecognized algorithm name '${algorithm}' for '${usage}'`, 'NotSupportedError');
|
|
221
|
+
};
|
|
162
222
|
class Subtle {
|
|
163
223
|
async digest(algorithm, data) {
|
|
164
224
|
const normalizedAlgorithm = normalizeAlgorithm(algorithm, 'digest');
|
|
@@ -261,6 +321,60 @@ class Subtle {
|
|
|
261
321
|
}
|
|
262
322
|
throw new Error(`'subtle.exportKey()' is not implemented for ${format}`);
|
|
263
323
|
}
|
|
324
|
+
async generateKey(algorithm, extractable, keyUsages) {
|
|
325
|
+
algorithm = normalizeAlgorithm(algorithm, 'generateKey');
|
|
326
|
+
let result;
|
|
327
|
+
switch (algorithm.name) {
|
|
328
|
+
// case 'RSASSA-PKCS1-v1_5':
|
|
329
|
+
// // Fall through
|
|
330
|
+
// case 'RSA-PSS':
|
|
331
|
+
// // Fall through
|
|
332
|
+
// case 'RSA-OAEP':
|
|
333
|
+
// resultType = 'CryptoKeyPair';
|
|
334
|
+
// result = await rsaKeyGenerate(algorithm, extractable, keyUsages);
|
|
335
|
+
// break;
|
|
336
|
+
// case 'Ed25519':
|
|
337
|
+
// // Fall through
|
|
338
|
+
// case 'Ed448':
|
|
339
|
+
// // Fall through
|
|
340
|
+
// case 'X25519':
|
|
341
|
+
// // Fall through
|
|
342
|
+
// case 'X448':
|
|
343
|
+
// resultType = 'CryptoKeyPair';
|
|
344
|
+
// result = await cfrgGenerateKey(algorithm, extractable, keyUsages);
|
|
345
|
+
// break;
|
|
346
|
+
case 'ECDSA':
|
|
347
|
+
// Fall through
|
|
348
|
+
case 'ECDH':
|
|
349
|
+
result = await ecGenerateKey(algorithm, extractable, keyUsages);
|
|
350
|
+
checkCryptoKeyPairUsages(result);
|
|
351
|
+
break;
|
|
352
|
+
// case 'HMAC':
|
|
353
|
+
// resultType = 'CryptoKey';
|
|
354
|
+
// result = await hmacGenerateKey(algorithm, extractable, keyUsages);
|
|
355
|
+
// break;
|
|
356
|
+
// case 'AES-CTR':
|
|
357
|
+
// // Fall through
|
|
358
|
+
// case 'AES-CBC':
|
|
359
|
+
// // Fall through
|
|
360
|
+
// case 'AES-GCM':
|
|
361
|
+
// // Fall through
|
|
362
|
+
// case 'AES-KW':
|
|
363
|
+
// resultType = 'CryptoKey';
|
|
364
|
+
// result = await aesGenerateKey(algorithm, extractable, keyUsages);
|
|
365
|
+
// break;
|
|
366
|
+
default:
|
|
367
|
+
throw new Error(`'subtle.generateKey()' is not implemented for ${algorithm.name}.
|
|
368
|
+
Unrecognized algorithm name`);
|
|
369
|
+
}
|
|
370
|
+
return result;
|
|
371
|
+
}
|
|
372
|
+
async sign(algorithm, key, data) {
|
|
373
|
+
return signVerify(algorithm, key, data);
|
|
374
|
+
}
|
|
375
|
+
async verify(algorithm, key, signature, data) {
|
|
376
|
+
return signVerify(algorithm, key, data, signature);
|
|
377
|
+
}
|
|
264
378
|
}
|
|
265
379
|
export const subtle = new Subtle();
|
|
266
380
|
//# sourceMappingURL=subtle.js.map
|
package/lib/module/subtle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["CryptoKey","KWebCryptoKeyFormat","createSecretKey","hasAnyNotIn","normalizeAlgorithm","lazyDOMException","normalizeHashName","HashContext","ecImportKey","ecExportKey","pbkdf2DeriveBits","asyncDigest","aesImportKey","getAlgorithmName","rsaImportKey","exportKeySpki","key","algorithm","name","type","kWebCryptoKeyFormatSPKI","Error","exportKeyRaw","kWebCryptoKeyFormatRaw","keyObject","export","exportKeyJWK","jwk","handle","exportJwk","key_ops","usages","ext","extractable","alg","hash","JwkRsa","JwkRsaPss","JwkRsaOaep","crv","namedCurve","length","importGenericSecretKey","format","keyData","keyUsages","checkLength","byteLength","undefined","
|
|
1
|
+
{"version":3,"names":["CryptoKey","KWebCryptoKeyFormat","createSecretKey","hasAnyNotIn","normalizeAlgorithm","lazyDOMException","normalizeHashName","HashContext","ecImportKey","ecExportKey","ecGenerateKey","ecdsaSignVerify","pbkdf2DeriveBits","asyncDigest","aesImportKey","getAlgorithmName","rsaImportKey","exportKeySpki","key","algorithm","name","type","kWebCryptoKeyFormatSPKI","Error","exportKeyRaw","kWebCryptoKeyFormatRaw","keyObject","export","exportKeyJWK","jwk","handle","exportJwk","key_ops","usages","ext","extractable","alg","hash","JwkRsa","JwkRsaPss","JwkRsaOaep","crv","namedCurve","length","importGenericSecretKey","format","keyData","keyUsages","checkLength","byteLength","undefined","checkCryptoKeyPairUsages","pair","privateKey","Buffer","hasOwnProperty","priv","console","log","signVerify","data","signature","usage","includes","Subtle","digest","normalizedAlgorithm","deriveBits","baseKey","importKey","result","exportKey","generateKey","sign","verify","subtle"],"sourceRoot":"../../src","sources":["subtle.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
import { type BinaryLike, type BinaryLikeNode } from './Utils';
|
|
3
3
|
import type { CipherCCMOptions, CipherCCMTypes, CipherGCMTypes, CipherGCMOptions, CipherOCBOptions, CipherOCBTypes, DecipherGCM, DecipherOCB, DecipherCCM, CipherCCM, CipherOCB, CipherGCM } from 'crypto';
|
|
4
4
|
import { Buffer } from '@craftzdog/react-native-buffer';
|
|
5
|
+
import { CryptoKey, type CryptoKeyPair, type KeyPairType } from './keys';
|
|
6
|
+
import type { KeyObjectHandle } from './NativeQuickCrypto/webcrypto';
|
|
7
|
+
export declare enum ECCurve {
|
|
8
|
+
OPENSSL_EC_EXPLICIT_CURVE = 0,
|
|
9
|
+
OPENSSL_EC_NAMED_CURVE = 1
|
|
10
|
+
}
|
|
5
11
|
export declare function createDecipher(algorithm: CipherCCMTypes, password: BinaryLikeNode, options: CipherCCMOptions): DecipherCCM;
|
|
6
12
|
export declare function createDecipher(algorithm: CipherGCMTypes, password: BinaryLikeNode, options?: CipherGCMOptions): DecipherGCM;
|
|
7
13
|
export declare function createDecipheriv(algorithm: CipherCCMTypes, key: BinaryLikeNode, iv: BinaryLike, options: CipherCCMOptions): DecipherCCM;
|
|
@@ -39,8 +45,8 @@ export declare const privateDecrypt: (options: {
|
|
|
39
45
|
oaepLabel?: any;
|
|
40
46
|
passphrase?: string;
|
|
41
47
|
}, buffer: BinaryLike) => Buffer;
|
|
42
|
-
type GenerateKeyPairOptions = {
|
|
43
|
-
modulusLength
|
|
48
|
+
export type GenerateKeyPairOptions = {
|
|
49
|
+
modulusLength?: number;
|
|
44
50
|
publicExponent?: number;
|
|
45
51
|
hashAlgorithm?: string;
|
|
46
52
|
mgf1HashAlgorithm?: string;
|
|
@@ -57,16 +63,20 @@ type GenerateKeyPairOptions = {
|
|
|
57
63
|
hash?: any;
|
|
58
64
|
mgf1Hash?: any;
|
|
59
65
|
};
|
|
60
|
-
type
|
|
61
|
-
export
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
publicKey
|
|
65
|
-
|
|
66
|
+
export type KeyPairKey = Buffer | KeyObjectHandle | CryptoKey | undefined;
|
|
67
|
+
export type GenerateKeyPairReturn = [
|
|
68
|
+
error?: Error,
|
|
69
|
+
privateKey?: KeyPairKey,
|
|
70
|
+
publicKey?: KeyPairKey
|
|
71
|
+
];
|
|
72
|
+
export type GenerateKeyPairCallback = (error?: Error, publicKey?: KeyPairKey, privateKey?: KeyPairKey) => GenerateKeyPairReturn | void;
|
|
73
|
+
export type KeyPair = {
|
|
74
|
+
publicKey?: KeyPairKey;
|
|
75
|
+
privateKey?: KeyPairKey;
|
|
66
76
|
};
|
|
67
|
-
export
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
export
|
|
77
|
+
export type GenerateKeyPairPromiseReturn = [error?: Error, keypair?: KeyPair];
|
|
78
|
+
export declare const generateKeyPair: (type: KeyPairType, options: GenerateKeyPairOptions, callback: GenerateKeyPairCallback) => void;
|
|
79
|
+
export declare const generateKeyPairPromise: (type: KeyPairType, options: GenerateKeyPairOptions) => Promise<GenerateKeyPairPromiseReturn>;
|
|
80
|
+
export declare function generateKeyPairSync(type: KeyPairType): CryptoKeyPair;
|
|
81
|
+
export declare function generateKeyPairSync(type: KeyPairType, options: GenerateKeyPairOptions): CryptoKeyPair;
|
|
72
82
|
//# sourceMappingURL=Cipher.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cipher.d.ts","sourceRoot":"","sources":["../../src/Cipher.ts"],"names":[],"mappings":";AAEA,OAAO,EACL,KAAK,UAAU,EAWf,KAAK,cAAc,EACpB,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,EACV,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,WAAW,EACX,WAAW,EACX,WAAW,EACX,SAAS,EACT,SAAS,EACT,SAAS,EACV,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"Cipher.d.ts","sourceRoot":"","sources":["../../src/Cipher.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,14 @@
|
|
|
1
|
+
import type { GenerateKeyPairReturn } from '../Cipher';
|
|
1
2
|
import type { BinaryLike } from '../Utils';
|
|
2
3
|
import type { Buffer } from '@craftzdog/react-native-buffer';
|
|
3
|
-
export declare enum
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
export declare enum KeyVariant {
|
|
5
|
+
RSA_SSA_PKCS1_v1_5 = 0,
|
|
6
|
+
RSA_PSS = 1,
|
|
7
|
+
RSA_OAEP = 2,
|
|
8
|
+
DSA = 3,
|
|
9
|
+
EC = 4,
|
|
10
|
+
NID = 5,
|
|
11
|
+
DH = 6
|
|
7
12
|
}
|
|
8
13
|
export type InternalCipher = {
|
|
9
14
|
update: (data: BinaryLike | ArrayBufferView) => ArrayBuffer;
|
|
@@ -29,6 +34,6 @@ export type CreateDecipherMethod = (params: {
|
|
|
29
34
|
}) => InternalCipher;
|
|
30
35
|
export type PublicEncryptMethod = (data: ArrayBuffer, format: number, type: any, passphrase: any, buffer: ArrayBuffer, padding: number, oaepHash: any, oaepLabel: any) => Buffer;
|
|
31
36
|
export type PrivateDecryptMethod = (data: ArrayBuffer, format: number, type: any, passphrase: any, buffer: ArrayBuffer, padding: number, oaepHash: any, oaepLabel: any) => Buffer;
|
|
32
|
-
export type GenerateKeyPairMethod = (keyVariant:
|
|
33
|
-
export type GenerateKeyPairSyncMethod = (keyVariant:
|
|
37
|
+
export type GenerateKeyPairMethod = (keyVariant: KeyVariant, ...rest: any[]) => Promise<GenerateKeyPairReturn>;
|
|
38
|
+
export type GenerateKeyPairSyncMethod = (keyVariant: KeyVariant, ...rest: any[]) => GenerateKeyPairReturn;
|
|
34
39
|
//# sourceMappingURL=Cipher.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Cipher.d.ts","sourceRoot":"","sources":["../../../src/NativeQuickCrypto/Cipher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"Cipher.d.ts","sourceRoot":"","sources":["../../../src/NativeQuickCrypto/Cipher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAC3C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAG7D,oBAAY,UAAU;IACpB,kBAAkB,IAAA;IAClB,OAAO,IAAA;IACP,QAAQ,IAAA;IACR,GAAG,IAAA;IACH,EAAE,IAAA;IACF,GAAG,IAAA;IACH,EAAE,IAAA;CACH;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,MAAM,EAAE,CAAC,IAAI,EAAE,UAAU,GAAG,eAAe,KAAK,WAAW,CAAC;IAC5D,KAAK,EAAE,MAAM,WAAW,CAAC;IACzB,IAAI,EAAE,MAAM,IAAI,CAAC;IACjB,MAAM,EAAE,CAAC,IAAI,EAAE;QACb,IAAI,EAAE,UAAU,CAAC;QACjB,eAAe,CAAC,EAAE,MAAM,CAAC;KAC1B,KAAK,cAAc,CAAC;IACrB,cAAc,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;IAC9C,UAAU,EAAE,CAAC,GAAG,EAAE,WAAW,KAAK,OAAO,CAAC;IAC1C,UAAU,EAAE,MAAM,WAAW,CAAC;CAC/B,CAAC;AAEF,MAAM,MAAM,kBAAkB,GAAG,CAAC,MAAM,EAAE;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,WAAW,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CACtB,KAAK,cAAc,CAAC;AAErB,MAAM,MAAM,oBAAoB,GAAG,CAAC,MAAM,EAAE;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,WAAW,CAAC;IACxB,YAAY,EAAE,MAAM,CAAC;CACtB,KAAK,cAAc,CAAC;AAErB,MAAM,MAAM,mBAAmB,GAAG,CAChC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,GAAG,EACf,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,GAAG,KACX,MAAM,CAAC;AACZ,MAAM,MAAM,oBAAoB,GAAG,CACjC,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,GAAG,EACT,UAAU,EAAE,GAAG,EACf,MAAM,EAAE,WAAW,EACnB,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,GAAG,EACb,SAAS,EAAE,GAAG,KACX,MAAM,CAAC;AAEZ,MAAM,MAAM,qBAAqB,GAAG,CAClC,UAAU,EAAE,UAAU,EACtB,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAEpC,MAAM,MAAM,yBAAyB,GAAG,CACtC,UAAU,EAAE,UAAU,EACtB,GAAG,IAAI,EAAE,GAAG,EAAE,KACX,qBAAqB,CAAC"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { KeyObjectHandle } from './webcrypto';
|
|
1
2
|
export type InternalSign = {
|
|
2
3
|
init: (algorithm: string) => void;
|
|
3
4
|
update: (data: ArrayBuffer) => void;
|
|
@@ -10,4 +11,13 @@ export type InternalVerify = {
|
|
|
10
11
|
};
|
|
11
12
|
export type CreateSignMethod = () => InternalSign;
|
|
12
13
|
export type CreateVerifyMethod = () => InternalVerify;
|
|
14
|
+
export declare enum DSASigEnc {
|
|
15
|
+
kSigEncDER = 0,
|
|
16
|
+
kSigEncP1363 = 1
|
|
17
|
+
}
|
|
18
|
+
export declare enum SignMode {
|
|
19
|
+
kSignJobModeSign = 0,
|
|
20
|
+
kSignJobModeVerify = 1
|
|
21
|
+
}
|
|
22
|
+
export type SignVerify = (mode: SignMode, handle: KeyObjectHandle, unused1: undefined, unused2: undefined, unused3: undefined, data: ArrayBuffer, digest: string | undefined, salt_length: number | undefined, padding: number | undefined, dsa_encoding: DSASigEnc | undefined, signature: ArrayBuffer | undefined) => ArrayBuffer | boolean;
|
|
13
23
|
//# sourceMappingURL=sig.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sig.d.ts","sourceRoot":"","sources":["../../../src/NativeQuickCrypto/sig.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IACpC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"sig.d.ts","sourceRoot":"","sources":["../../../src/NativeQuickCrypto/sig.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAGnD,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IACpC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,UAAU,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,MAAM,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,CAAC;IACpC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,KAAK,OAAO,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,MAAM,YAAY,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG,MAAM,cAAc,CAAC;AAEtD,oBAAY,SAAS;IACnB,UAAU,IAAA;IACV,YAAY,IAAA;CACb;AAED,oBAAY,QAAQ;IAClB,gBAAgB,IAAA;IAChB,kBAAkB,IAAA;CACnB;AAED,MAAM,MAAM,UAAU,GAAG,CACvB,IAAI,EAAE,QAAQ,EACd,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,SAAS,EAClB,OAAO,EAAE,SAAS,EAClB,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,WAAW,EAAE,MAAM,GAAG,SAAS,EAC/B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,YAAY,EAAE,SAAS,GAAG,SAAS,EACnC,SAAS,EAAE,WAAW,GAAG,SAAS,KAC/B,WAAW,GAAG,OAAO,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AsymmetricKeyType, JWK, KeyEncoding, KeyType, KFormatType, KWebCryptoKeyFormat, NamedCurve } from '../keys';
|
|
2
|
+
import type { SignVerify } from './sig';
|
|
2
3
|
type KeyDetail = {
|
|
3
4
|
length?: number;
|
|
4
5
|
publicExponent?: number;
|
|
@@ -22,6 +23,7 @@ type CreateKeyObjectHandle = () => KeyObjectHandle;
|
|
|
22
23
|
export type webcrypto = {
|
|
23
24
|
ecExportKey: ECExportKey;
|
|
24
25
|
createKeyObjectHandle: CreateKeyObjectHandle;
|
|
26
|
+
signVerify: SignVerify;
|
|
25
27
|
};
|
|
26
28
|
export {};
|
|
27
29
|
//# sourceMappingURL=webcrypto.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"webcrypto.d.ts","sourceRoot":"","sources":["../../../src/NativeQuickCrypto/webcrypto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,GAAG,EACH,WAAW,EACX,OAAO,EACP,WAAW,EACX,mBAAmB,EACnB,UAAU,EACX,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"webcrypto.d.ts","sourceRoot":"","sources":["../../../src/NativeQuickCrypto/webcrypto.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,GAAG,EACH,WAAW,EACX,OAAO,EACP,WAAW,EACX,mBAAmB,EACnB,UAAU,EACX,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAExC,KAAK,SAAS,GAAG;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,KAAK,WAAW,GAAG,CACjB,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,eAAe,KACpB,WAAW,CAAC;AAEjB,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CACJ,MAAM,CAAC,EAAE,WAAW,EACpB,IAAI,CAAC,EAAE,WAAW,EAClB,MAAM,CAAC,EAAE,MAAM,EACf,UAAU,CAAC,EAAE,WAAW,GACvB,WAAW,CAAC;IACf,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,EAAE,OAAO,GAAG,GAAG,CAAC;IAChD,oBAAoB,IAAI,iBAAiB,CAAC;IAC1C,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,GAAG,OAAO,CAAC;IAC1C,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC;IAC5D,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,EAAE,UAAU,GAAG,OAAO,GAAG,SAAS,CAAC;IACpE,SAAS,IAAI,SAAS,CAAC;CACxB,CAAC;AAEF,KAAK,qBAAqB,GAAG,MAAM,eAAe,CAAC;AAEnD,MAAM,MAAM,SAAS,GAAG;IACtB,WAAW,EAAE,WAAW,CAAC;IACzB,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC"}
|
|
@@ -3,13 +3,14 @@ import { Buffer } from '@craftzdog/react-native-buffer';
|
|
|
3
3
|
import type { AnyAlgorithm, KeyUsage, SubtleAlgorithm } from './keys';
|
|
4
4
|
import { type CipherKey } from 'crypto';
|
|
5
5
|
export type BufferLike = ArrayBuffer | Buffer | ArrayBufferView;
|
|
6
|
-
export type BinaryLike = string | ArrayBuffer | Buffer;
|
|
6
|
+
export type BinaryLike = string | ArrayBuffer | Buffer | TypedArray;
|
|
7
7
|
export type BinaryLikeNode = CipherKey | BinaryLike;
|
|
8
8
|
export type BinaryToTextEncoding = 'base64' | 'base64url' | 'hex' | 'binary';
|
|
9
9
|
export type CharacterEncoding = 'utf8' | 'utf-8' | 'utf16le' | 'latin1';
|
|
10
10
|
export type LegacyCharacterEncoding = 'ascii' | 'binary' | 'ucs2' | 'ucs-2';
|
|
11
11
|
export type Encoding = BinaryToTextEncoding | CharacterEncoding | LegacyCharacterEncoding;
|
|
12
12
|
export type CipherEncoding = Encoding | 'buffer';
|
|
13
|
+
export type TypedArray = Uint8Array | Uint8ClampedArray | Uint16Array | Uint32Array | Int8Array | Int16Array | Int32Array | Float32Array | Float64Array;
|
|
13
14
|
type DOMName = string | {
|
|
14
15
|
name: string;
|
|
15
16
|
cause: any;
|
|
@@ -39,6 +40,7 @@ export declare const validateMaxBufferLength: (data: BinaryLike | BufferLike, na
|
|
|
39
40
|
export declare const normalizeAlgorithm: (algorithm: SubtleAlgorithm | AnyAlgorithm, op: Operation) => SubtleAlgorithm;
|
|
40
41
|
export declare const validateBitLength: (length: number, name: string, required?: boolean) => void;
|
|
41
42
|
export declare const validateByteLength: (buf: BufferLike, name: string, target: number) => void;
|
|
43
|
+
export declare const getUsagesUnion: (usageSet: KeyUsage[], ...usages: KeyUsage[]) => KeyUsage[];
|
|
42
44
|
export declare const validateKeyOps: (keyOps: KeyUsage[] | undefined, usagesSet: KeyUsage[]) => void;
|
|
43
45
|
export declare const getHashes: () => string[];
|
|
44
46
|
export declare const getCiphers: () => string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../src/Utils.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,KAAK,EACV,YAAY,EAKZ,QAAQ,EAGR,eAAe,EAChB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,QAAQ,CAAC;AAExC,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,MAAM,GAAG,eAAe,CAAC;AAChE,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,WAAW,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"Utils.d.ts","sourceRoot":"","sources":["../../src/Utils.ts"],"names":[],"mappings":"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"}
|
package/lib/typescript/ec.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { type BufferLike, type BinaryLike } from './Utils';
|
|
2
|
-
import { type ImportFormat, type SubtleAlgorithm, type KeyUsage, KWebCryptoKeyFormat, CryptoKey, type JWK } from './keys';
|
|
2
|
+
import { type ImportFormat, type SubtleAlgorithm, type KeyUsage, KWebCryptoKeyFormat, CryptoKey, type JWK, type CryptoKeyPair } from './keys';
|
|
3
3
|
export declare function ecExportKey(key: CryptoKey, format: KWebCryptoKeyFormat): ArrayBuffer;
|
|
4
4
|
export declare function ecImportKey(format: ImportFormat, keyData: BufferLike | BinaryLike | JWK, algorithm: SubtleAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): CryptoKey;
|
|
5
|
+
export declare const ecdsaSignVerify: (key: CryptoKey, data: BufferLike, { hash }: SubtleAlgorithm, signature?: BufferLike) => boolean | ArrayBuffer;
|
|
6
|
+
export declare const ecGenerateKey: (algorithm: SubtleAlgorithm, extractable: boolean, keyUsages: KeyUsage[]) => Promise<CryptoKeyPair>;
|
|
5
7
|
//# sourceMappingURL=ec.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ec.d.ts","sourceRoot":"","sources":["../../src/ec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ec.d.ts","sourceRoot":"","sources":["../../src/ec.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,UAAU,EAQhB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,QAAQ,EAIb,mBAAmB,EACnB,SAAS,EACT,KAAK,GAAG,EAIR,KAAK,aAAa,EACnB,MAAM,QAAQ,CAAC;AA6FhB,wBAAgB,WAAW,CACzB,GAAG,EAAE,SAAS,EACd,MAAM,EAAE,mBAAmB,GAC1B,WAAW,CAEb;AAED,wBAAgB,WAAW,CACzB,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,UAAU,GAAG,UAAU,GAAG,GAAG,EACtC,SAAS,EAAE,eAAe,EAC1B,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACpB,SAAS,CAoIX;AAED,eAAO,MAAM,eAAe,QACrB,SAAS,QACR,UAAU,YACN,eAAe,cACb,UAAU,0BA2BvB,CAAC;AAEF,eAAO,MAAM,aAAa,cACb,eAAe,eACb,OAAO,aACT,QAAQ,EAAE,KACpB,QAAQ,aAAa,CAoEvB,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Buffer } from '@craftzdog/react-native-buffer';
|
|
2
2
|
import * as random from './random';
|
|
3
|
-
import { createCipher, createCipheriv, createDecipher, createDecipheriv,
|
|
3
|
+
import { createCipher, createCipheriv, createDecipher, createDecipheriv, generateKeyPairSync } from './Cipher';
|
|
4
4
|
import { createSign, createVerify } from './sig';
|
|
5
5
|
import { createHmac } from './Hmac';
|
|
6
6
|
import { createHash } from './Hash';
|
|
@@ -10,10 +10,10 @@ import { createHash } from './Hash';
|
|
|
10
10
|
declare const QuickCrypto: {
|
|
11
11
|
getCiphers: () => string[];
|
|
12
12
|
getHashes: () => string[];
|
|
13
|
-
randomFill<T extends
|
|
14
|
-
randomFill<T_1 extends
|
|
15
|
-
randomFill<T_2 extends
|
|
16
|
-
randomFillSync<T_3 extends
|
|
13
|
+
randomFill<T extends Buffer | DataView | import("./Utils").TypedArray | ArrayBufferLike>(buffer: T, callback: (err: Error | null, buf: T) => void): void;
|
|
14
|
+
randomFill<T_1 extends Buffer | DataView | import("./Utils").TypedArray | ArrayBufferLike>(buffer: T_1, offset: number, callback: (err: Error | null, buf: T_1) => void): void;
|
|
15
|
+
randomFill<T_2 extends Buffer | DataView | import("./Utils").TypedArray | ArrayBufferLike>(buffer: T_2, offset: number, size: number, callback: (err: Error | null, buf: T_2) => void): void;
|
|
16
|
+
randomFillSync<T_3 extends Buffer | DataView | import("./Utils").TypedArray | ArrayBufferLike>(buffer: T_3, offset?: number | undefined, size?: number | undefined): T_3;
|
|
17
17
|
randomBytes(size: number): Buffer;
|
|
18
18
|
randomBytes(size: number, callback: (err: Error | null, buf?: Buffer | undefined) => void): void;
|
|
19
19
|
randomInt(max: number, callback: (err: Error | null, value: number) => void): void;
|
|
@@ -64,15 +64,18 @@ declare const QuickCrypto: {
|
|
|
64
64
|
oaepLabel?: any;
|
|
65
65
|
passphrase?: string | undefined;
|
|
66
66
|
}, buffer: import("./Utils").BinaryLike) => Buffer;
|
|
67
|
-
generateKeyPair:
|
|
67
|
+
generateKeyPair: (type: import("./keys").KeyPairType, options: import("./Cipher").GenerateKeyPairOptions, callback: import("./Cipher").GenerateKeyPairCallback) => void;
|
|
68
68
|
generateKeyPairSync: typeof generateKeyPairSync;
|
|
69
69
|
createSign: typeof createSign;
|
|
70
70
|
createVerify: typeof createVerify;
|
|
71
71
|
subtle: {
|
|
72
72
|
digest(algorithm: import("./keys").AnyAlgorithm | import("./keys").SubtleAlgorithm, data: import("./Utils").BufferLike): Promise<ArrayBuffer>;
|
|
73
73
|
deriveBits(algorithm: import("./keys").SubtleAlgorithm, baseKey: import("./keys").CryptoKey, length: number): Promise<ArrayBuffer>;
|
|
74
|
-
importKey(format: import("./keys").ImportFormat, data: string | ArrayBuffer | import("./keys").JWK | Buffer | ArrayBufferView, algorithm: import("./keys").AnyAlgorithm | import("./keys").SubtleAlgorithm, extractable: boolean, keyUsages: import("./keys").KeyUsage[]): Promise<import("./keys").CryptoKey>;
|
|
74
|
+
importKey(format: import("./keys").ImportFormat, data: string | ArrayBuffer | Uint8Array | import("./keys").JWK | Buffer | Uint8ClampedArray | Uint16Array | Uint32Array | Int8Array | Int16Array | Int32Array | Float32Array | Float64Array | ArrayBufferView, algorithm: import("./keys").AnyAlgorithm | import("./keys").SubtleAlgorithm, extractable: boolean, keyUsages: import("./keys").KeyUsage[]): Promise<import("./keys").CryptoKey>;
|
|
75
75
|
exportKey(format: import("./keys").ImportFormat, key: import("./keys").CryptoKey): Promise<any>;
|
|
76
|
+
generateKey(algorithm: import("./keys").SubtleAlgorithm, extractable: boolean, keyUsages: import("./keys").KeyUsage[]): Promise<import("./keys").CryptoKey | import("./keys").CryptoKeyPair>;
|
|
77
|
+
sign(algorithm: import("./keys").SubtleAlgorithm, key: import("./keys").CryptoKey, data: import("./Utils").BufferLike): Promise<ArrayBuffer>;
|
|
78
|
+
verify(algorithm: import("./keys").SubtleAlgorithm, key: import("./keys").CryptoKey, signature: import("./Utils").BufferLike, data: import("./Utils").BufferLike): Promise<ArrayBuffer>;
|
|
76
79
|
};
|
|
77
80
|
constants: {
|
|
78
81
|
OPENSSL_VERSION_NUMBER: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAExD,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,gBAAgB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAExD,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AACnC,OAAO,EACL,YAAY,EACZ,cAAc,EACd,cAAc,EACd,gBAAgB,EAKhB,mBAAmB,EACpB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAKpC;;GAEG;AACH,QAAA,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsBhB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,YAMnB,CAAC;AAEF,eAAe,WAAW,CAAC"}
|
package/lib/typescript/keys.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type BinaryLike } from './Utils';
|
|
2
2
|
import type { KeyObjectHandle } from './NativeQuickCrypto/webcrypto';
|
|
3
|
+
import type { KeyPairKey } from './Cipher';
|
|
3
4
|
export declare const kNamedCurveAliases: {
|
|
4
5
|
readonly 'P-256': "prime256v1";
|
|
5
6
|
readonly 'P-384': "secp384r1";
|
|
@@ -9,7 +10,11 @@ export type NamedCurve = 'P-256' | 'P-384' | 'P-521';
|
|
|
9
10
|
export type ImportFormat = 'raw' | 'pkcs8' | 'spki' | 'jwk';
|
|
10
11
|
export type AnyAlgorithm = HashAlgorithm | KeyPairAlgorithm | SecretKeyAlgorithm | SignVerifyAlgorithm | DeriveBitsAlgorithm | EncryptDecryptAlgorithm | 'PBKDF2' | 'HKDF';
|
|
11
12
|
export type HashAlgorithm = 'SHA-1' | 'SHA-256' | 'SHA-384' | 'SHA-512';
|
|
12
|
-
export type
|
|
13
|
+
export type KeyPairType = 'rsa' | 'rsa-pss' | 'ec';
|
|
14
|
+
export type RSAKeyPairAlgorithm = 'RSASSA-PKCS1-v1_5' | 'RSA-PSS' | 'RSA-OAEP';
|
|
15
|
+
export type ECKeyPairAlgorithm = 'ECDSA' | 'ECDH';
|
|
16
|
+
export type CFRGKeyPairAlgorithm = 'Ed25519' | 'Ed448' | 'X25519' | 'X448';
|
|
17
|
+
export type KeyPairAlgorithm = RSAKeyPairAlgorithm | ECKeyPairAlgorithm | CFRGKeyPairAlgorithm;
|
|
13
18
|
export type SecretKeyAlgorithm = 'HMAC' | 'AES-CTR' | 'AES-CBC' | 'AES-GCM' | 'AES-KW';
|
|
14
19
|
export type SignVerifyAlgorithm = 'RSASSA-PKCS1-v1_5' | 'RSA-PSS' | 'ECDSA' | 'HMAC' | 'Ed25519' | 'Ed448';
|
|
15
20
|
export type DeriveBitsAlgorithm = 'PBKDF2' | 'HKDF' | 'ECDH' | 'X25519' | 'X448';
|
|
@@ -86,6 +91,10 @@ export type JWK = {
|
|
|
86
91
|
'qi'?: string;
|
|
87
92
|
'ext'?: boolean;
|
|
88
93
|
};
|
|
94
|
+
export type CryptoKeyPair = {
|
|
95
|
+
publicKey: KeyPairKey;
|
|
96
|
+
privateKey: KeyPairKey;
|
|
97
|
+
};
|
|
89
98
|
export declare function preparePrivateKey(key: BinaryLike | EncodingOptions): {
|
|
90
99
|
format: KFormatType;
|
|
91
100
|
data: ArrayBuffer;
|
|
@@ -140,6 +149,7 @@ export declare class SecretKeyObject extends KeyObject {
|
|
|
140
149
|
}
|
|
141
150
|
declare class AsymmetricKeyObject extends KeyObject {
|
|
142
151
|
constructor(type: string, handle: KeyObjectHandle);
|
|
152
|
+
private _asymmetricKeyType?;
|
|
143
153
|
get asymmetricKeyType(): AsymmetricKeyType;
|
|
144
154
|
}
|
|
145
155
|
export declare class PublicKeyObject extends AsymmetricKeyObject {
|
|
@@ -150,5 +160,6 @@ export declare class PrivateKeyObject extends AsymmetricKeyObject {
|
|
|
150
160
|
constructor(handle: KeyObjectHandle);
|
|
151
161
|
export(options: EncodingOptions): ArrayBuffer;
|
|
152
162
|
}
|
|
163
|
+
export declare const isCryptoKey: (obj: any) => boolean;
|
|
153
164
|
export {};
|
|
154
165
|
//# sourceMappingURL=keys.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,UAAU,EAGhB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../src/keys.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Buffer } from '@craftzdog/react-native-buffer';
|
|
2
|
-
type TypedArray
|
|
2
|
+
import type { TypedArray } from './Utils';
|
|
3
3
|
type ArrayBufferView = TypedArray | DataView | ArrayBufferLike | Buffer;
|
|
4
4
|
export declare function randomFill<T extends ArrayBufferView>(buffer: T, callback: (err: Error | null, buf: T) => void): void;
|
|
5
5
|
export declare function randomFill<T extends ArrayBufferView>(buffer: T, offset: number, callback: (err: Error | null, buf: T) => void): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../src/random.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../src/random.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAI1C,KAAK,eAAe,GAAG,UAAU,GAAG,QAAQ,GAAG,eAAe,GAAG,MAAM,CAAC;AAExE,wBAAgB,UAAU,CAAC,CAAC,SAAS,eAAe,EAClD,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,GAC5C,IAAI,CAAC;AAER,wBAAgB,UAAU,CAAC,CAAC,SAAS,eAAe,EAClD,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,GAC5C,IAAI,CAAC;AAER,wBAAgB,UAAU,CAAC,CAAC,SAAS,eAAe,EAClD,MAAM,EAAE,CAAC,EACT,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,CAAC,KAAK,IAAI,GAC5C,IAAI,CAAC;AA4CR,wBAAgB,cAAc,CAAC,CAAC,SAAS,eAAe,EACtD,MAAM,EAAE,CAAC,EACT,MAAM,CAAC,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,GACZ,CAAC,CAAC;AAWL,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;AAElD,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,GAAG,CAAC,EAAE,MAAM,KAAK,IAAI,GAClD,IAAI,CAAC;AAqBR,eAAO,MAAM,GAAG,oBAAc,CAAC;AAC/B,eAAO,MAAM,iBAAiB,oBAAc,CAAC;AAC7C,eAAO,MAAM,IAAI,oBAAc,CAAC;AAEhC,KAAK,iBAAiB,GAAG,CAAC,GAAG,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;AAuBpE,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,GAAG,IAAI,CAAC;AAC1E,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;AAC/C,wBAAgB,SAAS,CACvB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,iBAAiB,GAC1B,IAAI,CAAC;AACR,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;AAwH5D,MAAM,MAAM,iBAAiB,GACzB,SAAS,GACT,UAAU,GACV,UAAU,GACV,UAAU,GACV,WAAW,GACX,WAAW,CAAC;AAChB,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,qBAMtD;AASD,wBAAgB,UAAU,WAiCzB"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
-
import { type ImportFormat, type SubtleAlgorithm, type KeyUsage, CryptoKey, type AnyAlgorithm, type JWK } from './keys';
|
|
1
|
+
import { type ImportFormat, type SubtleAlgorithm, type KeyUsage, CryptoKey, type AnyAlgorithm, type JWK, type CryptoKeyPair } from './keys';
|
|
2
2
|
import { type BufferLike, type BinaryLike } from './Utils';
|
|
3
3
|
declare class Subtle {
|
|
4
4
|
digest(algorithm: SubtleAlgorithm | AnyAlgorithm, data: BufferLike): Promise<ArrayBuffer>;
|
|
5
5
|
deriveBits(algorithm: SubtleAlgorithm, baseKey: CryptoKey, length: number): Promise<ArrayBuffer>;
|
|
6
6
|
importKey(format: ImportFormat, data: BufferLike | BinaryLike | JWK, algorithm: SubtleAlgorithm | AnyAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey>;
|
|
7
7
|
exportKey(format: ImportFormat, key: CryptoKey): Promise<ArrayBuffer | any>;
|
|
8
|
+
generateKey(algorithm: SubtleAlgorithm, extractable: boolean, keyUsages: KeyUsage[]): Promise<CryptoKey | CryptoKeyPair>;
|
|
9
|
+
sign(algorithm: SubtleAlgorithm, key: CryptoKey, data: BufferLike): Promise<ArrayBuffer>;
|
|
10
|
+
verify(algorithm: SubtleAlgorithm, key: CryptoKey, signature: BufferLike, data: BufferLike): Promise<ArrayBuffer>;
|
|
8
11
|
}
|
|
9
12
|
export declare const subtle: Subtle;
|
|
10
13
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subtle.d.ts","sourceRoot":"","sources":["../../src/subtle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,SAAS,EAGT,KAAK,YAAY,EACjB,KAAK,GAAG,
|
|
1
|
+
{"version":3,"file":"subtle.d.ts","sourceRoot":"","sources":["../../src/subtle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,SAAS,EAGT,KAAK,YAAY,EACjB,KAAK,GAAG,EACR,KAAK,aAAa,EACnB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,UAAU,EAMhB,MAAM,SAAS,CAAC;AA2QjB,cAAM,MAAM;IACJ,MAAM,CACV,SAAS,EAAE,eAAe,GAAG,YAAY,EACzC,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,WAAW,CAAC;IAKjB,UAAU,CACd,SAAS,EAAE,eAAe,EAC1B,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,CAAC;IAyBjB,SAAS,CACb,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,GAAG,EACnC,SAAS,EAAE,eAAe,GAAG,YAAY,EACzC,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACpB,OAAO,CAAC,SAAS,CAAC;IAgGf,SAAS,CACb,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,SAAS,GACb,OAAO,CAAC,WAAW,GAAG,GAAG,CAAC;IAgBvB,WAAW,CACf,SAAS,EAAE,eAAe,EAC1B,WAAW,EAAE,OAAO,EACpB,SAAS,EAAE,QAAQ,EAAE,GACpB,OAAO,CAAC,SAAS,GAAG,aAAa,CAAC;IAoD/B,IAAI,CACR,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,SAAS,EACd,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,WAAW,CAAC;IAIjB,MAAM,CACV,SAAS,EAAE,eAAe,EAC1B,GAAG,EAAE,SAAS,EACd,SAAS,EAAE,UAAU,EACrB,IAAI,EAAE,UAAU,GACf,OAAO,CAAC,WAAW,CAAC;CAGxB;AAED,eAAO,MAAM,MAAM,QAAe,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-quick-crypto",
|
|
3
|
-
"version": "0.7.0
|
|
3
|
+
"version": "0.7.0",
|
|
4
4
|
"description": "A fast implementation of Node's `crypto` module written in C/C++ JSI",
|
|
5
5
|
"packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e",
|
|
6
6
|
"main": "lib/commonjs/index",
|