react-native-quick-crypto 0.7.11 → 1.0.0-beta.10

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 (419) hide show
  1. package/QuickCrypto.podspec +47 -0
  2. package/README.md +6 -4
  3. package/android/CMakeLists.txt +26 -55
  4. package/android/build.gradle +70 -112
  5. package/android/gradle.properties +3 -3
  6. package/android/src/main/cpp/cpp-adapter.cpp +3 -64
  7. package/android/src/main/java/com/margelo/nitro/quickcrypto/QuickCryptoPackage.java +43 -0
  8. package/cpp/ed25519/HybridEdKeyPair.cpp +268 -0
  9. package/cpp/ed25519/HybridEdKeyPair.hpp +85 -0
  10. package/cpp/pbkdf2/HybridPbkdf2.cpp +72 -0
  11. package/cpp/pbkdf2/HybridPbkdf2.hpp +35 -0
  12. package/cpp/random/HybridRandom.cpp +59 -0
  13. package/cpp/random/HybridRandom.hpp +33 -0
  14. package/cpp/utils/Utils.hpp +20 -0
  15. package/lib/commonjs/ed.js +42 -0
  16. package/lib/commonjs/ed.js.map +1 -0
  17. package/lib/commonjs/index.js +90 -39
  18. package/lib/commonjs/index.js.map +1 -1
  19. package/lib/commonjs/keys/classes.js +191 -0
  20. package/lib/commonjs/keys/classes.js.map +1 -0
  21. package/lib/commonjs/keys/generateKeyPair.js +148 -0
  22. package/lib/commonjs/keys/generateKeyPair.js.map +1 -0
  23. package/lib/commonjs/keys/index.js +62 -0
  24. package/lib/commonjs/keys/index.js.map +1 -0
  25. package/lib/commonjs/keys/signVerify.js +41 -0
  26. package/lib/commonjs/keys/signVerify.js.map +1 -0
  27. package/lib/commonjs/keys/utils.js +118 -0
  28. package/lib/commonjs/keys/utils.js.map +1 -0
  29. package/lib/commonjs/pbkdf2.js +29 -19
  30. package/lib/commonjs/pbkdf2.js.map +1 -1
  31. package/lib/commonjs/random.js +27 -11
  32. package/lib/commonjs/random.js.map +1 -1
  33. package/lib/commonjs/{NativeQuickCrypto/aes.js → specs/edKeyPair.nitro.js} +1 -1
  34. package/lib/commonjs/{NativeQuickCrypto/aes.js.map → specs/edKeyPair.nitro.js.map} +1 -1
  35. package/lib/commonjs/{NativeQuickCrypto/keygen.js → specs/keyObjectHandle.nitro.js} +1 -1
  36. package/lib/commonjs/{NativeQuickCrypto/hash.js.map → specs/keyObjectHandle.nitro.js.map} +1 -1
  37. package/lib/commonjs/{NativeQuickCrypto/rsa.js → specs/pbkdf2.nitro.js} +1 -1
  38. package/lib/{module/NativeQuickCrypto/aes.js.map → commonjs/specs/pbkdf2.nitro.js.map} +1 -1
  39. package/lib/commonjs/{NativeQuickCrypto/webcrypto.js → specs/random.nitro.js} +1 -1
  40. package/lib/{module/NativeQuickCrypto/rsa.js.map → commonjs/specs/random.nitro.js.map} +1 -1
  41. package/lib/commonjs/utils/conversion.js +117 -0
  42. package/lib/commonjs/utils/conversion.js.map +1 -0
  43. package/lib/commonjs/utils/errors.js +14 -0
  44. package/lib/commonjs/utils/errors.js.map +1 -0
  45. package/lib/commonjs/{Hashnames.js → utils/hashnames.js} +2 -5
  46. package/lib/commonjs/utils/hashnames.js.map +1 -0
  47. package/lib/commonjs/utils/index.js +61 -0
  48. package/lib/commonjs/utils/index.js.map +1 -0
  49. package/lib/commonjs/utils/types.js +40 -0
  50. package/lib/commonjs/utils/types.js.map +1 -0
  51. package/lib/commonjs/utils/validation.js +25 -0
  52. package/lib/commonjs/utils/validation.js.map +1 -0
  53. package/lib/module/ed.js +37 -0
  54. package/lib/module/ed.js.map +1 -0
  55. package/lib/module/index.js +44 -37
  56. package/lib/module/index.js.map +1 -1
  57. package/lib/module/keys/classes.js +182 -0
  58. package/lib/module/keys/classes.js.map +1 -0
  59. package/lib/module/keys/generateKeyPair.js +148 -0
  60. package/lib/module/keys/generateKeyPair.js.map +1 -0
  61. package/lib/module/keys/index.js +29 -0
  62. package/lib/module/keys/index.js.map +1 -0
  63. package/lib/module/keys/signVerify.js +41 -0
  64. package/lib/module/keys/signVerify.js.map +1 -0
  65. package/lib/module/keys/utils.js +110 -0
  66. package/lib/module/keys/utils.js.map +1 -0
  67. package/lib/module/pbkdf2.js +17 -7
  68. package/lib/module/pbkdf2.js.map +1 -1
  69. package/lib/module/random.js +26 -10
  70. package/lib/module/random.js.map +1 -1
  71. package/lib/module/specs/edKeyPair.nitro.js +4 -0
  72. package/lib/{commonjs/NativeQuickCrypto/rsa.js.map → module/specs/edKeyPair.nitro.js.map} +1 -1
  73. package/lib/module/specs/keyObjectHandle.nitro.js +4 -0
  74. package/lib/{commonjs/NativeQuickCrypto/hmac.js.map → module/specs/keyObjectHandle.nitro.js.map} +1 -1
  75. package/lib/module/specs/pbkdf2.nitro.js +4 -0
  76. package/lib/module/specs/pbkdf2.nitro.js.map +1 -0
  77. package/lib/module/specs/random.nitro.js +4 -0
  78. package/lib/module/specs/random.nitro.js.map +1 -0
  79. package/lib/module/utils/conversion.js +107 -0
  80. package/lib/module/utils/conversion.js.map +1 -0
  81. package/lib/module/utils/errors.js +10 -0
  82. package/lib/module/utils/errors.js.map +1 -0
  83. package/lib/module/{Hashnames.js → utils/hashnames.js} +2 -5
  84. package/lib/module/utils/hashnames.js.map +1 -0
  85. package/lib/module/utils/index.js +8 -0
  86. package/lib/module/utils/index.js.map +1 -0
  87. package/lib/module/utils/types.js +42 -0
  88. package/lib/module/utils/types.js.map +1 -0
  89. package/lib/module/utils/validation.js +19 -0
  90. package/lib/module/utils/validation.js.map +1 -0
  91. package/lib/tsconfig.tsbuildinfo +1 -0
  92. package/lib/typescript/ed.d.ts +17 -0
  93. package/lib/typescript/ed.d.ts.map +1 -0
  94. package/lib/typescript/index.d.ts +74 -0
  95. package/lib/typescript/index.d.ts.map +1 -0
  96. package/lib/typescript/keys/classes.d.ts +38 -0
  97. package/lib/typescript/keys/classes.d.ts.map +1 -0
  98. package/lib/typescript/keys/generateKeyPair.d.ts +1 -0
  99. package/lib/typescript/keys/generateKeyPair.d.ts.map +1 -0
  100. package/lib/typescript/keys/index.d.ts +4 -0
  101. package/lib/typescript/keys/index.d.ts.map +1 -0
  102. package/lib/typescript/keys/signVerify.d.ts +1 -0
  103. package/lib/typescript/keys/signVerify.d.ts.map +1 -0
  104. package/lib/typescript/keys/utils.d.ts +32 -0
  105. package/lib/typescript/keys/utils.d.ts.map +1 -0
  106. package/lib/typescript/{src/pbkdf2.d.ts → pbkdf2.d.ts} +4 -3
  107. package/lib/typescript/pbkdf2.d.ts.map +1 -0
  108. package/lib/typescript/{src/random.d.ts → random.d.ts} +4 -4
  109. package/lib/typescript/random.d.ts.map +1 -0
  110. package/lib/typescript/specs/edKeyPair.nitro.d.ts +16 -0
  111. package/lib/typescript/specs/edKeyPair.nitro.d.ts.map +1 -0
  112. package/lib/typescript/specs/keyObjectHandle.nitro.d.ts +15 -0
  113. package/lib/typescript/specs/keyObjectHandle.nitro.d.ts.map +1 -0
  114. package/lib/typescript/specs/pbkdf2.nitro.d.ts +9 -0
  115. package/lib/typescript/specs/pbkdf2.nitro.d.ts.map +1 -0
  116. package/lib/typescript/specs/random.nitro.d.ts +9 -0
  117. package/lib/typescript/specs/random.nitro.d.ts.map +1 -0
  118. package/lib/typescript/utils/conversion.d.ts +25 -0
  119. package/lib/typescript/utils/conversion.d.ts.map +1 -0
  120. package/lib/typescript/utils/errors.d.ts +7 -0
  121. package/lib/typescript/utils/errors.d.ts.map +1 -0
  122. package/lib/typescript/{src/Hashnames.d.ts → utils/hashnames.d.ts} +3 -3
  123. package/lib/typescript/utils/hashnames.d.ts.map +1 -0
  124. package/lib/typescript/utils/index.d.ts +6 -0
  125. package/lib/typescript/utils/index.d.ts.map +1 -0
  126. package/lib/typescript/utils/types.d.ts +162 -0
  127. package/lib/typescript/utils/types.d.ts.map +1 -0
  128. package/lib/typescript/utils/validation.d.ts +8 -0
  129. package/lib/typescript/utils/validation.d.ts.map +1 -0
  130. package/nitrogen/generated/android/QuickCrypto+autolinking.cmake +65 -0
  131. package/nitrogen/generated/android/QuickCrypto+autolinking.gradle +27 -0
  132. package/nitrogen/generated/android/QuickCryptoOnLoad.cpp +64 -0
  133. package/nitrogen/generated/android/QuickCryptoOnLoad.hpp +25 -0
  134. package/nitrogen/generated/ios/QuickCrypto+autolinking.rb +58 -0
  135. package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Bridge.cpp +17 -0
  136. package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Bridge.hpp +27 -0
  137. package/nitrogen/generated/ios/QuickCrypto-Swift-Cxx-Umbrella.hpp +38 -0
  138. package/nitrogen/generated/ios/QuickCryptoAutolinking.mm +55 -0
  139. package/nitrogen/generated/ios/QuickCryptoAutolinking.swift +12 -0
  140. package/nitrogen/generated/shared/c++/CFRGKeyPairType.hpp +86 -0
  141. package/nitrogen/generated/shared/c++/HybridEdKeyPairSpec.cpp +29 -0
  142. package/nitrogen/generated/shared/c++/HybridEdKeyPairSpec.hpp +74 -0
  143. package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.cpp +27 -0
  144. package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.hpp +93 -0
  145. package/nitrogen/generated/shared/c++/HybridPbkdf2Spec.cpp +22 -0
  146. package/nitrogen/generated/shared/c++/HybridPbkdf2Spec.hpp +66 -0
  147. package/nitrogen/generated/shared/c++/HybridRandomSpec.cpp +22 -0
  148. package/nitrogen/generated/shared/c++/HybridRandomSpec.hpp +65 -0
  149. package/nitrogen/generated/shared/c++/JWK.hpp +162 -0
  150. package/nitrogen/generated/shared/c++/JWKkty.hpp +86 -0
  151. package/nitrogen/generated/shared/c++/JWKuse.hpp +78 -0
  152. package/nitrogen/generated/shared/c++/KFormatType.hpp +65 -0
  153. package/nitrogen/generated/shared/c++/KeyDetail.hpp +93 -0
  154. package/nitrogen/generated/shared/c++/KeyEncoding.hpp +66 -0
  155. package/nitrogen/generated/shared/c++/KeyType.hpp +65 -0
  156. package/nitrogen/generated/shared/c++/KeyUsage.hpp +102 -0
  157. package/nitrogen/generated/shared/c++/NamedCurve.hpp +82 -0
  158. package/package.json +57 -51
  159. package/src/ed.ts +79 -0
  160. package/src/index.ts +43 -47
  161. package/src/keys/classes.ts +211 -0
  162. package/src/keys/generateKeyPair.ts +146 -0
  163. package/src/keys/index.ts +42 -0
  164. package/src/keys/signVerify.ts +39 -0
  165. package/src/keys/utils.ts +184 -0
  166. package/src/pbkdf2.ts +26 -15
  167. package/src/random.ts +33 -20
  168. package/src/specs/edKeyPair.nitro.ts +41 -0
  169. package/src/specs/keyObjectHandle.nitro.ts +32 -0
  170. package/src/{NativeQuickCrypto/pbkdf2.ts → specs/pbkdf2.nitro.ts} +8 -6
  171. package/src/specs/random.nitro.ts +14 -0
  172. package/src/utils/conversion.ts +123 -0
  173. package/src/utils/errors.ts +15 -0
  174. package/src/{Hashnames.ts → utils/hashnames.ts} +4 -7
  175. package/src/utils/index.ts +5 -0
  176. package/src/utils/types.ts +275 -0
  177. package/src/utils/validation.ts +35 -0
  178. package/android/src/main/java/com/margelo/quickcrypto/QuickCryptoModule.java +0 -70
  179. package/android/src/main/java/com/margelo/quickcrypto/QuickCryptoPackage.java +0 -25
  180. package/cpp/Cipher/MGLCipherHostObject.cpp +0 -663
  181. package/cpp/Cipher/MGLCipherHostObject.h +0 -90
  182. package/cpp/Cipher/MGLCreateCipherInstaller.cpp +0 -75
  183. package/cpp/Cipher/MGLCreateCipherInstaller.h +0 -22
  184. package/cpp/Cipher/MGLCreateDecipherInstaller.cpp +0 -77
  185. package/cpp/Cipher/MGLCreateDecipherInstaller.h +0 -17
  186. package/cpp/Cipher/MGLGenerateKeyPairInstaller.cpp +0 -134
  187. package/cpp/Cipher/MGLGenerateKeyPairInstaller.h +0 -35
  188. package/cpp/Cipher/MGLGenerateKeyPairSyncInstaller.cpp +0 -63
  189. package/cpp/Cipher/MGLGenerateKeyPairSyncInstaller.h +0 -37
  190. package/cpp/Cipher/MGLPublicCipher.h +0 -124
  191. package/cpp/Cipher/MGLPublicCipherInstaller.h +0 -107
  192. package/cpp/Cipher/MGLRsa.cpp +0 -573
  193. package/cpp/Cipher/MGLRsa.h +0 -109
  194. package/cpp/HMAC/MGLHmacHostObject.cpp +0 -95
  195. package/cpp/HMAC/MGLHmacHostObject.h +0 -39
  196. package/cpp/HMAC/MGLHmacInstaller.cpp +0 -43
  197. package/cpp/HMAC/MGLHmacInstaller.h +0 -20
  198. package/cpp/Hash/MGLHashHostObject.cpp +0 -147
  199. package/cpp/Hash/MGLHashHostObject.h +0 -53
  200. package/cpp/Hash/MGLHashInstaller.cpp +0 -44
  201. package/cpp/Hash/MGLHashInstaller.h +0 -20
  202. package/cpp/JSIUtils/MGLJSIMacros.h +0 -110
  203. package/cpp/JSIUtils/MGLJSIUtils.h +0 -41
  204. package/cpp/JSIUtils/MGLSmartHostObject.cpp +0 -43
  205. package/cpp/JSIUtils/MGLSmartHostObject.h +0 -46
  206. package/cpp/JSIUtils/MGLThreadAwareHostObject.cpp +0 -24
  207. package/cpp/JSIUtils/MGLThreadAwareHostObject.h +0 -43
  208. package/cpp/JSIUtils/MGLTypedArray.cpp +0 -352
  209. package/cpp/JSIUtils/MGLTypedArray.h +0 -179
  210. package/cpp/MGLKeys.cpp +0 -1426
  211. package/cpp/MGLKeys.h +0 -203
  212. package/cpp/MGLQuickCryptoHostObject.cpp +0 -127
  213. package/cpp/MGLQuickCryptoHostObject.h +0 -30
  214. package/cpp/Random/MGLRandomHostObject.cpp +0 -96
  215. package/cpp/Random/MGLRandomHostObject.h +0 -27
  216. package/cpp/Sig/MGLSignHostObjects.cpp +0 -757
  217. package/cpp/Sig/MGLSignHostObjects.h +0 -128
  218. package/cpp/Sig/MGLSignInstaller.cpp +0 -24
  219. package/cpp/Sig/MGLSignInstaller.h +0 -29
  220. package/cpp/Sig/MGLVerifyInstaller.cpp +0 -24
  221. package/cpp/Sig/MGLVerifyInstaller.h +0 -22
  222. package/cpp/Utils/MGLDispatchQueue.cpp +0 -75
  223. package/cpp/Utils/MGLDispatchQueue.h +0 -55
  224. package/cpp/Utils/MGLUtils.cpp +0 -295
  225. package/cpp/Utils/MGLUtils.h +0 -358
  226. package/cpp/Utils/base64.h +0 -320
  227. package/cpp/Utils/logs.h +0 -38
  228. package/cpp/Utils/node.h +0 -13
  229. package/cpp/fastpbkdf2/MGLPbkdf2HostObject.cpp +0 -164
  230. package/cpp/fastpbkdf2/MGLPbkdf2HostObject.h +0 -29
  231. package/cpp/webcrypto/MGLWebCrypto.cpp +0 -125
  232. package/cpp/webcrypto/MGLWebCrypto.h +0 -32
  233. package/cpp/webcrypto/crypto_aes.cpp +0 -516
  234. package/cpp/webcrypto/crypto_aes.h +0 -79
  235. package/cpp/webcrypto/crypto_ec.cpp +0 -424
  236. package/cpp/webcrypto/crypto_ec.h +0 -78
  237. package/cpp/webcrypto/crypto_keygen.cpp +0 -86
  238. package/cpp/webcrypto/crypto_keygen.h +0 -38
  239. package/ios/QuickCrypto.xcodeproj/project.pbxproj +0 -274
  240. package/ios/QuickCrypto.xcodeproj/project.xcworkspace/contents.xcworkspacedata +0 -7
  241. package/ios/QuickCrypto.xcodeproj/project.xcworkspace/xcuserdata/brad.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  242. package/ios/QuickCrypto.xcodeproj/xcuserdata/brad.xcuserdatad/xcschemes/xcschememanagement.plist +0 -14
  243. package/ios/QuickCryptoModule.h +0 -5
  244. package/ios/QuickCryptoModule.mm +0 -57
  245. package/lib/commonjs/Algorithms.js +0 -224
  246. package/lib/commonjs/Algorithms.js.map +0 -1
  247. package/lib/commonjs/Cipher.js +0 -504
  248. package/lib/commonjs/Cipher.js.map +0 -1
  249. package/lib/commonjs/Hash.js +0 -102
  250. package/lib/commonjs/Hash.js.map +0 -1
  251. package/lib/commonjs/Hashnames.js.map +0 -1
  252. package/lib/commonjs/Hmac.js +0 -81
  253. package/lib/commonjs/Hmac.js.map +0 -1
  254. package/lib/commonjs/NativeQuickCrypto/Cipher.js +0 -30
  255. package/lib/commonjs/NativeQuickCrypto/Cipher.js.map +0 -1
  256. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js +0 -59
  257. package/lib/commonjs/NativeQuickCrypto/NativeQuickCrypto.js.map +0 -1
  258. package/lib/commonjs/NativeQuickCrypto/hash.js +0 -2
  259. package/lib/commonjs/NativeQuickCrypto/hmac.js +0 -2
  260. package/lib/commonjs/NativeQuickCrypto/keygen.js.map +0 -1
  261. package/lib/commonjs/NativeQuickCrypto/pbkdf2.js +0 -2
  262. package/lib/commonjs/NativeQuickCrypto/pbkdf2.js.map +0 -1
  263. package/lib/commonjs/NativeQuickCrypto/random.js +0 -2
  264. package/lib/commonjs/NativeQuickCrypto/random.js.map +0 -1
  265. package/lib/commonjs/NativeQuickCrypto/sig.js +0 -19
  266. package/lib/commonjs/NativeQuickCrypto/sig.js.map +0 -1
  267. package/lib/commonjs/NativeQuickCrypto/webcrypto.js.map +0 -1
  268. package/lib/commonjs/Utils.js +0 -437
  269. package/lib/commonjs/Utils.js.map +0 -1
  270. package/lib/commonjs/aes.js +0 -282
  271. package/lib/commonjs/aes.js.map +0 -1
  272. package/lib/commonjs/constants.js +0 -85
  273. package/lib/commonjs/constants.js.map +0 -1
  274. package/lib/commonjs/ec.js +0 -275
  275. package/lib/commonjs/ec.js.map +0 -1
  276. package/lib/commonjs/keygen.js +0 -58
  277. package/lib/commonjs/keygen.js.map +0 -1
  278. package/lib/commonjs/keys.js +0 -497
  279. package/lib/commonjs/keys.js.map +0 -1
  280. package/lib/commonjs/rsa.js +0 -248
  281. package/lib/commonjs/rsa.js.map +0 -1
  282. package/lib/commonjs/sig.js +0 -128
  283. package/lib/commonjs/sig.js.map +0 -1
  284. package/lib/commonjs/subtle.js +0 -450
  285. package/lib/commonjs/subtle.js.map +0 -1
  286. package/lib/commonjs/webcrypto.js +0 -14
  287. package/lib/commonjs/webcrypto.js.map +0 -1
  288. package/lib/module/Algorithms.js +0 -219
  289. package/lib/module/Algorithms.js.map +0 -1
  290. package/lib/module/Cipher.js +0 -493
  291. package/lib/module/Cipher.js.map +0 -1
  292. package/lib/module/Hash.js +0 -96
  293. package/lib/module/Hash.js.map +0 -1
  294. package/lib/module/Hashnames.js.map +0 -1
  295. package/lib/module/Hmac.js +0 -76
  296. package/lib/module/Hmac.js.map +0 -1
  297. package/lib/module/NativeQuickCrypto/Cipher.js +0 -26
  298. package/lib/module/NativeQuickCrypto/Cipher.js.map +0 -1
  299. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js +0 -56
  300. package/lib/module/NativeQuickCrypto/NativeQuickCrypto.js.map +0 -1
  301. package/lib/module/NativeQuickCrypto/aes.js +0 -4
  302. package/lib/module/NativeQuickCrypto/hash.js +0 -2
  303. package/lib/module/NativeQuickCrypto/hash.js.map +0 -1
  304. package/lib/module/NativeQuickCrypto/hmac.js +0 -2
  305. package/lib/module/NativeQuickCrypto/hmac.js.map +0 -1
  306. package/lib/module/NativeQuickCrypto/keygen.js +0 -4
  307. package/lib/module/NativeQuickCrypto/keygen.js.map +0 -1
  308. package/lib/module/NativeQuickCrypto/pbkdf2.js +0 -2
  309. package/lib/module/NativeQuickCrypto/pbkdf2.js.map +0 -1
  310. package/lib/module/NativeQuickCrypto/random.js +0 -2
  311. package/lib/module/NativeQuickCrypto/random.js.map +0 -1
  312. package/lib/module/NativeQuickCrypto/rsa.js +0 -4
  313. package/lib/module/NativeQuickCrypto/sig.js +0 -17
  314. package/lib/module/NativeQuickCrypto/sig.js.map +0 -1
  315. package/lib/module/NativeQuickCrypto/webcrypto.js +0 -4
  316. package/lib/module/NativeQuickCrypto/webcrypto.js.map +0 -1
  317. package/lib/module/Utils.js +0 -369
  318. package/lib/module/Utils.js.map +0 -1
  319. package/lib/module/aes.js +0 -275
  320. package/lib/module/aes.js.map +0 -1
  321. package/lib/module/constants.js +0 -81
  322. package/lib/module/constants.js.map +0 -1
  323. package/lib/module/ec.js +0 -266
  324. package/lib/module/ec.js.map +0 -1
  325. package/lib/module/keygen.js +0 -51
  326. package/lib/module/keygen.js.map +0 -1
  327. package/lib/module/keys.js +0 -482
  328. package/lib/module/keys.js.map +0 -1
  329. package/lib/module/rsa.js +0 -242
  330. package/lib/module/rsa.js.map +0 -1
  331. package/lib/module/sig.js +0 -123
  332. package/lib/module/sig.js.map +0 -1
  333. package/lib/module/subtle.js +0 -445
  334. package/lib/module/subtle.js.map +0 -1
  335. package/lib/module/webcrypto.js +0 -10
  336. package/lib/module/webcrypto.js.map +0 -1
  337. package/lib/typescript/src/Algorithms.d.ts +0 -4
  338. package/lib/typescript/src/Algorithms.d.ts.map +0 -1
  339. package/lib/typescript/src/Cipher.d.ts +0 -85
  340. package/lib/typescript/src/Cipher.d.ts.map +0 -1
  341. package/lib/typescript/src/Hash.d.ts +0 -44
  342. package/lib/typescript/src/Hash.d.ts.map +0 -1
  343. package/lib/typescript/src/Hashnames.d.ts.map +0 -1
  344. package/lib/typescript/src/Hmac.d.ts +0 -37
  345. package/lib/typescript/src/Hmac.d.ts.map +0 -1
  346. package/lib/typescript/src/NativeQuickCrypto/Cipher.d.ts +0 -44
  347. package/lib/typescript/src/NativeQuickCrypto/Cipher.d.ts.map +0 -1
  348. package/lib/typescript/src/NativeQuickCrypto/NativeQuickCrypto.d.ts +0 -33
  349. package/lib/typescript/src/NativeQuickCrypto/NativeQuickCrypto.d.ts.map +0 -1
  350. package/lib/typescript/src/NativeQuickCrypto/aes.d.ts +0 -5
  351. package/lib/typescript/src/NativeQuickCrypto/aes.d.ts.map +0 -1
  352. package/lib/typescript/src/NativeQuickCrypto/hash.d.ts +0 -7
  353. package/lib/typescript/src/NativeQuickCrypto/hash.d.ts.map +0 -1
  354. package/lib/typescript/src/NativeQuickCrypto/hmac.d.ts +0 -6
  355. package/lib/typescript/src/NativeQuickCrypto/hmac.d.ts.map +0 -1
  356. package/lib/typescript/src/NativeQuickCrypto/keygen.d.ts +0 -4
  357. package/lib/typescript/src/NativeQuickCrypto/keygen.d.ts.map +0 -1
  358. package/lib/typescript/src/NativeQuickCrypto/pbkdf2.d.ts +0 -5
  359. package/lib/typescript/src/NativeQuickCrypto/pbkdf2.d.ts.map +0 -1
  360. package/lib/typescript/src/NativeQuickCrypto/random.d.ts +0 -5
  361. package/lib/typescript/src/NativeQuickCrypto/random.d.ts.map +0 -1
  362. package/lib/typescript/src/NativeQuickCrypto/rsa.d.ts +0 -5
  363. package/lib/typescript/src/NativeQuickCrypto/rsa.d.ts.map +0 -1
  364. package/lib/typescript/src/NativeQuickCrypto/sig.d.ts +0 -23
  365. package/lib/typescript/src/NativeQuickCrypto/sig.d.ts.map +0 -1
  366. package/lib/typescript/src/NativeQuickCrypto/webcrypto.d.ts +0 -40
  367. package/lib/typescript/src/NativeQuickCrypto/webcrypto.d.ts.map +0 -1
  368. package/lib/typescript/src/Utils.d.ts +0 -71
  369. package/lib/typescript/src/Utils.d.ts.map +0 -1
  370. package/lib/typescript/src/aes.d.ts +0 -22
  371. package/lib/typescript/src/aes.d.ts.map +0 -1
  372. package/lib/typescript/src/constants.d.ts +0 -76
  373. package/lib/typescript/src/constants.d.ts.map +0 -1
  374. package/lib/typescript/src/ec.d.ts +0 -7
  375. package/lib/typescript/src/ec.d.ts.map +0 -1
  376. package/lib/typescript/src/index.d.ts +0 -139
  377. package/lib/typescript/src/index.d.ts.map +0 -1
  378. package/lib/typescript/src/keygen.d.ts +0 -6
  379. package/lib/typescript/src/keygen.d.ts.map +0 -1
  380. package/lib/typescript/src/keys.d.ts +0 -211
  381. package/lib/typescript/src/keys.d.ts.map +0 -1
  382. package/lib/typescript/src/pbkdf2.d.ts.map +0 -1
  383. package/lib/typescript/src/random.d.ts.map +0 -1
  384. package/lib/typescript/src/rsa.d.ts +0 -12
  385. package/lib/typescript/src/rsa.d.ts.map +0 -1
  386. package/lib/typescript/src/sig.d.ts +0 -21
  387. package/lib/typescript/src/sig.d.ts.map +0 -1
  388. package/lib/typescript/src/subtle.d.ts +0 -15
  389. package/lib/typescript/src/subtle.d.ts.map +0 -1
  390. package/lib/typescript/src/webcrypto.d.ts +0 -9
  391. package/lib/typescript/src/webcrypto.d.ts.map +0 -1
  392. package/react-native-quick-crypto.podspec +0 -40
  393. package/src/Algorithms.ts +0 -247
  394. package/src/Cipher.ts +0 -890
  395. package/src/Hash.ts +0 -139
  396. package/src/Hmac.ts +0 -107
  397. package/src/NativeQuickCrypto/Cipher.ts +0 -103
  398. package/src/NativeQuickCrypto/NativeQuickCrypto.ts +0 -106
  399. package/src/NativeQuickCrypto/aes.ts +0 -14
  400. package/src/NativeQuickCrypto/hash.ts +0 -10
  401. package/src/NativeQuickCrypto/hmac.ts +0 -9
  402. package/src/NativeQuickCrypto/keygen.ts +0 -7
  403. package/src/NativeQuickCrypto/random.ts +0 -12
  404. package/src/NativeQuickCrypto/rsa.ts +0 -12
  405. package/src/NativeQuickCrypto/sig.ts +0 -46
  406. package/src/NativeQuickCrypto/webcrypto.ts +0 -73
  407. package/src/Utils.ts +0 -628
  408. package/src/aes.ts +0 -402
  409. package/src/constants.ts +0 -79
  410. package/src/ec.ts +0 -374
  411. package/src/keygen.ts +0 -80
  412. package/src/keys.ts +0 -797
  413. package/src/rsa.ts +0 -372
  414. package/src/sig.ts +0 -163
  415. package/src/subtle.ts +0 -643
  416. package/src/webcrypto.ts +0 -8
  417. /package/android/src/main/{AndroidManifestNew.xml → AndroidManifest.xml} +0 -0
  418. /package/{cpp → deps}/fastpbkdf2/fastpbkdf2.c +0 -0
  419. /package/{cpp → deps}/fastpbkdf2/fastpbkdf2.h +0 -0
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ import { CryptoKey, KeyObject, SecretKeyObject, PublicKeyObject, PrivateKeyObject } from './classes';
4
+ // import { generateKeyPair } from './generateKeyPair';
5
+ // import { sign, verify } from './signVerify';
6
+ import { isCryptoKey, parseKeyEncoding, parsePrivateKeyEncoding, parsePublicKeyEncoding } from './utils';
7
+ export {
8
+ // Node Public API
9
+ // createSecretKey,
10
+ // createPublicKey,
11
+ // createPrivateKey,
12
+ CryptoKey,
13
+ // generateKeyPair,
14
+ KeyObject,
15
+ // InternalCryptoKey,
16
+ // sign,
17
+ // verify,
18
+
19
+ // Node Internal API
20
+ parsePublicKeyEncoding, parsePrivateKeyEncoding, parseKeyEncoding,
21
+ // preparePrivateKey,
22
+ // preparePublicOrPrivateKey,
23
+ // prepareSecretKey,
24
+ SecretKeyObject, PublicKeyObject, PrivateKeyObject,
25
+ // isKeyObject,
26
+ isCryptoKey
27
+ // importGenericSecretKey,
28
+ };
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CryptoKey","KeyObject","SecretKeyObject","PublicKeyObject","PrivateKeyObject","isCryptoKey","parseKeyEncoding","parsePrivateKeyEncoding","parsePublicKeyEncoding"],"sourceRoot":"../../../src","sources":["keys/index.ts"],"mappings":";;AAAA,SACEA,SAAS,EACTC,SAAS,EACTC,eAAe,EACfC,eAAe,EACfC,gBAAgB,QACX,WAAW;AAClB;AACA;AACA,SACEC,WAAW,EACXC,gBAAgB,EAChBC,uBAAuB,EACvBC,sBAAsB,QACjB,SAAS;AAEhB;AACE;AACA;AACA;AACA;AACAR,SAAS;AACT;AACAC,SAAS;AACT;AACA;AACA;;AAEA;AACAO,sBAAsB,EACtBD,uBAAuB,EACvBD,gBAAgB;AAChB;AACA;AACA;AACAJ,eAAe,EACfC,eAAe,EACfC,gBAAgB;AAChB;AACAC;AACA;AAAA","ignoreList":[]}
@@ -0,0 +1,41 @@
1
+ // import { KeyObject, PublicKeyObject, PrivateKeyObject } from '.';
2
+ // import { ed25519 } from '../ed25519';
3
+ // import type {
4
+ // BinaryLike,
5
+ // BinaryLikeNode,
6
+ // SignCallback,
7
+ // VerifyCallback,
8
+ // } from '../utils';
9
+
10
+ // export function sign(
11
+ // algorithm: string | null | undefined,
12
+ // data: BinaryLike,
13
+ // key: BinaryLikeNode | KeyObject,
14
+ // callback: SignCallback,
15
+ // ): ArrayBuffer {
16
+ // console.log('sign ', algorithm, data, key, callback);
17
+ // return new ArrayBuffer(32);
18
+ // }
19
+
20
+ // export function verify(
21
+ // algorithm: string | null | undefined,
22
+ // data: BinaryLike,
23
+ // key: BinaryLikeNode | KeyObject,
24
+ // signature: ArrayBuffer,
25
+ // callback: VerifyCallback,
26
+ // ): boolean {
27
+ // if (!algorithm) {
28
+ // if (key instanceof PublicKeyObject) {
29
+ // switch (key.asymmetricKeyType) {
30
+ // case 'ed25519':
31
+ // case 'ed448':
32
+ // case 'x25519':
33
+ // case 'x448': {
34
+ // return ed25519.verify(signature, data, key);
35
+ // }
36
+ // }
37
+ // }
38
+ // throw new Error('Verify not implemented', algorithm, data, key, signature, callback);
39
+ // }
40
+ "use strict";
41
+ //# sourceMappingURL=signVerify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["keys/signVerify.ts"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA","ignoreList":[]}
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+
3
+ import { binaryLikeToArrayBuffer, isStringOrBuffer, KeyEncoding, KFormatType } from '../utils';
4
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
5
+ export const isCryptoKey = obj => {
6
+ return obj !== null && obj?.keyObject !== undefined;
7
+ };
8
+
9
+ /**
10
+ * Parses the public key encoding based on an object. keyType must be undefined
11
+ * when this is used to parse an input encoding and must be a valid key type if
12
+ * used to parse an output encoding.
13
+ */
14
+ export function parsePublicKeyEncoding(enc, keyType, objName) {
15
+ return parseKeyEncoding(enc, keyType, keyType ? true : undefined, objName);
16
+ }
17
+
18
+ /**
19
+ * Parses the private key encoding based on an object. keyType must be undefined
20
+ * when this is used to parse an input encoding and must be a valid key type if
21
+ * used to parse an output encoding.
22
+ */
23
+ export function parsePrivateKeyEncoding(enc, keyType, objName) {
24
+ return parseKeyEncoding(enc, keyType, false, objName);
25
+ }
26
+ export function parseKeyEncoding(enc, keyType, isPublic, objName) {
27
+ // validateObject(enc, 'options');
28
+
29
+ const isInput = keyType === undefined;
30
+ const {
31
+ format,
32
+ type
33
+ } = parseKeyFormatAndType(enc, keyType, isPublic, objName);
34
+ let cipher, passphrase, encoding;
35
+ if (isPublic !== true) {
36
+ ({
37
+ cipher,
38
+ passphrase,
39
+ encoding
40
+ } = enc);
41
+ if (!isInput) {
42
+ if (cipher != null) {
43
+ if (typeof cipher !== 'string') throw new Error(`Invalid argument ${option('cipher', objName)}: ${cipher}`);
44
+ if (format === KFormatType.kKeyFormatDER && (type === KeyEncoding.kKeyEncodingPKCS1 || type === KeyEncoding.kKeyEncodingSEC1)) {
45
+ throw new Error(`Incompatible key options ${encodingNames[type]} does not support encryption`);
46
+ }
47
+ } else if (passphrase !== undefined) {
48
+ throw new Error(`invalid argument ${option('cipher', objName)}: ${cipher}`);
49
+ }
50
+ }
51
+ if (isInput && passphrase !== undefined && !isStringOrBuffer(passphrase) || !isInput && cipher != null && !isStringOrBuffer(passphrase)) {
52
+ throw new Error(`Invalid argument value ${option('passphrase', objName)}: ${passphrase}`);
53
+ }
54
+ }
55
+ if (passphrase !== undefined) passphrase = binaryLikeToArrayBuffer(passphrase, encoding);
56
+ return {
57
+ format,
58
+ type,
59
+ cipher,
60
+ passphrase
61
+ };
62
+ }
63
+ const encodingNames = {
64
+ [KeyEncoding.kKeyEncodingPKCS1]: 'pkcs1',
65
+ [KeyEncoding.kKeyEncodingPKCS8]: 'pkcs8',
66
+ [KeyEncoding.kKeyEncodingSPKI]: 'spki',
67
+ [KeyEncoding.kKeyEncodingSEC1]: 'sec1'
68
+ };
69
+ function option(name, objName) {
70
+ return objName === undefined ? `options.${name}` : `options.${objName}.${name}`;
71
+ }
72
+ function parseKeyFormat(formatStr, defaultFormat, optionName) {
73
+ if (formatStr === undefined && defaultFormat !== undefined) return defaultFormat;else if (formatStr === 'pem') return KFormatType.kKeyFormatPEM;else if (formatStr === 'der') return KFormatType.kKeyFormatDER;else if (formatStr === 'jwk') return KFormatType.kKeyFormatJWK;
74
+ throw new Error(`Invalid key format str: ${optionName}`);
75
+ }
76
+ function parseKeyType(typeStr, required, keyType, isPublic, optionName) {
77
+ if (typeStr === undefined && !required) {
78
+ return undefined;
79
+ } else if (typeStr === 'pkcs1') {
80
+ if (keyType !== undefined && keyType !== 'rsa') {
81
+ throw new Error(`Crypto incompatible key options: ${typeStr} can only be used for RSA keys`);
82
+ }
83
+ return KeyEncoding.kKeyEncodingPKCS1;
84
+ } else if (typeStr === 'spki' && isPublic !== false) {
85
+ return KeyEncoding.kKeyEncodingSPKI;
86
+ } else if (typeStr === 'pkcs8' && isPublic !== true) {
87
+ return KeyEncoding.kKeyEncodingPKCS8;
88
+ } else if (typeStr === 'sec1' && isPublic !== true) {
89
+ if (keyType !== undefined && keyType !== 'ec') {
90
+ throw new Error(`Incompatible key options ${typeStr} can only be used for EC keys`);
91
+ }
92
+ return KeyEncoding.kKeyEncodingSEC1;
93
+ }
94
+ throw new Error(`Invalid option ${optionName} - ${typeStr}`);
95
+ }
96
+ function parseKeyFormatAndType(enc, keyType, isPublic, objName) {
97
+ const {
98
+ format: formatStr,
99
+ type: typeStr
100
+ } = enc;
101
+ const isInput = keyType === undefined;
102
+ const format = parseKeyFormat(formatStr, isInput ? KFormatType.kKeyFormatPEM : undefined, option('format', objName));
103
+ const isRequired = (!isInput || format === KFormatType.kKeyFormatDER) && format !== KFormatType.kKeyFormatJWK;
104
+ const type = parseKeyType(typeStr, isRequired, keyType, isPublic, option('type', objName));
105
+ return {
106
+ format,
107
+ type
108
+ };
109
+ }
110
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["binaryLikeToArrayBuffer","isStringOrBuffer","KeyEncoding","KFormatType","isCryptoKey","obj","keyObject","undefined","parsePublicKeyEncoding","enc","keyType","objName","parseKeyEncoding","parsePrivateKeyEncoding","isPublic","isInput","format","type","parseKeyFormatAndType","cipher","passphrase","encoding","Error","option","kKeyFormatDER","kKeyEncodingPKCS1","kKeyEncodingSEC1","encodingNames","kKeyEncodingPKCS8","kKeyEncodingSPKI","name","parseKeyFormat","formatStr","defaultFormat","optionName","kKeyFormatPEM","kKeyFormatJWK","parseKeyType","typeStr","required","isRequired"],"sourceRoot":"../../../src","sources":["keys/utils.ts"],"mappings":"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","ignoreList":[]}
@@ -1,11 +1,20 @@
1
1
  "use strict";
2
2
 
3
- import { NativeQuickCrypto } from './NativeQuickCrypto/NativeQuickCrypto';
4
3
  import { Buffer } from '@craftzdog/react-native-buffer';
5
- import { binaryLikeToArrayBuffer, lazyDOMException, bufferLikeToArrayBuffer, normalizeHashName, HashContext } from './Utils';
4
+ import { NitroModules } from 'react-native-nitro-modules';
5
+ import { HashContext, binaryLikeToArrayBuffer, bufferLikeToArrayBuffer, lazyDOMException, normalizeHashName } from './utils';
6
6
  import { promisify } from 'util';
7
7
  const WRONG_PASS = 'Password must be a string, a Buffer, a typed array or a DataView';
8
- const WRONG_SALT = 'Salt must be a string, a Buffer, a typed array or a DataView';
8
+ const WRONG_SALT = `Salt must be a string, a Buffer, a typed array or a DataView`;
9
+ // to use native bits in sub-functions, use getNative(). don't call it at top-level!
10
+ let native;
11
+ function getNative() {
12
+ if (native == null) {
13
+ // lazy-load the Nitro HybridObject
14
+ native = NitroModules.createHybridObject('Pbkdf2');
15
+ }
16
+ return native;
17
+ }
9
18
  function sanitizeInput(input, errorMsg) {
10
19
  try {
11
20
  return binaryLikeToArrayBuffer(input);
@@ -14,7 +23,6 @@ function sanitizeInput(input, errorMsg) {
14
23
  throw new Error(errorMsg);
15
24
  }
16
25
  }
17
- const nativePbkdf2 = NativeQuickCrypto.pbkdf2;
18
26
  export function pbkdf2(password, salt, iterations, keylen, digest, callback) {
19
27
  if (callback === undefined || typeof callback !== 'function') {
20
28
  throw new Error('No callback provided to pbkdf2');
@@ -22,7 +30,8 @@ export function pbkdf2(password, salt, iterations, keylen, digest, callback) {
22
30
  const sanitizedPassword = sanitizeInput(password, WRONG_PASS);
23
31
  const sanitizedSalt = sanitizeInput(salt, WRONG_SALT);
24
32
  const normalizedDigest = normalizeHashName(digest, HashContext.Node);
25
- nativePbkdf2.pbkdf2(sanitizedPassword, sanitizedSalt, iterations, keylen, normalizedDigest).then(res => {
33
+ getNative();
34
+ native.pbkdf2(sanitizedPassword, sanitizedSalt, iterations, keylen, normalizedDigest).then(res => {
26
35
  callback(null, Buffer.from(res));
27
36
  }, e => {
28
37
  callback(e);
@@ -32,8 +41,9 @@ export function pbkdf2Sync(password, salt, iterations, keylen, digest) {
32
41
  const sanitizedPassword = sanitizeInput(password, WRONG_PASS);
33
42
  const sanitizedSalt = sanitizeInput(salt, WRONG_SALT);
34
43
  const algo = digest ? normalizeHashName(digest, HashContext.Node) : 'sha1';
35
- const result = nativePbkdf2.pbkdf2Sync(sanitizedPassword, sanitizedSalt, iterations, keylen, algo);
36
- return result;
44
+ getNative();
45
+ const result = native.pbkdf2Sync(sanitizedPassword, sanitizedSalt, iterations, keylen, algo);
46
+ return Buffer.from(result);
37
47
  }
38
48
 
39
49
  // We need this because the typescript overload signatures in pbkdf2() above do
@@ -1 +1 @@
1
- {"version":3,"names":["NativeQuickCrypto","Buffer","binaryLikeToArrayBuffer","lazyDOMException","bufferLikeToArrayBuffer","normalizeHashName","HashContext","promisify","WRONG_PASS","WRONG_SALT","sanitizeInput","input","errorMsg","_e","Error","nativePbkdf2","pbkdf2","password","salt","iterations","keylen","digest","callback","undefined","sanitizedPassword","sanitizedSalt","normalizedDigest","Node","then","res","from","e","pbkdf2Sync","algo","result","pbkdf2WithDigest","pbkdf2Promise","pbkdf2DeriveBits","algorithm","baseKey","length","hash","normalizedHash","raw","keyObject","export"],"sourceRoot":"../../src","sources":["pbkdf2.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","NitroModules","HashContext","binaryLikeToArrayBuffer","bufferLikeToArrayBuffer","lazyDOMException","normalizeHashName","promisify","WRONG_PASS","WRONG_SALT","native","getNative","createHybridObject","sanitizeInput","input","errorMsg","_e","Error","pbkdf2","password","salt","iterations","keylen","digest","callback","undefined","sanitizedPassword","sanitizedSalt","normalizedDigest","Node","then","res","from","e","pbkdf2Sync","algo","result","pbkdf2WithDigest","pbkdf2Promise","pbkdf2DeriveBits","algorithm","baseKey","length","hash","normalizedHash","raw","keyObject","export"],"sourceRoot":"../../src","sources":["pbkdf2.ts"],"mappings":"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","ignoreList":[]}
@@ -1,9 +1,17 @@
1
1
  "use strict";
2
2
 
3
- import { abvToArrayBuffer } from './Utils';
4
- import { NativeQuickCrypto } from './NativeQuickCrypto/NativeQuickCrypto';
5
3
  import { Buffer } from '@craftzdog/react-native-buffer';
6
- const random = NativeQuickCrypto.random;
4
+ import { abvToArrayBuffer } from './utils';
5
+ import { NitroModules } from 'react-native-nitro-modules';
6
+ // to use native bits in sub-functions, use getNative(). don't call it at top-level!
7
+ let random;
8
+ function getNative() {
9
+ if (random == null) {
10
+ // lazy-load the Nitro HybridObject
11
+ random = NitroModules.createHybridObject('Random');
12
+ }
13
+ return random;
14
+ }
7
15
  export function randomFill(buffer, ...rest) {
8
16
  if (typeof rest[rest.length - 1] !== 'function') {
9
17
  throw new Error('No callback provided to randomFill');
@@ -18,6 +26,7 @@ export function randomFill(buffer, ...rest) {
18
26
  if (typeof rest[1] === 'function') {
19
27
  offset = rest[0];
20
28
  }
29
+ getNative();
21
30
  random.randomFill(abvToArrayBuffer(buffer), offset, size).then(res => {
22
31
  callback(null, res);
23
32
  }, e => {
@@ -25,19 +34,23 @@ export function randomFill(buffer, ...rest) {
25
34
  });
26
35
  }
27
36
  export function randomFillSync(buffer, offset = 0, size) {
28
- return random.randomFillSync(abvToArrayBuffer(buffer), offset, size ?? buffer.byteLength);
37
+ getNative();
38
+ buffer = abvToArrayBuffer(buffer);
39
+ const res = random.randomFillSync(buffer, offset, size ?? buffer.byteLength);
40
+ buffer = res;
41
+ return buffer;
29
42
  }
30
43
  export function randomBytes(size, callback) {
31
44
  const buf = new Buffer(size);
32
45
  if (callback === undefined) {
33
- randomFillSync(buf, 0, size);
46
+ randomFillSync(buf.buffer, 0, size);
34
47
  return buf;
35
48
  }
36
- randomFill(buf, 0, size, error => {
49
+ randomFill(buf.buffer, 0, size, (error, res) => {
37
50
  if (error) {
38
51
  callback(error);
39
52
  }
40
- callback(null, buf);
53
+ callback(null, Buffer.from(res));
41
54
  });
42
55
  }
43
56
  export const rng = randomBytes;
@@ -51,7 +64,7 @@ const RAND_MAX = 0xffffffffffff;
51
64
 
52
65
  // Cache random data to use in randomInt. The cache size must be evenly
53
66
  // divisible by 6 because each attempt to obtain a random int uses 6 bytes.
54
- const randomCache = new Buffer(6 * 1024);
67
+ let randomCache = new Buffer(6 * 1024);
55
68
  let randomCacheOffset = randomCache.length;
56
69
  let asyncCacheFillInProgress = false;
57
70
  const asyncCachePendingTasks = [];
@@ -146,11 +159,14 @@ export function randomInt(arg1, arg2, callback) {
146
159
  function asyncRefillRandomIntCache() {
147
160
  if (asyncCacheFillInProgress) return;
148
161
  asyncCacheFillInProgress = true;
149
- randomFill(randomCache, err => {
162
+ randomFill(randomCache, (err, res) => {
150
163
  asyncCacheFillInProgress = false;
151
164
  const tasks = asyncCachePendingTasks;
152
165
  const errorReceiver = err && tasks.shift();
153
- if (!err) randomCacheOffset = 0;
166
+ if (!err) {
167
+ randomCache = Buffer.from(res);
168
+ randomCacheOffset = 0;
169
+ }
154
170
 
155
171
  // Restart all pending tasks. If an error occurred, we only notify a single
156
172
  // callback (errorReceiver) about it. This way, every async call to
@@ -1 +1 @@
1
- {"version":3,"names":["abvToArrayBuffer","NativeQuickCrypto","Buffer","random","randomFill","buffer","rest","length","Error","callback","offset","size","byteLength","then","res","e","randomFillSync","randomBytes","buf","undefined","error","rng","pseudoRandomBytes","prng","RAND_MAX","randomCache","randomCacheOffset","asyncCacheFillInProgress","asyncCachePendingTasks","randomInt","arg1","arg2","max","min","minNotSpecified","TypeError","isSync","Number","isSafeInteger","range","randLimit","x","readUIntBE","n","process","nextTick","push","asyncRefillRandomIntCache","err","tasks","errorReceiver","shift","splice","forEach","task","getRandomValues","data","byteToHex","i","toString","slice","randomUUID","toLowerCase"],"sourceRoot":"../../src","sources":["random.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","abvToArrayBuffer","NitroModules","random","getNative","createHybridObject","randomFill","buffer","rest","length","Error","callback","offset","size","byteLength","then","res","e","randomFillSync","randomBytes","buf","undefined","error","from","rng","pseudoRandomBytes","prng","RAND_MAX","randomCache","randomCacheOffset","asyncCacheFillInProgress","asyncCachePendingTasks","randomInt","arg1","arg2","max","min","minNotSpecified","TypeError","isSync","Number","isSafeInteger","range","randLimit","x","readUIntBE","n","process","nextTick","push","asyncRefillRandomIntCache","err","tasks","errorReceiver","shift","splice","forEach","task","getRandomValues","data","byteToHex","i","toString","slice","randomUUID","toLowerCase"],"sourceRoot":"../../src","sources":["random.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=edKeyPair.nitro.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/rsa.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["specs/edKeyPair.nitro.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=keyObjectHandle.nitro.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sourceRoot":"../../../src","sources":["NativeQuickCrypto/hmac.ts"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["specs/keyObjectHandle.nitro.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=pbkdf2.nitro.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["specs/pbkdf2.nitro.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+
3
+ export {};
4
+ //# sourceMappingURL=random.nitro.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["specs/random.nitro.ts"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+
3
+ import { Buffer as CraftzdogBuffer } from '@craftzdog/react-native-buffer';
4
+ import { Buffer as SafeBuffer } from 'safe-buffer';
5
+ /**
6
+ * Converts supplied argument to an ArrayBuffer. Note this does not copy the
7
+ * data so it is faster than toArrayBuffer. Not copying is important for
8
+ * functions like randomFill which need to be able to write to the underlying
9
+ * buffer.
10
+ * @param buf
11
+ * @returns ArrayBuffer
12
+ */
13
+ export const abvToArrayBuffer = buf => {
14
+ if (CraftzdogBuffer.isBuffer(buf)) {
15
+ return buf.buffer;
16
+ }
17
+ if (ArrayBuffer.isView(buf)) {
18
+ return buf.buffer;
19
+ }
20
+ return buf;
21
+ };
22
+
23
+ /**
24
+ * Converts supplied argument to an ArrayBuffer. Note this copies data if the
25
+ * supplied buffer has the .slice() method, so can be a bit slow.
26
+ * @param buf
27
+ * @returns ArrayBuffer
28
+ */
29
+ export function toArrayBuffer(buf) {
30
+ if (CraftzdogBuffer.isBuffer(buf) || ArrayBuffer.isView(buf)) {
31
+ if (buf?.buffer?.slice) {
32
+ return buf.buffer.slice(buf.byteOffset, buf.byteOffset + buf.byteLength);
33
+ } else {
34
+ return buf.buffer;
35
+ }
36
+ }
37
+ const ab = new ArrayBuffer(buf.length);
38
+ const view = new Uint8Array(ab);
39
+ for (let i = 0; i < buf.length; ++i) {
40
+ view[i] = SafeBuffer.isBuffer(buf) ? buf.readUInt8(i) : buf[i];
41
+ }
42
+ return ab;
43
+ }
44
+ export function bufferLikeToArrayBuffer(buf) {
45
+ // Buffer
46
+ if (CraftzdogBuffer.isBuffer(buf) || SafeBuffer.isBuffer(buf)) {
47
+ return toArrayBuffer(buf);
48
+ }
49
+ // ArrayBufferView
50
+ if (ArrayBuffer.isView(buf)) {
51
+ return toArrayBuffer(buf);
52
+ }
53
+ // ArrayBuffer
54
+ return buf;
55
+ }
56
+ export function binaryLikeToArrayBuffer(input,
57
+ // CipherKey adds compat with node types
58
+ encoding = 'utf-8') {
59
+ // string
60
+ if (typeof input === 'string') {
61
+ if (encoding === 'buffer') {
62
+ throw new Error('Cannot create a buffer from a string with a buffer encoding');
63
+ }
64
+ const buffer = CraftzdogBuffer.from(input, encoding);
65
+ return buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.byteLength);
66
+ }
67
+
68
+ // Buffer
69
+ if (CraftzdogBuffer.isBuffer(input) || SafeBuffer.isBuffer(input)) {
70
+ return toArrayBuffer(input);
71
+ }
72
+
73
+ // ArrayBufferView
74
+ // TODO add further binary types to BinaryLike, UInt8Array and so for have this array as property
75
+ if (ArrayBuffer.isView(input)) {
76
+ return toArrayBuffer(input);
77
+ }
78
+
79
+ // ArrayBuffer
80
+ if (input instanceof ArrayBuffer) {
81
+ return input;
82
+ }
83
+
84
+ // if (!(input instanceof ArrayBuffer)) {
85
+ // try {
86
+ // // this is a strange fallback case and input is unknown at this point
87
+ // const buffer = Buffer.from(input as unknown as string);
88
+ // return buffer.buffer.slice(
89
+ // buffer.byteOffset,
90
+ // buffer.byteOffset + buffer.byteLength
91
+ // );
92
+ // } catch(e: unknown) {
93
+ // console.log('throwing 1');
94
+ // const err = e as Error;
95
+ // throw new Error(err.message);
96
+ // }
97
+ // }
98
+
99
+ // TODO: handle if input is KeyObject?
100
+
101
+ throw new Error('input could not be converted to ArrayBuffer');
102
+ }
103
+ export function ab2str(buf, encoding = 'hex') {
104
+ return CraftzdogBuffer.from(buf).toString(encoding);
105
+ }
106
+ export const kEmptyObject = Object.freeze(Object.create(null));
107
+ //# sourceMappingURL=conversion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Buffer","CraftzdogBuffer","SafeBuffer","abvToArrayBuffer","buf","isBuffer","buffer","ArrayBuffer","isView","toArrayBuffer","slice","byteOffset","byteLength","ab","length","view","Uint8Array","i","readUInt8","bufferLikeToArrayBuffer","binaryLikeToArrayBuffer","input","encoding","Error","from","ab2str","toString","kEmptyObject","Object","freeze","create"],"sourceRoot":"../../../src","sources":["utils/conversion.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+
3
+ export function lazyDOMException(message, domName) {
4
+ let cause = '';
5
+ if (typeof domName !== 'string') {
6
+ cause = `\nCaused by: ${domName.cause}`;
7
+ }
8
+ return new Error(`[${domName}]: ${message}${cause}`);
9
+ }
10
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["lazyDOMException","message","domName","cause","Error"],"sourceRoot":"../../../src","sources":["utils/errors.ts"],"mappings":";;AAOA,OAAO,SAASA,gBAAgBA,CAACC,OAAe,EAAEC,OAAgB,EAAS;EACzE,IAAIC,KAAK,GAAG,EAAE;EACd,IAAI,OAAOD,OAAO,KAAK,QAAQ,EAAE;IAC/BC,KAAK,GAAG,gBAAgBD,OAAO,CAACC,KAAK,EAAE;EACzC;EAEA,OAAO,IAAIC,KAAK,CAAC,IAAIF,OAAO,MAAMD,OAAO,GAAGE,KAAK,EAAE,CAAC;AACtD","ignoreList":[]}
@@ -74,18 +74,15 @@ const kHashNames = {
74
74
  }
75
75
  export function normalizeHashName(algo, context = HashContext.Node) {
76
76
  if (typeof algo !== 'undefined') {
77
- if (typeof algo === 'object') {
78
- algo = algo.name;
79
- }
80
77
  const normAlgo = algo.toString().toLowerCase();
81
78
  try {
82
79
  const alias = kHashNames[normAlgo][context];
83
80
  if (alias) return alias;
84
81
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
85
82
  } catch (_e) {
86
- /* empty */
83
+ // ignore
87
84
  }
88
85
  }
89
86
  throw new Error(`Invalid Hash Algorithm: ${algo}`);
90
87
  }
91
- //# sourceMappingURL=Hashnames.js.map
88
+ //# sourceMappingURL=hashnames.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["HashContext","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":["utils/hashnames.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ export * from './conversion';
4
+ export * from './errors';
5
+ export * from './hashnames';
6
+ export * from './types';
7
+ export * from './validation';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../src","sources":["utils/index.ts"],"mappings":";;AAAA,cAAc,cAAc;AAC5B,cAAc,UAAU;AACxB,cAAc,aAAa;AAC3B,cAAc,SAAS;AACvB,cAAc,cAAc","ignoreList":[]}