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
package/cpp/Utils/logs.h DELETED
@@ -1,38 +0,0 @@
1
- #ifdef ANDROID
2
- // LOGS ANDROID
3
- #include <android/log.h>
4
- #define LOG_TAG "react-native-quick-crypto"
5
- #define LOGV(...) __android_log_print(ANDROID_LOG_VERBOSE, LOG_TAG, __VA_ARGS__)
6
- #define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, LOG_TAG, __VA_ARGS__)
7
- #define LOGI(...) __android_log_print(ANDROID_LOG_INFO, LOG_TAG, __VA_ARGS__)
8
- #define LOGW(...) __android_log_print(ANDROID_LOG_WARN, LOG_TAG, __VA_ARGS__)
9
- #define LOGE(...) __android_log_print(ANDROID_LOG_ERROR, LOG_TAG, __VA_ARGS__)
10
- #define LOGSIMPLE(...)
11
- #else
12
- // LOGS NO ANDROID
13
- #include <stdio.h>
14
- #define LOG_TAG "react-native-quick-crypto"
15
- #define LOGV(...) \
16
- printf(" "); \
17
- printf(__VA_ARGS__); \
18
- printf("\t - <%s> \n", LOG_TAG);
19
- #define LOGD(...) \
20
- printf(" "); \
21
- printf(__VA_ARGS__); \
22
- printf("\t - <%s> \n", LOG_TAG);
23
- #define LOGI(...) \
24
- printf(" "); \
25
- printf(__VA_ARGS__); \
26
- printf("\t - <%s> \n", LOG_TAG);
27
- #define LOGW(...) \
28
- printf(" * Warning: "); \
29
- printf(__VA_ARGS__); \
30
- printf("\t - <%s> \n", LOG_TAG);
31
- #define LOGE(...) \
32
- printf(" *** Error: "); \
33
- printf(__VA_ARGS__); \
34
- printf("\t - <%s> \n", LOG_TAG);
35
- #define LOGSIMPLE(...) \
36
- printf(" "); \
37
- printf(__VA_ARGS__);
38
- #endif // ANDROID
package/cpp/Utils/node.h DELETED
@@ -1,13 +0,0 @@
1
- // BINARY is a deprecated alias of LATIN1.
2
- // BASE64URL is not currently exposed to the JavaScript side.
3
- enum encoding {
4
- ASCII,
5
- UTF8,
6
- BASE64,
7
- UCS2,
8
- BINARY,
9
- HEX,
10
- BUFFER,
11
- BASE64URL,
12
- LATIN1 = BINARY
13
- };
@@ -1,164 +0,0 @@
1
- //
2
- // Created by Szymon on 25/02/2022.
3
- //
4
-
5
- #include "MGLPbkdf2HostObject.h"
6
-
7
- #ifdef ANDROID
8
- #include "JSIUtils/MGLTypedArray.h"
9
- #else
10
- #include "MGLTypedArray.h"
11
- #endif
12
- #include <openssl/dsa.h>
13
- #include <openssl/ec.h>
14
- #include <openssl/err.h>
15
- #include <openssl/evp.h>
16
- #include <openssl/kdf.h>
17
- #include <openssl/rsa.h>
18
- #include <openssl/ssl.h>
19
-
20
- #include <memory>
21
- #include <utility>
22
-
23
- #include "fastpbkdf2.h"
24
-
25
- namespace margelo {
26
- namespace jsi = facebook::jsi;
27
- namespace react = facebook::react;
28
-
29
- MGLPbkdf2HostObject::MGLPbkdf2HostObject(
30
- std::shared_ptr<react::CallInvoker> jsCallInvoker,
31
- std::shared_ptr<DispatchQueue::dispatch_queue> workerQueue)
32
- : MGLSmartHostObject(jsCallInvoker, workerQueue) {
33
- this->fields.push_back(buildPair(
34
- "pbkdf2", JSIF([this]) {
35
- if (count != 5) {
36
- throw jsi::JSError(runtime,
37
- "fastpbkdf2(..) expects exactly 5 arguments!");
38
- }
39
-
40
- auto password = arguments[0].asObject(runtime).getArrayBuffer(runtime);
41
- auto passwordSize = password.size(runtime);
42
- auto *passwordData = password.data(runtime);
43
- auto passwordPreventGC =
44
- std::make_shared<jsi::ArrayBuffer>(std::move(password));
45
-
46
- auto salt = arguments[1].asObject(runtime).getArrayBuffer(runtime);
47
- auto saltSize = salt.size(runtime);
48
- auto *saltData = salt.data(runtime);
49
- auto saltPreventGC =
50
- std::make_shared<jsi::ArrayBuffer>(std::move(salt));
51
-
52
- auto iterations = arguments[2].asNumber();
53
- auto keyLength = arguments[3].asNumber();
54
- auto hashAlgorithm = arguments[4].asString(runtime).utf8(runtime);
55
-
56
- MGLTypedArray<MGLTypedArrayKind::Uint8Array> resultArray(
57
- runtime, static_cast<size_t>(keyLength));
58
- auto result = resultArray.getBuffer(runtime);
59
- auto resultSize = result.size(runtime);
60
- auto *resultData = result.data(runtime);
61
- auto resultPreventGC =
62
- std::make_shared<jsi::ArrayBuffer>(std::move(result));
63
-
64
- return react::createPromiseAsJSIValue(
65
- runtime, [=](jsi::Runtime &runtime,
66
- std::shared_ptr<react::Promise> promise) {
67
- // TODO(Szymon) implement proper errors
68
- this->runOnWorkerThread([=]() {
69
- if (hashAlgorithm == "sha1") {
70
- fastpbkdf2_hmac_sha1(passwordData, passwordSize, saltData,
71
- saltSize,
72
- static_cast<uint32_t>(iterations),
73
- resultData, resultSize);
74
- } else if (hashAlgorithm == "sha256") {
75
- fastpbkdf2_hmac_sha256(passwordData, passwordSize, saltData,
76
- saltSize,
77
- static_cast<uint32_t>(iterations),
78
- resultData, resultSize);
79
- } else if (hashAlgorithm == "sha512") {
80
- fastpbkdf2_hmac_sha512(passwordData, passwordSize, saltData,
81
- saltSize,
82
- static_cast<uint32_t>(iterations),
83
- resultData, resultSize);
84
- } else {
85
- auto *digest = EVP_get_digestbyname(hashAlgorithm.c_str());
86
- if (digest == nullptr) {
87
- this->runOnJSThread([=]() {
88
- promise->reject("Invalid hash-algorithm!");
89
- auto preventGC = passwordPreventGC;
90
- auto preventGC2 = saltPreventGC;
91
- });
92
- }
93
- char *passAsCharA = reinterpret_cast<char *>(passwordData);
94
- const unsigned char *saltAsCharA =
95
- reinterpret_cast<const unsigned char *>(saltData);
96
- unsigned char *resultAsCharA =
97
- reinterpret_cast<unsigned char *>(resultData);
98
- PKCS5_PBKDF2_HMAC(passAsCharA, passwordSize, saltAsCharA,
99
- saltSize, static_cast<uint32_t>(iterations),
100
- digest, resultSize, resultAsCharA);
101
- }
102
- this->runOnJSThread([=]() {
103
- promise->resolve(
104
- jsi::ArrayBuffer(std::move(*resultPreventGC)));
105
- auto preventGC = passwordPreventGC;
106
- auto preventGC2 = saltPreventGC;
107
- });
108
- });
109
- });
110
-
111
- return resultArray;
112
- }));
113
-
114
- this->fields.push_back(HOST_LAMBDA("pbkdf2Sync", {
115
- if (count != 5) {
116
- throw jsi::JSError(runtime,
117
- "fastpbkdf2Sync(..) expects exactly 5 arguments!");
118
- }
119
-
120
- auto password = arguments[0].asObject(runtime).getArrayBuffer(runtime);
121
- auto salt = arguments[1].asObject(runtime).getArrayBuffer(runtime);
122
- auto iterations = arguments[2].asNumber();
123
- auto keyLength = arguments[3].asNumber();
124
- auto hashAlgorithm = arguments[4].asString(runtime).utf8(runtime);
125
-
126
- MGLTypedArray<MGLTypedArrayKind::Uint8Array> resultArray(
127
- runtime, static_cast<size_t>(keyLength));
128
- auto result = resultArray.getBuffer(runtime);
129
-
130
- if (hashAlgorithm == "sha1") {
131
- fastpbkdf2_hmac_sha1(password.data(runtime), password.size(runtime),
132
- salt.data(runtime), salt.size(runtime),
133
- static_cast<uint32_t>(iterations),
134
- result.data(runtime), result.size(runtime));
135
- } else if (hashAlgorithm == "sha256") {
136
- fastpbkdf2_hmac_sha256(password.data(runtime), password.size(runtime),
137
- salt.data(runtime), salt.size(runtime),
138
- static_cast<uint32_t>(iterations),
139
- result.data(runtime), result.size(runtime));
140
- } else if (hashAlgorithm == "sha512") {
141
- fastpbkdf2_hmac_sha512(password.data(runtime), password.size(runtime),
142
- salt.data(runtime), salt.size(runtime),
143
- static_cast<uint32_t>(iterations),
144
- result.data(runtime), result.size(runtime));
145
- } else {
146
- auto *digest = EVP_get_digestbyname(hashAlgorithm.c_str());
147
- if (digest == nullptr) {
148
- throw jsi::JSError(runtime, "Invalid hash-algorithm!");
149
- }
150
- char *passAsCharA = reinterpret_cast<char *>(password.data(runtime));
151
- const unsigned char *saltAsCharA =
152
- reinterpret_cast<const unsigned char *>(salt.data(runtime));
153
- unsigned char *resultAsCharA =
154
- reinterpret_cast<unsigned char *>(result.data(runtime));
155
- PKCS5_PBKDF2_HMAC(passAsCharA, password.size(runtime), saltAsCharA,
156
- salt.size(runtime), static_cast<uint32_t>(iterations),
157
- digest, result.size(runtime), resultAsCharA);
158
- }
159
-
160
- return resultArray;
161
- }));
162
- }
163
-
164
- } // namespace margelo
@@ -1,29 +0,0 @@
1
- //
2
- // Created by Szymon on 25/02/2022.
3
- //
4
-
5
- #ifndef MGL_PBKDF2HOSTOBJECT_H
6
- #define MGL_PBKDF2HOSTOBJECT_H
7
-
8
- #include <memory>
9
-
10
- #ifdef ANDROID
11
- #include "JSIUtils/MGLSmartHostObject.h"
12
- #include "fastpbkdf2/fastpbkdf2.h"
13
- #else
14
- #include "MGLSmartHostObject.h"
15
- #include "fastpbkdf2.h"
16
- #endif
17
-
18
- namespace margelo {
19
- namespace jsi = facebook::jsi;
20
-
21
- class MGLPbkdf2HostObject : public MGLSmartHostObject {
22
- public:
23
- MGLPbkdf2HostObject(
24
- std::shared_ptr<react::CallInvoker> jsCallInvoker,
25
- std::shared_ptr<DispatchQueue::dispatch_queue> workerQueue);
26
- };
27
-
28
- } // namespace margelo
29
- #endif // MGL_PBKDF2HOSTOBJECT_H
@@ -1,125 +0,0 @@
1
- //
2
- // MGLWebCrypto.cpp
3
- // react-native-quick-crypto
4
- //
5
- // Created by Oscar Franco on 1/12/23.
6
- //
7
-
8
- #include "MGLWebCrypto.h"
9
-
10
- #include <memory>
11
- #include <utility>
12
- #include "MGLKeys.h"
13
-
14
- #ifdef ANDROID
15
- #include "JSIUtils/MGLJSIMacros.h"
16
- #include "Sig/MGLSignHostObjects.h"
17
- #include "Cipher/MGLRsa.h"
18
- #include "Utils/MGLUtils.h"
19
- #include "webcrypto/crypto_aes.h"
20
- #include "webcrypto/crypto_ec.h"
21
- #include "webcrypto/crypto_keygen.h"
22
- #else
23
- #include "MGLJSIMacros.h"
24
- #include "MGLSignHostObjects.h"
25
- #include "MGLRsa.h"
26
- #include "MGLUtils.h"
27
- #include "crypto_aes.h"
28
- #include "crypto_ec.h"
29
- #include "crypto_keygen.h"
30
- #endif
31
-
32
- namespace margelo {
33
-
34
- namespace jsi = facebook::jsi;
35
- namespace react = facebook::react;
36
-
37
- MGLWebCryptoHostObject::MGLWebCryptoHostObject(
38
- std::shared_ptr<react::CallInvoker> jsCallInvoker,
39
- std::shared_ptr<DispatchQueue::dispatch_queue> workerQueue)
40
- : MGLSmartHostObject(jsCallInvoker, workerQueue) {
41
-
42
- auto aesCipher = JSIF([=]) {
43
- auto aes = AESCipher();
44
- auto params = aes.GetParamsFromJS(runtime, arguments);
45
- ByteSource out;
46
- WebCryptoCipherStatus status = aes.DoCipher(params, &out);
47
- if (status != WebCryptoCipherStatus::OK) {
48
- throw jsi::JSError(runtime, "error in DoCipher, status: " +
49
- std::to_string(static_cast<int>(status)));
50
- }
51
- return toJSI(runtime, std::move(out));
52
- };
53
-
54
- auto createKeyObjectHandle = JSIF([=]) {
55
- auto keyObjectHandleHostObject = std::make_shared<KeyObjectHandle>();
56
- return jsi::Object::createFromHostObject(runtime, keyObjectHandleHostObject);
57
- };
58
-
59
- auto ecExportKey = JSIF([=]) {
60
- ByteSource out;
61
- std::shared_ptr<KeyObjectHandle> handle =
62
- std::static_pointer_cast<KeyObjectHandle>(
63
- arguments[1].asObject(runtime).getHostObject(runtime));
64
- std::shared_ptr<KeyObjectData> key_data = handle->Data();
65
- WebCryptoKeyExportStatus status = ECDH::doExport(runtime,
66
- key_data,
67
- static_cast<WebCryptoKeyFormat>(arguments[0].asNumber()),
68
- {}, // blank params
69
- &out);
70
- if (status != WebCryptoKeyExportStatus::OK) {
71
- throw jsi::JSError(runtime, "error exporting key, status: " + std::to_string(static_cast<int>(status)));
72
- }
73
- return toJSI(runtime, std::move(out));
74
- };
75
-
76
- auto generateSecretKeySync = JSIF([=]) {
77
- auto skg = new SecretKeyGen();
78
- CHECK(skg->GetParamsFromJS(runtime, arguments));
79
- CHECK(skg->DoKeyGen());
80
- auto out = jsi::Object::createFromHostObject(runtime, skg->GetHandle());
81
- return jsi::Value(std::move(out));
82
- };
83
-
84
- auto rsaCipher = JSIF([=]) {
85
- auto rsa = RSACipher();
86
- auto params = rsa.GetParamsFromJS(runtime, arguments);
87
- ByteSource out;
88
- WebCryptoCipherStatus status = rsa.DoCipher(params, &out);
89
- if (status != WebCryptoCipherStatus::OK) {
90
- throw jsi::JSError(runtime, "error in DoCipher, status: " +
91
- std::to_string(static_cast<int>(status)));
92
- }
93
- return toJSI(runtime, std::move(out));
94
- };
95
-
96
- auto rsaExportKey = JSIF([=]) {
97
- ByteSource out;
98
- auto rsa = new RsaKeyExport();
99
- CHECK(rsa->GetParamsFromJS(runtime, arguments));
100
- WebCryptoKeyExportStatus status = rsa->DoExport(&out);
101
- if (status != WebCryptoKeyExportStatus::OK) {
102
- throw jsi::JSError(runtime, "Error exporting key");
103
- }
104
- return toJSI(runtime, std::move(out));
105
- };
106
-
107
- auto signVerify = JSIF([=]) {
108
- auto ssv = SubtleSignVerify();
109
- auto params = ssv.GetParamsFromJS(runtime, arguments);
110
- ByteSource out;
111
- ssv.DoSignVerify(runtime, params, out);
112
- return ssv.EncodeOutput(runtime, params, out);
113
- };
114
-
115
- this->fields.push_back(buildPair("aesCipher", aesCipher));
116
- this->fields.push_back(buildPair("createKeyObjectHandle", createKeyObjectHandle));
117
- this->fields.push_back(buildPair("ecExportKey", ecExportKey));
118
- this->fields.push_back(GenerateSecretKeyFieldDefinition(jsCallInvoker, workerQueue));
119
- this->fields.push_back(buildPair("generateSecretKeySync", generateSecretKeySync));
120
- this->fields.push_back(buildPair("rsaCipher", rsaCipher));
121
- this->fields.push_back(buildPair("rsaExportKey", rsaExportKey));
122
- this->fields.push_back(buildPair("signVerify", signVerify));
123
- };
124
-
125
- } // namespace margelo
@@ -1,32 +0,0 @@
1
- //
2
- // MGLWebCrypto.hpp
3
- // react-native-quick-crypto
4
- //
5
- // Created by Oscar Franco on 1/12/23.
6
- //
7
-
8
- #ifndef MGLWebCryptoHostObject_h
9
- #define MGLWebCryptoHostObject_h
10
-
11
- #include <jsi/jsi.h>
12
- #include <memory>
13
-
14
- #ifdef ANDROID
15
- #include "JSIUtils/MGLSmartHostObject.h"
16
- #else
17
- #include "MGLSmartHostObject.h"
18
- #endif
19
-
20
- namespace margelo {
21
- namespace jsi = facebook::jsi;
22
-
23
- class MGLWebCryptoHostObject : public MGLSmartHostObject {
24
- public:
25
- MGLWebCryptoHostObject(
26
- std::shared_ptr<react::CallInvoker> jsCallInvoker,
27
- std::shared_ptr<DispatchQueue::dispatch_queue> workerQueue);
28
- };
29
-
30
- } // namespace margelo
31
-
32
- #endif /* MGLWebCrypto_hpp */