react-native-quick-crypto 0.7.2 → 1.0.0-beta.1

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 (304) hide show
  1. package/QuickCrypto.podspec +34 -0
  2. package/android/CMakeLists.txt +32 -64
  3. package/android/build.gradle +52 -125
  4. package/android/gradle.properties +3 -3
  5. package/android/src/main/cpp/cpp-adapter.cpp +9 -54
  6. package/android/src/main/java/com/margelo/nitro/quickcrypto/QuickCryptoPackage.java +38 -0
  7. package/ios/QuickCryptoOnLoad.mm +19 -0
  8. package/lib/commonjs/index.js +39 -39
  9. package/lib/commonjs/index.js.map +1 -1
  10. package/lib/commonjs/package.json +1 -0
  11. package/lib/commonjs/random.js +26 -12
  12. package/lib/commonjs/random.js.map +1 -1
  13. package/lib/commonjs/{NativeQuickCrypto/rsa.js → specs/random.nitro.js} +1 -1
  14. package/lib/commonjs/{NativeQuickCrypto/aes.js.map → specs/random.nitro.js.map} +1 -1
  15. package/lib/commonjs/utils/conversion.js +22 -0
  16. package/lib/commonjs/utils/conversion.js.map +1 -0
  17. package/lib/commonjs/utils/index.js +12 -0
  18. package/lib/commonjs/utils/index.js.map +1 -0
  19. package/lib/commonjs/utils/types.js +2 -0
  20. package/lib/{module/NativeQuickCrypto/aes.js.map → commonjs/utils/types.js.map} +1 -1
  21. package/lib/module/index.js +40 -38
  22. package/lib/module/index.js.map +1 -1
  23. package/lib/module/package.json +1 -0
  24. package/lib/module/random.js +28 -12
  25. package/lib/module/random.js.map +1 -1
  26. package/lib/module/specs/random.nitro.js +4 -0
  27. package/lib/module/{NativeQuickCrypto/rsa.js.map → specs/random.nitro.js.map} +1 -1
  28. package/lib/module/utils/conversion.js +16 -0
  29. package/lib/module/utils/conversion.js.map +1 -0
  30. package/lib/module/utils/index.js +8 -0
  31. package/lib/module/utils/index.js.map +1 -0
  32. package/lib/module/utils/types.js +2 -0
  33. package/lib/{commonjs/NativeQuickCrypto/rsa.js.map → module/utils/types.js.map} +1 -1
  34. package/lib/tsconfig.tsbuildinfo +1 -0
  35. package/lib/typescript/index.d.ts +10 -141
  36. package/lib/typescript/index.d.ts.map +1 -1
  37. package/lib/typescript/random.d.ts +4 -5
  38. package/lib/typescript/random.d.ts.map +1 -1
  39. package/lib/typescript/specs/random.nitro.d.ts +9 -0
  40. package/lib/typescript/specs/random.nitro.d.ts.map +1 -0
  41. package/lib/typescript/utils/conversion.d.ts +4 -0
  42. package/lib/typescript/utils/conversion.d.ts.map +1 -0
  43. package/lib/typescript/utils/index.d.ts +6 -0
  44. package/lib/typescript/utils/index.d.ts.map +1 -0
  45. package/lib/typescript/utils/types.d.ts +5 -0
  46. package/lib/typescript/utils/types.d.ts.map +1 -0
  47. package/package.json +58 -108
  48. package/src/index.ts +38 -48
  49. package/src/random.ts +51 -48
  50. package/src/specs/random.nitro.ts +14 -0
  51. package/src/utils/conversion.ts +16 -0
  52. package/src/utils/index.ts +6 -0
  53. package/src/utils/types.ts +15 -0
  54. package/LICENSE +0 -27
  55. package/README.md +0 -203
  56. package/android/src/main/java/com/margelo/quickcrypto/QuickCryptoModule.java +0 -70
  57. package/android/src/main/java/com/margelo/quickcrypto/QuickCryptoPackage.java +0 -25
  58. package/cpp/Cipher/MGLCipherHostObject.cpp +0 -663
  59. package/cpp/Cipher/MGLCipherHostObject.h +0 -90
  60. package/cpp/Cipher/MGLCreateCipherInstaller.cpp +0 -75
  61. package/cpp/Cipher/MGLCreateCipherInstaller.h +0 -22
  62. package/cpp/Cipher/MGLCreateDecipherInstaller.cpp +0 -77
  63. package/cpp/Cipher/MGLCreateDecipherInstaller.h +0 -17
  64. package/cpp/Cipher/MGLGenerateKeyPairInstaller.cpp +0 -134
  65. package/cpp/Cipher/MGLGenerateKeyPairInstaller.h +0 -35
  66. package/cpp/Cipher/MGLGenerateKeyPairSyncInstaller.cpp +0 -63
  67. package/cpp/Cipher/MGLGenerateKeyPairSyncInstaller.h +0 -37
  68. package/cpp/Cipher/MGLPublicCipher.h +0 -120
  69. package/cpp/Cipher/MGLPublicCipherInstaller.h +0 -107
  70. package/cpp/Cipher/MGLRsa.cpp +0 -573
  71. package/cpp/Cipher/MGLRsa.h +0 -109
  72. package/cpp/HMAC/MGLHmacHostObject.cpp +0 -95
  73. package/cpp/HMAC/MGLHmacHostObject.h +0 -39
  74. package/cpp/HMAC/MGLHmacInstaller.cpp +0 -43
  75. package/cpp/HMAC/MGLHmacInstaller.h +0 -20
  76. package/cpp/Hash/MGLHashHostObject.cpp +0 -147
  77. package/cpp/Hash/MGLHashHostObject.h +0 -53
  78. package/cpp/Hash/MGLHashInstaller.cpp +0 -44
  79. package/cpp/Hash/MGLHashInstaller.h +0 -20
  80. package/cpp/JSIUtils/MGLJSIMacros.h +0 -110
  81. package/cpp/JSIUtils/MGLJSIUtils.h +0 -41
  82. package/cpp/JSIUtils/MGLSmartHostObject.cpp +0 -43
  83. package/cpp/JSIUtils/MGLSmartHostObject.h +0 -46
  84. package/cpp/JSIUtils/MGLThreadAwareHostObject.cpp +0 -24
  85. package/cpp/JSIUtils/MGLThreadAwareHostObject.h +0 -43
  86. package/cpp/JSIUtils/MGLTypedArray.cpp +0 -325
  87. package/cpp/JSIUtils/MGLTypedArray.h +0 -160
  88. package/cpp/MGLKeys.cpp +0 -1426
  89. package/cpp/MGLKeys.h +0 -203
  90. package/cpp/MGLQuickCryptoHostObject.cpp +0 -124
  91. package/cpp/MGLQuickCryptoHostObject.h +0 -30
  92. package/cpp/Random/MGLRandomHostObject.cpp +0 -96
  93. package/cpp/Random/MGLRandomHostObject.h +0 -27
  94. package/cpp/Sig/MGLSignHostObjects.cpp +0 -757
  95. package/cpp/Sig/MGLSignHostObjects.h +0 -128
  96. package/cpp/Sig/MGLSignInstaller.cpp +0 -24
  97. package/cpp/Sig/MGLSignInstaller.h +0 -29
  98. package/cpp/Sig/MGLVerifyInstaller.cpp +0 -24
  99. package/cpp/Sig/MGLVerifyInstaller.h +0 -22
  100. package/cpp/Utils/MGLDispatchQueue.cpp +0 -75
  101. package/cpp/Utils/MGLDispatchQueue.h +0 -55
  102. package/cpp/Utils/MGLUtils.cpp +0 -295
  103. package/cpp/Utils/MGLUtils.h +0 -358
  104. package/cpp/Utils/base64.h +0 -320
  105. package/cpp/Utils/logs.h +0 -38
  106. package/cpp/Utils/node.h +0 -13
  107. package/cpp/fastpbkdf2/MGLPbkdf2HostObject.cpp +0 -164
  108. package/cpp/fastpbkdf2/MGLPbkdf2HostObject.h +0 -29
  109. package/cpp/fastpbkdf2/fastpbkdf2.c +0 -352
  110. package/cpp/fastpbkdf2/fastpbkdf2.h +0 -68
  111. package/cpp/webcrypto/MGLWebCrypto.cpp +0 -125
  112. package/cpp/webcrypto/MGLWebCrypto.h +0 -32
  113. package/cpp/webcrypto/crypto_aes.cpp +0 -516
  114. package/cpp/webcrypto/crypto_aes.h +0 -79
  115. package/cpp/webcrypto/crypto_ec.cpp +0 -424
  116. package/cpp/webcrypto/crypto_ec.h +0 -78
  117. package/cpp/webcrypto/crypto_keygen.cpp +0 -86
  118. package/cpp/webcrypto/crypto_keygen.h +0 -38
  119. package/ios/QuickCrypto.xcodeproj/project.pbxproj +0 -274
  120. package/ios/QuickCrypto.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  121. package/ios/QuickCrypto.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +0 -8
  122. package/ios/QuickCrypto.xcodeproj/project.xcworkspace/xcuserdata/brad.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  123. package/ios/QuickCrypto.xcodeproj/xcuserdata/brad.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  124. package/ios/QuickCryptoModule.h +0 -5
  125. package/ios/QuickCryptoModule.mm +0 -42
  126. package/lib/commonjs/Cipher.js +0 -502
  127. package/lib/commonjs/Cipher.js.map +0 -1
  128. package/lib/commonjs/Hash.js +0 -99
  129. package/lib/commonjs/Hash.js.map +0 -1
  130. package/lib/commonjs/Hashnames.js +0 -87
  131. package/lib/commonjs/Hashnames.js.map +0 -1
  132. package/lib/commonjs/Hmac.js +0 -79
  133. package/lib/commonjs/Hmac.js.map +0 -1
  134. package/lib/commonjs/NativeQuickCrypto/Cipher.js +0 -30
  135. package/lib/commonjs/NativeQuickCrypto/Cipher.js.map +0 -1
  136. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js +0 -52
  137. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js.map +0 -1
  138. package/lib/commonjs/NativeQuickCrypto/aes.js +0 -6
  139. package/lib/commonjs/NativeQuickCrypto/hash.js +0 -2
  140. package/lib/commonjs/NativeQuickCrypto/hash.js.map +0 -1
  141. package/lib/commonjs/NativeQuickCrypto/hmac.js +0 -2
  142. package/lib/commonjs/NativeQuickCrypto/hmac.js.map +0 -1
  143. package/lib/commonjs/NativeQuickCrypto/keygen.js +0 -6
  144. package/lib/commonjs/NativeQuickCrypto/keygen.js.map +0 -1
  145. package/lib/commonjs/NativeQuickCrypto/pbkdf2.js +0 -2
  146. package/lib/commonjs/NativeQuickCrypto/pbkdf2.js.map +0 -1
  147. package/lib/commonjs/NativeQuickCrypto/random.js +0 -2
  148. package/lib/commonjs/NativeQuickCrypto/random.js.map +0 -1
  149. package/lib/commonjs/NativeQuickCrypto/sig.js +0 -19
  150. package/lib/commonjs/NativeQuickCrypto/sig.js.map +0 -1
  151. package/lib/commonjs/NativeQuickCrypto/webcrypto.js +0 -6
  152. package/lib/commonjs/NativeQuickCrypto/webcrypto.js.map +0 -1
  153. package/lib/commonjs/Utils.js +0 -608
  154. package/lib/commonjs/Utils.js.map +0 -1
  155. package/lib/commonjs/aes.js +0 -281
  156. package/lib/commonjs/aes.js.map +0 -1
  157. package/lib/commonjs/constants.js +0 -85
  158. package/lib/commonjs/constants.js.map +0 -1
  159. package/lib/commonjs/ec.js +0 -276
  160. package/lib/commonjs/ec.js.map +0 -1
  161. package/lib/commonjs/keygen.js +0 -56
  162. package/lib/commonjs/keygen.js.map +0 -1
  163. package/lib/commonjs/keys.js +0 -492
  164. package/lib/commonjs/keys.js.map +0 -1
  165. package/lib/commonjs/pbkdf2.js +0 -90
  166. package/lib/commonjs/pbkdf2.js.map +0 -1
  167. package/lib/commonjs/rsa.js +0 -248
  168. package/lib/commonjs/rsa.js.map +0 -1
  169. package/lib/commonjs/sig.js +0 -129
  170. package/lib/commonjs/sig.js.map +0 -1
  171. package/lib/commonjs/subtle.js +0 -448
  172. package/lib/commonjs/subtle.js.map +0 -1
  173. package/lib/commonjs/webcrypto.js +0 -14
  174. package/lib/commonjs/webcrypto.js.map +0 -1
  175. package/lib/module/Cipher.js +0 -489
  176. package/lib/module/Cipher.js.map +0 -1
  177. package/lib/module/Hash.js +0 -91
  178. package/lib/module/Hash.js.map +0 -1
  179. package/lib/module/Hashnames.js +0 -83
  180. package/lib/module/Hashnames.js.map +0 -1
  181. package/lib/module/Hmac.js +0 -72
  182. package/lib/module/Hmac.js.map +0 -1
  183. package/lib/module/NativeQuickCrypto/Cipher.js +0 -24
  184. package/lib/module/NativeQuickCrypto/Cipher.js.map +0 -1
  185. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js +0 -47
  186. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js.map +0 -1
  187. package/lib/module/NativeQuickCrypto/aes.js +0 -2
  188. package/lib/module/NativeQuickCrypto/hash.js +0 -2
  189. package/lib/module/NativeQuickCrypto/hash.js.map +0 -1
  190. package/lib/module/NativeQuickCrypto/hmac.js +0 -2
  191. package/lib/module/NativeQuickCrypto/hmac.js.map +0 -1
  192. package/lib/module/NativeQuickCrypto/keygen.js +0 -2
  193. package/lib/module/NativeQuickCrypto/keygen.js.map +0 -1
  194. package/lib/module/NativeQuickCrypto/pbkdf2.js +0 -2
  195. package/lib/module/NativeQuickCrypto/pbkdf2.js.map +0 -1
  196. package/lib/module/NativeQuickCrypto/random.js +0 -2
  197. package/lib/module/NativeQuickCrypto/random.js.map +0 -1
  198. package/lib/module/NativeQuickCrypto/rsa.js +0 -2
  199. package/lib/module/NativeQuickCrypto/sig.js +0 -15
  200. package/lib/module/NativeQuickCrypto/sig.js.map +0 -1
  201. package/lib/module/NativeQuickCrypto/webcrypto.js +0 -2
  202. package/lib/module/NativeQuickCrypto/webcrypto.js.map +0 -1
  203. package/lib/module/Utils.js +0 -537
  204. package/lib/module/Utils.js.map +0 -1
  205. package/lib/module/aes.js +0 -272
  206. package/lib/module/aes.js.map +0 -1
  207. package/lib/module/constants.js +0 -79
  208. package/lib/module/constants.js.map +0 -1
  209. package/lib/module/ec.js +0 -265
  210. package/lib/module/ec.js.map +0 -1
  211. package/lib/module/keygen.js +0 -47
  212. package/lib/module/keygen.js.map +0 -1
  213. package/lib/module/keys.js +0 -475
  214. package/lib/module/keys.js.map +0 -1
  215. package/lib/module/pbkdf2.js +0 -82
  216. package/lib/module/pbkdf2.js.map +0 -1
  217. package/lib/module/rsa.js +0 -240
  218. package/lib/module/rsa.js.map +0 -1
  219. package/lib/module/sig.js +0 -122
  220. package/lib/module/sig.js.map +0 -1
  221. package/lib/module/subtle.js +0 -441
  222. package/lib/module/subtle.js.map +0 -1
  223. package/lib/module/webcrypto.js +0 -8
  224. package/lib/module/webcrypto.js.map +0 -1
  225. package/lib/typescript/Cipher.d.ts +0 -81
  226. package/lib/typescript/Cipher.d.ts.map +0 -1
  227. package/lib/typescript/Hash.d.ts +0 -44
  228. package/lib/typescript/Hash.d.ts.map +0 -1
  229. package/lib/typescript/Hashnames.d.ts +0 -11
  230. package/lib/typescript/Hashnames.d.ts.map +0 -1
  231. package/lib/typescript/Hmac.d.ts +0 -37
  232. package/lib/typescript/Hmac.d.ts.map +0 -1
  233. package/lib/typescript/NativeQuickCrypto/Cipher.d.ts +0 -44
  234. package/lib/typescript/NativeQuickCrypto/Cipher.d.ts.map +0 -1
  235. package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts +0 -33
  236. package/lib/typescript/NativeQuickCrypto/NativeQuickCrypto.d.ts.map +0 -1
  237. package/lib/typescript/NativeQuickCrypto/aes.d.ts +0 -5
  238. package/lib/typescript/NativeQuickCrypto/aes.d.ts.map +0 -1
  239. package/lib/typescript/NativeQuickCrypto/hash.d.ts +0 -7
  240. package/lib/typescript/NativeQuickCrypto/hash.d.ts.map +0 -1
  241. package/lib/typescript/NativeQuickCrypto/hmac.d.ts +0 -6
  242. package/lib/typescript/NativeQuickCrypto/hmac.d.ts.map +0 -1
  243. package/lib/typescript/NativeQuickCrypto/keygen.d.ts +0 -4
  244. package/lib/typescript/NativeQuickCrypto/keygen.d.ts.map +0 -1
  245. package/lib/typescript/NativeQuickCrypto/pbkdf2.d.ts +0 -5
  246. package/lib/typescript/NativeQuickCrypto/pbkdf2.d.ts.map +0 -1
  247. package/lib/typescript/NativeQuickCrypto/random.d.ts +0 -5
  248. package/lib/typescript/NativeQuickCrypto/random.d.ts.map +0 -1
  249. package/lib/typescript/NativeQuickCrypto/rsa.d.ts +0 -5
  250. package/lib/typescript/NativeQuickCrypto/rsa.d.ts.map +0 -1
  251. package/lib/typescript/NativeQuickCrypto/sig.d.ts +0 -23
  252. package/lib/typescript/NativeQuickCrypto/sig.d.ts.map +0 -1
  253. package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts +0 -39
  254. package/lib/typescript/NativeQuickCrypto/webcrypto.d.ts.map +0 -1
  255. package/lib/typescript/Utils.d.ts +0 -48
  256. package/lib/typescript/Utils.d.ts.map +0 -1
  257. package/lib/typescript/aes.d.ts +0 -22
  258. package/lib/typescript/aes.d.ts.map +0 -1
  259. package/lib/typescript/constants.d.ts +0 -76
  260. package/lib/typescript/constants.d.ts.map +0 -1
  261. package/lib/typescript/ec.d.ts +0 -7
  262. package/lib/typescript/ec.d.ts.map +0 -1
  263. package/lib/typescript/keygen.d.ts +0 -6
  264. package/lib/typescript/keygen.d.ts.map +0 -1
  265. package/lib/typescript/keys.d.ts +0 -206
  266. package/lib/typescript/keys.d.ts.map +0 -1
  267. package/lib/typescript/pbkdf2.d.ts +0 -12
  268. package/lib/typescript/pbkdf2.d.ts.map +0 -1
  269. package/lib/typescript/rsa.d.ts +0 -12
  270. package/lib/typescript/rsa.d.ts.map +0 -1
  271. package/lib/typescript/sig.d.ts +0 -21
  272. package/lib/typescript/sig.d.ts.map +0 -1
  273. package/lib/typescript/subtle.d.ts +0 -15
  274. package/lib/typescript/subtle.d.ts.map +0 -1
  275. package/lib/typescript/webcrypto.d.ts +0 -9
  276. package/lib/typescript/webcrypto.d.ts.map +0 -1
  277. package/react-native-quick-crypto.podspec +0 -40
  278. package/src/Cipher.ts +0 -832
  279. package/src/Hash.ts +0 -132
  280. package/src/Hashnames.ts +0 -93
  281. package/src/Hmac.ts +0 -106
  282. package/src/NativeQuickCrypto/Cipher.ts +0 -102
  283. package/src/NativeQuickCrypto/NativeQuickCrypto.ts +0 -102
  284. package/src/NativeQuickCrypto/aes.ts +0 -14
  285. package/src/NativeQuickCrypto/hash.ts +0 -10
  286. package/src/NativeQuickCrypto/hmac.ts +0 -9
  287. package/src/NativeQuickCrypto/keygen.ts +0 -7
  288. package/src/NativeQuickCrypto/pbkdf2.ts +0 -16
  289. package/src/NativeQuickCrypto/random.ts +0 -12
  290. package/src/NativeQuickCrypto/rsa.ts +0 -12
  291. package/src/NativeQuickCrypto/sig.ts +0 -44
  292. package/src/NativeQuickCrypto/webcrypto.ts +0 -72
  293. package/src/Utils.ts +0 -777
  294. package/src/aes.ts +0 -402
  295. package/src/constants.ts +0 -79
  296. package/src/ec.ts +0 -375
  297. package/src/keygen.ts +0 -80
  298. package/src/keys.ts +0 -787
  299. package/src/pbkdf2.ts +0 -169
  300. package/src/rsa.ts +0 -370
  301. package/src/sig.ts +0 -164
  302. package/src/subtle.ts +0 -639
  303. package/src/webcrypto.ts +0 -8
  304. /package/android/src/main/{AndroidManifestNew.xml → AndroidManifest.xml} +0 -0
@@ -1,448 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.subtle = exports.Subtle = void 0;
7
- var _keys = require("./keys");
8
- var _Utils = require("./Utils");
9
- var _ec = require("./ec");
10
- var _pbkdf = require("./pbkdf2");
11
- var _Hash = require("./Hash");
12
- var _aes = require("./aes");
13
- var _rsa = require("./rsa");
14
- const exportKeySpki = async key => {
15
- switch (key.algorithm.name) {
16
- case 'RSASSA-PKCS1-v1_5':
17
- // Fall through
18
- case 'RSA-PSS':
19
- // Fall through
20
- case 'RSA-OAEP':
21
- if (key.type === 'public') {
22
- return (0, _rsa.rsaExportKey)(key, _keys.KWebCryptoKeyFormat.kWebCryptoKeyFormatSPKI);
23
- }
24
- break;
25
- case 'ECDSA':
26
- // Fall through
27
- case 'ECDH':
28
- if (key.type === 'public') {
29
- return (0, _ec.ecExportKey)(key, _keys.KWebCryptoKeyFormat.kWebCryptoKeyFormatSPKI);
30
- }
31
- break;
32
- // case 'Ed25519':
33
- // // Fall through
34
- // case 'Ed448':
35
- // // Fall through
36
- // case 'X25519':
37
- // // Fall through
38
- // case 'X448':
39
- // if (key.type === 'public') {
40
- // return cfrgExportKey(key, KWebCryptoKeyFormat.kWebCryptoKeyFormatSPKI);
41
- // }
42
- // break;
43
- }
44
- throw new Error(`Unable to export a spki ${key.algorithm.name} ${key.type} key`);
45
- };
46
- const exportKeyPkcs8 = async key => {
47
- switch (key.algorithm.name) {
48
- case 'RSASSA-PKCS1-v1_5':
49
- // Fall through
50
- case 'RSA-PSS':
51
- // Fall through
52
- case 'RSA-OAEP':
53
- if (key.type === 'private') {
54
- return (0, _rsa.rsaExportKey)(key, _keys.KWebCryptoKeyFormat.kWebCryptoKeyFormatPKCS8);
55
- }
56
- break;
57
- case 'ECDSA':
58
- // Fall through
59
- case 'ECDH':
60
- if (key.type === 'private') {
61
- return (0, _ec.ecExportKey)(key, _keys.KWebCryptoKeyFormat.kWebCryptoKeyFormatPKCS8);
62
- }
63
- break;
64
- // case 'Ed25519':
65
- // // Fall through
66
- // case 'Ed448':
67
- // // Fall through
68
- // case 'X25519':
69
- // // Fall through
70
- // case 'X448':
71
- // if (key.type === 'private') {
72
- // return cfrgExportKey(key, KWebCryptoKeyFormat.kWebCryptoKeyFormatPKCS8);
73
- // }
74
- // break;
75
- }
76
- throw new Error(`Unable to export a pkcs8 ${key.algorithm.name} ${key.type} key`);
77
- };
78
- const exportKeyRaw = key => {
79
- switch (key.algorithm.name) {
80
- case 'ECDSA':
81
- // Fall through
82
- case 'ECDH':
83
- if (key.type === 'public') {
84
- return (0, _ec.ecExportKey)(key, _keys.KWebCryptoKeyFormat.kWebCryptoKeyFormatRaw);
85
- }
86
- break;
87
- // case 'Ed25519':
88
- // // Fall through
89
- // case 'Ed448':
90
- // // Fall through
91
- // case 'X25519':
92
- // // Fall through
93
- // case 'X448':
94
- // if (key.type === 'public') {
95
- // return require('internal/crypto/cfrg')
96
- // .cfrgExportKey(key, kWebCryptoKeyFormatRaw);
97
- // }
98
- // break;
99
- case 'AES-CTR':
100
- // Fall through
101
- case 'AES-CBC':
102
- // Fall through
103
- case 'AES-GCM':
104
- // Fall through
105
- case 'AES-KW':
106
- // Fall through
107
- case 'HMAC':
108
- return key.keyObject.export();
109
- }
110
- throw (0, _Utils.lazyDOMException)(`Unable to export a raw ${key.algorithm.name} ${key.type} key`, 'InvalidAccessError');
111
- };
112
- const exportKeyJWK = key => {
113
- const jwk = key.keyObject.handle.exportJwk({
114
- key_ops: key.usages,
115
- ext: key.extractable
116
- }, true);
117
- switch (key.algorithm.name) {
118
- case 'RSASSA-PKCS1-v1_5':
119
- jwk.alg = (0, _Utils.normalizeHashName)(key.algorithm.hash, _Utils.HashContext.JwkRsa);
120
- return jwk;
121
- case 'RSA-PSS':
122
- jwk.alg = (0, _Utils.normalizeHashName)(key.algorithm.hash, _Utils.HashContext.JwkRsaPss);
123
- return jwk;
124
- case 'RSA-OAEP':
125
- jwk.alg = (0, _Utils.normalizeHashName)(key.algorithm.hash, _Utils.HashContext.JwkRsaOaep);
126
- return jwk;
127
- case 'ECDSA':
128
- // Fall through
129
- case 'ECDH':
130
- jwk.crv ||= key.algorithm.namedCurve;
131
- return jwk;
132
- // case 'X25519':
133
- // // Fall through
134
- // case 'X448':
135
- // jwk.crv ||= key.algorithm.name;
136
- // return jwk;
137
- // case 'Ed25519':
138
- // // Fall through
139
- // case 'Ed448':
140
- // jwk.crv ||= key.algorithm.name;
141
- // return jwk;
142
- case 'AES-CTR':
143
- // Fall through
144
- case 'AES-CBC':
145
- // Fall through
146
- case 'AES-GCM':
147
- // Fall through
148
- case 'AES-KW':
149
- jwk.alg = (0, _aes.getAlgorithmName)(key.algorithm.name, key.algorithm.length);
150
- return jwk;
151
- // case 'HMAC':
152
- // jwk.alg = normalizeHashName(
153
- // key.algorithm.hash.name,
154
- // normalizeHashName.kContextJwkHmac);
155
- // return jwk;
156
- default:
157
- // Fall through
158
- }
159
- throw (0, _Utils.lazyDOMException)(`JWK export not yet supported: ${key.algorithm.name}`, 'NotSupportedError');
160
- };
161
- const importGenericSecretKey = async ({
162
- name,
163
- length
164
- }, format, keyData, extractable, keyUsages) => {
165
- if (extractable) {
166
- throw new Error(`${name} keys are not extractable`);
167
- }
168
- if ((0, _Utils.hasAnyNotIn)(keyUsages, ['deriveKey', 'deriveBits'])) {
169
- throw new Error(`Unsupported key usage for a ${name} key`);
170
- }
171
- switch (format) {
172
- case 'raw':
173
- {
174
- if ((0, _Utils.hasAnyNotIn)(keyUsages, ['deriveKey', 'deriveBits'])) {
175
- throw new Error(`Unsupported key usage for a ${name} key`);
176
- }
177
- const checkLength = typeof keyData === 'string' ? keyData.length * 8 : keyData.byteLength * 8;
178
-
179
- // The Web Crypto spec allows for key lengths that are not multiples of
180
- // 8. We don't. Our check here is stricter than that defined by the spec
181
- // in that we require that algorithm.length match keyData.length * 8 if
182
- // algorithm.length is specified.
183
- if (length !== undefined && length !== checkLength) {
184
- throw new Error('Invalid key length');
185
- }
186
- const keyObject = (0, _keys.createSecretKey)(keyData);
187
- return new _keys.CryptoKey(keyObject, {
188
- name
189
- }, keyUsages, false);
190
- }
191
- }
192
- throw new Error(`Unable to import ${name} key with format ${format}`);
193
- };
194
-
195
- // const checkCryptoKeyUsages = (key: CryptoKey) => {
196
- // if (
197
- // (key.type === 'secret' || key.type === 'private') &&
198
- // key.usages.length === 0
199
- // ) {
200
- // throw lazyDOMException(
201
- // 'Usages cannot be empty when creating a key.',
202
- // 'SyntaxError'
203
- // );
204
- // }
205
- // };
206
-
207
- const checkCryptoKeyPairUsages = pair => {
208
- if (!(pair.privateKey instanceof Buffer) && pair.privateKey && pair.privateKey.hasOwnProperty('keyUsages')) {
209
- const priv = pair.privateKey;
210
- if (priv.usages.length > 0) {
211
- return;
212
- }
213
- }
214
- console.log(pair.privateKey);
215
- throw (0, _Utils.lazyDOMException)('Usages cannot be empty when creating a key.', 'SyntaxError');
216
- };
217
- const signVerify = (algorithm, key, data, signature) => {
218
- const usage = signature === undefined ? 'sign' : 'verify';
219
- algorithm = (0, _Utils.normalizeAlgorithm)(algorithm, usage);
220
- if (!key.usages.includes(usage) || algorithm.name !== key.algorithm.name) {
221
- throw (0, _Utils.lazyDOMException)(`Unable to use this key to ${usage}`, 'InvalidAccessError');
222
- }
223
- switch (algorithm.name) {
224
- // case 'RSA-PSS':
225
- // // Fall through
226
- // case 'RSASSA-PKCS1-v1_5':
227
- // return require('internal/crypto/rsa').rsaSignVerify(
228
- // key,
229
- // data,
230
- // algorithm,
231
- // signature
232
- // );
233
- case 'ECDSA':
234
- return (0, _ec.ecdsaSignVerify)(key, data, algorithm, signature);
235
- // case 'Ed25519':
236
- // // Fall through
237
- // case 'Ed448':
238
- // return require('internal/crypto/cfrg').eddsaSignVerify(
239
- // key,
240
- // data,
241
- // algorithm,
242
- // signature
243
- // );
244
- // case 'HMAC':
245
- // return require('internal/crypto/mac').hmacSignVerify(
246
- // key,
247
- // data,
248
- // algorithm,
249
- // signature
250
- // );
251
- }
252
- throw (0, _Utils.lazyDOMException)(`Unrecognized algorithm name '${algorithm}' for '${usage}'`, 'NotSupportedError');
253
- };
254
- const cipherOrWrap = async (mode, algorithm, key, data, op) => {
255
- // We use a Node.js style error here instead of a DOMException because
256
- // the WebCrypto spec is not specific what kind of error is to be thrown
257
- // in this case. Both Firefox and Chrome throw simple TypeErrors here.
258
- // The key algorithm and cipher algorithm must match, and the
259
- // key must have the proper usage.
260
- if (key.algorithm.name !== algorithm.name || !key.usages.includes(op)) {
261
- throw (0, _Utils.lazyDOMException)('The requested operation is not valid for the provided key', 'InvalidAccessError');
262
- }
263
-
264
- // While WebCrypto allows for larger input buffer sizes, we limit
265
- // those to sizes that can fit within uint32_t because of limitations
266
- // in the OpenSSL API.
267
- (0, _Utils.validateMaxBufferLength)(data, 'data');
268
- switch (algorithm.name) {
269
- case 'RSA-OAEP':
270
- return (0, _rsa.rsaCipher)(mode, key, data, algorithm);
271
- case 'AES-CTR':
272
- // Fall through
273
- case 'AES-CBC':
274
- // Fall through
275
- case 'AES-GCM':
276
- return (0, _aes.aesCipher)(mode, key, data, algorithm);
277
- // case 'AES-KW':
278
- // if (op === 'wrapKey' || op === 'unwrapKey') {
279
- // return aesCipher(mode, key, data, algorithm);
280
- // }
281
- }
282
- // @ts-ignore
283
- throw (0, _Utils.lazyDOMException)(`Unrecognized algorithm name '${algorithm}' for '${op}'`, 'NotSupportedError');
284
- };
285
- class Subtle {
286
- async decrypt(algorithm, key, data) {
287
- const normalizedAlgorithm = (0, _Utils.normalizeAlgorithm)(algorithm, 'decrypt');
288
- return cipherOrWrap(_keys.CipherOrWrapMode.kWebCryptoCipherDecrypt, normalizedAlgorithm, key, (0, _Utils.bufferLikeToArrayBuffer)(data), 'decrypt');
289
- }
290
- async digest(algorithm, data) {
291
- const normalizedAlgorithm = (0, _Utils.normalizeAlgorithm)(algorithm, 'digest');
292
- return (0, _Hash.asyncDigest)(normalizedAlgorithm, data);
293
- }
294
- async deriveBits(algorithm, baseKey, length) {
295
- if (!baseKey.keyUsages.includes('deriveBits')) {
296
- throw new Error('baseKey does not have deriveBits usage');
297
- }
298
- if (baseKey.algorithm.name !== algorithm.name) throw new Error('Key algorithm mismatch');
299
- switch (algorithm.name) {
300
- // case 'X25519':
301
- // // Fall through
302
- // case 'X448':
303
- // // Fall through
304
- // case 'ECDH':
305
- // return require('internal/crypto/diffiehellman')
306
- // .ecdhDeriveBits(algorithm, baseKey, length);
307
- // case 'HKDF':
308
- // return require('internal/crypto/hkdf')
309
- // .hkdfDeriveBits(algorithm, baseKey, length);
310
- case 'PBKDF2':
311
- return (0, _pbkdf.pbkdf2DeriveBits)(algorithm, baseKey, length);
312
- }
313
- throw new Error(`'subtle.deriveBits()' for ${algorithm.name} is not implemented.`);
314
- }
315
- async encrypt(algorithm, key, data) {
316
- const normalizedAlgorithm = (0, _Utils.normalizeAlgorithm)(algorithm, 'encrypt');
317
- return cipherOrWrap(_keys.CipherOrWrapMode.kWebCryptoCipherEncrypt, normalizedAlgorithm, key, (0, _Utils.bufferLikeToArrayBuffer)(data), 'encrypt');
318
- }
319
- async exportKey(format, key) {
320
- if (!key.extractable) throw new Error('key is not extractable');
321
- switch (format) {
322
- case 'spki':
323
- return await exportKeySpki(key);
324
- case 'pkcs8':
325
- return await exportKeyPkcs8(key);
326
- case 'jwk':
327
- return exportKeyJWK(key);
328
- case 'raw':
329
- return exportKeyRaw(key);
330
- }
331
- }
332
- async generateKey(algorithm, extractable, keyUsages) {
333
- algorithm = (0, _Utils.normalizeAlgorithm)(algorithm, 'generateKey');
334
- let result;
335
- switch (algorithm.name) {
336
- case 'RSASSA-PKCS1-v1_5':
337
- // Fall through
338
- case 'RSA-PSS':
339
- // Fall through
340
- case 'RSA-OAEP':
341
- result = await (0, _rsa.rsaKeyGenerate)(algorithm, extractable, keyUsages);
342
- break;
343
- // case 'Ed25519':
344
- // // Fall through
345
- // case 'Ed448':
346
- // // Fall through
347
- // case 'X25519':
348
- // // Fall through
349
- // case 'X448':
350
- // resultType = 'CryptoKeyPair';
351
- // result = await cfrgGenerateKey(algorithm, extractable, keyUsages);
352
- // break;
353
- case 'ECDSA':
354
- // Fall through
355
- case 'ECDH':
356
- result = await (0, _ec.ecGenerateKey)(algorithm, extractable, keyUsages);
357
- checkCryptoKeyPairUsages(result);
358
- break;
359
- // case 'HMAC':
360
- // result = await hmacGenerateKey(algorithm, extractable, keyUsages);
361
- // break;
362
- case 'AES-CTR':
363
- // Fall through
364
- case 'AES-CBC':
365
- // Fall through
366
- case 'AES-GCM':
367
- // Fall through
368
- case 'AES-KW':
369
- result = await (0, _aes.aesGenerateKey)(algorithm, extractable, keyUsages);
370
- break;
371
- default:
372
- throw new Error(`'subtle.generateKey()' is not implemented for ${algorithm.name}.
373
- Unrecognized algorithm name`);
374
- }
375
- return result;
376
- }
377
- async importKey(format, data, algorithm, extractable, keyUsages) {
378
- const normalizedAlgorithm = (0, _Utils.normalizeAlgorithm)(algorithm, 'importKey');
379
- let result;
380
- switch (normalizedAlgorithm.name) {
381
- case 'RSASSA-PKCS1-v1_5':
382
- // Fall through
383
- case 'RSA-PSS':
384
- // Fall through
385
- case 'RSA-OAEP':
386
- result = (0, _rsa.rsaImportKey)(format, data, normalizedAlgorithm, extractable, keyUsages);
387
- break;
388
- case 'ECDSA':
389
- // Fall through
390
- case 'ECDH':
391
- result = (0, _ec.ecImportKey)(format, data, normalizedAlgorithm, extractable, keyUsages);
392
- break;
393
- // case 'Ed25519':
394
- // // Fall through
395
- // case 'Ed448':
396
- // // Fall through
397
- // case 'X25519':
398
- // // Fall through
399
- // case 'X448':
400
- // result = await require('internal/crypto/cfrg').cfrgImportKey(
401
- // format,
402
- // keyData,
403
- // algorithm,
404
- // extractable,
405
- // keyUsages
406
- // );
407
- // break;
408
- // case 'HMAC':
409
- // result = await require('internal/crypto/mac').hmacImportKey(
410
- // format,
411
- // keyData,
412
- // algorithm,
413
- // extractable,
414
- // keyUsages
415
- // );
416
- // break;
417
- case 'AES-CTR':
418
- // Fall through
419
- case 'AES-CBC':
420
- // Fall through
421
- case 'AES-GCM':
422
- // Fall through
423
- case 'AES-KW':
424
- result = await (0, _aes.aesImportKey)(normalizedAlgorithm, format, data, extractable, keyUsages);
425
- break;
426
- // case 'HKDF':
427
- // // Fall through
428
- case 'PBKDF2':
429
- result = await importGenericSecretKey(normalizedAlgorithm, format, data, extractable, keyUsages);
430
- break;
431
- default:
432
- throw new Error(`"subtle.importKey()" is not implemented for ${normalizedAlgorithm.name}`);
433
- }
434
- if ((result.type === 'secret' || result.type === 'private') && result.usages.length === 0) {
435
- throw new Error(`Usages cannot be empty when importing a ${result.type} key.`);
436
- }
437
- return result;
438
- }
439
- async sign(algorithm, key, data) {
440
- return signVerify(algorithm, key, data);
441
- }
442
- async verify(algorithm, key, signature, data) {
443
- return signVerify(algorithm, key, data, signature);
444
- }
445
- }
446
- exports.Subtle = Subtle;
447
- const subtle = exports.subtle = new Subtle();
448
- //# sourceMappingURL=subtle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_keys","require","_Utils","_ec","_pbkdf","_Hash","_aes","_rsa","exportKeySpki","key","algorithm","name","type","rsaExportKey","KWebCryptoKeyFormat","kWebCryptoKeyFormatSPKI","ecExportKey","Error","exportKeyPkcs8","kWebCryptoKeyFormatPKCS8","exportKeyRaw","kWebCryptoKeyFormatRaw","keyObject","export","lazyDOMException","exportKeyJWK","jwk","handle","exportJwk","key_ops","usages","ext","extractable","alg","normalizeHashName","hash","HashContext","JwkRsa","JwkRsaPss","JwkRsaOaep","crv","namedCurve","getAlgorithmName","length","importGenericSecretKey","format","keyData","keyUsages","hasAnyNotIn","checkLength","byteLength","undefined","createSecretKey","CryptoKey","checkCryptoKeyPairUsages","pair","privateKey","Buffer","hasOwnProperty","priv","console","log","signVerify","data","signature","usage","normalizeAlgorithm","includes","ecdsaSignVerify","cipherOrWrap","mode","op","validateMaxBufferLength","rsaCipher","aesCipher","Subtle","decrypt","normalizedAlgorithm","CipherOrWrapMode","kWebCryptoCipherDecrypt","bufferLikeToArrayBuffer","digest","asyncDigest","deriveBits","baseKey","pbkdf2DeriveBits","encrypt","kWebCryptoCipherEncrypt","exportKey","generateKey","result","rsaKeyGenerate","ecGenerateKey","aesGenerateKey","importKey","rsaImportKey","ecImportKey","aesImportKey","sign","verify","exports","subtle"],"sourceRoot":"../../src","sources":["subtle.ts"],"mappings":"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","ignoreList":[]}
@@ -1,14 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.default = void 0;
7
- var _subtle = require("./subtle");
8
- var _keys = require("./keys");
9
- var _default = exports.default = {
10
- subtle: _subtle.subtle,
11
- SubtleCrypto: _subtle.Subtle,
12
- CryptoKey: _keys.CryptoKey
13
- };
14
- //# sourceMappingURL=webcrypto.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["_subtle","require","_keys","_default","exports","default","subtle","SubtleCrypto","Subtle","CryptoKey"],"sourceRoot":"../../src","sources":["webcrypto.ts"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,KAAA,GAAAD,OAAA;AAAmC,IAAAE,QAAA,GAAAC,OAAA,CAAAC,OAAA,GAEpB;EACbC,MAAM,EAANA,cAAM;EACNC,YAAY,EAAEC,cAAM;EACpBC,SAAS,EAATA;AACF,CAAC","ignoreList":[]}