react-native-quick-crypto 0.7.3 → 0.7.5

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 (179) hide show
  1. package/README.md +13 -46
  2. package/android/build.gradle +1 -1
  3. package/android/gradle.properties +1 -1
  4. package/lib/commonjs/Cipher.js +114 -112
  5. package/lib/commonjs/Cipher.js.map +1 -1
  6. package/lib/commonjs/Hash.js +8 -5
  7. package/lib/commonjs/Hash.js.map +1 -1
  8. package/lib/commonjs/Hashnames.js +7 -1
  9. package/lib/commonjs/Hashnames.js.map +1 -1
  10. package/lib/commonjs/Hmac.js +5 -3
  11. package/lib/commonjs/Hmac.js.map +1 -1
  12. package/lib/commonjs/NativeQuickCrypto/Cipher.js +7 -7
  13. package/lib/commonjs/NativeQuickCrypto/Cipher.js.map +1 -1
  14. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js +11 -4
  15. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js.map +1 -1
  16. package/lib/commonjs/NativeQuickCrypto/sig.js.map +1 -1
  17. package/lib/commonjs/Utils.js +98 -63
  18. package/lib/commonjs/Utils.js.map +1 -1
  19. package/lib/commonjs/aes.js +9 -8
  20. package/lib/commonjs/aes.js.map +1 -1
  21. package/lib/commonjs/ec.js +2 -3
  22. package/lib/commonjs/ec.js.map +1 -1
  23. package/lib/commonjs/index.js +1 -1
  24. package/lib/commonjs/index.js.map +1 -1
  25. package/lib/commonjs/keygen.js +4 -2
  26. package/lib/commonjs/keygen.js.map +1 -1
  27. package/lib/commonjs/keys.js +7 -2
  28. package/lib/commonjs/keys.js.map +1 -1
  29. package/lib/commonjs/pbkdf2.js +13 -21
  30. package/lib/commonjs/pbkdf2.js.map +1 -1
  31. package/lib/commonjs/random.js +6 -8
  32. package/lib/commonjs/random.js.map +1 -1
  33. package/lib/commonjs/rsa.js.map +1 -1
  34. package/lib/commonjs/sig.js +1 -2
  35. package/lib/commonjs/sig.js.map +1 -1
  36. package/lib/commonjs/subtle.js +4 -3
  37. package/lib/commonjs/subtle.js.map +1 -1
  38. package/lib/module/Cipher.js +113 -111
  39. package/lib/module/Cipher.js.map +1 -1
  40. package/lib/module/Hash.js +7 -4
  41. package/lib/module/Hash.js.map +1 -1
  42. package/lib/module/Hashnames.js +7 -1
  43. package/lib/module/Hashnames.js.map +1 -1
  44. package/lib/module/Hmac.js +4 -2
  45. package/lib/module/Hmac.js.map +1 -1
  46. package/lib/module/NativeQuickCrypto/Cipher.js +7 -7
  47. package/lib/module/NativeQuickCrypto/Cipher.js.map +1 -1
  48. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js +11 -4
  49. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js.map +1 -1
  50. package/lib/module/NativeQuickCrypto/sig.js.map +1 -1
  51. package/lib/module/Utils.js +95 -62
  52. package/lib/module/Utils.js.map +1 -1
  53. package/lib/module/aes.js +9 -8
  54. package/lib/module/aes.js.map +1 -1
  55. package/lib/module/ec.js +2 -3
  56. package/lib/module/ec.js.map +1 -1
  57. package/lib/module/keygen.js +4 -2
  58. package/lib/module/keygen.js.map +1 -1
  59. package/lib/module/keys.js +7 -2
  60. package/lib/module/keys.js.map +1 -1
  61. package/lib/module/pbkdf2.js +13 -21
  62. package/lib/module/pbkdf2.js.map +1 -1
  63. package/lib/module/random.js +6 -8
  64. package/lib/module/random.js.map +1 -1
  65. package/lib/module/rsa.js.map +1 -1
  66. package/lib/module/sig.js +0 -1
  67. package/lib/module/sig.js.map +1 -1
  68. package/lib/module/subtle.js +4 -3
  69. package/lib/module/subtle.js.map +1 -1
  70. package/lib/typescript/{Cipher.d.ts → src/Cipher.d.ts} +37 -33
  71. package/lib/typescript/src/Cipher.d.ts.map +1 -0
  72. package/lib/typescript/src/Hash.d.ts.map +1 -0
  73. package/lib/typescript/{Hashnames.d.ts → src/Hashnames.d.ts} +2 -2
  74. package/lib/typescript/src/Hashnames.d.ts.map +1 -0
  75. package/lib/typescript/src/Hmac.d.ts.map +1 -0
  76. package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/Cipher.d.ts +5 -5
  77. package/lib/typescript/src/NativeQuickCrypto/Cipher.d.ts.map +1 -0
  78. package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/NativeQuickCrypto.d.ts +1 -1
  79. package/lib/typescript/src/NativeQuickCrypto/NativeQuickCrypto.d.ts.map +1 -0
  80. package/lib/typescript/src/NativeQuickCrypto/aes.d.ts.map +1 -0
  81. package/lib/typescript/src/NativeQuickCrypto/hash.d.ts.map +1 -0
  82. package/lib/typescript/src/NativeQuickCrypto/hmac.d.ts.map +1 -0
  83. package/lib/typescript/src/NativeQuickCrypto/keygen.d.ts.map +1 -0
  84. package/lib/typescript/src/NativeQuickCrypto/pbkdf2.d.ts.map +1 -0
  85. package/lib/typescript/src/NativeQuickCrypto/random.d.ts.map +1 -0
  86. package/lib/typescript/src/NativeQuickCrypto/rsa.d.ts.map +1 -0
  87. package/lib/typescript/src/NativeQuickCrypto/sig.d.ts.map +1 -0
  88. package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/webcrypto.d.ts +3 -2
  89. package/lib/typescript/src/NativeQuickCrypto/webcrypto.d.ts.map +1 -0
  90. package/lib/typescript/{Utils.d.ts → src/Utils.d.ts} +18 -8
  91. package/lib/typescript/src/Utils.d.ts.map +1 -0
  92. package/lib/typescript/src/aes.d.ts.map +1 -0
  93. package/lib/typescript/src/constants.d.ts.map +1 -0
  94. package/lib/typescript/src/ec.d.ts.map +1 -0
  95. package/lib/typescript/{index.d.ts → src/index.d.ts} +9 -34
  96. package/lib/typescript/src/index.d.ts.map +1 -0
  97. package/lib/typescript/src/keygen.d.ts.map +1 -0
  98. package/lib/typescript/{keys.d.ts → src/keys.d.ts} +30 -28
  99. package/lib/typescript/src/keys.d.ts.map +1 -0
  100. package/lib/typescript/{pbkdf2.d.ts → src/pbkdf2.d.ts} +3 -4
  101. package/lib/typescript/src/pbkdf2.d.ts.map +1 -0
  102. package/lib/typescript/{random.d.ts → src/random.d.ts} +5 -5
  103. package/lib/typescript/src/random.d.ts.map +1 -0
  104. package/lib/typescript/src/rsa.d.ts.map +1 -0
  105. package/lib/typescript/{sig.d.ts → src/sig.d.ts} +5 -5
  106. package/lib/typescript/src/sig.d.ts.map +1 -0
  107. package/lib/typescript/src/subtle.d.ts.map +1 -0
  108. package/lib/typescript/src/webcrypto.d.ts.map +1 -0
  109. package/package.json +14 -41
  110. package/src/Cipher.ts +272 -214
  111. package/src/Hash.ts +14 -7
  112. package/src/Hashnames.ts +10 -4
  113. package/src/Hmac.ts +6 -5
  114. package/src/NativeQuickCrypto/Cipher.ts +21 -20
  115. package/src/NativeQuickCrypto/NativeQuickCrypto.ts +15 -11
  116. package/src/NativeQuickCrypto/aes.ts +1 -1
  117. package/src/NativeQuickCrypto/hash.ts +1 -1
  118. package/src/NativeQuickCrypto/hmac.ts +1 -1
  119. package/src/NativeQuickCrypto/keygen.ts +1 -1
  120. package/src/NativeQuickCrypto/pbkdf2.ts +2 -2
  121. package/src/NativeQuickCrypto/random.ts +2 -2
  122. package/src/NativeQuickCrypto/rsa.ts +1 -1
  123. package/src/NativeQuickCrypto/sig.ts +3 -1
  124. package/src/NativeQuickCrypto/webcrypto.ts +6 -5
  125. package/src/Utils.ts +181 -108
  126. package/src/aes.ts +29 -29
  127. package/src/ec.ts +18 -19
  128. package/src/keygen.ts +7 -7
  129. package/src/keys.ts +73 -67
  130. package/src/pbkdf2.ts +24 -48
  131. package/src/random.ts +37 -43
  132. package/src/rsa.ts +25 -23
  133. package/src/sig.ts +12 -13
  134. package/src/subtle.ts +50 -45
  135. package/lib/typescript/Cipher.d.ts.map +0 -1
  136. package/lib/typescript/Hash.d.ts.map +0 -1
  137. package/lib/typescript/Hashnames.d.ts.map +0 -1
  138. package/lib/typescript/Hmac.d.ts.map +0 -1
  139. package/lib/typescript/NativeQuickCrypto/Cipher.d.ts.map +0 -1
  140. package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts.map +0 -1
  141. package/lib/typescript/NativeQuickCrypto/aes.d.ts.map +0 -1
  142. package/lib/typescript/NativeQuickCrypto/hash.d.ts.map +0 -1
  143. package/lib/typescript/NativeQuickCrypto/hmac.d.ts.map +0 -1
  144. package/lib/typescript/NativeQuickCrypto/keygen.d.ts.map +0 -1
  145. package/lib/typescript/NativeQuickCrypto/pbkdf2.d.ts.map +0 -1
  146. package/lib/typescript/NativeQuickCrypto/random.d.ts.map +0 -1
  147. package/lib/typescript/NativeQuickCrypto/rsa.d.ts.map +0 -1
  148. package/lib/typescript/NativeQuickCrypto/sig.d.ts.map +0 -1
  149. package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts.map +0 -1
  150. package/lib/typescript/Utils.d.ts.map +0 -1
  151. package/lib/typescript/aes.d.ts.map +0 -1
  152. package/lib/typescript/constants.d.ts.map +0 -1
  153. package/lib/typescript/ec.d.ts.map +0 -1
  154. package/lib/typescript/index.d.ts.map +0 -1
  155. package/lib/typescript/keygen.d.ts.map +0 -1
  156. package/lib/typescript/keys.d.ts.map +0 -1
  157. package/lib/typescript/pbkdf2.d.ts.map +0 -1
  158. package/lib/typescript/random.d.ts.map +0 -1
  159. package/lib/typescript/rsa.d.ts.map +0 -1
  160. package/lib/typescript/sig.d.ts.map +0 -1
  161. package/lib/typescript/subtle.d.ts.map +0 -1
  162. package/lib/typescript/webcrypto.d.ts.map +0 -1
  163. /package/lib/typescript/{Hash.d.ts → src/Hash.d.ts} +0 -0
  164. /package/lib/typescript/{Hmac.d.ts → src/Hmac.d.ts} +0 -0
  165. /package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/aes.d.ts +0 -0
  166. /package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/hash.d.ts +0 -0
  167. /package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/hmac.d.ts +0 -0
  168. /package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/keygen.d.ts +0 -0
  169. /package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/pbkdf2.d.ts +0 -0
  170. /package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/random.d.ts +0 -0
  171. /package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/rsa.d.ts +0 -0
  172. /package/lib/typescript/{NativeQuickCrypto → src/NativeQuickCrypto}/sig.d.ts +0 -0
  173. /package/lib/typescript/{aes.d.ts → src/aes.d.ts} +0 -0
  174. /package/lib/typescript/{constants.d.ts → src/constants.d.ts} +0 -0
  175. /package/lib/typescript/{ec.d.ts → src/ec.d.ts} +0 -0
  176. /package/lib/typescript/{keygen.d.ts → src/keygen.d.ts} +0 -0
  177. /package/lib/typescript/{rsa.d.ts → src/rsa.d.ts} +0 -0
  178. /package/lib/typescript/{subtle.d.ts → src/subtle.d.ts} +0 -0
  179. /package/lib/typescript/{webcrypto.d.ts → src/webcrypto.d.ts} +0 -0
package/README.md CHANGED
@@ -6,6 +6,10 @@
6
6
 
7
7
  A fast implementation of Node's `crypto` module.
8
8
 
9
+ > Note: This version `0.x` is the Old Architecture, Bridged version for React Native. The `1.x` and higher branches are refactored to work with the New Architecture, Bridgeless, and [`Nitro Modules`](https://github.com/mrousavy/react-native-nitro). Status, as always, will be represented in [implementation-coverage.md](../0.x/docs/implementation-coverage.md).
10
+
11
+ ## Features
12
+
9
13
  Unlike any other current JS-based polyfills, react-native-quick-crypto is written in C/C++ JSI and provides much greater performance - especially on mobile devices.
10
14
  QuickCrypto can be used as a drop-in replacement for your Web3/Crypto apps to speed up common cryptography functions.
11
15
 
@@ -16,6 +20,15 @@ QuickCrypto can be used as a drop-in replacement for your Web3/Crypto apps to sp
16
20
  - 🔢 Secure native compiled cryptography
17
21
  - 🔁 Easy drop-in replacement for [crypto-browserify](https://github.com/browserify/crypto-browserify) or [react-native-crypto](https://github.com/tradle/react-native-crypto)
18
22
 
23
+ ## Versions
24
+
25
+ | Version | RN Architecture | Modules |
26
+ | ------- | ------ | ------- |
27
+ | `0.x` (you are here) | old | Bridge & JSI |
28
+ | `1.x`+ | new [->](https://github.com/reactwg/react-native-new-architecture/blob/main/docs/enable-apps.md) | Nitro Modules [->](https://github.com/margelo/react-native-nitro) |
29
+
30
+ ## Benchmarks
31
+
19
32
  For example, creating a Wallet using ethers.js uses complex algorithms to generate a private-key/mnemonic-phrase pair:
20
33
 
21
34
  ```ts
@@ -133,52 +146,6 @@ const hashed = QuickCrypto.createHash('sha256')
133
146
  .digest('hex');
134
147
  ```
135
148
 
136
- ---
137
-
138
- ## Sponsors
139
-
140
- <!-- Onin -->
141
- <div align="center">
142
- <img height="50" src="./docs/img/sponsors/onin.svg" align="center"><br/>
143
- <a href="https://onin.co"><b>Onin</b></a> - This library is supported by Onin. Plan events without leaving the chat: <a href="https://onin.co">onin.co</a>
144
- </div>
145
- <br/>
146
- <br/>
147
-
148
- <!-- Steakwallet -->
149
- <div align="center">
150
- <img height="37" src="./docs/img/sponsors/omni.png" align="center"><br/>
151
- <a href="https://steakwallet.fi"><b>Omni</b></a> - Web3 for all. Access all of Web3 in one easy to use wallet. Omni supports more blockchains so you get more tokens, more yields, more NFTs, and more fun!
152
- </div>
153
- <br/>
154
- <br/>
155
-
156
- <!-- Litentry -->
157
- <div align="center">
158
- <img height="70" src="./docs/img/sponsors/litentry.png" align="center"><br/>
159
- <a href="https://litentry.com"><b>Litentry</b></a> - A decentralized identity aggregator, providing the structure and tools to empower you and your identity.
160
- </div>
161
- <br/>
162
- <br/>
163
-
164
- <!-- WalletConnect -->
165
- <div align="center">
166
- <img height="35" src="./docs/img/sponsors/walletconnect.png" align="center"><br/>
167
- <a href="https://walletconnect.com"><b>WalletConnect</b></a> - The communications protocol for web3, WalletConnect brings the ecosystem together by enabling wallets and apps to securely connect and interact.
168
- </div>
169
- <br/>
170
- <br/>
171
-
172
- <!-- WalletConnect -->
173
-
174
- <!-- THORSwap -->
175
- <div align="center">
176
- <img height="40" src="./docs/img/sponsors/thorswap.png" align="center"><br/>
177
- <a href="https://thorswap.finance"><b>THORSwap</b></a> - THORSwap is a cross-chain DEX aggregator that enables users to swap native assets across chains, provide liquidity to earn yield, and more. THORSwap is fully permissionless and non-custodial. No account signup, your wallet, your keys, your coins.
178
- </div>
179
- <br/>
180
- <br/>
181
-
182
149
  ## Limitations
183
150
 
184
151
  As the library uses JSI for synchronous native methods access, remote debugging (e.g. with Chrome) is no longer possible. Instead, you should use [Flipper](https://fbflipper.com).
@@ -104,7 +104,7 @@ android {
104
104
  }
105
105
 
106
106
  defaultConfig {
107
- minSdkVersion safeExtGet('minSdkVersion', 28)
107
+ minSdkVersion safeExtGet('minSdkVersion', 23)
108
108
  targetSdkVersion safeExtGet('targetSdkVersion', 31)
109
109
  versionCode 1
110
110
  versionName "1.0"
@@ -1,6 +1,6 @@
1
1
  QuickCrypto_compileSdkVersion=31
2
2
  QuickCrypto_targetSdkVersion=31
3
3
  QuickCrypto_ndkversion=21.4.7075529
4
- QuickCrypto_minSdkVersion=28
4
+ QuickCrypto_minSdkVersion=23
5
5
 
6
6
  android.useAndroidX=true
@@ -20,7 +20,7 @@ var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
20
20
  var _safeBuffer = require("safe-buffer");
21
21
  var _constants = require("./constants");
22
22
  var _keys = require("./keys");
23
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
23
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
24
24
  // @types/node
25
25
  let ECCurve = exports.ECCurve = /*#__PURE__*/function (ECCurve) {
26
26
  ECCurve[ECCurve["OPENSSL_EC_EXPLICIT_CURVE"] = 0] = "OPENSSL_EC_EXPLICIT_CURVE";
@@ -33,11 +33,12 @@ const createInternalDecipher = _NativeQuickCrypto.NativeQuickCrypto.createDeciph
33
33
  const _publicEncrypt = _NativeQuickCrypto.NativeQuickCrypto.publicEncrypt;
34
34
  const _publicDecrypt = _NativeQuickCrypto.NativeQuickCrypto.publicDecrypt;
35
35
  const _privateDecrypt = _NativeQuickCrypto.NativeQuickCrypto.privateDecrypt;
36
+
37
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
36
38
  function getUIntOption(options, key) {
37
39
  let value;
38
40
  if (options && (value = options[key]) != null) {
39
41
  // >>> Turns any type into a positive integer (also sets the sign bit to 0)
40
- // eslint-disable-next-line no-bitwise
41
42
  if (value >>> 0 !== value) throw new Error(`options.${key}: ${value}`);
42
43
  return value;
43
44
  }
@@ -45,7 +46,7 @@ function getUIntOption(options, key) {
45
46
  }
46
47
  function normalizeEncoding(enc) {
47
48
  if (!enc) return 'utf8';
48
- var retried;
49
+ let retried;
49
50
  while (true) {
50
51
  switch (enc) {
51
52
  case 'utf8':
@@ -115,6 +116,7 @@ class CipherCommon extends _readableStream.default.Transform {
115
116
  const ret = this.internal.update(data);
116
117
  if (outputEncoding && outputEncoding !== 'buffer') {
117
118
  this.decoder = getDecoder(this.decoder, outputEncoding);
119
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
118
120
  return this.decoder.write(_safeBuffer.Buffer.from(ret));
119
121
  }
120
122
  return ret;
@@ -123,6 +125,7 @@ class CipherCommon extends _readableStream.default.Transform {
123
125
  const ret = this.internal.final();
124
126
  if (outputEncoding && outputEncoding !== 'buffer') {
125
127
  this.decoder = getDecoder(this.decoder, outputEncoding);
128
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
126
129
  return this.decoder.end(_safeBuffer.Buffer.from(ret));
127
130
  }
128
131
  return ret;
@@ -147,7 +150,7 @@ class CipherCommon extends _readableStream.default.Transform {
147
150
  return this;
148
151
  }
149
152
  getAuthTag() {
150
- return this.internal.getAuthTag();
153
+ return _reactNativeBuffer.Buffer.from(this.internal.getAuthTag());
151
154
  }
152
155
  setAuthTag(tag) {
153
156
  this.internal.setAuthTag((0, _Utils.binaryLikeToArrayBuffer)(tag));
@@ -171,6 +174,7 @@ class Decipher extends CipherCommon {
171
174
  }
172
175
  }
173
176
  function createDecipher(algorithm, password, options) {
177
+ if (options === undefined) options = {};
174
178
  return new Decipher(algorithm, password, options);
175
179
  }
176
180
  function createDecipheriv(algorithm, key, iv, options) {
@@ -186,7 +190,6 @@ function createCipheriv(algorithm, key, iv, options) {
186
190
  // RSA Functions
187
191
  // Follows closely the model implemented in node
188
192
 
189
- // TODO(osp) types...
190
193
  function rsaFunctionFor(method, defaultPadding, keyType) {
191
194
  return (options, buffer) => {
192
195
  const {
@@ -270,82 +273,7 @@ function internalGenerateKeyPair(isAsync, type, options, callback) {
270
273
  case 'rsa-pss':
271
274
  // fallthrough
272
275
  case 'rsa':
273
- (0, _Utils.validateObject)(options, 'options');
274
- const {
275
- modulusLength
276
- } = options;
277
- (0, _Utils.validateUint32)(modulusLength, 'options.modulusLength');
278
- let {
279
- publicExponent
280
- } = options;
281
- if (publicExponent == null) {
282
- publicExponent = 0x10001;
283
- } else {
284
- (0, _Utils.validateUint32)(publicExponent, 'options.publicExponent');
285
- }
286
- if (type === 'rsa') {
287
- if (isAsync) {
288
- _NativeQuickCrypto.NativeQuickCrypto.generateKeyPair(_Cipher.KeyVariant.RSA_SSA_PKCS1_v1_5,
289
- // Used also for RSA-OAEP
290
- modulusLength, publicExponent, ...encoding).then(([err, publicKey, privateKey]) => {
291
- if (publicKey instanceof _reactNativeBuffer.Buffer) {
292
- publicKey = _reactNativeBuffer.Buffer.from(publicKey);
293
- }
294
- if (privateKey instanceof _reactNativeBuffer.Buffer) {
295
- privateKey = _reactNativeBuffer.Buffer.from(privateKey);
296
- }
297
- callback(err, publicKey, privateKey);
298
- }).catch(err => {
299
- callback(err, undefined, undefined);
300
- });
301
- } else {
302
- let [err, publicKey, privateKey] = _NativeQuickCrypto.NativeQuickCrypto.generateKeyPairSync(_Cipher.KeyVariant.RSA_SSA_PKCS1_v1_5, modulusLength, publicExponent, ...encoding);
303
- if (publicKey instanceof _reactNativeBuffer.Buffer) {
304
- publicKey = _reactNativeBuffer.Buffer.from(publicKey);
305
- }
306
- if (privateKey instanceof _reactNativeBuffer.Buffer) {
307
- privateKey = _reactNativeBuffer.Buffer.from(privateKey);
308
- }
309
- return [err, publicKey, privateKey];
310
- }
311
- }
312
- const {
313
- hash,
314
- mgf1Hash,
315
- hashAlgorithm,
316
- mgf1HashAlgorithm,
317
- saltLength
318
- } = options;
319
-
320
- // // We don't have a process object on RN
321
- // // const pendingDeprecation = getOptionValue('--pending-deprecation');
322
-
323
- if (saltLength !== undefined) (0, _Utils.validateInt32)(saltLength, 'options.saltLength', 0);
324
- if (hashAlgorithm !== undefined) (0, _Utils.validateString)(hashAlgorithm, 'options.hashAlgorithm');
325
- if (mgf1HashAlgorithm !== undefined) (0, _Utils.validateString)(mgf1HashAlgorithm, 'options.mgf1HashAlgorithm');
326
- if (hash !== undefined) {
327
- // pendingDeprecation && process.emitWarning(
328
- // '"options.hash" is deprecated, ' +
329
- // 'use "options.hashAlgorithm" instead.',
330
- // 'DeprecationWarning',
331
- // 'DEP0154');
332
- (0, _Utils.validateString)(hash, 'options.hash');
333
- if (hashAlgorithm && hash !== hashAlgorithm) {
334
- throw new Error(`Invalid Argument options.hash ${hash}`);
335
- }
336
- }
337
- if (mgf1Hash !== undefined) {
338
- // pendingDeprecation && process.emitWarning(
339
- // '"options.mgf1Hash" is deprecated, ' +
340
- // 'use "options.mgf1HashAlgorithm" instead.',
341
- // 'DeprecationWarning',
342
- // 'DEP0154');
343
- (0, _Utils.validateString)(mgf1Hash, 'options.mgf1Hash');
344
- if (mgf1HashAlgorithm && mgf1Hash !== mgf1HashAlgorithm) {
345
- throw new Error(`Invalid Argument options.mgf1Hash ${mgf1Hash}`);
346
- }
347
- }
348
- return _NativeQuickCrypto.NativeQuickCrypto.generateKeyPairSync(_Cipher.KeyVariant.RSA_PSS, modulusLength, publicExponent, hashAlgorithm || hash, mgf1HashAlgorithm || mgf1Hash, saltLength, ...encoding);
276
+ return internalRsaGenerateKeyPair(isAsync, type, options, callback, encoding);
349
277
 
350
278
  // case 'dsa': {
351
279
  // validateObject(options, 'options');
@@ -365,37 +293,7 @@ function internalGenerateKeyPair(isAsync, type, options, callback) {
365
293
  // }
366
294
 
367
295
  case 'ec':
368
- (0, _Utils.validateObject)(options, 'options');
369
- const {
370
- namedCurve
371
- } = options;
372
- (0, _Utils.validateString)(namedCurve, 'options.namedCurve');
373
- let paramEncodingFlag = ECCurve.OPENSSL_EC_NAMED_CURVE;
374
- const {
375
- paramEncoding
376
- } = options;
377
- if (paramEncoding == null || paramEncoding === 'named') paramEncodingFlag = ECCurve.OPENSSL_EC_NAMED_CURVE;else if (paramEncoding === 'explicit') paramEncodingFlag = ECCurve.OPENSSL_EC_EXPLICIT_CURVE;else throw new Error(`Invalid Argument options.paramEncoding ${paramEncoding}`);
378
- if (isAsync) {
379
- _NativeQuickCrypto.NativeQuickCrypto.generateKeyPair(_Cipher.KeyVariant.EC, namedCurve, paramEncodingFlag, ...encoding).then(([err, publicKey, privateKey]) => {
380
- if (publicKey instanceof _reactNativeBuffer.Buffer) {
381
- publicKey = _reactNativeBuffer.Buffer.from(publicKey);
382
- }
383
- if (privateKey instanceof _reactNativeBuffer.Buffer) {
384
- privateKey = _reactNativeBuffer.Buffer.from(privateKey);
385
- }
386
- callback?.(err, publicKey, privateKey);
387
- }).catch(err => {
388
- callback?.(err, undefined, undefined);
389
- });
390
- }
391
- let [err, publicKey, privateKey] = _NativeQuickCrypto.NativeQuickCrypto.generateKeyPairSync(_Cipher.KeyVariant.EC, namedCurve, paramEncodingFlag, ...encoding);
392
- if (publicKey instanceof _reactNativeBuffer.Buffer) {
393
- publicKey = _reactNativeBuffer.Buffer.from(publicKey);
394
- }
395
- if (privateKey instanceof _reactNativeBuffer.Buffer) {
396
- privateKey = _reactNativeBuffer.Buffer.from(privateKey);
397
- }
398
- return [err, publicKey, privateKey];
296
+ return internalEcGenerateKeyPair(isAsync, type, options, callback, encoding);
399
297
 
400
298
  // case 'ed25519':
401
299
  // case 'ed448':
@@ -467,6 +365,109 @@ function internalGenerateKeyPair(isAsync, type, options, callback) {
467
365
  `);
468
366
  return [err, undefined, undefined];
469
367
  }
368
+ const internalRsaGenerateKeyPair = (isAsync, type, options, callback, encoding) => {
369
+ (0, _Utils.validateObject)(options, 'options');
370
+ const {
371
+ modulusLength
372
+ } = options;
373
+ (0, _Utils.validateUint32)(modulusLength, 'options.modulusLength');
374
+ let {
375
+ publicExponent
376
+ } = options;
377
+ if (publicExponent == null) {
378
+ publicExponent = 0x10001;
379
+ } else {
380
+ (0, _Utils.validateUint32)(publicExponent, 'options.publicExponent');
381
+ }
382
+ if (type === 'rsa') {
383
+ if (isAsync) {
384
+ _NativeQuickCrypto.NativeQuickCrypto.generateKeyPair(_Cipher.KeyVariant.RSA_SSA_PKCS1_v1_5,
385
+ // Used also for RSA-OAEP
386
+ modulusLength, publicExponent, ...encoding).then(([err, publicKey, privateKey]) => {
387
+ if (publicKey instanceof _reactNativeBuffer.Buffer) {
388
+ publicKey = _reactNativeBuffer.Buffer.from(publicKey);
389
+ }
390
+ if (privateKey instanceof _reactNativeBuffer.Buffer) {
391
+ privateKey = _reactNativeBuffer.Buffer.from(privateKey);
392
+ }
393
+ callback(err, publicKey, privateKey);
394
+ }).catch(err => {
395
+ callback(err, undefined, undefined);
396
+ });
397
+ } else {
398
+ const [err, publicKey, privateKey] = _NativeQuickCrypto.NativeQuickCrypto.generateKeyPairSync(_Cipher.KeyVariant.RSA_SSA_PKCS1_v1_5, modulusLength, publicExponent, ...encoding);
399
+ const pub = publicKey instanceof _reactNativeBuffer.Buffer ? _reactNativeBuffer.Buffer.from(publicKey) : publicKey;
400
+ const priv = privateKey instanceof _reactNativeBuffer.Buffer ? _reactNativeBuffer.Buffer.from(privateKey) : privateKey;
401
+ return [err, pub, priv];
402
+ }
403
+ }
404
+ const {
405
+ hash,
406
+ mgf1Hash,
407
+ hashAlgorithm,
408
+ mgf1HashAlgorithm,
409
+ saltLength
410
+ } = options;
411
+
412
+ // // We don't have a process object on RN
413
+ // // const pendingDeprecation = getOptionValue('--pending-deprecation');
414
+
415
+ if (saltLength !== undefined) (0, _Utils.validateInt32)(saltLength, 'options.saltLength', 0);
416
+ if (hashAlgorithm !== undefined) (0, _Utils.validateString)(hashAlgorithm, 'options.hashAlgorithm');
417
+ if (mgf1HashAlgorithm !== undefined) (0, _Utils.validateString)(mgf1HashAlgorithm, 'options.mgf1HashAlgorithm');
418
+ if (hash !== undefined) {
419
+ // pendingDeprecation && process.emitWarning(
420
+ // '"options.hash" is deprecated, ' +
421
+ // 'use "options.hashAlgorithm" instead.',
422
+ // 'DeprecationWarning',
423
+ // 'DEP0154');
424
+ (0, _Utils.validateString)(hash, 'options.hash');
425
+ if (hashAlgorithm && hash !== hashAlgorithm) {
426
+ throw new Error(`Invalid Argument options.hash ${hash}`);
427
+ }
428
+ }
429
+ if (mgf1Hash !== undefined) {
430
+ // pendingDeprecation && process.emitWarning(
431
+ // '"options.mgf1Hash" is deprecated, ' +
432
+ // 'use "options.mgf1HashAlgorithm" instead.',
433
+ // 'DeprecationWarning',
434
+ // 'DEP0154');
435
+ (0, _Utils.validateString)(mgf1Hash, 'options.mgf1Hash');
436
+ if (mgf1HashAlgorithm && mgf1Hash !== mgf1HashAlgorithm) {
437
+ throw new Error(`Invalid Argument options.mgf1Hash ${mgf1Hash}`);
438
+ }
439
+ }
440
+ return _NativeQuickCrypto.NativeQuickCrypto.generateKeyPairSync(_Cipher.KeyVariant.RSA_PSS, modulusLength, publicExponent, hashAlgorithm || hash, mgf1HashAlgorithm || mgf1Hash, saltLength, ...encoding);
441
+ };
442
+ const internalEcGenerateKeyPair = (isAsync, _type, options, callback, encoding) => {
443
+ (0, _Utils.validateObject)(options, 'options');
444
+ const {
445
+ namedCurve
446
+ } = options;
447
+ (0, _Utils.validateString)(namedCurve, 'options.namedCurve');
448
+ let paramEncodingFlag = ECCurve.OPENSSL_EC_NAMED_CURVE;
449
+ const {
450
+ paramEncoding
451
+ } = options;
452
+ if (paramEncoding == null || paramEncoding === 'named') paramEncodingFlag = ECCurve.OPENSSL_EC_NAMED_CURVE;else if (paramEncoding === 'explicit') paramEncodingFlag = ECCurve.OPENSSL_EC_EXPLICIT_CURVE;else throw new Error(`Invalid Argument options.paramEncoding ${paramEncoding}`);
453
+ if (isAsync) {
454
+ _NativeQuickCrypto.NativeQuickCrypto.generateKeyPair(_Cipher.KeyVariant.EC, namedCurve, paramEncodingFlag, ...encoding).then(([err, publicKey, privateKey]) => {
455
+ if (publicKey instanceof _reactNativeBuffer.Buffer) {
456
+ publicKey = _reactNativeBuffer.Buffer.from(publicKey);
457
+ }
458
+ if (privateKey instanceof _reactNativeBuffer.Buffer) {
459
+ privateKey = _reactNativeBuffer.Buffer.from(privateKey);
460
+ }
461
+ callback?.(err, publicKey, privateKey);
462
+ }).catch(err => {
463
+ callback?.(err, undefined, undefined);
464
+ });
465
+ }
466
+ const [err, publicKey, privateKey] = _NativeQuickCrypto.NativeQuickCrypto.generateKeyPairSync(_Cipher.KeyVariant.EC, namedCurve, paramEncodingFlag, ...encoding);
467
+ const pub = publicKey instanceof _reactNativeBuffer.Buffer ? _reactNativeBuffer.Buffer.from(publicKey) : publicKey;
468
+ const priv = privateKey instanceof _reactNativeBuffer.Buffer ? _reactNativeBuffer.Buffer.from(privateKey) : privateKey;
469
+ return [err, pub, priv];
470
+ };
470
471
  const generateKeyPair = (type, options, callback) => {
471
472
  (0, _Utils.validateFunction)(callback);
472
473
  internalGenerateKeyPair(true, type, options, callback);
@@ -493,6 +494,7 @@ const generateKeyPairPromise = (type, options) => {
493
494
  // generateKeyPairSync
494
495
  exports.generateKeyPairPromise = generateKeyPairPromise;
495
496
  function generateKeyPairSync(type, options) {
497
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
496
498
  const [_, publicKey, privateKey] = internalGenerateKeyPair(false, type, options, undefined);
497
499
  return {
498
500
  publicKey,
@@ -1 +1 @@
1
- {"version":3,"names":["_NativeQuickCrypto","require","_readableStream","_interopRequireDefault","_Utils","_Cipher","_string_decoder","_reactNativeBuffer","_safeBuffer","_constants","_keys","obj","__esModule","default","ECCurve","exports","global","process","nextTick","setImmediate","createInternalCipher","NativeQuickCrypto","createCipher","createInternalDecipher","createDecipher","_publicEncrypt","publicEncrypt","_publicDecrypt","publicDecrypt","_privateDecrypt","privateDecrypt","getUIntOption","options","key","value","Error","normalizeEncoding","enc","retried","toLowerCase","validateEncoding","data","encoding","normalizedEncoding","length","getDecoder","decoder","StringDecoder","CipherCommon","Stream","Transform","constructor","cipherType","cipherKey","isCipher","iv","cipherKeyBuffer","binaryLikeToArrayBuffer","authTagLength","args","cipher_type","cipher_key","auth_tag_len","internal","update","inputEncoding","outputEncoding","defaultEncoding","getDefaultEncoding","ArrayBuffer","isView","ret","write","SBuffer","from","final","end","_transform","chunk","callback","push","_flush","setAutoPadding","autoPadding","setAAD","buffer","plaintextLength","getAuthTag","setAuthTag","tag","Cipher","Decipher","algorithm","password","createDecipheriv","createCipheriv","rsaFunctionFor","method","defaultPadding","keyType","format","type","passphrase","preparePrivateKey","preparePublicOrPrivateKey","padding","oaepHash","oaepLabel","undefined","validateString","rawRes","Buffer","constants","RSA_PKCS1_OAEP_PADDING","RSA_PKCS1_PADDING","parseKeyEncoding","kEmptyObject","publicKeyEncoding","privateKeyEncoding","publicFormat","publicType","parsePublicKeyEncoding","privateFormat","privateType","cipher","parsePrivateKeyEncoding","internalGenerateKeyPair","isAsync","validateObject","modulusLength","validateUint32","publicExponent","generateKeyPair","KeyVariant","RSA_SSA_PKCS1_v1_5","then","err","publicKey","privateKey","catch","generateKeyPairSync","hash","mgf1Hash","hashAlgorithm","mgf1HashAlgorithm","saltLength","validateInt32","RSA_PSS","namedCurve","paramEncodingFlag","OPENSSL_EC_NAMED_CURVE","paramEncoding","OPENSSL_EC_EXPLICIT_CURVE","EC","validateFunction","generateKeyPairPromise","Promise","resolve","reject","_"],"sourceRoot":"../../src","sources":["Cipher.ts"],"mappings":";;;;;;;;;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAcA,IAAAI,OAAA,GAAAJ,OAAA;AAeA,IAAAK,eAAA,GAAAL,OAAA;AACA,IAAAM,kBAAA,GAAAN,OAAA;AACA,IAAAO,WAAA,GAAAP,OAAA;AACA,IAAAQ,UAAA,GAAAR,OAAA;AACA,IAAAS,KAAA,GAAAT,OAAA;AASgB,SAAAE,uBAAAQ,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAdC;AAAA,IAiBLG,OAAO,GAAAC,OAAA,CAAAD,OAAA,0BAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAPA,OAAO,CAAPA,OAAO;EAAA,OAAPA,OAAO;AAAA,OAKnB;AACAE,MAAM,CAACC,OAAO,CAACC,QAAQ,GAAGC,YAAY;AAEtC,MAAMC,oBAAoB,GAAGC,oCAAiB,CAACC,YAAY;AAC3D,MAAMC,sBAAsB,GAAGF,oCAAiB,CAACG,cAAc;AAC/D,MAAMC,cAAc,GAAGJ,oCAAiB,CAACK,aAAa;AACtD,MAAMC,cAAc,GAAGN,oCAAiB,CAACO,aAAa;AACtD,MAAMC,eAAe,GAAGR,oCAAiB,CAACS,cAAc;AAExD,SAASC,aAAaA,CAACC,OAA4B,EAAEC,GAAW,EAAE;EAChE,IAAIC,KAAK;EACT,IAAIF,OAAO,IAAI,CAACE,KAAK,GAAGF,OAAO,CAACC,GAAG,CAAC,KAAK,IAAI,EAAE;IAC7C;IACA;IACA,IAAIC,KAAK,KAAK,CAAC,KAAKA,KAAK,EAAE,MAAM,IAAIC,KAAK,CAAE,WAAUF,GAAI,KAAIC,KAAM,EAAC,CAAC;IACtE,OAAOA,KAAK;EACd;EACA,OAAO,CAAC,CAAC;AACX;AAEA,SAASE,iBAAiBA,CAACC,GAAW,EAAE;EACtC,IAAI,CAACA,GAAG,EAAE,OAAO,MAAM;EACvB,IAAIC,OAAO;EACX,OAAO,IAAI,EAAE;IACX,QAAQD,GAAG;MACT,KAAK,MAAM;MACX,KAAK,OAAO;QACV,OAAO,MAAM;MACf,KAAK,MAAM;MACX,KAAK,OAAO;MACZ,KAAK,SAAS;MACd,KAAK,UAAU;QACb,OAAO,SAAS;MAClB,KAAK,QAAQ;MACb,KAAK,QAAQ;QACX,OAAO,QAAQ;MACjB,KAAK,QAAQ;MACb,KAAK,OAAO;MACZ,KAAK,KAAK;QACR,OAAOA,GAAG;MACZ;QACE,IAAIC,OAAO,EAAE,OAAO,CAAC;QACrBD,GAAG,GAAG,CAAC,EAAE,GAAGA,GAAG,EAAEE,WAAW,CAAC,CAAC;QAC9BD,OAAO,GAAG,IAAI;IAClB;EACF;AACF;AAEA,SAASE,gBAAgBA,CAACC,IAAY,EAAEC,QAAgB,EAAE;EACxD,MAAMC,kBAAkB,GAAGP,iBAAiB,CAACM,QAAQ,CAAC;EACtD,MAAME,MAAM,GAAGH,IAAI,CAACG,MAAM;EAE1B,IAAID,kBAAkB,KAAK,KAAK,IAAIC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;IACpD,MAAM,IAAIT,KAAK,CAAE,YAAWO,QAAS,8BAA6BE,MAAO,EAAC,CAAC;EAC7E;AACF;AAEA,SAASC,UAAUA,CAACC,OAAuB,EAAEJ,QAAyB,EAAE;EACtE,OAAOI,OAAO,IAAI,IAAIC,6BAAa,CAACL,QAAQ,CAAC;AAC/C;AAEA,MAAMM,YAAY,SAASC,uBAAM,CAACC,SAAS,CAAC;EAI1CC,WAAWA,CACTC,UAAkB,EAClBC,SAAyB,EACzBC,QAAiB,EACjBtB,OAA4B,GAAG,CAAC,CAAC,EACjCuB,EAAsB,EACtB;IACA,KAAK,CAACvB,OAAO,CAAC;IACd,MAAMwB,eAAe,GAAG,IAAAC,8BAAuB,EAACJ,SAAS,CAAC;IAC1D;IACA,MAAMK,aAAa,GACjB3B,aAAa,CAACC,OAAO,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,GAC1CD,aAAa,CAACC,OAAO,EAAE,eAAe,CAAC,GACvC,EAAE;IACR,MAAM2B,IAAI,GAAG;MACXC,WAAW,EAAER,UAAU;MACvBS,UAAU,EAAEL,eAAe;MAC3BD,EAAE;MACF,GAAGvB,OAAO;MACV8B,YAAY,EAAEJ;IAChB,CAAC;IACD,IAAI,CAACK,QAAQ,GAAGT,QAAQ,GACpBlC,oBAAoB,CAACuC,IAAI,CAAC,GAC1BpC,sBAAsB,CAACoC,IAAI,CAAC;EAClC;EAEAK,MAAMA,CACJvB,IAAgB,EAChBwB,aAA8B,EAC9BC,cAA+B,EACT;IACtB,MAAMC,eAAe,GAAG,IAAAC,yBAAkB,EAAC,CAAC;IAC5CH,aAAa,GAAGA,aAAa,IAAIE,eAAe;IAChDD,cAAc,GAAGA,cAAc,IAAIC,eAAe;IAElD,IAAI,OAAO1B,IAAI,KAAK,QAAQ,EAAE;MAC5BD,gBAAgB,CAACC,IAAI,EAAEwB,aAAa,CAAC;IACvC,CAAC,MAAM,IAAI,CAACI,WAAW,CAACC,MAAM,CAAC7B,IAAI,CAAC,EAAE;MACpC,MAAM,IAAIN,KAAK,CAAC,uBAAuB,CAAC;IAC1C;IAEA,IAAI,OAAOM,IAAI,KAAK,QAAQ,EAAE;MAC5B;MACA;MACAwB,aAAa,GAAGA,aAAa,KAAK,QAAQ,GAAG,MAAM,GAAGA,aAAa;MACnExB,IAAI,GAAG,IAAAgB,8BAAuB,EAAChB,IAAI,EAAEwB,aAAa,CAAC;IACrD,CAAC,MAAM;MACLxB,IAAI,GAAG,IAAAgB,8BAAuB,EAAChB,IAAI,EAASwB,aAAa,CAAC;IAC5D;IAEA,MAAMM,GAAG,GAAG,IAAI,CAACR,QAAQ,CAACC,MAAM,CAACvB,IAAI,CAAC;IAEtC,IAAIyB,cAAc,IAAIA,cAAc,KAAK,QAAQ,EAAE;MACjD,IAAI,CAACpB,OAAO,GAAGD,UAAU,CAAC,IAAI,CAACC,OAAO,EAAEoB,cAAc,CAAC;MAEvD,OAAO,IAAI,CAACpB,OAAO,CAAE0B,KAAK,CAACC,kBAAO,CAACC,IAAI,CAACH,GAAG,CAAQ,CAAC;IACtD;IAEA,OAAOA,GAAG;EACZ;EAIAI,KAAKA,CAACT,cAA0C,EAAwB;IACtE,MAAMK,GAAG,GAAG,IAAI,CAACR,QAAQ,CAACY,KAAK,CAAC,CAAC;IAEjC,IAAIT,cAAc,IAAIA,cAAc,KAAK,QAAQ,EAAE;MACjD,IAAI,CAACpB,OAAO,GAAGD,UAAU,CAAC,IAAI,CAACC,OAAO,EAAEoB,cAAc,CAAC;MAEvD,OAAO,IAAI,CAACpB,OAAO,CAAE8B,GAAG,CAACH,kBAAO,CAACC,IAAI,CAACH,GAAG,CAAQ,CAAC;IACpD;IAEA,OAAOA,GAAG;EACZ;EAEAM,UAAUA,CAACC,KAAiB,EAAEpC,QAAkB,EAAEqC,QAAoB,EAAE;IACtE,IAAI,CAACC,IAAI,CAAC,IAAI,CAAChB,MAAM,CAACc,KAAK,EAAEpC,QAAQ,CAAC,CAAC;IACvCqC,QAAQ,CAAC,CAAC;EACZ;EAEAE,MAAMA,CAACF,QAAoB,EAAE;IAC3B,IAAI,CAACC,IAAI,CAAC,IAAI,CAACL,KAAK,CAAC,CAAC,CAAC;IACvBI,QAAQ,CAAC,CAAC;EACZ;EAEOG,cAAcA,CAACC,WAAqB,EAAQ;IACjD,IAAI,CAACpB,QAAQ,CAACmB,cAAc,CAAC,CAAC,CAACC,WAAW,CAAC;IAC3C,OAAO,IAAI;EACb;EAEOC,MAAMA,CACXC,MAAc,EACdrD,OAEC,EACK;IACN,IAAI,CAAC+B,QAAQ,CAACqB,MAAM,CAAC;MACnB3C,IAAI,EAAE4C,MAAM,CAACA,MAAM;MACnBC,eAAe,EAAEtD,OAAO,EAAEsD;IAC5B,CAAC,CAAC;IACF,OAAO,IAAI;EACb;EAEOC,UAAUA,CAAA,EAAgB;IAC/B,OAAO,IAAI,CAACxB,QAAQ,CAACwB,UAAU,CAAC,CAAC;EACnC;EAEOC,UAAUA,CAACC,GAAW,EAAQ;IACnC,IAAI,CAAC1B,QAAQ,CAACyB,UAAU,CAAC,IAAA/B,8BAAuB,EAACgC,GAAG,CAAC,CAAC;IACtD,OAAO,IAAI;EACb;AACF;AAEA,MAAMC,MAAM,SAAS1C,YAAY,CAAC;EAChCG,WAAWA,CACTC,UAAkB,EAClBC,SAAyB,EACzBrB,OAA4B,GAAG,CAAC,CAAC,EACjCuB,EAAsB,EACtB;IACA,IAAIA,EAAE,IAAI,IAAI,EAAE;MACdA,EAAE,GAAG,IAAAE,8BAAuB,EAACF,EAAE,CAAC;IAClC;IACA,KAAK,CAACH,UAAU,EAAEC,SAAS,EAAE,IAAI,EAAErB,OAAO,EAAEuB,EAAE,CAAC;EACjD;AACF;AAEA,MAAMoC,QAAQ,SAAS3C,YAAY,CAAC;EAClCG,WAAWA,CACTC,UAAkB,EAClBC,SAAyB,EACzBrB,OAA4B,GAAG,CAAC,CAAC,EACjCuB,EAAsB,EACtB;IACA,IAAIA,EAAE,IAAI,IAAI,EAAE;MACdA,EAAE,GAAG,IAAAE,8BAAuB,EAACF,EAAE,CAAC;IAClC;IAEA,KAAK,CAACH,UAAU,EAAEC,SAAS,EAAE,KAAK,EAAErB,OAAO,EAAEuB,EAAE,CAAC;EAClD;AACF;AAYO,SAAS/B,cAAcA,CAC5BoE,SAAiB,EACjBC,QAAwB,EACxB7D,OAAuE,EACjC;EACtC,OAAO,IAAI2D,QAAQ,CAACC,SAAS,EAAEC,QAAQ,EAAE7D,OAAO,CAAC;AACnD;AAoBO,SAAS8D,gBAAgBA,CAC9BF,SAAiB,EACjB3D,GAAmB,EACnBsB,EAAqB,EACrBvB,OAI2B,EACyB;EACpD,OAAO,IAAI2D,QAAQ,CAACC,SAAS,EAAE3D,GAAG,EAAED,OAAO,EAAEuB,EAAE,CAAC;AAClD;AAYO,SAASjC,YAAYA,CAC1BsE,SAAiB,EACjBC,QAAwB,EACxB7D,OAAuE,EACvC;EAChC,OAAO,IAAI0D,MAAM,CAACE,SAAS,EAAEC,QAAQ,EAAE7D,OAAO,CAAC;AACjD;AAoBO,SAAS+D,cAAcA,CAC5BH,SAAiB,EACjB3D,GAAmB,EACnBsB,EAAqB,EACrBvB,OAI2B,EACiB;EAC5C,OAAO,IAAI0D,MAAM,CAACE,SAAS,EAAE3D,GAAG,EAAED,OAAO,EAAEuB,EAAE,CAAC;AAChD;;AAEA;AACA;;AAEA;AACA,SAASyC,cAAcA,CACrBC,MASW,EACXC,cAAsB,EACtBC,OAA6B,EAC7B;EACA,OAAO,CACLnE,OAQC,EACDqD,MAAkB,KACf;IACH,MAAM;MAAEe,MAAM;MAAEC,IAAI;MAAE5D,IAAI;MAAE6D;IAAW,CAAC,GACtCH,OAAO,KAAK,SAAS,GACjB,IAAAI,uBAAiB,EAACvE,OAAO,CAAC,GAC1B,IAAAwE,+BAAyB,EAACxE,OAAO,CAAC;IACxC,MAAMyE,OAAO,GAAGzE,OAAO,CAACyE,OAAO,IAAIP,cAAc;IACjD,MAAM;MAAEQ,QAAQ;MAAEhE;IAAS,CAAC,GAAGV,OAAO;IACtC,IAAI;MAAE2E;IAAU,CAAC,GAAG3E,OAAO;IAC3B,IAAI0E,QAAQ,KAAKE,SAAS,EAAE,IAAAC,qBAAc,EAACH,QAAQ,EAAE,cAAc,CAAC;IACpE,IAAIC,SAAS,KAAKC,SAAS,EACzBD,SAAS,GAAG,IAAAlD,8BAAuB,EAACkD,SAAS,EAAEjE,QAAQ,CAAC;IAC1D2C,MAAM,GAAG,IAAA5B,8BAAuB,EAAC4B,MAAM,EAAE3C,QAAQ,CAAC;IAElD,MAAMoE,MAAM,GAAGb,MAAM,CACnBxD,IAAI,EACJ2D,MAAM,EACNC,IAAI,EACJC,UAAU,EACVjB,MAAM,EACNoB,OAAO,EACPC,QAAQ,EACRC,SACF,CAAC;IAED,OAAOI,yBAAM,CAACrC,IAAI,CAACoC,MAAM,CAAC;EAC5B,CAAC;AACH;AAEO,MAAMpF,aAAa,GAAAX,OAAA,CAAAW,aAAA,GAAGsE,cAAc,CACzCvE,cAAc,EACduF,oBAAS,CAACC,sBAAsB,EAChC,QACF,CAAC;AACM,MAAMrF,aAAa,GAAAb,OAAA,CAAAa,aAAA,GAAGoE,cAAc,CACzCrE,cAAc,EACdqF,oBAAS,CAACE,iBAAiB,EAC3B,QACF,CAAC;AACD;AACA;AACO,MAAMpF,cAAc,GAAAf,OAAA,CAAAe,cAAA,GAAGkE,cAAc,CAC1CnE,eAAe,EACfmF,oBAAS,CAACC,sBAAsB,EAChC,SACF,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAyCA,SAASE,gBAAgBA,CACvBhB,OAAe,EACfnE,OAA+B,GAAGoF,mBAAY,EAC9C;EACA,MAAM;IAAEC,iBAAiB;IAAEC;EAAmB,CAAC,GAAGtF,OAAO;EAEzD,IAAIuF,YAAY,EAAEC,UAAU;EAC5B,IAAIH,iBAAiB,IAAI,IAAI,EAAE;IAC7BE,YAAY,GAAGC,UAAU,GAAGZ,SAAS;EACvC,CAAC,MAAM,IAAI,OAAOS,iBAAiB,KAAK,QAAQ,EAAE;IAChD,CAAC;MAAEjB,MAAM,EAAEmB,YAAY;MAAElB,IAAI,EAAEmB;IAAW,CAAC,GAAG,IAAAC,4BAAsB,EAClEJ,iBAAiB,EACjBlB,OAAO,EACP,mBACF,CAAC;EACH,CAAC,MAAM;IACL,MAAM,IAAIhE,KAAK,CACb,4CAA4C,EAC5CkF,iBACF,CAAC;EACH;EAEA,IAAIK,aAAa,EAAEC,WAAW,EAAEC,MAAM,EAAEtB,UAAU;EAClD,IAAIgB,kBAAkB,IAAI,IAAI,EAAE;IAC9BI,aAAa,GAAGC,WAAW,GAAGf,SAAS;EACzC,CAAC,MAAM,IAAI,OAAOU,kBAAkB,KAAK,QAAQ,EAAE;IACjD,CAAC;MACClB,MAAM,EAAEsB,aAAa;MACrBrB,IAAI,EAAEsB,WAAW;MACjBC,MAAM;MACNtB;IACF,CAAC,GAAG,IAAAuB,6BAAuB,EACzBP,kBAAkB,EAClBnB,OAAO,EACP,oBACF,CAAC;EACH,CAAC,MAAM;IACL,MAAM,IAAIhE,KAAK,CACb,6CAA6C,EAC7CkF,iBACF,CAAC;EACH;EAEA,OAAO,CACLE,YAAY,EACZC,UAAU,EACVE,aAAa,EACbC,WAAW,EACXC,MAAM,EACNtB,UAAU,CACX;AACH;;AAEA;AACA;AACA;AACA,SAASwB,uBAAuBA,CAC9BC,OAAgB,EAChB1B,IAAiB,EACjBrE,OAA2C,EAC3C+C,QAAkC,EACJ;EAC9B,MAAMrC,QAAQ,GAAGyE,gBAAgB,CAACd,IAAI,EAAErE,OAAO,CAAC;;EAEhD;EACA;;EAEA,QAAQqE,IAAI;IACV,KAAK,SAAS;IACd;IACA,KAAK,KAAK;MACR,IAAA2B,qBAAc,EAAyBhG,OAAO,EAAE,SAAS,CAAC;MAC1D,MAAM;QAAEiG;MAAc,CAAC,GAAGjG,OAAQ;MAClC,IAAAkG,qBAAc,EAACD,aAAa,EAAY,uBAAuB,CAAC;MAChE,IAAI;QAAEE;MAAe,CAAC,GAAGnG,OAAQ;MACjC,IAAImG,cAAc,IAAI,IAAI,EAAE;QAC1BA,cAAc,GAAG,OAAO;MAC1B,CAAC,MAAM;QACL,IAAAD,qBAAc,EAACC,cAAc,EAAE,wBAAwB,CAAC;MAC1D;MAEA,IAAI9B,IAAI,KAAK,KAAK,EAAE;QAClB,IAAI0B,OAAO,EAAE;UACX1G,oCAAiB,CAAC+G,eAAe,CAC/BC,kBAAU,CAACC,kBAAkB;UAAE;UAC/BL,aAAa,EACbE,cAAc,EACd,GAAGzF,QACL,CAAC,CACE6F,IAAI,CAAC,CAAC,CAACC,GAAG,EAAEC,SAAS,EAAEC,UAAU,CAAC,KAAK;YACtC,IAAID,SAAS,YAAY1B,yBAAM,EAAE;cAC/B0B,SAAS,GAAG1B,yBAAM,CAACrC,IAAI,CAAC+D,SAAS,CAAC;YACpC;YACA,IAAIC,UAAU,YAAY3B,yBAAM,EAAE;cAChC2B,UAAU,GAAG3B,yBAAM,CAACrC,IAAI,CAACgE,UAAU,CAAC;YACtC;YACA3D,QAAQ,CAAEyD,GAAG,EAAEC,SAAS,EAAEC,UAAU,CAAC;UACvC,CAAC,CAAC,CACDC,KAAK,CAAEH,GAAG,IAAK;YACdzD,QAAQ,CAAEyD,GAAG,EAAE5B,SAAS,EAAEA,SAAS,CAAC;UACtC,CAAC,CAAC;QACN,CAAC,MAAM;UACL,IAAI,CAAC4B,GAAG,EAAEC,SAAS,EAAEC,UAAU,CAAC,GAC9BrH,oCAAiB,CAACuH,mBAAmB,CACnCP,kBAAU,CAACC,kBAAkB,EAC7BL,aAAa,EACbE,cAAc,EACd,GAAGzF,QACL,CAAC;UAEH,IAAI+F,SAAS,YAAY1B,yBAAM,EAAE;YAC/B0B,SAAS,GAAG1B,yBAAM,CAACrC,IAAI,CAAC+D,SAAS,CAAC;UACpC;UACA,IAAIC,UAAU,YAAY3B,yBAAM,EAAE;YAChC2B,UAAU,GAAG3B,yBAAM,CAACrC,IAAI,CAACgE,UAAU,CAAC;UACtC;UAEA,OAAO,CAACF,GAAG,EAAEC,SAAS,EAAEC,UAAU,CAAC;QACrC;MACF;MAEA,MAAM;QAAEG,IAAI;QAAEC,QAAQ;QAAEC,aAAa;QAAEC,iBAAiB;QAAEC;MAAW,CAAC,GACpEjH,OAAQ;;MAEV;MACA;;MAEA,IAAIiH,UAAU,KAAKrC,SAAS,EAC1B,IAAAsC,oBAAa,EAACD,UAAU,EAAE,oBAAoB,EAAE,CAAC,CAAC;MACpD,IAAIF,aAAa,KAAKnC,SAAS,EAC7B,IAAAC,qBAAc,EAACkC,aAAa,EAAE,uBAAuB,CAAC;MACxD,IAAIC,iBAAiB,KAAKpC,SAAS,EACjC,IAAAC,qBAAc,EAACmC,iBAAiB,EAAE,2BAA2B,CAAC;MAChE,IAAIH,IAAI,KAAKjC,SAAS,EAAE;QACtB;QACA;QACA;QACA;QACA;QACA,IAAAC,qBAAc,EAACgC,IAAI,EAAE,cAAc,CAAC;QACpC,IAAIE,aAAa,IAAIF,IAAI,KAAKE,aAAa,EAAE;UAC3C,MAAM,IAAI5G,KAAK,CAAE,iCAAgC0G,IAAK,EAAC,CAAC;QAC1D;MACF;MACA,IAAIC,QAAQ,KAAKlC,SAAS,EAAE;QAC1B;QACA;QACA;QACA;QACA;QACA,IAAAC,qBAAc,EAACiC,QAAQ,EAAE,kBAAkB,CAAC;QAC5C,IAAIE,iBAAiB,IAAIF,QAAQ,KAAKE,iBAAiB,EAAE;UACvD,MAAM,IAAI7G,KAAK,CAAE,qCAAoC2G,QAAS,EAAC,CAAC;QAClE;MACF;MAEA,OAAOzH,oCAAiB,CAACuH,mBAAmB,CAC1CP,kBAAU,CAACc,OAAO,EAClBlB,aAAa,EACbE,cAAc,EACdY,aAAa,IAAIF,IAAI,EACrBG,iBAAiB,IAAIF,QAAQ,EAC7BG,UAAU,EACV,GAAGvG,QACL,CAAC;;IAEH;IACA;IACA;IACA;;IAEA;IACA;IACA;IACA;;IAEA;IACA;IACA;IACA;IACA;IACA;;IAEA,KAAK,IAAI;MACP,IAAAsF,qBAAc,EAAyBhG,OAAO,EAAE,SAAS,CAAC;MAC1D,MAAM;QAAEoH;MAAW,CAAC,GAAGpH,OAAQ;MAC/B,IAAA6E,qBAAc,EAACuC,UAAU,EAAE,oBAAoB,CAAC;MAChD,IAAIC,iBAAiB,GAAGvI,OAAO,CAACwI,sBAAsB;MACtD,MAAM;QAAEC;MAAc,CAAC,GAAGvH,OAAQ;MAClC,IAAIuH,aAAa,IAAI,IAAI,IAAIA,aAAa,KAAK,OAAO,EACpDF,iBAAiB,GAAGvI,OAAO,CAACwI,sBAAsB,CAAC,KAChD,IAAIC,aAAa,KAAK,UAAU,EACnCF,iBAAiB,GAAGvI,OAAO,CAAC0I,yBAAyB,CAAC,KAEtD,MAAM,IAAIrH,KAAK,CACZ,0CAAyCoH,aAAc,EAC1D,CAAC;MAEH,IAAIxB,OAAO,EAAE;QACX1G,oCAAiB,CAAC+G,eAAe,CAC/BC,kBAAU,CAACoB,EAAE,EACbL,UAAU,EACVC,iBAAiB,EACjB,GAAG3G,QACL,CAAC,CACE6F,IAAI,CAAC,CAAC,CAACC,GAAG,EAAEC,SAAS,EAAEC,UAAU,CAAC,KAAK;UACtC,IAAID,SAAS,YAAY1B,yBAAM,EAAE;YAC/B0B,SAAS,GAAG1B,yBAAM,CAACrC,IAAI,CAAC+D,SAAS,CAAC;UACpC;UACA,IAAIC,UAAU,YAAY3B,yBAAM,EAAE;YAChC2B,UAAU,GAAG3B,yBAAM,CAACrC,IAAI,CAACgE,UAAU,CAAC;UACtC;UACA3D,QAAQ,GAAGyD,GAAG,EAAEC,SAAS,EAAEC,UAAU,CAAC;QACxC,CAAC,CAAC,CACDC,KAAK,CAAEH,GAAG,IAAK;UACdzD,QAAQ,GAAGyD,GAAG,EAAE5B,SAAS,EAAEA,SAAS,CAAC;QACvC,CAAC,CAAC;MACN;MAEA,IAAI,CAAC4B,GAAG,EAAEC,SAAS,EAAEC,UAAU,CAAC,GAAGrH,oCAAiB,CAACuH,mBAAmB,CACtEP,kBAAU,CAACoB,EAAE,EACbL,UAAU,EACVC,iBAAiB,EACjB,GAAG3G,QACL,CAAC;MACD,IAAI+F,SAAS,YAAY1B,yBAAM,EAAE;QAC/B0B,SAAS,GAAG1B,yBAAM,CAACrC,IAAI,CAAC+D,SAAS,CAAC;MACpC;MACA,IAAIC,UAAU,YAAY3B,yBAAM,EAAE;QAChC2B,UAAU,GAAG3B,yBAAM,CAACrC,IAAI,CAACgE,UAAU,CAAC;MACtC;MACA,OAAO,CAACF,GAAG,EAAEC,SAAS,EAAEC,UAAU,CAAC;;IAErC;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;;IAEA;;IAEA;IACA;;IAEA;IACA;IACA;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;;IAEA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;EACF;EACA,MAAMF,GAAG,GAAG,IAAIrG,KAAK,CAAE;AACzB,mCAAmCkE,IAAK;AACxC;AACA;AACA,KAAK,CAAC;EACJ,OAAO,CAACmC,GAAG,EAAE5B,SAAS,EAAEA,SAAS,CAAC;AACpC;AAEO,MAAMwB,eAAe,GAAGA,CAC7B/B,IAAiB,EACjBrE,OAA+B,EAC/B+C,QAAiC,KACxB;EACT,IAAA2E,uBAAgB,EAAC3E,QAAQ,CAAC;EAC1B+C,uBAAuB,CAAC,IAAI,EAAEzB,IAAI,EAAErE,OAAO,EAAE+C,QAAQ,CAAC;AACxD,CAAC;;AAED;AACA;AAAAhE,OAAA,CAAAqH,eAAA,GAAAA,eAAA;AACO,MAAMuB,sBAAsB,GAAGA,CACpCtD,IAAiB,EACjBrE,OAA+B,KACW;EAC1C,OAAO,IAAI4H,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC1B,eAAe,CAAC/B,IAAI,EAAErE,OAAO,EAAE,CAACwG,GAAG,EAAEC,SAAS,EAAEC,UAAU,KAAK;MAC7D,IAAIF,GAAG,EAAE;QACPsB,MAAM,CAAC,CAACtB,GAAG,EAAE5B,SAAS,CAAC,CAAC;MAC1B,CAAC,MAAM;QACLiD,OAAO,CAAC,CAACjD,SAAS,EAAE;UAAE6B,SAAS;UAAEC;QAAW,CAAC,CAAC,CAAC;MACjD;IACF,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC;;AAED;AAAA3H,OAAA,CAAA4I,sBAAA,GAAAA,sBAAA;AAMO,SAASf,mBAAmBA,CACjCvC,IAAiB,EACjBrE,OAAgC,EACjB;EACf,MAAM,CAAC+H,CAAC,EAAEtB,SAAS,EAAEC,UAAU,CAAC,GAAGZ,uBAAuB,CACxD,KAAK,EACLzB,IAAI,EACJrE,OAAO,EACP4E,SACF,CAAE;EAEF,OAAO;IACL6B,SAAS;IACTC;EACF,CAAC;AACH","ignoreList":[]}
1
+ {"version":3,"names":["_NativeQuickCrypto","require","_readableStream","_interopRequireDefault","_Utils","_Cipher","_string_decoder","_reactNativeBuffer","_safeBuffer","_constants","_keys","e","__esModule","default","ECCurve","exports","global","process","nextTick","setImmediate","createInternalCipher","NativeQuickCrypto","createCipher","createInternalDecipher","createDecipher","_publicEncrypt","publicEncrypt","_publicDecrypt","publicDecrypt","_privateDecrypt","privateDecrypt","getUIntOption","options","key","value","Error","normalizeEncoding","enc","retried","toLowerCase","validateEncoding","data","encoding","normalizedEncoding","length","getDecoder","decoder","StringDecoder","CipherCommon","Stream","Transform","constructor","cipherType","cipherKey","isCipher","iv","cipherKeyBuffer","binaryLikeToArrayBuffer","authTagLength","args","cipher_type","cipher_key","auth_tag_len","internal","update","inputEncoding","outputEncoding","defaultEncoding","getDefaultEncoding","ArrayBuffer","isView","ret","write","SBuffer","from","final","end","_transform","chunk","callback","push","_flush","setAutoPadding","autoPadding","setAAD","buffer","plaintextLength","getAuthTag","Buffer","setAuthTag","tag","Cipher","Decipher","algorithm","password","undefined","createDecipheriv","createCipheriv","rsaFunctionFor","method","defaultPadding","keyType","format","type","passphrase","preparePrivateKey","preparePublicOrPrivateKey","padding","oaepHash","oaepLabel","validateString","rawRes","constants","RSA_PKCS1_OAEP_PADDING","RSA_PKCS1_PADDING","parseKeyEncoding","kEmptyObject","publicKeyEncoding","privateKeyEncoding","publicFormat","publicType","parsePublicKeyEncoding","privateFormat","privateType","cipher","parsePrivateKeyEncoding","internalGenerateKeyPair","isAsync","internalRsaGenerateKeyPair","internalEcGenerateKeyPair","err","validateObject","modulusLength","validateUint32","publicExponent","generateKeyPair","KeyVariant","RSA_SSA_PKCS1_v1_5","then","publicKey","privateKey","catch","generateKeyPairSync","pub","priv","hash","mgf1Hash","hashAlgorithm","mgf1HashAlgorithm","saltLength","validateInt32","RSA_PSS","_type","namedCurve","paramEncodingFlag","OPENSSL_EC_NAMED_CURVE","paramEncoding","OPENSSL_EC_EXPLICIT_CURVE","EC","validateFunction","generateKeyPairPromise","Promise","resolve","reject","_"],"sourceRoot":"../../src","sources":["Cipher.ts"],"mappings":"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","ignoreList":[]}
@@ -9,7 +9,7 @@ var _NativeQuickCrypto = require("./NativeQuickCrypto/NativeQuickCrypto");
9
9
  var _Utils = require("./Utils");
10
10
  var _readableStream = _interopRequireDefault(require("readable-stream"));
11
11
  var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
12
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
13
13
  global.process.nextTick = setImmediate;
14
14
  const createInternalHash = _NativeQuickCrypto.NativeQuickCrypto.createHash;
15
15
  function createHash(algorithm, options) {
@@ -88,12 +88,15 @@ const asyncDigest = async (algorithm, data) => {
88
88
  case 'SHA-384':
89
89
  // Fall through
90
90
  case 'SHA-512':
91
- const normalizedHashName = (0, _Utils.normalizeHashName)(algorithm.name);
92
- const hash = new Hash(normalizedHashName);
93
- hash.update((0, _Utils.bufferLikeToArrayBuffer)(data));
94
- return hash.digest();
91
+ return internalDigest(algorithm, data);
95
92
  }
96
93
  throw (0, _Utils.lazyDOMException)(`Unrecognized algorithm name: ${algorithm.name}`, 'NotSupportedError');
97
94
  };
98
95
  exports.asyncDigest = asyncDigest;
96
+ const internalDigest = (algorithm, data) => {
97
+ const normalizedHashName = (0, _Utils.normalizeHashName)(algorithm.name);
98
+ const hash = new Hash(normalizedHashName);
99
+ hash.update((0, _Utils.bufferLikeToArrayBuffer)(data));
100
+ return hash.digest();
101
+ };
99
102
  //# sourceMappingURL=Hash.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_NativeQuickCrypto","require","_Utils","_readableStream","_interopRequireDefault","_reactNativeBuffer","obj","__esModule","default","global","process","nextTick","setImmediate","createInternalHash","NativeQuickCrypto","createHash","algorithm","options","Hash","Stream","Transform","constructor","arg","undefined","internalHash","copy","outputLength","update","data","inputEncoding","ArrayBuffer","buffer","Buffer","from","toArrayBuffer","_transform","chunk","encoding","callback","_flush","push","digest","result","toString","asyncDigest","validateMaxBufferLength","name","normalizedHashName","normalizeHashName","hash","bufferLikeToArrayBuffer","lazyDOMException","exports"],"sourceRoot":"../../src","sources":["Hash.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_NativeQuickCrypto","require","_Utils","_readableStream","_interopRequireDefault","_reactNativeBuffer","e","__esModule","default","global","process","nextTick","setImmediate","createInternalHash","NativeQuickCrypto","createHash","algorithm","options","Hash","Stream","Transform","constructor","arg","undefined","internalHash","copy","outputLength","update","data","inputEncoding","ArrayBuffer","buffer","Buffer","from","toArrayBuffer","_transform","chunk","encoding","callback","_flush","push","digest","result","toString","asyncDigest","validateMaxBufferLength","name","internalDigest","lazyDOMException","exports","normalizedHashName","normalizeHashName","hash","bufferLikeToArrayBuffer"],"sourceRoot":"../../src","sources":["Hash.ts"],"mappings":"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","ignoreList":[]}
@@ -76,11 +76,17 @@ const kHashNames = {
76
76
  }
77
77
  function normalizeHashName(algo, context = HashContext.Node) {
78
78
  if (typeof algo !== 'undefined') {
79
+ if (typeof algo === 'object') {
80
+ algo = algo.name;
81
+ }
79
82
  const normAlgo = algo.toString().toLowerCase();
80
83
  try {
81
84
  const alias = kHashNames[normAlgo][context];
82
85
  if (alias) return alias;
83
- } catch (_e) {}
86
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
87
+ } catch (_e) {
88
+ // ignore
89
+ }
84
90
  }
85
91
  throw new Error(`Invalid Hash Algorithm: ${algo}`);
86
92
  }
@@ -1 +1 @@
1
- {"version":3,"names":["HashContext","exports","kHashNames","sha1","Node","WebCrypto","JwkRsa","JwkRsaPss","JwkRsaOaep","JwkHmac","sha224","sha256","sha384","sha512","ripemd160","keys","Object","n","length","contexts","i","alias","toLowerCase","undefined","normalizeHashName","algo","context","normAlgo","toString","_e","Error"],"sourceRoot":"../../src","sources":["Hashnames.ts"],"mappings":";;;;;;;IAEYA,WAAW,GAAAC,OAAA,CAAAD,WAAA,0BAAXA,WAAW;EAAXA,WAAW,CAAXA,WAAW;EAAXA,WAAW,CAAXA,WAAW;EAAXA,WAAW,CAAXA,WAAW;EAAXA,WAAW,CAAXA,WAAW;EAAXA,WAAW,CAAXA,WAAW;EAAXA,WAAW,CAAXA,WAAW;EAAA,OAAXA,WAAW;AAAA,OASvB;AACA;AACA;AACA;AAMA,MAAME,UAAqB,GAAG;EAC5BC,IAAI,EAAE;IACJ,CAACH,WAAW,CAACI,IAAI,GAAG,MAAM;IAC1B,CAACJ,WAAW,CAACK,SAAS,GAAG,OAAO;IAChC,CAACL,WAAW,CAACM,MAAM,GAAG,KAAK;IAC3B,CAACN,WAAW,CAACO,SAAS,GAAG,KAAK;IAC9B,CAACP,WAAW,CAACQ,UAAU,GAAG,UAAU;IACpC,CAACR,WAAW,CAACS,OAAO,GAAG;EACzB,CAAC;EACDC,MAAM,EAAE;IACN,CAACV,WAAW,CAACI,IAAI,GAAG,QAAQ;IAC5B,CAACJ,WAAW,CAACK,SAAS,GAAG,SAAS;IAClC,CAACL,WAAW,CAACM,MAAM,GAAG,OAAO;IAC7B,CAACN,WAAW,CAACO,SAAS,GAAG,OAAO;IAChC,CAACP,WAAW,CAACQ,UAAU,GAAG,cAAc;IACxC,CAACR,WAAW,CAACS,OAAO,GAAG;EACzB,CAAC;EACDE,MAAM,EAAE;IACN,CAACX,WAAW,CAACI,IAAI,GAAG,QAAQ;IAC5B,CAACJ,WAAW,CAACK,SAAS,GAAG,SAAS;IAClC,CAACL,WAAW,CAACM,MAAM,GAAG,OAAO;IAC7B,CAACN,WAAW,CAACO,SAAS,GAAG,OAAO;IAChC,CAACP,WAAW,CAACQ,UAAU,GAAG,cAAc;IACxC,CAACR,WAAW,CAACS,OAAO,GAAG;EACzB,CAAC;EACDG,MAAM,EAAE;IACN,CAACZ,WAAW,CAACI,IAAI,GAAG,QAAQ;IAC5B,CAACJ,WAAW,CAACK,SAAS,GAAG,SAAS;IAClC,CAACL,WAAW,CAACM,MAAM,GAAG,OAAO;IAC7B,CAACN,WAAW,CAACO,SAAS,GAAG,OAAO;IAChC,CAACP,WAAW,CAACQ,UAAU,GAAG,cAAc;IACxC,CAACR,WAAW,CAACS,OAAO,GAAG;EACzB,CAAC;EACDI,MAAM,EAAE;IACN,CAACb,WAAW,CAACI,IAAI,GAAG,QAAQ;IAC5B,CAACJ,WAAW,CAACK,SAAS,GAAG,SAAS;IAClC,CAACL,WAAW,CAACM,MAAM,GAAG,OAAO;IAC7B,CAACN,WAAW,CAACO,SAAS,GAAG,OAAO;IAChC,CAACP,WAAW,CAACQ,UAAU,GAAG,cAAc;IACxC,CAACR,WAAW,CAACS,OAAO,GAAG;EACzB,CAAC;EACDK,SAAS,EAAE;IACT,CAACd,WAAW,CAACI,IAAI,GAAG,WAAW;IAC/B,CAACJ,WAAW,CAACK,SAAS,GAAG;EAC3B;AACF,CAAC;AAED;EACE;EACA,MAAMU,IAAc,GAAGC,MAAM,CAACD,IAAI,CAACb,UAAU,CAAC;EAC9C,KAAK,IAAIe,CAAS,GAAG,CAAC,EAAEA,CAAC,GAAGF,IAAI,CAACG,MAAM,EAAED,CAAC,EAAE,EAAE;IAC5C,MAAME,QAAkB,GAAGH,MAAM,CAACD,IAAI,CAACb,UAAU,CAACa,IAAI,CAACE,CAAC,CAAC,CAAG,CAAC;IAC7D,KAAK,IAAIG,CAAS,GAAG,CAAC,EAAEA,CAAC,GAAGD,QAAQ,CAACD,MAAM,EAAEE,CAAC,EAAE,EAAE;MAChD,MAAMC,KAAa,GAAGnB,UAAU,CAACa,IAAI,CAACE,CAAC,CAAC,CAAE,CAAEE,QAAQ,CAACC,CAAC,CAAC,CAAE,CAAEE,WAAW,CAAC,CAAC;MACxE,IAAIpB,UAAU,CAACmB,KAAK,CAAC,KAAKE,SAAS,EACjCrB,UAAU,CAACmB,KAAK,CAAC,GAAGnB,UAAU,CAACa,IAAI,CAACE,CAAC,CAAC,CAAG;IAC7C;EACF;AACF;AAEO,SAASO,iBAAiBA,CAC/BC,IAAwC,EACxCC,OAAoB,GAAG1B,WAAW,CAACI,IAAI,EACxB;EACf,IAAI,OAAOqB,IAAI,KAAK,WAAW,EAAE;IAC/B,MAAME,QAAQ,GAAGF,IAAI,CAACG,QAAQ,CAAC,CAAC,CAACN,WAAW,CAAC,CAAC;IAC9C,IAAI;MACF,MAAMD,KAAK,GAAGnB,UAAU,CAACyB,QAAQ,CAAC,CAAED,OAAO,CAAkB;MAC7D,IAAIL,KAAK,EAAE,OAAOA,KAAK;IACzB,CAAC,CAAC,OAAOQ,EAAE,EAAE,CAAC;EAChB;EACA,MAAM,IAAIC,KAAK,CAAE,2BAA0BL,IAAK,EAAC,CAAC;AACpD","ignoreList":[]}
1
+ {"version":3,"names":["HashContext","exports","kHashNames","sha1","Node","WebCrypto","JwkRsa","JwkRsaPss","JwkRsaOaep","JwkHmac","sha224","sha256","sha384","sha512","ripemd160","keys","Object","n","length","contexts","i","alias","toLowerCase","undefined","normalizeHashName","algo","context","name","normAlgo","toString","_e","Error"],"sourceRoot":"../../src","sources":["Hashnames.ts"],"mappings":"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","ignoreList":[]}
@@ -8,16 +8,18 @@ var _NativeQuickCrypto = require("./NativeQuickCrypto/NativeQuickCrypto");
8
8
  var _Utils = require("./Utils");
9
9
  var _readableStream = _interopRequireDefault(require("readable-stream"));
10
10
  var _reactNativeBuffer = require("@craftzdog/react-native-buffer");
11
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
12
12
  const createInternalHmac = _NativeQuickCrypto.NativeQuickCrypto.createHmac;
13
13
  function createHmac(algorithm, key, options) {
14
14
  return new Hmac(algorithm, key, options);
15
15
  }
16
16
  class Hmac extends _readableStream.default.Transform {
17
17
  isFinalized = false;
18
- constructor(algorithm, key, _options) {
18
+ constructor(algorithm, key,
19
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
20
+ _options) {
19
21
  super();
20
- let keyAsString = (0, _Utils.binaryLikeToArrayBuffer)(key);
22
+ const keyAsString = (0, _Utils.binaryLikeToArrayBuffer)(key);
21
23
  if (keyAsString === undefined) {
22
24
  throw 'Wrong key type';
23
25
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_NativeQuickCrypto","require","_Utils","_readableStream","_interopRequireDefault","_reactNativeBuffer","obj","__esModule","default","createInternalHmac","NativeQuickCrypto","createHmac","algorithm","key","options","Hmac","Stream","Transform","isFinalized","constructor","_options","keyAsString","binaryLikeToArrayBuffer","undefined","internalHmac","update","data","inputEncoding","ArrayBuffer","buffer","Buffer","from","toArrayBuffer","_transform","chunk","encoding","callback","_flush","push","digest","result","toString"],"sourceRoot":"../../src","sources":["Hmac.ts"],"mappings":";;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAMA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA;AAAwD,SAAAG,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAExD,MAAMG,kBAAkB,GAAGC,oCAAiB,CAACC,UAAU;AAEhD,SAASA,UAAUA,CACxBC,SAAiB,EACjBC,GAAe,EACfC,OAAiC,EACjC;EACA,OAAO,IAAIC,IAAI,CAACH,SAAS,EAAEC,GAAG,EAAEC,OAAO,CAAC;AAC1C;AAEA,MAAMC,IAAI,SAASC,uBAAM,CAACC,SAAS,CAAC;EAE1BC,WAAW,GAAY,KAAK;EAEpCC,WAAWA,CACTP,SAAiB,EACjBC,GAAe,EACfO,QAAkC,EAClC;IACA,KAAK,CAAC,CAAC;IACP,IAAIC,WAAW,GAAG,IAAAC,8BAAuB,EAACT,GAAG,CAAC;IAE9C,IAAIQ,WAAW,KAAKE,SAAS,EAAE;MAC7B,MAAM,gBAAgB;IACxB;IAEA,IAAI,CAACC,YAAY,GAAGf,kBAAkB,CACpCG,SAAS,EACTS,WACF,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEI,MAAMA,CAACC,IAAyB,EAAEC,aAAwB,EAAQ;IAChE,IAAID,IAAI,YAAYE,WAAW,EAAE;MAC/B,IAAI,CAACJ,YAAY,CAACC,MAAM,CAACC,IAAI,CAAC;MAC9B,OAAO,IAAI;IACb;IACA,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;MAC5B,MAAMG,MAAM,GAAGC,yBAAM,CAACC,IAAI,CAACL,IAAI,EAAEC,aAAa,CAAC;MAC/C,IAAI,CAACH,YAAY,CAACC,MAAM,CAAC,IAAAO,oBAAa,EAACH,MAAM,CAAC,CAAC;MAC/C,OAAO,IAAI;IACb;IAEA,IAAI,CAACL,YAAY,CAACC,MAAM,CAAC,IAAAH,8BAAuB,EAACI,IAAI,CAAC,CAAC;IACvD,OAAO,IAAI;EACb;EAEAO,UAAUA,CACRC,KAA0B,EAC1BC,QAAkB,EAClBC,QAAoB,EACpB;IACA,IAAI,CAACX,MAAM,CAACS,KAAK,EAAEC,QAAQ,CAAC;IAC5BC,QAAQ,CAAC,CAAC;EACZ;EAEAC,MAAMA,CAACD,QAAoB,EAAE;IAC3B,IAAI,CAACE,IAAI,CAAC,IAAI,CAACC,MAAM,CAAC,CAAC,CAAC;IACxBH,QAAQ,CAAC,CAAC;EACZ;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAIEG,MAAMA,CAACJ,QAA8B,EAAmB;IACtD,MAAMK,MAAmB,GAAG,IAAI,CAACtB,WAAW,GACxC,IAAIU,WAAW,CAAC,CAAC,CAAC,GAClB,IAAI,CAACJ,YAAY,CAACe,MAAM,CAAC,CAAC;IAC9B,IAAI,CAACrB,WAAW,GAAG,IAAI;IACvB,IAAIiB,QAAQ,IAAIA,QAAQ,KAAK,QAAQ,EAAE;MACrC,OAAOL,yBAAM,CAACC,IAAI,CAACS,MAAM,CAAC,CAACC,QAAQ,CAACN,QAAQ,CAAC;IAC/C;IACA,OAAOL,yBAAM,CAACC,IAAI,CAACS,MAAM,CAAC;EAC5B;AACF","ignoreList":[]}
1
+ {"version":3,"names":["_NativeQuickCrypto","require","_Utils","_readableStream","_interopRequireDefault","_reactNativeBuffer","e","__esModule","default","createInternalHmac","NativeQuickCrypto","createHmac","algorithm","key","options","Hmac","Stream","Transform","isFinalized","constructor","_options","keyAsString","binaryLikeToArrayBuffer","undefined","internalHmac","update","data","inputEncoding","ArrayBuffer","buffer","Buffer","from","toArrayBuffer","_transform","chunk","encoding","callback","_flush","push","digest","result","toString"],"sourceRoot":"../../src","sources":["Hmac.ts"],"mappings":";;;;;;AAAA,IAAAA,kBAAA,GAAAC,OAAA;AAEA,IAAAC,MAAA,GAAAD,OAAA;AAMA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,kBAAA,GAAAJ,OAAA;AAAwD,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAExD,MAAMG,kBAAkB,GAAGC,oCAAiB,CAACC,UAAU;AAEhD,SAASA,UAAUA,CACxBC,SAAiB,EACjBC,GAAe,EACfC,OAAiC,EACjC;EACA,OAAO,IAAIC,IAAI,CAACH,SAAS,EAAEC,GAAG,EAAEC,OAAO,CAAC;AAC1C;AAEA,MAAMC,IAAI,SAASC,uBAAM,CAACC,SAAS,CAAC;EAE1BC,WAAW,GAAY,KAAK;EAEpCC,WAAWA,CACTP,SAAiB,EACjBC,GAAe;EACf;EACAO,QAAkC,EAClC;IACA,KAAK,CAAC,CAAC;IACP,MAAMC,WAAW,GAAG,IAAAC,8BAAuB,EAACT,GAAG,CAAC;IAEhD,IAAIQ,WAAW,KAAKE,SAAS,EAAE;MAC7B,MAAM,gBAAgB;IACxB;IAEA,IAAI,CAACC,YAAY,GAAGf,kBAAkB,CACpCG,SAAS,EACTS,WACF,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACEI,MAAMA,CAACC,IAAyB,EAAEC,aAAwB,EAAQ;IAChE,IAAID,IAAI,YAAYE,WAAW,EAAE;MAC/B,IAAI,CAACJ,YAAY,CAACC,MAAM,CAACC,IAAI,CAAC;MAC9B,OAAO,IAAI;IACb;IACA,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE;MAC5B,MAAMG,MAAM,GAAGC,yBAAM,CAACC,IAAI,CAACL,IAAI,EAAEC,aAAa,CAAC;MAC/C,IAAI,CAACH,YAAY,CAACC,MAAM,CAAC,IAAAO,oBAAa,EAACH,MAAM,CAAC,CAAC;MAC/C,OAAO,IAAI;IACb;IAEA,IAAI,CAACL,YAAY,CAACC,MAAM,CAAC,IAAAH,8BAAuB,EAACI,IAAI,CAAC,CAAC;IACvD,OAAO,IAAI;EACb;EAEAO,UAAUA,CACRC,KAA0B,EAC1BC,QAAkB,EAClBC,QAAoB,EACpB;IACA,IAAI,CAACX,MAAM,CAACS,KAAK,EAAEC,QAAQ,CAAC;IAC5BC,QAAQ,CAAC,CAAC;EACZ;EAEAC,MAAMA,CAACD,QAAoB,EAAE;IAC3B,IAAI,CAACE,IAAI,CAAC,IAAI,CAACC,MAAM,CAAC,CAAC,CAAC;IACxBH,QAAQ,CAAC,CAAC;EACZ;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;EAIEG,MAAMA,CAACJ,QAA8B,EAAmB;IACtD,MAAMK,MAAmB,GAAG,IAAI,CAACtB,WAAW,GACxC,IAAIU,WAAW,CAAC,CAAC,CAAC,GAClB,IAAI,CAACJ,YAAY,CAACe,MAAM,CAAC,CAAC;IAC9B,IAAI,CAACrB,WAAW,GAAG,IAAI;IACvB,IAAIiB,QAAQ,IAAIA,QAAQ,KAAK,QAAQ,EAAE;MACrC,OAAOL,yBAAM,CAACC,IAAI,CAACS,MAAM,CAAC,CAACC,QAAQ,CAACN,QAAQ,CAAC;IAC/C;IACA,OAAOL,yBAAM,CAACC,IAAI,CAACS,MAAM,CAAC;EAC5B;AACF","ignoreList":[]}
@@ -19,12 +19,12 @@ const KeyVariantLookup = exports.KeyVariantLookup = {
19
19
  'RSASSA-PKCS1-v1_5': KeyVariant.RSA_SSA_PKCS1_v1_5,
20
20
  'RSA-PSS': KeyVariant.RSA_PSS,
21
21
  'RSA-OAEP': KeyVariant.RSA_OAEP,
22
- 'ECDSA': KeyVariant.DSA,
23
- 'ECDH': KeyVariant.EC,
24
- 'Ed25519': KeyVariant.NID,
25
- 'Ed448': KeyVariant.NID,
26
- 'X25519': KeyVariant.NID,
27
- 'X448': KeyVariant.NID,
28
- 'DH': KeyVariant.DH
22
+ ECDSA: KeyVariant.DSA,
23
+ ECDH: KeyVariant.EC,
24
+ Ed25519: KeyVariant.NID,
25
+ Ed448: KeyVariant.NID,
26
+ X25519: KeyVariant.NID,
27
+ X448: KeyVariant.NID,
28
+ DH: KeyVariant.DH
29
29
  };
30
30
  //# sourceMappingURL=Cipher.js.map