react-native-quick-crypto 0.7.0 → 0.7.2

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.
Files changed (133) hide show
  1. package/README.md +11 -63
  2. package/android/CMakeLists.txt +2 -0
  3. package/cpp/Cipher/MGLRsa.cpp +179 -3
  4. package/cpp/Cipher/MGLRsa.h +40 -0
  5. package/cpp/JSIUtils/MGLJSIUtils.h +8 -0
  6. package/cpp/MGLKeys.cpp +41 -43
  7. package/cpp/MGLKeys.h +9 -2
  8. package/cpp/MGLQuickCryptoHostObject.cpp +6 -6
  9. package/cpp/Sig/MGLSignHostObjects.cpp +22 -15
  10. package/cpp/Utils/MGLUtils.cpp +71 -1
  11. package/cpp/Utils/MGLUtils.h +55 -1
  12. package/cpp/webcrypto/MGLWebCrypto.cpp +89 -37
  13. package/cpp/webcrypto/MGLWebCrypto.h +5 -7
  14. package/cpp/webcrypto/crypto_aes.cpp +516 -0
  15. package/cpp/webcrypto/crypto_aes.h +79 -0
  16. package/cpp/webcrypto/crypto_ec.cpp +4 -20
  17. package/cpp/webcrypto/crypto_ec.h +0 -5
  18. package/cpp/webcrypto/crypto_keygen.cpp +86 -0
  19. package/cpp/webcrypto/crypto_keygen.h +38 -0
  20. package/lib/commonjs/Cipher.js +3 -1
  21. package/lib/commonjs/Cipher.js.map +1 -1
  22. package/lib/commonjs/Hashnames.js +20 -8
  23. package/lib/commonjs/Hashnames.js.map +1 -1
  24. package/lib/commonjs/NativeQuickCrypto/Cipher.js +13 -1
  25. package/lib/commonjs/NativeQuickCrypto/Cipher.js.map +1 -1
  26. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js.map +1 -1
  27. package/lib/commonjs/NativeQuickCrypto/aes.js +6 -0
  28. package/lib/commonjs/NativeQuickCrypto/aes.js.map +1 -0
  29. package/lib/commonjs/NativeQuickCrypto/keygen.js +6 -0
  30. package/lib/commonjs/NativeQuickCrypto/keygen.js.map +1 -0
  31. package/lib/commonjs/NativeQuickCrypto/rsa.js +6 -0
  32. package/lib/commonjs/NativeQuickCrypto/rsa.js.map +1 -0
  33. package/lib/commonjs/Utils.js +30 -6
  34. package/lib/commonjs/Utils.js.map +1 -1
  35. package/lib/commonjs/aes.js +184 -227
  36. package/lib/commonjs/aes.js.map +1 -1
  37. package/lib/commonjs/index.js +12 -2
  38. package/lib/commonjs/index.js.map +1 -1
  39. package/lib/commonjs/keygen.js +56 -0
  40. package/lib/commonjs/keygen.js.map +1 -0
  41. package/lib/commonjs/keys.js +74 -5
  42. package/lib/commonjs/keys.js.map +1 -1
  43. package/lib/commonjs/rsa.js +115 -196
  44. package/lib/commonjs/rsa.js.map +1 -1
  45. package/lib/commonjs/sig.js.map +1 -1
  46. package/lib/commonjs/subtle.js +140 -78
  47. package/lib/commonjs/subtle.js.map +1 -1
  48. package/lib/commonjs/webcrypto.js +14 -0
  49. package/lib/commonjs/webcrypto.js.map +1 -0
  50. package/lib/module/Cipher.js +3 -1
  51. package/lib/module/Cipher.js.map +1 -1
  52. package/lib/module/Hashnames.js +20 -8
  53. package/lib/module/Hashnames.js.map +1 -1
  54. package/lib/module/NativeQuickCrypto/Cipher.js +12 -0
  55. package/lib/module/NativeQuickCrypto/Cipher.js.map +1 -1
  56. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js.map +1 -1
  57. package/lib/module/NativeQuickCrypto/aes.js +2 -0
  58. package/lib/module/NativeQuickCrypto/aes.js.map +1 -0
  59. package/lib/module/NativeQuickCrypto/keygen.js +2 -0
  60. package/lib/module/NativeQuickCrypto/keygen.js.map +1 -0
  61. package/lib/module/NativeQuickCrypto/rsa.js +2 -0
  62. package/lib/module/NativeQuickCrypto/rsa.js.map +1 -0
  63. package/lib/module/Utils.js +26 -5
  64. package/lib/module/Utils.js.map +1 -1
  65. package/lib/module/aes.js +183 -228
  66. package/lib/module/aes.js.map +1 -1
  67. package/lib/module/index.js +11 -2
  68. package/lib/module/index.js.map +1 -1
  69. package/lib/module/keygen.js +47 -0
  70. package/lib/module/keygen.js.map +1 -0
  71. package/lib/module/keys.js +68 -4
  72. package/lib/module/keys.js.map +1 -1
  73. package/lib/module/rsa.js +115 -198
  74. package/lib/module/rsa.js.map +1 -1
  75. package/lib/module/sig.js.map +1 -1
  76. package/lib/module/subtle.js +143 -82
  77. package/lib/module/subtle.js.map +1 -1
  78. package/lib/module/webcrypto.js +8 -0
  79. package/lib/module/webcrypto.js.map +1 -0
  80. package/lib/typescript/Cipher.d.ts +0 -1
  81. package/lib/typescript/Cipher.d.ts.map +1 -1
  82. package/lib/typescript/Hash.d.ts.map +1 -1
  83. package/lib/typescript/Hashnames.d.ts +2 -2
  84. package/lib/typescript/Hashnames.d.ts.map +1 -1
  85. package/lib/typescript/NativeQuickCrypto/Cipher.d.ts +5 -0
  86. package/lib/typescript/NativeQuickCrypto/Cipher.d.ts.map +1 -1
  87. package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts +4 -1
  88. package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts.map +1 -1
  89. package/lib/typescript/NativeQuickCrypto/aes.d.ts +5 -0
  90. package/lib/typescript/NativeQuickCrypto/aes.d.ts.map +1 -0
  91. package/lib/typescript/NativeQuickCrypto/keygen.d.ts +4 -0
  92. package/lib/typescript/NativeQuickCrypto/keygen.d.ts.map +1 -0
  93. package/lib/typescript/NativeQuickCrypto/rsa.d.ts +5 -0
  94. package/lib/typescript/NativeQuickCrypto/rsa.d.ts.map +1 -0
  95. package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts +12 -2
  96. package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts.map +1 -1
  97. package/lib/typescript/Utils.d.ts +4 -4
  98. package/lib/typescript/Utils.d.ts.map +1 -1
  99. package/lib/typescript/aes.d.ts +18 -1
  100. package/lib/typescript/aes.d.ts.map +1 -1
  101. package/lib/typescript/ec.d.ts.map +1 -1
  102. package/lib/typescript/index.d.ts +27 -24
  103. package/lib/typescript/index.d.ts.map +1 -1
  104. package/lib/typescript/keygen.d.ts +6 -0
  105. package/lib/typescript/keygen.d.ts.map +1 -0
  106. package/lib/typescript/keys.d.ts +58 -17
  107. package/lib/typescript/keys.d.ts.map +1 -1
  108. package/lib/typescript/rsa.d.ts +9 -1
  109. package/lib/typescript/rsa.d.ts.map +1 -1
  110. package/lib/typescript/sig.d.ts +3 -17
  111. package/lib/typescript/sig.d.ts.map +1 -1
  112. package/lib/typescript/subtle.d.ts +6 -5
  113. package/lib/typescript/subtle.d.ts.map +1 -1
  114. package/lib/typescript/webcrypto.d.ts +9 -0
  115. package/lib/typescript/webcrypto.d.ts.map +1 -0
  116. package/package.json +12 -12
  117. package/src/Cipher.ts +1 -1
  118. package/src/Hashnames.ts +23 -21
  119. package/src/NativeQuickCrypto/Cipher.ts +32 -0
  120. package/src/NativeQuickCrypto/NativeQuickCrypto.ts +6 -0
  121. package/src/NativeQuickCrypto/aes.ts +14 -0
  122. package/src/NativeQuickCrypto/keygen.ts +7 -0
  123. package/src/NativeQuickCrypto/rsa.ts +12 -0
  124. package/src/NativeQuickCrypto/webcrypto.ts +26 -2
  125. package/src/Utils.ts +37 -8
  126. package/src/aes.ts +259 -222
  127. package/src/index.ts +10 -1
  128. package/src/keygen.ts +80 -0
  129. package/src/keys.ts +143 -30
  130. package/src/rsa.ts +161 -187
  131. package/src/sig.ts +7 -23
  132. package/src/subtle.ts +211 -93
  133. package/src/webcrypto.ts +8 -0
@@ -3,7 +3,8 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.WebCryptoKeyExportStatus = exports.SecretKeyObject = exports.PublicKeyObject = exports.PrivateKeyObject = exports.KeyType = exports.KeyEncoding = exports.KWebCryptoKeyFormat = exports.KFormatType = exports.CryptoKey = void 0;
6
+ exports.createPrivateKey = exports.WebCryptoKeyExportStatus = exports.SecretKeyObject = exports.PublicKeyObject = exports.PrivateKeyObject = exports.KeyType = exports.KeyEncoding = exports.KWebCryptoKeyFormat = exports.KFormatType = exports.CryptoKey = exports.CipherOrWrapMode = void 0;
7
+ exports.createPublicKey = createPublicKey;
7
8
  exports.createSecretKey = createSecretKey;
8
9
  exports.kNamedCurveAliases = exports.isCryptoKey = void 0;
9
10
  exports.parsePrivateKeyEncoding = parsePrivateKeyEncoding;
@@ -24,13 +25,15 @@ let KFormatType = exports.KFormatType = /*#__PURE__*/function (KFormatType) {
24
25
  KFormatType[KFormatType["kKeyFormatPEM"] = 1] = "kKeyFormatPEM";
25
26
  KFormatType[KFormatType["kKeyFormatJWK"] = 2] = "kKeyFormatJWK";
26
27
  return KFormatType;
27
- }({}); // Same as KFormatType, this enum needs to be defined on the native side
28
+ }({});
29
+ // Same as KFormatType, this enum needs to be defined on the native side
28
30
  let KeyType = exports.KeyType = /*#__PURE__*/function (KeyType) {
29
31
  KeyType[KeyType["Secret"] = 0] = "Secret";
30
32
  KeyType[KeyType["Public"] = 1] = "Public";
31
33
  KeyType[KeyType["Private"] = 2] = "Private";
32
34
  return KeyType;
33
- }({}); // Same as KFormatType, this enum needs to be defined on the native side
35
+ }({});
36
+ // Same as KFormatType, this enum needs to be defined on the native side
34
37
  let KWebCryptoKeyFormat = exports.KWebCryptoKeyFormat = /*#__PURE__*/function (KWebCryptoKeyFormat) {
35
38
  KWebCryptoKeyFormat[KWebCryptoKeyFormat["kWebCryptoKeyFormatRaw"] = 0] = "kWebCryptoKeyFormatRaw";
36
39
  KWebCryptoKeyFormat[KWebCryptoKeyFormat["kWebCryptoKeyFormatPKCS8"] = 1] = "kWebCryptoKeyFormatPKCS8";
@@ -64,6 +67,12 @@ const encodingNames = {
64
67
  [KeyEncoding.kKeyEncodingSPKI]: 'spki',
65
68
  [KeyEncoding.kKeyEncodingSEC1]: 'sec1'
66
69
  };
70
+ let CipherOrWrapMode = exports.CipherOrWrapMode = /*#__PURE__*/function (CipherOrWrapMode) {
71
+ CipherOrWrapMode[CipherOrWrapMode["kWebCryptoCipherEncrypt"] = 0] = "kWebCryptoCipherEncrypt";
72
+ CipherOrWrapMode[CipherOrWrapMode["kWebCryptoCipherDecrypt"] = 1] = "kWebCryptoCipherDecrypt";
73
+ return CipherOrWrapMode;
74
+ }({}); // kWebCryptoWrapKey,
75
+ // kWebCryptoUnwrapKey,
67
76
  function option(name, objName) {
68
77
  return objName === undefined ? `options.${name}` : `options.${objName}.${name}`;
69
78
  }
@@ -162,11 +171,12 @@ function prepareAsymmetricKey(key, ctx) {
162
171
  const {
163
172
  key: data,
164
173
  encoding
165
- // format
166
174
  } = key;
167
175
  // // The 'key' property can be a KeyObject as well to allow specifying
168
176
  // // additional options such as padding along with the key.
169
- // if (isKeyObject(data)) return { data: getKeyObjectHandle(data, ctx) };
177
+ // if (isKeyObject(data)) {
178
+ // return { data: getKeyObjectHandle(data, ctx) };
179
+ // }
170
180
  // else if (isCryptoKey(data))
171
181
  // return { data: getKeyObjectHandle(data[kKeyObject], ctx) };
172
182
  // else if (isJwk(data) && format === 'jwk')
@@ -207,6 +217,30 @@ function parsePublicKeyEncoding(enc, keyType, objName) {
207
217
  function parsePrivateKeyEncoding(enc, keyType, objName) {
208
218
  return parseKeyEncoding(enc, keyType, false, objName);
209
219
  }
220
+
221
+ // function getKeyObjectHandle(key: any, ctx: KeyInputContext) {
222
+ // if (ctx === KeyInputContext.kConsumePublic) {
223
+ // throw new Error(
224
+ // 'Invalid argument type for "key". Need ArrayBuffer, TypeArray, KeyObject, CryptoKey, string'
225
+ // );
226
+ // }
227
+
228
+ // if (key.type !== 'private') {
229
+ // if (
230
+ // ctx === KeyInputContext.kConsumePrivate ||
231
+ // ctx === KeyInputContext.kCreatePublic
232
+ // )
233
+ // throw new Error(`Invalid KeyObject type: ${key.type}, expected 'public'`);
234
+ // if (key.type !== 'public') {
235
+ // throw new Error(
236
+ // `Invalid KeyObject type: ${key.type}, expected 'private' or 'public'`
237
+ // );
238
+ // }
239
+ // }
240
+
241
+ // return key.handle;
242
+ // }
243
+
210
244
  function prepareSecretKey(key, encoding, bufferOnly = false) {
211
245
  try {
212
246
  if (!bufferOnly) {
@@ -237,6 +271,41 @@ function createSecretKey(key, encoding) {
237
271
  handle.init(KeyType.Secret, k);
238
272
  return new SecretKeyObject(handle);
239
273
  }
274
+ function createPublicKey(key) {
275
+ const {
276
+ format,
277
+ type,
278
+ data,
279
+ passphrase
280
+ } = prepareAsymmetricKey(key, KeyInputContext.kCreatePublic);
281
+ const handle = _NativeQuickCrypto.NativeQuickCrypto.webcrypto.createKeyObjectHandle();
282
+ if (format === KFormatType.kKeyFormatJWK) {
283
+ handle.init(KeyType.Public, data);
284
+ } else {
285
+ handle.init(KeyType.Public, data, format, type, passphrase);
286
+ }
287
+ return new PublicKeyObject(handle);
288
+ }
289
+ const createPrivateKey = key => {
290
+ const {
291
+ format,
292
+ type,
293
+ data,
294
+ passphrase
295
+ } = prepareAsymmetricKey(key, KeyInputContext.kCreatePrivate);
296
+ const handle = _NativeQuickCrypto.NativeQuickCrypto.webcrypto.createKeyObjectHandle();
297
+ if (format === KFormatType.kKeyFormatJWK) {
298
+ handle.init(KeyType.Private, data);
299
+ } else {
300
+ handle.init(KeyType.Private, data, format, type, passphrase);
301
+ }
302
+ return new PrivateKeyObject(handle);
303
+ };
304
+
305
+ // const isKeyObject = (obj: any): obj is KeyObject => {
306
+ // return obj != null && obj.keyType !== undefined;
307
+ // };
308
+ exports.createPrivateKey = createPrivateKey;
240
309
  class CryptoKey {
241
310
  constructor(keyObject, keyAlgorithm, keyUsages, keyExtractable) {
242
311
  this.keyObject = keyObject;
@@ -1 +1 @@
1
- {"version":3,"names":["_Utils","require","_NativeQuickCrypto","kNamedCurveAliases","exports","KFormatType","KeyType","KWebCryptoKeyFormat","WebCryptoKeyExportStatus","KeyInputContext","KeyEncoding","encodingNames","kKeyEncodingPKCS1","kKeyEncodingPKCS8","kKeyEncodingSPKI","kKeyEncodingSEC1","option","name","objName","undefined","parseKeyFormat","formatStr","defaultFormat","optionName","kKeyFormatPEM","kKeyFormatDER","kKeyFormatJWK","Error","parseKeyType","typeStr","required","keyType","isPublic","parseKeyFormatAndType","enc","format","type","isInput","isRequired","parseKeyEncoding","cipher","passphrase","encoding","isStringOrBuffer","binaryLikeToArrayBuffer","prepareAsymmetricKey","key","ctx","data","kConsumePrivate","kCreatePrivate","preparePrivateKey","preparePublicOrPrivateKey","kConsumePublic","parsePublicKeyEncoding","parsePrivateKeyEncoding","prepareSecretKey","bufferOnly","KeyObject","handle","CryptoKey","keyObject","ArrayBuffer","error","cause","createSecretKey","k","NativeQuickCrypto","webcrypto","createKeyObjectHandle","init","Secret","SecretKeyObject","constructor","keyAlgorithm","keyUsages","keyExtractable","inspect","_depth","_options","extractable","algorithm","usages","export","options","AsymmetricKeyObject","asymmetricKeyType","_asymmetricKeyType","getAsymmetricKeyType","PublicKeyObject","PrivateKeyObject","isCryptoKey","obj"],"sourceRoot":"../../src","sources":["keys.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_Utils","require","_NativeQuickCrypto","kNamedCurveAliases","exports","KFormatType","KeyType","KWebCryptoKeyFormat","WebCryptoKeyExportStatus","KeyInputContext","KeyEncoding","encodingNames","kKeyEncodingPKCS1","kKeyEncodingPKCS8","kKeyEncodingSPKI","kKeyEncodingSEC1","CipherOrWrapMode","option","name","objName","undefined","parseKeyFormat","formatStr","defaultFormat","optionName","kKeyFormatPEM","kKeyFormatDER","kKeyFormatJWK","Error","parseKeyType","typeStr","required","keyType","isPublic","parseKeyFormatAndType","enc","format","type","isInput","isRequired","parseKeyEncoding","cipher","passphrase","encoding","isStringOrBuffer","binaryLikeToArrayBuffer","prepareAsymmetricKey","key","ctx","data","kConsumePrivate","kCreatePrivate","preparePrivateKey","preparePublicOrPrivateKey","kConsumePublic","parsePublicKeyEncoding","parsePrivateKeyEncoding","prepareSecretKey","bufferOnly","KeyObject","handle","CryptoKey","keyObject","ArrayBuffer","error","cause","createSecretKey","k","NativeQuickCrypto","webcrypto","createKeyObjectHandle","init","Secret","SecretKeyObject","createPublicKey","kCreatePublic","Public","PublicKeyObject","createPrivateKey","Private","PrivateKeyObject","constructor","keyAlgorithm","keyUsages","keyExtractable","inspect","_depth","_options","extractable","algorithm","usages","export","options","AsymmetricKeyObject","asymmetricKeyType","_asymmetricKeyType","getAsymmetricKeyType","isCryptoKey","obj"],"sourceRoot":"../../src","sources":["keys.ts"],"mappings":"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","ignoreList":[]}
@@ -3,73 +3,19 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.rsaImportKey = void 0;
6
+ exports.rsaKeyGenerate = exports.rsaImportKey = exports.rsaExportKey = exports.rsaCipher = exports.RSAKeyVariant = void 0;
7
+ var _Cipher = require("./NativeQuickCrypto/Cipher");
8
+ var _Cipher2 = require("./Cipher");
7
9
  var _NativeQuickCrypto = require("./NativeQuickCrypto/NativeQuickCrypto");
8
10
  var _Utils = require("./Utils");
9
11
  var _keys = require("./keys");
10
- // 'use strict';
11
-
12
- // const {
13
- // SafeSet,
14
- // Uint8Array,
15
- // } = primordials;
16
-
17
- // const {
18
- // KeyObjectHandle,
19
- // RSACipherJob,
20
- // RSAKeyExportJob,
21
- // SignJob,
22
- // kCryptoJobAsync,
23
- // kSignJobModeSign,
24
- // kSignJobModeVerify,
25
- // kKeyVariantRSA_SSA_PKCS1_v1_5,
26
- // kKeyVariantRSA_PSS,
27
- // kKeyVariantRSA_OAEP,
28
- // kKeyTypePrivate,
29
- // kWebCryptoCipherEncrypt,
30
- // RSA_PKCS1_PSS_PADDING,
31
- // } = internalBinding('crypto');
32
-
33
- // const {
34
- // validateInt32,
35
- // } = require('internal/validators');
36
-
37
- // const {
38
- // bigIntArrayToUnsignedInt,
39
- // getUsagesUnion,
40
- // hasAnyNotIn,
41
- // jobPromise,
42
- // normalizeHashName,
43
- // validateKeyOps,
44
- // validateMaxBufferLength,
45
- // kHandle,
46
- // kKeyObject,
47
- // } = require('internal/crypto/util');
48
-
49
- // const {
50
- // lazyDOMException,
51
- // promisify,
52
- // } = require('internal/util');
53
-
54
- // const {
55
- // InternalCryptoKey,
56
- // PrivateKeyObject,
57
- // PublicKeyObject,
58
- // createPublicKey,
59
- // createPrivateKey,
60
- // } = require('internal/crypto/keys');
61
-
62
- // const {
63
- // generateKeyPair: _generateKeyPair,
64
- // } = require('internal/crypto/keygen');
65
-
66
- // const kRsaVariants = {
67
- // 'RSASSA-PKCS1-v1_5': kKeyVariantRSA_SSA_PKCS1_v1_5,
68
- // 'RSA-PSS': kKeyVariantRSA_PSS,
69
- // 'RSA-OAEP': kKeyVariantRSA_OAEP,
70
- // };
71
- // const generateKeyPair = promisify(_generateKeyPair);
72
-
12
+ // TODO: keep in in sync with C++ side (cpp/Cipher/MGLRsa.h)
13
+ let RSAKeyVariant = exports.RSAKeyVariant = /*#__PURE__*/function (RSAKeyVariant) {
14
+ RSAKeyVariant[RSAKeyVariant["RSA_SSA_PKCS1_v1_5"] = 0] = "RSA_SSA_PKCS1_v1_5";
15
+ RSAKeyVariant[RSAKeyVariant["RSA_PSS"] = 1] = "RSA_PSS";
16
+ RSAKeyVariant[RSAKeyVariant["RSA_OAEP"] = 2] = "RSA_OAEP";
17
+ return RSAKeyVariant;
18
+ }({});
73
19
  function verifyAcceptableRsaKeyUse(name, isPublic, usages) {
74
20
  let checkSet;
75
21
  switch (name) {
@@ -88,142 +34,115 @@ function verifyAcceptableRsaKeyUse(name, isPublic, usages) {
88
34
  throw (0, _Utils.lazyDOMException)(`Unsupported key usage for an ${name} key`, 'SyntaxError');
89
35
  }
90
36
  }
91
-
92
- // function rsaOaepCipher(mode, key, data, { label }) {
93
- // const type = mode === kWebCryptoCipherEncrypt ? 'public' : 'private';
94
- // if (key.type !== type) {
95
- // throw lazyDOMException(
96
- // 'The requested operation is not valid for the provided key',
97
- // 'InvalidAccessError');
98
- // }
99
- // if (label !== undefined) {
100
- // validateMaxBufferLength(label, 'algorithm.label');
101
- // }
102
-
103
- // return jobPromise(() => new RSACipherJob(
104
- // kCryptoJobAsync,
105
- // mode,
106
- // key[kKeyObject][kHandle],
107
- // data,
108
- // kKeyVariantRSA_OAEP,
109
- // normalizeHashName(key.algorithm.hash.name),
110
- // label));
111
- // }
112
-
113
- // async function rsaKeyGenerate(
114
- // algorithm,
115
- // extractable,
116
- // keyUsages) {
117
-
118
- // const {
119
- // name,
120
- // modulusLength,
121
- // publicExponent,
122
- // hash,
123
- // } = algorithm;
124
-
125
- // const usageSet = new SafeSet(keyUsages);
126
-
127
- // const publicExponentConverted = bigIntArrayToUnsignedInt(publicExponent);
128
- // if (publicExponentConverted === undefined) {
129
- // throw lazyDOMException(
130
- // 'The publicExponent must be equivalent to an unsigned 32-bit value',
131
- // 'OperationError');
132
- // }
133
-
134
- // switch (name) {
135
- // case 'RSA-OAEP':
136
- // if (hasAnyNotIn(usageSet,
137
- // ['encrypt', 'decrypt', 'wrapKey', 'unwrapKey'])) {
138
- // throw lazyDOMException(
139
- // 'Unsupported key usage for a RSA key',
140
- // 'SyntaxError');
141
- // }
142
- // break;
143
- // default:
144
- // if (hasAnyNotIn(usageSet, ['sign', 'verify'])) {
145
- // throw lazyDOMException(
146
- // 'Unsupported key usage for a RSA key',
147
- // 'SyntaxError');
148
- // }
149
- // }
150
-
151
- // const keypair = await generateKeyPair('rsa', {
152
- // modulusLength,
153
- // publicExponent: publicExponentConverted,
154
- // }).catch((err) => {
155
- // throw lazyDOMException(
156
- // 'The operation failed for an operation-specific reason',
157
- // { name: 'OperationError', cause: err });
158
- // });
159
-
160
- // const keyAlgorithm = {
161
- // name,
162
- // modulusLength,
163
- // publicExponent,
164
- // hash: { name: hash.name },
165
- // };
166
-
167
- // let publicUsages;
168
- // let privateUsages;
169
- // switch (name) {
170
- // case 'RSA-OAEP': {
171
- // publicUsages = getUsagesUnion(usageSet, 'encrypt', 'wrapKey');
172
- // privateUsages = getUsagesUnion(usageSet, 'decrypt', 'unwrapKey');
173
- // break;
174
- // }
175
- // default: {
176
- // publicUsages = getUsagesUnion(usageSet, 'verify');
177
- // privateUsages = getUsagesUnion(usageSet, 'sign');
178
- // break;
179
- // }
180
- // }
181
-
182
- // const publicKey =
183
- // new InternalCryptoKey(
184
- // keypair.publicKey,
185
- // keyAlgorithm,
186
- // publicUsages,
187
- // true);
188
-
189
- // const privateKey =
190
- // new InternalCryptoKey(
191
- // keypair.privateKey,
192
- // keyAlgorithm,
193
- // privateUsages,
194
- // extractable);
195
-
196
- // return { __proto__: null, publicKey, privateKey };
197
- // }
198
-
199
- // function rsaExportKey(key, format) {
200
- // return jobPromise(() => new RSAKeyExportJob(
201
- // kCryptoJobAsync,
202
- // format,
203
- // key[kKeyObject][kHandle],
204
- // kRsaVariants[key.algorithm.name]));
205
- // }
206
-
37
+ const rsaOaepCipher = (mode, key, data, {
38
+ label
39
+ }) => {
40
+ const type = mode === _keys.CipherOrWrapMode.kWebCryptoCipherEncrypt ? 'public' : 'private';
41
+ if (key.type !== type) {
42
+ throw (0, _Utils.lazyDOMException)('The requested operation is not valid for the provided key', 'InvalidAccessError');
43
+ }
44
+ if (label !== undefined) {
45
+ (0, _Utils.validateMaxBufferLength)(label, 'algorithm.label');
46
+ }
47
+ return _NativeQuickCrypto.NativeQuickCrypto.webcrypto.rsaCipher(mode, key.keyObject.handle, data, RSAKeyVariant.RSA_OAEP, (0, _Utils.normalizeHashName)(key.algorithm.hash), label !== undefined ? (0, _Utils.bufferLikeToArrayBuffer)(label) : undefined);
48
+ };
49
+ const rsaCipher = exports.rsaCipher = rsaOaepCipher;
50
+ const rsaKeyGenerate = async (algorithm, extractable, keyUsages) => {
51
+ const {
52
+ name,
53
+ modulusLength,
54
+ publicExponent,
55
+ hash: rawHash
56
+ } = algorithm;
57
+ const hash = (0, _Utils.normalizeHashName)(rawHash);
58
+
59
+ // const usageSet = new SafeSet(keyUsages);
60
+ const publicExponentConverted = (0, _Utils.bigIntArrayToUnsignedInt)(publicExponent);
61
+ if (publicExponentConverted === undefined) {
62
+ throw (0, _Utils.lazyDOMException)('The publicExponent must be equivalent to an unsigned 32-bit value', 'OperationError');
63
+ }
64
+ switch (name) {
65
+ case 'RSA-OAEP':
66
+ if ((0, _Utils.hasAnyNotIn)(keyUsages, ['encrypt', 'decrypt', 'wrapKey', 'unwrapKey'])) {
67
+ throw (0, _Utils.lazyDOMException)('Unsupported key usage for a RSA key', 'SyntaxError');
68
+ }
69
+ break;
70
+ default:
71
+ if ((0, _Utils.hasAnyNotIn)(keyUsages, ['sign', 'verify'])) {
72
+ throw (0, _Utils.lazyDOMException)('Unsupported key usage for a RSA key', 'SyntaxError');
73
+ }
74
+ }
75
+ const [err, keypair] = await (0, _Cipher2.generateKeyPairPromise)('rsa', {
76
+ modulusLength,
77
+ publicExponent: publicExponentConverted
78
+ });
79
+ if (err) {
80
+ throw (0, _Utils.lazyDOMException)('The operation failed for an operation-specific reason', {
81
+ name: 'OperationError',
82
+ cause: err
83
+ });
84
+ }
85
+ const keyAlgorithm = {
86
+ name,
87
+ modulusLength,
88
+ publicExponent: publicExponentConverted,
89
+ hash
90
+ };
91
+ let publicUsages = [];
92
+ let privateUsages = [];
93
+ switch (name) {
94
+ case 'RSA-OAEP':
95
+ {
96
+ publicUsages = (0, _Utils.getUsagesUnion)(keyUsages, 'encrypt', 'wrapKey');
97
+ privateUsages = (0, _Utils.getUsagesUnion)(keyUsages, 'decrypt', 'unwrapKey');
98
+ break;
99
+ }
100
+ default:
101
+ {
102
+ publicUsages = (0, _Utils.getUsagesUnion)(keyUsages, 'verify');
103
+ privateUsages = (0, _Utils.getUsagesUnion)(keyUsages, 'sign');
104
+ break;
105
+ }
106
+ }
107
+ const pub = new _keys.PublicKeyObject(keypair?.publicKey);
108
+ const publicKey = new _keys.CryptoKey(pub, keyAlgorithm, publicUsages, true);
109
+ const priv = new _keys.PrivateKeyObject(keypair?.privateKey);
110
+ const privateKey = new _keys.CryptoKey(priv, keyAlgorithm, privateUsages, extractable);
111
+ return {
112
+ publicKey,
113
+ privateKey
114
+ };
115
+ };
116
+ exports.rsaKeyGenerate = rsaKeyGenerate;
117
+ const rsaExportKey = (key, format) => {
118
+ const variant = _Cipher.KeyVariantLookup[key.algorithm.name];
119
+ if (variant === undefined) {
120
+ throw (0, _Utils.lazyDOMException)(`Unrecognized algorithm name '${key.algorithm.name}'`, 'NotSupportedError');
121
+ }
122
+ return _NativeQuickCrypto.NativeQuickCrypto.webcrypto.rsaExportKey(format, key.keyObject.handle, variant);
123
+ };
124
+ exports.rsaExportKey = rsaExportKey;
207
125
  const rsaImportKey = (format, keyData, algorithm, extractable, keyUsages) => {
208
126
  // const usagesSet = new SafeSet(keyUsages);
209
127
  let keyObject;
210
128
  switch (format) {
211
- // case 'spki': {
212
- // verifyAcceptableRsaKeyUse(algorithm.name, true, keyUsages);
213
- // try {
214
- // keyObject = createPublicKey({
215
- // key: keyData,
216
- // format: 'der',
217
- // type: 'spki',
218
- // });
219
- // } catch (err) {
220
- // throw lazyDOMException('Invalid keyData', {
221
- // name: 'DataError',
222
- // cause: err,
223
- // });
224
- // }
225
- // break;
226
- // }
129
+ case 'spki':
130
+ {
131
+ verifyAcceptableRsaKeyUse(algorithm.name, true, keyUsages);
132
+ try {
133
+ keyObject = (0, _keys.createPublicKey)({
134
+ key: keyData,
135
+ format: 'der',
136
+ type: 'spki'
137
+ });
138
+ } catch (err) {
139
+ throw (0, _Utils.lazyDOMException)('Invalid keyData', {
140
+ name: 'DataError',
141
+ cause: err
142
+ });
143
+ }
144
+ break;
145
+ }
227
146
  // case 'pkcs8': {
228
147
  // verifyAcceptableRsaKeyUse(algorithm.name, false, keyUsages);
229
148
  // try {
@@ -1 +1 @@
1
- {"version":3,"names":["_NativeQuickCrypto","require","_Utils","_keys","verifyAcceptableRsaKeyUse","name","isPublic","usages","checkSet","lazyDOMException","hasAnyNotIn","rsaImportKey","format","keyData","algorithm","extractable","keyUsages","keyObject","data","kty","d","undefined","length","use","checkUse","validateKeyOps","key_ops","ext","alg","hash","normalizeHashName","HashContext","WebCrypto","handle","NativeQuickCrypto","webcrypto","createKeyObjectHandle","type","initJwk","KeyType","Private","PrivateKeyObject","PublicKeyObject","asymmetricKeyType","modulusLength","publicExponent","keyDetail","CryptoKey","Uint8Array","exports"],"sourceRoot":"../../src","sources":["rsa.ts"],"mappings":";;;;;;AAEA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAQA,IAAAE,KAAA,GAAAF,OAAA;AAXA;;AAwBA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASG,yBAAyBA,CAChCC,IAAkB,EAClBC,QAAiB,EACjBC,MAAkB,EACZ;EACN,IAAIC,QAAQ;EACZ,QAAQH,IAAI;IACV,KAAK,UAAU;MACbG,QAAQ,GAAGF,QAAQ,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC;MACvE;IACF,KAAK,SAAS;IACd;IACA,KAAK,mBAAmB;MACtBE,QAAQ,GAAGF,QAAQ,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC;MAC3C;IACF;MACE,MAAM,IAAAG,uBAAgB,EACpB,gCAAgC,EAChC,mBACF,CAAC;EACL;EACA,IAAI,IAAAC,kBAAW,EAACH,MAAM,EAAEC,QAAQ,CAAC,EAAE;IACjC,MAAM,IAAAC,uBAAgB,EACnB,gCAA+BJ,IAAK,MAAK,EAC1C,aACF,CAAC;EACH;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO,MAAMM,YAAY,GAAGA,CAC1BC,MAAoB,EACpBC,OAAyB,EACzBC,SAA0B,EAC1BC,WAAoB,EACpBC,SAAqB,KACP;EACd;EACA,IAAIC,SAAS;EACb,QAAQL,MAAM;IACZ;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA,KAAK,KAAK;MAAE;QACV,MAAMM,IAAI,GAAGL,OAAc;QAC3B,IAAI,CAACK,IAAI,CAACC,GAAG,EAAE;UACb,MAAM,IAAAV,uBAAgB,EAAC,iBAAiB,EAAE,WAAW,CAAC;QACxD;QACA,IAAIS,IAAI,CAACC,GAAG,KAAK,KAAK,EACpB,MAAM,IAAAV,uBAAgB,EAAC,6BAA6B,EAAE,WAAW,CAAC;QAEpEL,yBAAyB,CACvBU,SAAS,CAACT,IAAI,EACda,IAAI,CAACE,CAAC,KAAKC,SAAS,EACpBL,SACF,CAAC;QAED,IAAIA,SAAS,CAACM,MAAM,GAAG,CAAC,IAAIJ,IAAI,CAACK,GAAG,KAAKF,SAAS,EAAE;UAClD,MAAMG,QAAQ,GAAGV,SAAS,CAACT,IAAI,KAAK,UAAU,GAAG,KAAK,GAAG,KAAK;UAC9D,IAAIa,IAAI,CAACK,GAAG,KAAKC,QAAQ,EACvB,MAAM,IAAAf,uBAAgB,EAAC,6BAA6B,EAAE,WAAW,CAAC;QACtE;QAEA,IAAAgB,qBAAc,EAACP,IAAI,CAACQ,OAAO,EAAEV,SAAS,CAAC;QAEvC,IACEE,IAAI,CAACS,GAAG,KAAKN,SAAS,IACtBH,IAAI,CAACS,GAAG,KAAK,KAAK,IAClBZ,WAAW,KAAK,IAAI,EACpB;UACA,MAAM,IAAAN,uBAAgB,EACpB,8CAA8C,EAC9C,WACF,CAAC;QACH;QAEA,IAAIS,IAAI,CAACU,GAAG,KAAKP,SAAS,EAAE;UAC1B,MAAMQ,IAAI,GAAG,IAAAC,wBAAiB,EAC5BZ,IAAI,CAACU,GAAG,EACRG,kBAAW,CAACC,SACd,CAAC;UACD,IAAIH,IAAI,KAAKf,SAAS,CAACe,IAAI,EACzB,MAAM,IAAApB,uBAAgB,EACpB,kDAAkD,EAClD,WACF,CAAC;QACL;QAEA,MAAMwB,MAAM,GAAGC,oCAAiB,CAACC,SAAS,CAACC,qBAAqB,CAAC,CAAC;QAClE,MAAMC,IAAI,GAAGJ,MAAM,CAACK,OAAO,CAACpB,IAAI,CAAC;QACjC,IAAImB,IAAI,KAAKhB,SAAS,EACpB,MAAM,IAAAZ,uBAAgB,EAAC,aAAa,EAAE,WAAW,CAAC;QAEpDQ,SAAS,GACPoB,IAAI,KAAKE,aAAO,CAACC,OAAO,GACpB,IAAIC,sBAAgB,CAACR,MAAM,CAAC,GAC5B,IAAIS,qBAAe,CAACT,MAAM,CAAC;QAEjC;MACF;IACA;MACE,MAAM,IAAAxB,uBAAgB,EACnB,wCAAuCG,MAAO,EAAC,EAChD,mBACF,CAAC;EACL;EAEA,IAAIK,SAAS,CAAC0B,iBAAiB,KAAK,KAAK,EAAE;IACzC,MAAM,IAAAlC,uBAAgB,EAAC,kBAAkB,EAAE,WAAW,CAAC;EACzD;EAEA,MAAM;IAAEmC,aAAa;IAAEC;EAAe,CAAC,GAAG5B,SAAS,CAACgB,MAAM,CAACa,SAAS,CAAC,CAAC;EAEtE,IAAID,cAAc,KAAKxB,SAAS,EAAE;IAChC,MAAM,IAAAZ,uBAAgB,EAAC,6BAA6B,EAAE,WAAW,CAAC;EACpE;EAEA,OAAO,IAAIsC,eAAS,CAClB9B,SAAS,EACT;IACEZ,IAAI,EAAES,SAAS,CAACT,IAAI;IACpBuC,aAAa;IACbC,cAAc,EAAE,IAAIG,UAAU,CAACH,cAAc,CAAC;IAC9ChB,IAAI,EAAEf,SAAS,CAACe;EAClB,CAAC,EACDb,SAAS,EACTD,WACF,CAAC;AACH,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAAkC,OAAA,CAAAtC,YAAA,GAAAA,YAAA","ignoreList":[]}
1
+ {"version":3,"names":["_Cipher","require","_Cipher2","_NativeQuickCrypto","_Utils","_keys","RSAKeyVariant","exports","verifyAcceptableRsaKeyUse","name","isPublic","usages","checkSet","lazyDOMException","hasAnyNotIn","rsaOaepCipher","mode","key","data","label","type","CipherOrWrapMode","kWebCryptoCipherEncrypt","undefined","validateMaxBufferLength","NativeQuickCrypto","webcrypto","rsaCipher","keyObject","handle","RSA_OAEP","normalizeHashName","algorithm","hash","bufferLikeToArrayBuffer","rsaKeyGenerate","extractable","keyUsages","modulusLength","publicExponent","rawHash","publicExponentConverted","bigIntArrayToUnsignedInt","err","keypair","generateKeyPairPromise","cause","keyAlgorithm","publicUsages","privateUsages","getUsagesUnion","pub","PublicKeyObject","publicKey","CryptoKey","priv","PrivateKeyObject","privateKey","rsaExportKey","format","variant","KeyVariantLookup","rsaImportKey","keyData","createPublicKey","kty","d","length","use","checkUse","validateKeyOps","key_ops","ext","alg","HashContext","WebCrypto","createKeyObjectHandle","initJwk","KeyType","Private","asymmetricKeyType","keyDetail","Uint8Array"],"sourceRoot":"../../src","sources":["rsa.ts"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["_NativeQuickCrypto","require","_readableStream","_interopRequireDefault","_Utils","_keys","obj","__esModule","default","DSASigEnc","createInternalSign","NativeQuickCrypto","createSign","createInternalVerify","createVerify","getPadding","options","getIntOption","getSaltLength","getDSASignatureEncoding","dsaEncoding","kSigEncDER","kSigEncP1363","Error","name","value","undefined","Verify","Stream","Writable","constructor","algorithm","internal","init","_write","chunk","encoding","callback","update","data","getDefaultEncoding","binaryLikeToArrayBuffer","verify","signature","format","type","passphrase","preparePublicOrPrivateKey","rsaPadding","pssSaltLength","dsaSigEnc","ret","Sign","sign","preparePrivateKey","Buffer","from","toString"],"sourceRoot":"../../src","sources":["sig.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_NativeQuickCrypto","require","_readableStream","_interopRequireDefault","_Utils","_keys","obj","__esModule","default","DSASigEnc","createInternalSign","NativeQuickCrypto","createSign","createInternalVerify","createVerify","getPadding","options","getIntOption","getSaltLength","getDSASignatureEncoding","dsaEncoding","kSigEncDER","kSigEncP1363","Error","name","value","undefined","Verify","Stream","Writable","constructor","algorithm","internal","init","_write","chunk","encoding","callback","update","data","getDefaultEncoding","binaryLikeToArrayBuffer","verify","signature","format","type","passphrase","preparePublicOrPrivateKey","rsaPadding","pssSaltLength","dsaSigEnc","ret","Sign","sign","preparePrivateKey","Buffer","from","toString"],"sourceRoot":"../../src","sources":["sig.ts"],"mappings":"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","ignoreList":[]}