react-native-quick-crypto 1.1.0 → 1.1.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 (687) hide show
  1. package/android/build.gradle +5 -1
  2. package/cpp/argon2/HybridArgon2.cpp +10 -3
  3. package/cpp/blake3/HybridBlake3.cpp +5 -3
  4. package/cpp/cipher/CCMCipher.cpp +29 -16
  5. package/cpp/cipher/CCMCipher.hpp +2 -4
  6. package/cpp/cipher/ChaCha20Cipher.cpp +14 -18
  7. package/cpp/cipher/ChaCha20Cipher.hpp +2 -4
  8. package/cpp/cipher/ChaCha20Poly1305Cipher.cpp +34 -23
  9. package/cpp/cipher/ChaCha20Poly1305Cipher.hpp +2 -4
  10. package/cpp/cipher/GCMCipher.cpp +14 -15
  11. package/cpp/cipher/HybridCipher.cpp +39 -36
  12. package/cpp/cipher/HybridCipher.hpp +17 -1
  13. package/cpp/cipher/HybridRsaCipher.cpp +74 -29
  14. package/cpp/cipher/OCBCipher.cpp +4 -3
  15. package/cpp/cipher/XChaCha20Poly1305Cipher.cpp +14 -13
  16. package/cpp/cipher/XSalsa20Cipher.cpp +72 -6
  17. package/cpp/cipher/XSalsa20Cipher.hpp +25 -3
  18. package/cpp/cipher/XSalsa20Poly1305Cipher.cpp +21 -25
  19. package/cpp/dh/HybridDiffieHellman.cpp +29 -0
  20. package/cpp/ec/HybridEcKeyPair.cpp +35 -33
  21. package/cpp/ec/HybridEcKeyPair.hpp +3 -7
  22. package/cpp/ecdh/HybridECDH.cpp +23 -0
  23. package/cpp/ed25519/HybridEdKeyPair.cpp +73 -117
  24. package/cpp/ed25519/HybridEdKeyPair.hpp +5 -9
  25. package/cpp/hash/HybridHash.cpp +5 -7
  26. package/cpp/hkdf/HybridHkdf.cpp +6 -4
  27. package/cpp/hmac/HybridHmac.cpp +4 -6
  28. package/cpp/kmac/HybridKmac.cpp +4 -4
  29. package/cpp/mldsa/HybridMlDsaKeyPair.cpp +37 -49
  30. package/cpp/mlkem/HybridMlKemKeyPair.cpp +39 -43
  31. package/cpp/pbkdf2/HybridPbkdf2.cpp +7 -8
  32. package/cpp/rsa/HybridRsaKeyPair.cpp +5 -8
  33. package/cpp/rsa/HybridRsaKeyPair.hpp +4 -7
  34. package/cpp/scrypt/HybridScrypt.cpp +6 -4
  35. package/cpp/sign/HybridSignHandle.cpp +25 -68
  36. package/cpp/sign/HybridVerifyHandle.cpp +23 -60
  37. package/cpp/utils/HybridUtils.cpp +183 -43
  38. package/cpp/utils/HybridUtils.hpp +9 -2
  39. package/cpp/utils/QuickCryptoUtils.hpp +72 -0
  40. package/lib/commonjs/argon2.js +51 -2
  41. package/lib/commonjs/argon2.js.map +1 -1
  42. package/lib/commonjs/cipher.js +109 -11
  43. package/lib/commonjs/cipher.js.map +1 -1
  44. package/lib/commonjs/dsa.js +8 -2
  45. package/lib/commonjs/dsa.js.map +1 -1
  46. package/lib/commonjs/hash.js +15 -5
  47. package/lib/commonjs/hash.js.map +1 -1
  48. package/lib/commonjs/hkdf.js +33 -6
  49. package/lib/commonjs/hkdf.js.map +1 -1
  50. package/lib/commonjs/hmac.js +15 -5
  51. package/lib/commonjs/hmac.js.map +1 -1
  52. package/lib/commonjs/keys/publicCipher.js +10 -4
  53. package/lib/commonjs/keys/publicCipher.js.map +1 -1
  54. package/lib/commonjs/random.js +11 -2
  55. package/lib/commonjs/random.js.map +1 -1
  56. package/lib/commonjs/rsa.js +12 -5
  57. package/lib/commonjs/rsa.js.map +1 -1
  58. package/lib/commonjs/scrypt.js +47 -6
  59. package/lib/commonjs/scrypt.js.map +1 -1
  60. package/lib/commonjs/subtle.js +76 -5
  61. package/lib/commonjs/subtle.js.map +1 -1
  62. package/lib/commonjs/utils/cipher.js +18 -7
  63. package/lib/commonjs/utils/cipher.js.map +1 -1
  64. package/lib/commonjs/utils/conversion.js +33 -9
  65. package/lib/commonjs/utils/conversion.js.map +1 -1
  66. package/lib/commonjs/utils/timingSafeEqual.js +7 -2
  67. package/lib/commonjs/utils/timingSafeEqual.js.map +1 -1
  68. package/lib/commonjs/x509certificate.js +6 -6
  69. package/lib/commonjs/x509certificate.js.map +1 -1
  70. package/lib/module/argon2.js +51 -2
  71. package/lib/module/argon2.js.map +1 -1
  72. package/lib/module/cipher.js +109 -11
  73. package/lib/module/cipher.js.map +1 -1
  74. package/lib/module/dsa.js +8 -2
  75. package/lib/module/dsa.js.map +1 -1
  76. package/lib/module/hash.js +15 -5
  77. package/lib/module/hash.js.map +1 -1
  78. package/lib/module/hkdf.js +33 -6
  79. package/lib/module/hkdf.js.map +1 -1
  80. package/lib/module/hmac.js +15 -5
  81. package/lib/module/hmac.js.map +1 -1
  82. package/lib/module/keys/publicCipher.js +10 -4
  83. package/lib/module/keys/publicCipher.js.map +1 -1
  84. package/lib/module/random.js +11 -2
  85. package/lib/module/random.js.map +1 -1
  86. package/lib/module/rsa.js +11 -4
  87. package/lib/module/rsa.js.map +1 -1
  88. package/lib/module/scrypt.js +47 -6
  89. package/lib/module/scrypt.js.map +1 -1
  90. package/lib/module/subtle.js +76 -5
  91. package/lib/module/subtle.js.map +1 -1
  92. package/lib/module/utils/cipher.js +18 -7
  93. package/lib/module/utils/cipher.js.map +1 -1
  94. package/lib/module/utils/conversion.js +33 -9
  95. package/lib/module/utils/conversion.js.map +1 -1
  96. package/lib/module/utils/timingSafeEqual.js +8 -3
  97. package/lib/module/utils/timingSafeEqual.js.map +1 -1
  98. package/lib/module/x509certificate.js +6 -6
  99. package/lib/module/x509certificate.js.map +1 -1
  100. package/lib/typescript/argon2.d.ts.map +1 -1
  101. package/lib/typescript/cipher.d.ts +2 -2
  102. package/lib/typescript/cipher.d.ts.map +1 -1
  103. package/lib/typescript/dsa.d.ts.map +1 -1
  104. package/lib/typescript/hash.d.ts +2 -2
  105. package/lib/typescript/hash.d.ts.map +1 -1
  106. package/lib/typescript/hkdf.d.ts.map +1 -1
  107. package/lib/typescript/hmac.d.ts +2 -2
  108. package/lib/typescript/hmac.d.ts.map +1 -1
  109. package/lib/typescript/index.d.ts +1 -1
  110. package/lib/typescript/index.d.ts.map +1 -1
  111. package/lib/typescript/keys/publicCipher.d.ts.map +1 -1
  112. package/lib/typescript/random.d.ts.map +1 -1
  113. package/lib/typescript/rsa.d.ts.map +1 -1
  114. package/lib/typescript/scrypt.d.ts.map +1 -1
  115. package/lib/typescript/specs/utils.nitro.d.ts +0 -2
  116. package/lib/typescript/specs/utils.nitro.d.ts.map +1 -1
  117. package/lib/typescript/subtle.d.ts.map +1 -1
  118. package/lib/typescript/utils/cipher.d.ts +13 -1
  119. package/lib/typescript/utils/cipher.d.ts.map +1 -1
  120. package/lib/typescript/utils/conversion.d.ts +9 -6
  121. package/lib/typescript/utils/conversion.d.ts.map +1 -1
  122. package/lib/typescript/utils/timingSafeEqual.d.ts.map +1 -1
  123. package/lib/typescript/x509certificate.d.ts.map +1 -1
  124. package/nitrogen/generated/shared/c++/HybridUtilsSpec.cpp +0 -2
  125. package/nitrogen/generated/shared/c++/HybridUtilsSpec.hpp +0 -3
  126. package/package.json +37 -5
  127. package/src/argon2.ts +80 -2
  128. package/src/cipher.ts +139 -15
  129. package/src/dsa.ts +11 -2
  130. package/src/hash.ts +17 -7
  131. package/src/hkdf.ts +44 -6
  132. package/src/hmac.ts +17 -7
  133. package/src/keys/publicCipher.ts +10 -4
  134. package/src/random.ts +11 -2
  135. package/src/rsa.ts +18 -4
  136. package/src/scrypt.ts +73 -6
  137. package/src/specs/utils.nitro.ts +0 -2
  138. package/src/subtle.ts +90 -8
  139. package/src/utils/cipher.ts +30 -8
  140. package/src/utils/conversion.ts +58 -20
  141. package/src/utils/timingSafeEqual.ts +8 -3
  142. package/src/x509certificate.ts +5 -6
  143. package/deps/blake3/.cargo/config.toml +0 -2
  144. package/deps/blake3/.git-blame-ignore-revs +0 -2
  145. package/deps/blake3/.github/workflows/build_b3sum.py +0 -38
  146. package/deps/blake3/.github/workflows/ci.yml +0 -491
  147. package/deps/blake3/.github/workflows/tag.yml +0 -43
  148. package/deps/blake3/.github/workflows/upload_github_release_asset.py +0 -73
  149. package/deps/blake3/CONTRIBUTING.md +0 -31
  150. package/deps/blake3/Cargo.toml +0 -135
  151. package/deps/blake3/b3sum/Cargo.lock +0 -513
  152. package/deps/blake3/b3sum/Cargo.toml +0 -26
  153. package/deps/blake3/b3sum/README.md +0 -72
  154. package/deps/blake3/b3sum/src/main.rs +0 -564
  155. package/deps/blake3/b3sum/src/unit_tests.rs +0 -235
  156. package/deps/blake3/b3sum/tests/cli_tests.rs +0 -680
  157. package/deps/blake3/b3sum/what_does_check_do.md +0 -176
  158. package/deps/blake3/benches/bench.rs +0 -623
  159. package/deps/blake3/build.rs +0 -389
  160. package/deps/blake3/c/CMakeLists.txt +0 -383
  161. package/deps/blake3/c/CMakePresets.json +0 -73
  162. package/deps/blake3/c/Makefile.testing +0 -82
  163. package/deps/blake3/c/blake3-config.cmake.in +0 -14
  164. package/deps/blake3/c/blake3_avx2.c +0 -326
  165. package/deps/blake3/c/blake3_avx2_x86-64_unix.S +0 -1815
  166. package/deps/blake3/c/blake3_avx2_x86-64_windows_gnu.S +0 -1817
  167. package/deps/blake3/c/blake3_avx2_x86-64_windows_msvc.asm +0 -1828
  168. package/deps/blake3/c/blake3_avx512.c +0 -1388
  169. package/deps/blake3/c/blake3_avx512_x86-64_unix.S +0 -4824
  170. package/deps/blake3/c/blake3_avx512_x86-64_windows_gnu.S +0 -2615
  171. package/deps/blake3/c/blake3_avx512_x86-64_windows_msvc.asm +0 -2634
  172. package/deps/blake3/c/blake3_c_rust_bindings/Cargo.toml +0 -32
  173. package/deps/blake3/c/blake3_c_rust_bindings/README.md +0 -4
  174. package/deps/blake3/c/blake3_c_rust_bindings/benches/bench.rs +0 -477
  175. package/deps/blake3/c/blake3_c_rust_bindings/build.rs +0 -253
  176. package/deps/blake3/c/blake3_c_rust_bindings/cross_test.sh +0 -31
  177. package/deps/blake3/c/blake3_c_rust_bindings/src/lib.rs +0 -333
  178. package/deps/blake3/c/blake3_c_rust_bindings/src/test.rs +0 -696
  179. package/deps/blake3/c/blake3_sse2.c +0 -566
  180. package/deps/blake3/c/blake3_sse2_x86-64_unix.S +0 -2291
  181. package/deps/blake3/c/blake3_sse2_x86-64_windows_gnu.S +0 -2332
  182. package/deps/blake3/c/blake3_sse2_x86-64_windows_msvc.asm +0 -2350
  183. package/deps/blake3/c/blake3_sse41.c +0 -560
  184. package/deps/blake3/c/blake3_sse41_x86-64_unix.S +0 -2028
  185. package/deps/blake3/c/blake3_sse41_x86-64_windows_gnu.S +0 -2069
  186. package/deps/blake3/c/blake3_sse41_x86-64_windows_msvc.asm +0 -2089
  187. package/deps/blake3/c/blake3_tbb.cpp +0 -37
  188. package/deps/blake3/c/dependencies/CMakeLists.txt +0 -3
  189. package/deps/blake3/c/dependencies/tbb/CMakeLists.txt +0 -28
  190. package/deps/blake3/c/example.c +0 -36
  191. package/deps/blake3/c/example_tbb.c +0 -57
  192. package/deps/blake3/c/libblake3.pc.in +0 -12
  193. package/deps/blake3/c/main.c +0 -166
  194. package/deps/blake3/c/test.py +0 -97
  195. package/deps/blake3/media/B3.svg +0 -70
  196. package/deps/blake3/media/BLAKE3.svg +0 -85
  197. package/deps/blake3/media/speed.svg +0 -1474
  198. package/deps/blake3/reference_impl/Cargo.toml +0 -8
  199. package/deps/blake3/reference_impl/README.md +0 -14
  200. package/deps/blake3/reference_impl/reference_impl.rs +0 -374
  201. package/deps/blake3/src/ffi_avx2.rs +0 -65
  202. package/deps/blake3/src/ffi_avx512.rs +0 -169
  203. package/deps/blake3/src/ffi_neon.rs +0 -82
  204. package/deps/blake3/src/ffi_sse2.rs +0 -126
  205. package/deps/blake3/src/ffi_sse41.rs +0 -126
  206. package/deps/blake3/src/guts.rs +0 -60
  207. package/deps/blake3/src/hazmat.rs +0 -704
  208. package/deps/blake3/src/io.rs +0 -64
  209. package/deps/blake3/src/join.rs +0 -92
  210. package/deps/blake3/src/lib.rs +0 -1835
  211. package/deps/blake3/src/platform.rs +0 -587
  212. package/deps/blake3/src/portable.rs +0 -198
  213. package/deps/blake3/src/rust_avx2.rs +0 -474
  214. package/deps/blake3/src/rust_sse2.rs +0 -775
  215. package/deps/blake3/src/rust_sse41.rs +0 -766
  216. package/deps/blake3/src/test.rs +0 -1049
  217. package/deps/blake3/src/traits.rs +0 -227
  218. package/deps/blake3/src/wasm32_simd.rs +0 -794
  219. package/deps/blake3/test_vectors/Cargo.toml +0 -19
  220. package/deps/blake3/test_vectors/cross_test.sh +0 -25
  221. package/deps/blake3/test_vectors/src/bin/generate.rs +0 -4
  222. package/deps/blake3/test_vectors/src/lib.rs +0 -350
  223. package/deps/blake3/test_vectors/test_vectors.json +0 -217
  224. package/deps/blake3/tools/compiler_version/Cargo.toml +0 -7
  225. package/deps/blake3/tools/compiler_version/build.rs +0 -6
  226. package/deps/blake3/tools/compiler_version/src/main.rs +0 -27
  227. package/deps/blake3/tools/instruction_set_support/Cargo.toml +0 -6
  228. package/deps/blake3/tools/instruction_set_support/src/main.rs +0 -10
  229. package/deps/blake3/tools/release.md +0 -16
  230. package/deps/ncrypto/.bazelignore +0 -4
  231. package/deps/ncrypto/.bazelrc +0 -1
  232. package/deps/ncrypto/.bazelversion +0 -1
  233. package/deps/ncrypto/.clang-format +0 -111
  234. package/deps/ncrypto/.github/workflows/bazel.yml +0 -58
  235. package/deps/ncrypto/.github/workflows/commitlint.yml +0 -16
  236. package/deps/ncrypto/.github/workflows/linter.yml +0 -38
  237. package/deps/ncrypto/.github/workflows/macos.yml +0 -43
  238. package/deps/ncrypto/.github/workflows/release-please.yml +0 -16
  239. package/deps/ncrypto/.github/workflows/ubuntu.yml +0 -128
  240. package/deps/ncrypto/.github/workflows/visual-studio.yml +0 -49
  241. package/deps/ncrypto/.python-version +0 -1
  242. package/deps/ncrypto/.release-please-manifest.json +0 -3
  243. package/deps/ncrypto/BUILD.bazel +0 -44
  244. package/deps/ncrypto/CHANGELOG.md +0 -37
  245. package/deps/ncrypto/CMakeLists.txt +0 -79
  246. package/deps/ncrypto/MODULE.bazel +0 -16
  247. package/deps/ncrypto/MODULE.bazel.lock +0 -461
  248. package/deps/ncrypto/cmake/CPM.cmake +0 -1225
  249. package/deps/ncrypto/cmake/ncrypto-flags.cmake +0 -17
  250. package/deps/ncrypto/ncrypto.pc.in +0 -10
  251. package/deps/ncrypto/patches/0001-Expose-libdecrepit-so-NodeJS-can-use-it-for-ncrypto.patch +0 -28
  252. package/deps/ncrypto/pyproject.toml +0 -38
  253. package/deps/ncrypto/release-please-config.json +0 -11
  254. package/deps/ncrypto/src/CMakeLists.txt +0 -40
  255. package/deps/ncrypto/tests/BUILD.bazel +0 -11
  256. package/deps/ncrypto/tests/CMakeLists.txt +0 -7
  257. package/deps/ncrypto/tests/basic.cpp +0 -856
  258. package/deps/ncrypto/tools/run-clang-format.sh +0 -42
  259. package/deps/simdutf/.clang-format +0 -4
  260. package/deps/simdutf/.github/ISSUE_TEMPLATE/bug_report.md +0 -62
  261. package/deps/simdutf/.github/ISSUE_TEMPLATE/config.yml +0 -1
  262. package/deps/simdutf/.github/ISSUE_TEMPLATE/feature_request.md +0 -35
  263. package/deps/simdutf/.github/ISSUE_TEMPLATE/standard-issue-template.md +0 -29
  264. package/deps/simdutf/.github/pull_request_template.md +0 -51
  265. package/deps/simdutf/.github/workflows/aarch64.yml +0 -39
  266. package/deps/simdutf/.github/workflows/alpine.yml +0 -27
  267. package/deps/simdutf/.github/workflows/amalgamation_demos.yml +0 -34
  268. package/deps/simdutf/.github/workflows/armv7.yml +0 -32
  269. package/deps/simdutf/.github/workflows/atomic_fuzz.yml +0 -25
  270. package/deps/simdutf/.github/workflows/cifuzz.yml +0 -37
  271. package/deps/simdutf/.github/workflows/clangformat.yml +0 -36
  272. package/deps/simdutf/.github/workflows/debian-latestcxxstandards.yml +0 -40
  273. package/deps/simdutf/.github/workflows/debian.yml +0 -33
  274. package/deps/simdutf/.github/workflows/documentation.yml +0 -36
  275. package/deps/simdutf/.github/workflows/emscripten.yml +0 -19
  276. package/deps/simdutf/.github/workflows/loongarch64-gcc-14.2.yml +0 -39
  277. package/deps/simdutf/.github/workflows/macos-latest.yml +0 -29
  278. package/deps/simdutf/.github/workflows/msys2-clang.yml +0 -48
  279. package/deps/simdutf/.github/workflows/msys2.yml +0 -50
  280. package/deps/simdutf/.github/workflows/ppc64le.yml +0 -29
  281. package/deps/simdutf/.github/workflows/rvv-1024-clang-18.yml +0 -35
  282. package/deps/simdutf/.github/workflows/rvv-128-clang-17.yml +0 -35
  283. package/deps/simdutf/.github/workflows/rvv-256-gcc-14.yml +0 -31
  284. package/deps/simdutf/.github/workflows/s390x.yml +0 -29
  285. package/deps/simdutf/.github/workflows/selective-amalgamation.yml +0 -29
  286. package/deps/simdutf/.github/workflows/typos.yml +0 -19
  287. package/deps/simdutf/.github/workflows/ubuntu22-cxx20.yml +0 -30
  288. package/deps/simdutf/.github/workflows/ubuntu22.yml +0 -32
  289. package/deps/simdutf/.github/workflows/ubuntu22_gcc12.yml +0 -27
  290. package/deps/simdutf/.github/workflows/ubuntu22sani.yml +0 -29
  291. package/deps/simdutf/.github/workflows/ubuntu24-cxxstandards.yml +0 -34
  292. package/deps/simdutf/.github/workflows/ubuntu24-unsignedchar.yml +0 -34
  293. package/deps/simdutf/.github/workflows/ubuntu24.yml +0 -32
  294. package/deps/simdutf/.github/workflows/ubuntu24sani.yml +0 -36
  295. package/deps/simdutf/.github/workflows/ubuntu24sani_clang.yml +0 -29
  296. package/deps/simdutf/.github/workflows/vs17-arm-ci.yml +0 -21
  297. package/deps/simdutf/.github/workflows/vs17-ci-cxx20.yml +0 -41
  298. package/deps/simdutf/.github/workflows/vs17-ci.yml +0 -41
  299. package/deps/simdutf/.github/workflows/vs17-clang-ci.yml +0 -41
  300. package/deps/simdutf/.github/workflows/vs17-cxxstandards.yml +0 -36
  301. package/deps/simdutf/AI_USAGE_POLICY.md +0 -56
  302. package/deps/simdutf/AUTHORS +0 -6
  303. package/deps/simdutf/CMakeLists.txt +0 -231
  304. package/deps/simdutf/CONTRIBUTING.md +0 -214
  305. package/deps/simdutf/CONTRIBUTORS +0 -1
  306. package/deps/simdutf/Doxyfile +0 -2584
  307. package/deps/simdutf/Makefile.crosscompile +0 -54
  308. package/deps/simdutf/README-RVV.md +0 -16
  309. package/deps/simdutf/SECURITY.md +0 -8
  310. package/deps/simdutf/benchmarks/CMakeLists.txt +0 -101
  311. package/deps/simdutf/benchmarks/alignment.cpp +0 -150
  312. package/deps/simdutf/benchmarks/base64/CMakeLists.txt +0 -30
  313. package/deps/simdutf/benchmarks/base64/benchmark_base64.cpp +0 -875
  314. package/deps/simdutf/benchmarks/base64/libbase64_spaces.h +0 -49
  315. package/deps/simdutf/benchmarks/base64/node_base64.h +0 -227
  316. package/deps/simdutf/benchmarks/base64/openssl3_base64.h +0 -334
  317. package/deps/simdutf/benchmarks/benchmark.cpp +0 -65
  318. package/deps/simdutf/benchmarks/benchmark_to_well_formed_utf16.cpp +0 -347
  319. package/deps/simdutf/benchmarks/competition/.clang-format-ignore +0 -5
  320. package/deps/simdutf/benchmarks/competition/CppCon2018/utf_utils.cpp +0 -1276
  321. package/deps/simdutf/benchmarks/competition/CppCon2018/utf_utils.h +0 -595
  322. package/deps/simdutf/benchmarks/competition/README.md +0 -7
  323. package/deps/simdutf/benchmarks/competition/hoehrmann/hoehrmann.h +0 -91
  324. package/deps/simdutf/benchmarks/competition/inoue2008/inoue_utf8_to_utf16.h +0 -444
  325. package/deps/simdutf/benchmarks/competition/inoue2008/inoue_utf8_to_utf16_tables.h +0 -13183
  326. package/deps/simdutf/benchmarks/competition/inoue2008/script.py +0 -73
  327. package/deps/simdutf/benchmarks/competition/llvm/ConvertUTF.cpp +0 -738
  328. package/deps/simdutf/benchmarks/competition/llvm/ConvertUTF.h +0 -293
  329. package/deps/simdutf/benchmarks/competition/u8u16/COPYRIGHT +0 -8
  330. package/deps/simdutf/benchmarks/competition/u8u16/Makefile +0 -44
  331. package/deps/simdutf/benchmarks/competition/u8u16/OSL3.0.txt +0 -169
  332. package/deps/simdutf/benchmarks/competition/u8u16/Profiling/BOM_Profiler.h +0 -148
  333. package/deps/simdutf/benchmarks/competition/u8u16/Profiling/i386_timer.h +0 -45
  334. package/deps/simdutf/benchmarks/competition/u8u16/Profiling/ppc_timer.c +0 -34
  335. package/deps/simdutf/benchmarks/competition/u8u16/README +0 -56
  336. package/deps/simdutf/benchmarks/competition/u8u16/config/config_defs.h +0 -43
  337. package/deps/simdutf/benchmarks/competition/u8u16/config/g4_config.h +0 -27
  338. package/deps/simdutf/benchmarks/competition/u8u16/config/mmx_config.h +0 -16
  339. package/deps/simdutf/benchmarks/competition/u8u16/config/p4_config.h +0 -18
  340. package/deps/simdutf/benchmarks/competition/u8u16/config/p4_ideal_config.h +0 -16
  341. package/deps/simdutf/benchmarks/competition/u8u16/config/spu_config.h +0 -28
  342. package/deps/simdutf/benchmarks/competition/u8u16/config/ssse3_config.h +0 -20
  343. package/deps/simdutf/benchmarks/competition/u8u16/iconv_u8u16.c +0 -2
  344. package/deps/simdutf/benchmarks/competition/u8u16/lib/altivec_simd.h +0 -440
  345. package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_basic_ops.py +0 -121
  346. package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_half_operand_versions.py +0 -158
  347. package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_test.py +0 -270
  348. package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd.h +0 -141
  349. package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_basic.h +0 -216
  350. package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_built_in.h +0 -119
  351. package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_modified.h +0 -2430
  352. package/deps/simdutf/benchmarks/competition/u8u16/lib/outline.txt +0 -39
  353. package/deps/simdutf/benchmarks/competition/u8u16/lib/spu_simd.h +0 -421
  354. package/deps/simdutf/benchmarks/competition/u8u16/lib/sse_simd.h +0 -836
  355. package/deps/simdutf/benchmarks/competition/u8u16/lib/stdint.h +0 -222
  356. package/deps/simdutf/benchmarks/competition/u8u16/libu8u16_BE.c +0 -4
  357. package/deps/simdutf/benchmarks/competition/u8u16/libu8u16_LE.c +0 -5
  358. package/deps/simdutf/benchmarks/competition/u8u16/proto/u8u16.py +0 -390
  359. package/deps/simdutf/benchmarks/competition/u8u16/src/Makefile +0 -18
  360. package/deps/simdutf/benchmarks/competition/u8u16/src/bytelex.h +0 -448
  361. package/deps/simdutf/benchmarks/competition/u8u16/src/charsets/ASCII_EBCDIC.h +0 -284
  362. package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.c +0 -1975
  363. package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.pdf +0 -0
  364. package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.w +0 -2263
  365. package/deps/simdutf/benchmarks/competition/u8u16/src/multiliteral.h +0 -239
  366. package/deps/simdutf/benchmarks/competition/u8u16/src/u8u16.c +0 -232
  367. package/deps/simdutf/benchmarks/competition/u8u16/src/x8x16.c +0 -194
  368. package/deps/simdutf/benchmarks/competition/u8u16/src/xml_error.c +0 -193
  369. package/deps/simdutf/benchmarks/competition/u8u16/src/xml_error.h +0 -167
  370. package/deps/simdutf/benchmarks/competition/u8u16/src/xmldecl.c +0 -288
  371. package/deps/simdutf/benchmarks/competition/u8u16/src/xmldecl.h +0 -117
  372. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_g4.c +0 -2
  373. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_mmx.c +0 -2
  374. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_p4.c +0 -3
  375. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_p4_ideal.c +0 -2
  376. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_spu.c +0 -2
  377. package/deps/simdutf/benchmarks/competition/u8u16/u8u16_ssse3.c +0 -3
  378. package/deps/simdutf/benchmarks/competition/u8u16/x8x16_p4.c +0 -2
  379. package/deps/simdutf/benchmarks/competition/utf8lut/LICENSE +0 -23
  380. package/deps/simdutf/benchmarks/competition/utf8lut/data/test_minimal.txt +0 -44
  381. package/deps/simdutf/benchmarks/competition/utf8lut/readme.md +0 -106
  382. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_clang_corr_tests.cmd +0 -11
  383. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_clang_corr_tests.sh +0 -13
  384. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_corr_tests.sh +0 -13
  385. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_example.sh +0 -13
  386. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_file_conv.sh +0 -14
  387. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_iconv_lib.sh +0 -11
  388. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_iconv_sample.sh +0 -8
  389. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_corr_tests.cmd +0 -12
  390. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_example.cmd +0 -13
  391. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_file_conv.cmd +0 -14
  392. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_iconv_lib.cmd +0 -11
  393. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_iconv_sample.cmd +0 -8
  394. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_corr_tests.cmd +0 -11
  395. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_example.cmd +0 -12
  396. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_file_conv.cmd +0 -13
  397. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_iconv_lib.cmd +0 -10
  398. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_iconv_sample.cmd +0 -9
  399. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/html_table.py +0 -25
  400. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/measure.py +0 -94
  401. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/resize.py +0 -20
  402. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/wipe_all.cmd +0 -2
  403. package/deps/simdutf/benchmarks/competition/utf8lut/scripts/wipe_interm.cmd +0 -1
  404. package/deps/simdutf/benchmarks/competition/utf8lut/src/base/CustomMemcpy.h +0 -75
  405. package/deps/simdutf/benchmarks/competition/utf8lut/src/base/PerfDefs.h +0 -47
  406. package/deps/simdutf/benchmarks/competition/utf8lut/src/base/Timing.cpp +0 -17
  407. package/deps/simdutf/benchmarks/competition/utf8lut/src/base/Timing.h +0 -76
  408. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/AllProcessors.cpp +0 -35
  409. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BaseBufferProcessor.cpp +0 -117
  410. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BaseBufferProcessor.h +0 -210
  411. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BufferDecoder.h +0 -158
  412. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BufferEncoder.h +0 -104
  413. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/ProcessorPlugins.h +0 -334
  414. package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/ProcessorSelector.h +0 -186
  415. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderLut.cpp +0 -140
  416. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderLut.h +0 -42
  417. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderProcess.h +0 -100
  418. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/Dfa.h +0 -57
  419. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderLut.cpp +0 -85
  420. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderLut.h +0 -27
  421. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderProcess.h +0 -126
  422. package/deps/simdutf/benchmarks/competition/utf8lut/src/core/ProcessTrivial.h +0 -108
  423. package/deps/simdutf/benchmarks/competition/utf8lut/src/iconv/iconv.cpp +0 -139
  424. package/deps/simdutf/benchmarks/competition/utf8lut/src/iconv/iconv.h +0 -74
  425. package/deps/simdutf/benchmarks/competition/utf8lut/src/message/MessageConverter.cpp +0 -65
  426. package/deps/simdutf/benchmarks/competition/utf8lut/src/message/MessageConverter.h +0 -91
  427. package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/CorrectnessTests.cpp +0 -772
  428. package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/Example.cpp +0 -12
  429. package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/FileConverter.cpp +0 -486
  430. package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/iconv_sample.c +0 -162
  431. package/deps/simdutf/benchmarks/competition/utf8lut/src/utf8lut.h +0 -15
  432. package/deps/simdutf/benchmarks/competition/utf8sse4/fromutf8-sse.cpp +0 -292
  433. package/deps/simdutf/benchmarks/competition/utfcpp/LICENSE +0 -23
  434. package/deps/simdutf/benchmarks/competition/utfcpp/README.md +0 -1503
  435. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/checked.h +0 -335
  436. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/core.h +0 -338
  437. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/cpp11.h +0 -103
  438. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/cpp17.h +0 -103
  439. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/unchecked.h +0 -274
  440. package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8.h +0 -34
  441. package/deps/simdutf/benchmarks/dataset/README.md +0 -155
  442. package/deps/simdutf/benchmarks/dataset/emoji.txt +0 -204
  443. package/deps/simdutf/benchmarks/dataset/scripts/utf8type.py +0 -40
  444. package/deps/simdutf/benchmarks/dataset/wikipedia_mars/Makefile +0 -80
  445. package/deps/simdutf/benchmarks/dataset/wikipedia_mars/convert_to_utf6.py +0 -20
  446. package/deps/simdutf/benchmarks/find/CMakeLists.txt +0 -6
  447. package/deps/simdutf/benchmarks/find/findbenchmark.cpp +0 -63
  448. package/deps/simdutf/benchmarks/find/findbenchmarker.h +0 -46
  449. package/deps/simdutf/benchmarks/shortbench.cpp +0 -555
  450. package/deps/simdutf/benchmarks/src/CMakeLists.txt +0 -52
  451. package/deps/simdutf/benchmarks/src/apple_arm_events.h +0 -1104
  452. package/deps/simdutf/benchmarks/src/benchmark.cpp +0 -3899
  453. package/deps/simdutf/benchmarks/src/benchmark.h +0 -317
  454. package/deps/simdutf/benchmarks/src/benchmark_base.cpp +0 -144
  455. package/deps/simdutf/benchmarks/src/benchmark_base.h +0 -98
  456. package/deps/simdutf/benchmarks/src/cmdline.cpp +0 -176
  457. package/deps/simdutf/benchmarks/src/cmdline.h +0 -35
  458. package/deps/simdutf/benchmarks/src/event_counter.h +0 -162
  459. package/deps/simdutf/benchmarks/src/linux-perf-events.h +0 -104
  460. package/deps/simdutf/benchmarks/stream.cpp +0 -209
  461. package/deps/simdutf/benchmarks/threaded.cpp +0 -123
  462. package/deps/simdutf/cmake/CPM.cmake +0 -1363
  463. package/deps/simdutf/cmake/JoinPaths.cmake +0 -23
  464. package/deps/simdutf/cmake/add_cpp_test.cmake +0 -68
  465. package/deps/simdutf/cmake/simdutf-config.cmake.in +0 -2
  466. package/deps/simdutf/cmake/simdutf-flags.cmake +0 -26
  467. package/deps/simdutf/cmake/toolchains-ci/riscv64-linux-gnu.cmake +0 -4
  468. package/deps/simdutf/cmake/toolchains-dev/README.md +0 -32
  469. package/deps/simdutf/cmake/toolchains-dev/aarch64.cmake +0 -14
  470. package/deps/simdutf/cmake/toolchains-dev/loongarch64.cmake +0 -22
  471. package/deps/simdutf/cmake/toolchains-dev/powerpc64.cmake +0 -16
  472. package/deps/simdutf/cmake/toolchains-dev/powerpc64le.cmake +0 -16
  473. package/deps/simdutf/cmake/toolchains-dev/riscv64.cmake +0 -16
  474. package/deps/simdutf/cmake/toolchains-dev/rvv-spike.cmake +0 -38
  475. package/deps/simdutf/doc/avx512.png +0 -0
  476. package/deps/simdutf/doc/logo.png +0 -0
  477. package/deps/simdutf/doc/logo.svg +0 -165
  478. package/deps/simdutf/doc/node2023.png +0 -0
  479. package/deps/simdutf/doc/shortinput.md +0 -78
  480. package/deps/simdutf/doc/utf16utf8.png +0 -0
  481. package/deps/simdutf/doc/utf8utf16.png +0 -0
  482. package/deps/simdutf/doc/widelogo.png +0 -0
  483. package/deps/simdutf/doxygen.py +0 -50
  484. package/deps/simdutf/fuzz/.clang-format +0 -9
  485. package/deps/simdutf/fuzz/CMakeLists.txt +0 -45
  486. package/deps/simdutf/fuzz/README.md +0 -168
  487. package/deps/simdutf/fuzz/atomic_base64.cpp +0 -448
  488. package/deps/simdutf/fuzz/base64.cpp +0 -278
  489. package/deps/simdutf/fuzz/build.sh +0 -83
  490. package/deps/simdutf/fuzz/conversion.cpp +0 -669
  491. package/deps/simdutf/fuzz/helpers/.clang-format-ignore +0 -1
  492. package/deps/simdutf/fuzz/helpers/common.h +0 -135
  493. package/deps/simdutf/fuzz/helpers/nameof.hpp +0 -1258
  494. package/deps/simdutf/fuzz/main.cpp +0 -72
  495. package/deps/simdutf/fuzz/minimize_and_cleanse.sh +0 -87
  496. package/deps/simdutf/fuzz/misc.cpp +0 -216
  497. package/deps/simdutf/fuzz/random_fuzz.sh +0 -154
  498. package/deps/simdutf/fuzz/roundtrip.cpp +0 -588
  499. package/deps/simdutf/fuzz/safe_conversion.cpp +0 -104
  500. package/deps/simdutf/riscv/Dockerfile +0 -16
  501. package/deps/simdutf/riscv/README.md +0 -24
  502. package/deps/simdutf/riscv/remove-docker-station +0 -8
  503. package/deps/simdutf/riscv/run-docker-station +0 -31
  504. package/deps/simdutf/scripts/.flake8 +0 -2
  505. package/deps/simdutf/scripts/Makefile +0 -2
  506. package/deps/simdutf/scripts/README_ADD_FUNCTION.md +0 -49
  507. package/deps/simdutf/scripts/add_function.py +0 -330
  508. package/deps/simdutf/scripts/amalgamation_tests.py +0 -156
  509. package/deps/simdutf/scripts/base64/Makefile +0 -2
  510. package/deps/simdutf/scripts/base64/README.md +0 -2
  511. package/deps/simdutf/scripts/base64/avx512.py +0 -76
  512. package/deps/simdutf/scripts/base64/neon_decode.py +0 -143
  513. package/deps/simdutf/scripts/base64/neon_generate_lut.py +0 -101
  514. package/deps/simdutf/scripts/base64/sse.py +0 -252
  515. package/deps/simdutf/scripts/base64/sseregular.py +0 -160
  516. package/deps/simdutf/scripts/base64/sseurl.py +0 -283
  517. package/deps/simdutf/scripts/base64/table.py +0 -59
  518. package/deps/simdutf/scripts/base64bench_print.py +0 -145
  519. package/deps/simdutf/scripts/benchmark-all.py +0 -119
  520. package/deps/simdutf/scripts/benchmark_print.py +0 -324
  521. package/deps/simdutf/scripts/check_feature_macros.py +0 -156
  522. package/deps/simdutf/scripts/check_typos.sh +0 -13
  523. package/deps/simdutf/scripts/clang_format.sh +0 -35
  524. package/deps/simdutf/scripts/clang_format_docker.sh +0 -38
  525. package/deps/simdutf/scripts/common.py +0 -24
  526. package/deps/simdutf/scripts/compilation_benchmark.py +0 -55
  527. package/deps/simdutf/scripts/compile_many_variations.sh +0 -64
  528. package/deps/simdutf/scripts/create_latex_table.py +0 -62
  529. package/deps/simdutf/scripts/docker/Dockerfile +0 -14
  530. package/deps/simdutf/scripts/docker/Makefile +0 -9
  531. package/deps/simdutf/scripts/docker/README.md +0 -30
  532. package/deps/simdutf/scripts/docker/llvm.gpg +0 -0
  533. package/deps/simdutf/scripts/ppc64_convert_utf16_to_utf8.py +0 -155
  534. package/deps/simdutf/scripts/prepare_doxygen.sh +0 -21
  535. package/deps/simdutf/scripts/release.py +0 -197
  536. package/deps/simdutf/scripts/shortinputplots.py +0 -97
  537. package/deps/simdutf/scripts/sse_convert_utf16_to_utf8.py +0 -422
  538. package/deps/simdutf/scripts/sse_convert_utf32_to_utf16.py +0 -105
  539. package/deps/simdutf/scripts/sse_utf8_utf16_decode.py +0 -186
  540. package/deps/simdutf/scripts/sse_validate_utf16le_proof.py +0 -137
  541. package/deps/simdutf/scripts/sse_validate_utf16le_testcases.py +0 -129
  542. package/deps/simdutf/scripts/table.py +0 -207
  543. package/deps/simdutf/scripts/tests/new.txt +0 -33
  544. package/deps/simdutf/scripts/tests/old.txt +0 -33
  545. package/deps/simdutf/scripts/tests/results.txt +0 -272
  546. package/deps/simdutf/simdutf.pc.in +0 -11
  547. package/deps/simdutf/singleheader/.flake8 +0 -2
  548. package/deps/simdutf/singleheader/CMakeLists.txt +0 -64
  549. package/deps/simdutf/singleheader/README-dev.md +0 -81
  550. package/deps/simdutf/singleheader/README.md +0 -19
  551. package/deps/simdutf/singleheader/amalgamate.py +0 -513
  552. package/deps/simdutf/singleheader/amalgamation_demo.c +0 -59
  553. package/deps/simdutf/singleheader/amalgamation_demo.cpp +0 -54
  554. package/deps/simdutf/singleheader/test-features.py +0 -262
  555. package/deps/simdutf/src/CMakeLists.txt +0 -78
  556. package/deps/simdutf/tests/CMakeLists.txt +0 -483
  557. package/deps/simdutf/tests/atomic_base64_tests.cpp +0 -2845
  558. package/deps/simdutf/tests/base64_tests.cpp +0 -3617
  559. package/deps/simdutf/tests/basic_fuzzer.cpp +0 -805
  560. package/deps/simdutf/tests/bele_tests.cpp +0 -182
  561. package/deps/simdutf/tests/constexpr_base64_tests.cpp +0 -387
  562. package/deps/simdutf/tests/convert_latin1_to_utf16be_tests.cpp +0 -52
  563. package/deps/simdutf/tests/convert_latin1_to_utf16le_tests.cpp +0 -80
  564. package/deps/simdutf/tests/convert_latin1_to_utf32_tests.cpp +0 -66
  565. package/deps/simdutf/tests/convert_latin1_to_utf8_tests.cpp +0 -120
  566. package/deps/simdutf/tests/convert_utf16_to_utf8_safe_tests.cpp +0 -203
  567. package/deps/simdutf/tests/convert_utf16_to_utf8_with_replacement_tests.cpp +0 -276
  568. package/deps/simdutf/tests/convert_utf16be_to_latin1_tests.cpp +0 -109
  569. package/deps/simdutf/tests/convert_utf16be_to_latin1_tests_with_errors.cpp +0 -136
  570. package/deps/simdutf/tests/convert_utf16be_to_utf32_tests.cpp +0 -193
  571. package/deps/simdutf/tests/convert_utf16be_to_utf32_with_errors_tests.cpp +0 -381
  572. package/deps/simdutf/tests/convert_utf16be_to_utf8_tests.cpp +0 -259
  573. package/deps/simdutf/tests/convert_utf16be_to_utf8_with_errors_tests.cpp +0 -266
  574. package/deps/simdutf/tests/convert_utf16le_to_latin1_tests.cpp +0 -148
  575. package/deps/simdutf/tests/convert_utf16le_to_latin1_tests_with_errors.cpp +0 -176
  576. package/deps/simdutf/tests/convert_utf16le_to_utf32_tests.cpp +0 -213
  577. package/deps/simdutf/tests/convert_utf16le_to_utf32_with_errors_tests.cpp +0 -318
  578. package/deps/simdutf/tests/convert_utf16le_to_utf8_tests.cpp +0 -343
  579. package/deps/simdutf/tests/convert_utf16le_to_utf8_with_errors_tests.cpp +0 -271
  580. package/deps/simdutf/tests/convert_utf32_to_latin1_tests.cpp +0 -111
  581. package/deps/simdutf/tests/convert_utf32_to_latin1_with_errors_tests.cpp +0 -96
  582. package/deps/simdutf/tests/convert_utf32_to_utf16be_tests.cpp +0 -148
  583. package/deps/simdutf/tests/convert_utf32_to_utf16be_with_errors_tests.cpp +0 -192
  584. package/deps/simdutf/tests/convert_utf32_to_utf16le_tests.cpp +0 -166
  585. package/deps/simdutf/tests/convert_utf32_to_utf16le_with_errors_tests.cpp +0 -215
  586. package/deps/simdutf/tests/convert_utf32_to_utf8_tests.cpp +0 -181
  587. package/deps/simdutf/tests/convert_utf32_to_utf8_with_errors_tests.cpp +0 -261
  588. package/deps/simdutf/tests/convert_utf8_to_latin1_tests.cpp +0 -516
  589. package/deps/simdutf/tests/convert_utf8_to_latin1_with_errors_tests.cpp +0 -579
  590. package/deps/simdutf/tests/convert_utf8_to_utf16be_tests.cpp +0 -412
  591. package/deps/simdutf/tests/convert_utf8_to_utf16be_with_errors_tests.cpp +0 -480
  592. package/deps/simdutf/tests/convert_utf8_to_utf16le_tests.cpp +0 -671
  593. package/deps/simdutf/tests/convert_utf8_to_utf16le_with_errors_tests.cpp +0 -455
  594. package/deps/simdutf/tests/convert_utf8_to_utf32_tests.cpp +0 -1204
  595. package/deps/simdutf/tests/convert_utf8_to_utf32_with_errors_tests.cpp +0 -337
  596. package/deps/simdutf/tests/convert_valid_utf16be_to_latin1_tests.cpp +0 -37
  597. package/deps/simdutf/tests/convert_valid_utf16be_to_utf32_tests.cpp +0 -97
  598. package/deps/simdutf/tests/convert_valid_utf16be_to_utf8_tests.cpp +0 -126
  599. package/deps/simdutf/tests/convert_valid_utf16le_to_latin1_tests.cpp +0 -71
  600. package/deps/simdutf/tests/convert_valid_utf16le_to_utf32_tests.cpp +0 -122
  601. package/deps/simdutf/tests/convert_valid_utf16le_to_utf8_tests.cpp +0 -244
  602. package/deps/simdutf/tests/convert_valid_utf32_to_latin1_tests.cpp +0 -49
  603. package/deps/simdutf/tests/convert_valid_utf32_to_utf16be_tests.cpp +0 -92
  604. package/deps/simdutf/tests/convert_valid_utf32_to_utf16le_tests.cpp +0 -114
  605. package/deps/simdutf/tests/convert_valid_utf32_to_utf8_tests.cpp +0 -109
  606. package/deps/simdutf/tests/convert_valid_utf8_to_latin1_tests.cpp +0 -84
  607. package/deps/simdutf/tests/convert_valid_utf8_to_utf16be_tests.cpp +0 -124
  608. package/deps/simdutf/tests/convert_valid_utf8_to_utf16le_tests.cpp +0 -221
  609. package/deps/simdutf/tests/convert_valid_utf8_to_utf32_tests.cpp +0 -155
  610. package/deps/simdutf/tests/count_utf16be.cpp +0 -64
  611. package/deps/simdutf/tests/count_utf16le.cpp +0 -61
  612. package/deps/simdutf/tests/count_utf8.cpp +0 -87
  613. package/deps/simdutf/tests/detect_encodings_tests.cpp +0 -312
  614. package/deps/simdutf/tests/embed/valid_utf8.txt +0 -1
  615. package/deps/simdutf/tests/embed_tests.cpp +0 -22
  616. package/deps/simdutf/tests/find_tests.cpp +0 -77
  617. package/deps/simdutf/tests/fixed_string_tests.cpp +0 -153
  618. package/deps/simdutf/tests/helpers/CMakeLists.txt +0 -25
  619. package/deps/simdutf/tests/helpers/compiletime_conversions.h +0 -222
  620. package/deps/simdutf/tests/helpers/fixed_string.h +0 -267
  621. package/deps/simdutf/tests/helpers/random_int.cpp +0 -30
  622. package/deps/simdutf/tests/helpers/random_int.h +0 -39
  623. package/deps/simdutf/tests/helpers/random_utf16.cpp +0 -123
  624. package/deps/simdutf/tests/helpers/random_utf16.h +0 -52
  625. package/deps/simdutf/tests/helpers/random_utf32.cpp +0 -41
  626. package/deps/simdutf/tests/helpers/random_utf32.h +0 -40
  627. package/deps/simdutf/tests/helpers/random_utf8.cpp +0 -93
  628. package/deps/simdutf/tests/helpers/random_utf8.h +0 -36
  629. package/deps/simdutf/tests/helpers/test.cpp +0 -231
  630. package/deps/simdutf/tests/helpers/test.h +0 -193
  631. package/deps/simdutf/tests/helpers/transcode_test_base.cpp +0 -1257
  632. package/deps/simdutf/tests/helpers/transcode_test_base.h +0 -683
  633. package/deps/simdutf/tests/helpers/utf16.h +0 -27
  634. package/deps/simdutf/tests/installation_tests/find/CMakeLists.txt +0 -43
  635. package/deps/simdutf/tests/installation_tests/from_fetch/CMakeLists.txt +0 -47
  636. package/deps/simdutf/tests/internal_tests.cpp +0 -27
  637. package/deps/simdutf/tests/null_safety_tests.cpp +0 -94
  638. package/deps/simdutf/tests/random_fuzzer.cpp +0 -779
  639. package/deps/simdutf/tests/readme_tests.cpp +0 -274
  640. package/deps/simdutf/tests/reference/CMakeLists.txt +0 -23
  641. package/deps/simdutf/tests/reference/decode_utf16.h +0 -81
  642. package/deps/simdutf/tests/reference/decode_utf32.h +0 -47
  643. package/deps/simdutf/tests/reference/encode_latin1.cpp +0 -1
  644. package/deps/simdutf/tests/reference/encode_latin1.h +0 -32
  645. package/deps/simdutf/tests/reference/encode_utf16.cpp +0 -49
  646. package/deps/simdutf/tests/reference/encode_utf16.h +0 -20
  647. package/deps/simdutf/tests/reference/encode_utf32.cpp +0 -1
  648. package/deps/simdutf/tests/reference/encode_utf32.h +0 -36
  649. package/deps/simdutf/tests/reference/encode_utf8.cpp +0 -1
  650. package/deps/simdutf/tests/reference/encode_utf8.h +0 -40
  651. package/deps/simdutf/tests/reference/validate_utf16.cpp +0 -60
  652. package/deps/simdutf/tests/reference/validate_utf16.h +0 -14
  653. package/deps/simdutf/tests/reference/validate_utf16_to_latin1.cpp +0 -35
  654. package/deps/simdutf/tests/reference/validate_utf16_to_latin1.h +0 -13
  655. package/deps/simdutf/tests/reference/validate_utf32.cpp +0 -27
  656. package/deps/simdutf/tests/reference/validate_utf32.h +0 -12
  657. package/deps/simdutf/tests/reference/validate_utf32_to_latin1.cpp +0 -27
  658. package/deps/simdutf/tests/reference/validate_utf32_to_latin1.h +0 -12
  659. package/deps/simdutf/tests/reference/validate_utf8.cpp +0 -82
  660. package/deps/simdutf/tests/reference/validate_utf8.h +0 -11
  661. package/deps/simdutf/tests/reference/validate_utf8_to_latin1.cpp +0 -43
  662. package/deps/simdutf/tests/reference/validate_utf8_to_latin1.h +0 -12
  663. package/deps/simdutf/tests/select_implementation.cpp +0 -43
  664. package/deps/simdutf/tests/simdutf_c_tests.cpp +0 -244
  665. package/deps/simdutf/tests/span_tests.cpp +0 -401
  666. package/deps/simdutf/tests/special_tests.cpp +0 -559
  667. package/deps/simdutf/tests/straight_c_test.c +0 -187
  668. package/deps/simdutf/tests/text_encoding_tests.cpp +0 -77
  669. package/deps/simdutf/tests/to_well_formed_utf16_tests.cpp +0 -377
  670. package/deps/simdutf/tests/utf8_length_from_utf16_tests.cpp +0 -202
  671. package/deps/simdutf/tests/validate_ascii_basic_tests.cpp +0 -165
  672. package/deps/simdutf/tests/validate_ascii_with_errors_tests.cpp +0 -77
  673. package/deps/simdutf/tests/validate_utf16be_basic_tests.cpp +0 -175
  674. package/deps/simdutf/tests/validate_utf16be_with_errors_tests.cpp +0 -188
  675. package/deps/simdutf/tests/validate_utf16le_basic_tests.cpp +0 -268
  676. package/deps/simdutf/tests/validate_utf16le_with_errors_tests.cpp +0 -274
  677. package/deps/simdutf/tests/validate_utf32_basic_tests.cpp +0 -92
  678. package/deps/simdutf/tests/validate_utf32_with_errors_tests.cpp +0 -114
  679. package/deps/simdutf/tests/validate_utf8_basic_tests.cpp +0 -178
  680. package/deps/simdutf/tests/validate_utf8_brute_force_tests.cpp +0 -88
  681. package/deps/simdutf/tests/validate_utf8_puzzler_tests.cpp +0 -33
  682. package/deps/simdutf/tests/validate_utf8_with_errors_tests.cpp +0 -228
  683. package/deps/simdutf/tools/CMakeLists.txt +0 -85
  684. package/deps/simdutf/tools/fastbase64.cpp +0 -250
  685. package/deps/simdutf/tools/sutf.cpp +0 -556
  686. package/deps/simdutf/tools/sutf.h +0 -40
  687. package/lib/tsconfig.tsbuildinfo +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["NitroModules","Buffer","binaryLikeToArrayBuffer","toAB","isStringOrBuffer","KFormatType","KeyEncoding","isCryptoKey","KeyObject","constants","preparePublicCipherKey","key","isEncrypt","keyObj","padding","oaepHash","oaepLabel","type","Error","cryptoKey","keyObject","data","isPem","includes","isPrivatePem","createKeyObject","PEM","PKCS8","DER","SPKI","options","result","keyHandle","publicEncrypt","buffer","rsaCipher","createHybridObject","paddingMode","RSA_PKCS1_OAEP_PADDING","hashAlgorithm","encrypted","encrypt","handle","from","error","message","publicDecrypt","RSA_PKCS1_PADDING","decrypted","preparePrivateCipherKey","privateEncrypt","privateDecrypt"],"sourceRoot":"../../../src","sources":["keys/publicCipher.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NitroModules","Buffer","binaryLikeToArrayBuffer","toAB","isStringOrBuffer","KFormatType","KeyEncoding","isCryptoKey","KeyObject","constants","preparePublicCipherKey","key","isEncrypt","keyObj","padding","oaepHash","oaepLabel","type","Error","cryptoKey","keyObject","data","isPem","includes","isPrivatePem","createKeyObject","PEM","PKCS8","DER","SPKI","options","result","keyHandle","publicEncrypt","buffer","rsaCipher","createHybridObject","paddingMode","RSA_PKCS1_OAEP_PADDING","hashAlgorithm","encrypted","encrypt","handle","from","error","message","publicDecrypt","RSA_PKCS1_PADDING","decrypted","preparePrivateCipherKey","privateEncrypt","privateDecrypt"],"sourceRoot":"../../../src","sources":["keys/publicCipher.ts"],"mappings":"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","ignoreList":[]}
@@ -30,7 +30,16 @@ export function randomFill(buffer, ...rest) {
30
30
  size = viewLength - offset;
31
31
  }
32
32
  getNative();
33
- random.randomFill(abvToArrayBuffer(buffer), viewOffset + offset, size).then(res => {
33
+ const ab = abvToArrayBuffer(buffer);
34
+ const start = viewOffset + offset;
35
+ random.randomFill(ab, start, size).then(res => {
36
+ // The native async path operates on a copy of the underlying buffer to
37
+ // avoid races with JS-owned memory on the worker thread, so the
38
+ // randomized bytes live in `res`, not in the caller's buffer. Copy them
39
+ // back to preserve Node's in-place randomFill semantics.
40
+ if (res !== ab) {
41
+ new Uint8Array(ab, start, size).set(new Uint8Array(res, start, size));
42
+ }
34
43
  callback(null, res);
35
44
  }, e => {
36
45
  callback(e);
@@ -141,7 +150,7 @@ export function randomInt(arg1, arg2, callback) {
141
150
  if (x < randLimit) {
142
151
  const n = x % range + min;
143
152
  if (isSync) return n;
144
- process.nextTick(callback, undefined, n);
153
+ process.nextTick(callback, null, n);
145
154
  return;
146
155
  }
147
156
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Buffer","abvToArrayBuffer","NitroModules","random","getNative","createHybridObject","randomFill","buffer","rest","length","Error","callback","viewOffset","ArrayBuffer","isView","byteOffset","viewLength","byteLength","offset","size","then","res","e","randomFillSync","arrayBuffer","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":[]}
1
+ {"version":3,"names":["Buffer","abvToArrayBuffer","NitroModules","random","getNative","createHybridObject","randomFill","buffer","rest","length","Error","callback","viewOffset","ArrayBuffer","isView","byteOffset","viewLength","byteLength","offset","size","ab","start","then","res","Uint8Array","set","e","randomFillSync","arrayBuffer","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":[]}
package/lib/module/rsa.js CHANGED
@@ -27,6 +27,13 @@ export class Rsa {
27
27
  }
28
28
  }
29
29
 
30
+ // Modern best practice (NIST SP 800-131A Rev. 2, IETF RFC 8017): RSA keys
31
+ // shorter than 2048 bits are deprecated for both signing and encryption.
32
+ // 1024-bit moduli have been factored in academic settings; 768-bit keys
33
+ // have been factored on commodity hardware. Reject anything below 2048
34
+ // at the JS boundary so callers can't accidentally generate weak keys.
35
+ const RSA_MIN_MODULUS_LENGTH = 2048;
36
+
30
37
  // Node API
31
38
  export async function rsa_generateKeyPair(algorithm, extractable, keyUsages) {
32
39
  const {
@@ -37,8 +44,8 @@ export async function rsa_generateKeyPair(algorithm, extractable, keyUsages) {
37
44
  } = algorithm;
38
45
 
39
46
  // Validate parameters first
40
- if (!modulusLength || modulusLength < 256) {
41
- throw lazyDOMException('Invalid key length', 'OperationError');
47
+ if (!modulusLength || modulusLength < RSA_MIN_MODULUS_LENGTH) {
48
+ throw lazyDOMException(`RSA modulusLength must be at least ${RSA_MIN_MODULUS_LENGTH} bits ` + `(got ${modulusLength ?? 0})`, 'OperationError');
42
49
  }
43
50
  if (!publicExponent || publicExponent.length === 0) {
44
51
  throw lazyDOMException('Invalid public exponent', 'OperationError');
@@ -130,8 +137,8 @@ function rsa_prepareKeyGenParams(_type, options) {
130
137
  publicExponent,
131
138
  hash = 'sha256'
132
139
  } = options;
133
- if (!modulusLength || modulusLength < 256) {
134
- throw new Error('Invalid modulus length');
140
+ if (!modulusLength || modulusLength < RSA_MIN_MODULUS_LENGTH) {
141
+ throw new RangeError(`RSA modulusLength must be at least ${RSA_MIN_MODULUS_LENGTH} bits ` + `(got ${modulusLength ?? 0})`);
135
142
  }
136
143
  const pubExp = publicExponent || 65537;
137
144
  const pubExpBytes = new Uint8Array([pubExp >> 16 & 0xff, pubExp >> 8 & 0xff, pubExp & 0xff]);
@@ -1 +1 @@
1
- {"version":3,"names":["NitroModules","Buffer","CryptoKey","KeyObject","getUsagesUnion","hasAnyNotIn","lazyDOMException","normalizeHashName","KFormatType","KeyEncoding","Rsa","constructor","modulusLength","publicExponent","hashAlgorithm","native","createHybridObject","setModulusLength","setPublicExponent","buffer","slice","byteOffset","byteLength","setHashAlgorithm","generateKeyPair","publicKey","getPublicKey","privateKey","getPrivateKey","generateKeyPairSync","rsa_generateKeyPair","algorithm","extractable","keyUsages","name","hash","length","hashName","normalizedHash","publicUsages","privateUsages","rsa","keyAlgorithm","publicKeyData","pub","createKeyObject","privateKeyData","priv","rsa_prepareKeyGenParams","_type","options","Error","pubExp","pubExpBytes","Uint8Array","rsa_formatKeyPairOutput","encoding","publicFormat","publicType","privateFormat","privateType","cipher","passphrase","format","PEM","DER","keyEncoding","SPKI","PKCS1","exported","handle","exportKey","from","toString","PKCS8","rsa_generateKeyPairNode","type","rsa_generateKeyPairNodeSync"],"sourceRoot":"../../src","sources":["rsa.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["NitroModules","Buffer","CryptoKey","KeyObject","getUsagesUnion","hasAnyNotIn","lazyDOMException","normalizeHashName","KFormatType","KeyEncoding","Rsa","constructor","modulusLength","publicExponent","hashAlgorithm","native","createHybridObject","setModulusLength","setPublicExponent","buffer","slice","byteOffset","byteLength","setHashAlgorithm","generateKeyPair","publicKey","getPublicKey","privateKey","getPrivateKey","generateKeyPairSync","RSA_MIN_MODULUS_LENGTH","rsa_generateKeyPair","algorithm","extractable","keyUsages","name","hash","length","hashName","normalizedHash","publicUsages","privateUsages","rsa","keyAlgorithm","publicKeyData","pub","createKeyObject","privateKeyData","priv","rsa_prepareKeyGenParams","_type","options","Error","RangeError","pubExp","pubExpBytes","Uint8Array","rsa_formatKeyPairOutput","encoding","publicFormat","publicType","privateFormat","privateType","cipher","passphrase","format","PEM","DER","keyEncoding","SPKI","PKCS1","exported","handle","exportKey","from","toString","PKCS8","rsa_generateKeyPairNode","type","rsa_generateKeyPairNodeSync"],"sourceRoot":"../../src","sources":["rsa.ts"],"mappings":"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","ignoreList":[]}
@@ -17,11 +17,56 @@ const defaults = {
17
17
  p: 1,
18
18
  maxmem: 32 * 1024 * 1024
19
19
  };
20
+
21
+ // RFC 7914 § 2: scrypt parameters
22
+ // N — CPU/memory cost; must be a power of 2 > 1.
23
+ // r — block size; positive integer.
24
+ // p — parallelization factor; positive integer.
25
+ // r * p must be < 2^30 (otherwise the spec output is undefined).
26
+ // The work buffer is 128 * r * N bytes, which must fit in maxmem.
27
+ const SCRYPT_MAX_RP = 1 << 30; // 2^30 per RFC 7914
28
+
29
+ function isPositiveInteger(value) {
30
+ return typeof value === 'number' && Number.isFinite(value) && Number.isInteger(value) && value > 0;
31
+ }
32
+ function validateScryptParams(N, r, p, maxmem) {
33
+ if (!isPositiveInteger(N)) {
34
+ throw new RangeError(`Invalid scrypt cost (N): ${N}`);
35
+ }
36
+ // Power-of-two & > 1 check (RFC 7914 §6 step 1).
37
+ if (N <= 1 || (N & N - 1) !== 0) {
38
+ throw new RangeError(`Invalid scrypt cost (N): ${N} — must be a power of 2 greater than 1`);
39
+ }
40
+ if (!isPositiveInteger(r)) {
41
+ throw new RangeError(`Invalid scrypt blockSize (r): ${r}`);
42
+ }
43
+ if (!isPositiveInteger(p)) {
44
+ throw new RangeError(`Invalid scrypt parallelization (p): ${p}`);
45
+ }
46
+ if (r * p >= SCRYPT_MAX_RP) {
47
+ throw new RangeError(`Invalid scrypt parameters: r * p (${r * p}) must be < 2^30`);
48
+ }
49
+ if (!isPositiveInteger(maxmem)) {
50
+ throw new RangeError(`Invalid scrypt maxmem: ${maxmem}`);
51
+ }
52
+ // 128 * r * N is the minimum working memory. Reject early so we don't
53
+ // hand a doomed parameter set to native and OOM the device.
54
+ const required = 128 * r * N;
55
+ if (required > maxmem) {
56
+ throw new RangeError(`Invalid scrypt parameters: working memory ${required} bytes ` + `exceeds maxmem ${maxmem}`);
57
+ }
58
+ }
59
+ function validateScryptKeylen(keylen) {
60
+ if (typeof keylen !== 'number' || !Number.isFinite(keylen) || !Number.isInteger(keylen) || keylen < 0 || keylen > 0x7fff_ffff) {
61
+ throw new TypeError('Bad key length');
62
+ }
63
+ }
20
64
  function getScryptParams(options) {
21
65
  const N = options?.N ?? options?.cost ?? defaults.N;
22
66
  const r = options?.r ?? options?.blockSize ?? defaults.r;
23
67
  const p = options?.p ?? options?.parallelization ?? defaults.p;
24
68
  const maxmem = options?.maxmem ?? defaults.maxmem;
69
+ validateScryptParams(N, r, p, maxmem);
25
70
  return {
26
71
  N,
27
72
  r,
@@ -61,9 +106,7 @@ export function scrypt(password, salt, keylen, options, callback) {
61
106
  } = getScryptParams(opts);
62
107
  const sanitizedPassword = sanitizeInput(password, 'Password');
63
108
  const sanitizedSalt = sanitizeInput(salt, 'Salt');
64
- if (keylen < 0) {
65
- throw new TypeError('Bad key length');
66
- }
109
+ validateScryptKeylen(keylen);
67
110
  const nativeMod = getNative();
68
111
  nativeMod.deriveKey(sanitizedPassword, sanitizedSalt, N, r, p, maxmem, keylen).then(res => {
69
112
  cb(null, Buffer.from(res));
@@ -83,9 +126,7 @@ export function scryptSync(password, salt, keylen, options) {
83
126
  } = getScryptParams(options);
84
127
  const sanitizedPassword = sanitizeInput(password, 'Password');
85
128
  const sanitizedSalt = sanitizeInput(salt, 'Salt');
86
- if (keylen < 0) {
87
- throw new TypeError('Bad key length');
88
- }
129
+ validateScryptKeylen(keylen);
89
130
  const nativeMod = getNative();
90
131
  const result = nativeMod.deriveKeySync(sanitizedPassword, sanitizedSalt, N, r, p, maxmem, keylen);
91
132
  return Buffer.from(result);
@@ -1 +1 @@
1
- {"version":3,"names":["Buffer","NitroModules","binaryLikeToArrayBuffer","native","getNative","createHybridObject","defaults","N","r","p","maxmem","getScryptParams","options","cost","blockSize","parallelization","validateCallback","callback","undefined","Error","sanitizeInput","input","name","scrypt","password","salt","keylen","cb","opts","sanitizedPassword","sanitizedSalt","TypeError","nativeMod","deriveKey","then","res","from","err","scryptSync","result","deriveKeySync"],"sourceRoot":"../../src","sources":["scrypt.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Buffer","NitroModules","binaryLikeToArrayBuffer","native","getNative","createHybridObject","defaults","N","r","p","maxmem","SCRYPT_MAX_RP","isPositiveInteger","value","Number","isFinite","isInteger","validateScryptParams","RangeError","required","validateScryptKeylen","keylen","TypeError","getScryptParams","options","cost","blockSize","parallelization","validateCallback","callback","undefined","Error","sanitizeInput","input","name","scrypt","password","salt","cb","opts","sanitizedPassword","sanitizedSalt","nativeMod","deriveKey","then","res","from","err","scryptSync","result","deriveKeySync"],"sourceRoot":"../../src","sources":["scrypt.ts"],"mappings":";;AAAA,SAASA,MAAM,QAAQ,gCAAgC;AACvD,SAASC,YAAY,QAAQ,4BAA4B;AAEzD,SAASC,uBAAuB,QAAQ,SAAS;AAkBjD;AACA,IAAIC,MAAoB;AACxB,SAASC,SAASA,CAAA,EAAiB;EACjC,IAAID,MAAM,IAAI,IAAI,EAAE;IAClBA,MAAM,GAAGF,YAAY,CAACI,kBAAkB,CAAe,QAAQ,CAAC;EAClE;EACA,OAAOF,MAAM;AACf;AAEA,MAAMG,QAAQ,GAAG;EACfC,CAAC,EAAE,KAAK;EACRC,CAAC,EAAE,CAAC;EACJC,CAAC,EAAE,CAAC;EACJC,MAAM,EAAE,EAAE,GAAG,IAAI,GAAG;AACtB,CAAC;;AAED;AACA;AACA;AACA;AACA;AACA;AACA,MAAMC,aAAa,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;;AAE/B,SAASC,iBAAiBA,CAACC,KAAc,EAAmB;EAC1D,OACE,OAAOA,KAAK,KAAK,QAAQ,IACzBC,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,IACtBC,MAAM,CAACE,SAAS,CAACH,KAAK,CAAC,IACvBA,KAAK,GAAG,CAAC;AAEb;AAEA,SAASI,oBAAoBA,CAC3BV,CAAS,EACTC,CAAS,EACTC,CAAS,EACTC,MAAc,EACR;EACN,IAAI,CAACE,iBAAiB,CAACL,CAAC,CAAC,EAAE;IACzB,MAAM,IAAIW,UAAU,CAAC,4BAA4BX,CAAC,EAAE,CAAC;EACvD;EACA;EACA,IAAIA,CAAC,IAAI,CAAC,IAAI,CAACA,CAAC,GAAIA,CAAC,GAAG,CAAE,MAAM,CAAC,EAAE;IACjC,MAAM,IAAIW,UAAU,CAClB,4BAA4BX,CAAC,wCAC/B,CAAC;EACH;EACA,IAAI,CAACK,iBAAiB,CAACJ,CAAC,CAAC,EAAE;IACzB,MAAM,IAAIU,UAAU,CAAC,iCAAiCV,CAAC,EAAE,CAAC;EAC5D;EACA,IAAI,CAACI,iBAAiB,CAACH,CAAC,CAAC,EAAE;IACzB,MAAM,IAAIS,UAAU,CAAC,uCAAuCT,CAAC,EAAE,CAAC;EAClE;EACA,IAAID,CAAC,GAAGC,CAAC,IAAIE,aAAa,EAAE;IAC1B,MAAM,IAAIO,UAAU,CAClB,qCAAqCV,CAAC,GAAGC,CAAC,kBAC5C,CAAC;EACH;EACA,IAAI,CAACG,iBAAiB,CAACF,MAAM,CAAC,EAAE;IAC9B,MAAM,IAAIQ,UAAU,CAAC,0BAA0BR,MAAM,EAAE,CAAC;EAC1D;EACA;EACA;EACA,MAAMS,QAAQ,GAAG,GAAG,GAAGX,CAAC,GAAGD,CAAC;EAC5B,IAAIY,QAAQ,GAAGT,MAAM,EAAE;IACrB,MAAM,IAAIQ,UAAU,CAClB,6CAA6CC,QAAQ,SAAS,GAC5D,kBAAkBT,MAAM,EAC5B,CAAC;EACH;AACF;AAEA,SAASU,oBAAoBA,CAACC,MAAc,EAAQ;EAClD,IACE,OAAOA,MAAM,KAAK,QAAQ,IAC1B,CAACP,MAAM,CAACC,QAAQ,CAACM,MAAM,CAAC,IACxB,CAACP,MAAM,CAACE,SAAS,CAACK,MAAM,CAAC,IACzBA,MAAM,GAAG,CAAC,IACVA,MAAM,GAAG,WAAW,EACpB;IACA,MAAM,IAAIC,SAAS,CAAC,gBAAgB,CAAC;EACvC;AACF;AAEA,SAASC,eAAeA,CAACC,OAAuB,EAAE;EAChD,MAAMjB,CAAC,GAAGiB,OAAO,EAAEjB,CAAC,IAAIiB,OAAO,EAAEC,IAAI,IAAInB,QAAQ,CAACC,CAAC;EACnD,MAAMC,CAAC,GAAGgB,OAAO,EAAEhB,CAAC,IAAIgB,OAAO,EAAEE,SAAS,IAAIpB,QAAQ,CAACE,CAAC;EACxD,MAAMC,CAAC,GAAGe,OAAO,EAAEf,CAAC,IAAIe,OAAO,EAAEG,eAAe,IAAIrB,QAAQ,CAACG,CAAC;EAC9D,MAAMC,MAAM,GAAGc,OAAO,EAAEd,MAAM,IAAIJ,QAAQ,CAACI,MAAM;EAEjDO,oBAAoB,CAACV,CAAC,EAAEC,CAAC,EAAEC,CAAC,EAAEC,MAAM,CAAC;EAErC,OAAO;IAAEH,CAAC;IAAEC,CAAC;IAAEC,CAAC;IAAEC;EAAO,CAAC;AAC5B;AAEA,SAASkB,gBAAgBA,CAACC,QAAwB,EAAE;EAClD,IAAIA,QAAQ,KAAKC,SAAS,IAAI,OAAOD,QAAQ,KAAK,UAAU,EAAE;IAC5D,MAAM,IAAIE,KAAK,CAAC,gCAAgC,CAAC;EACnD;AACF;AAEA,SAASC,aAAaA,CAACC,KAAiB,EAAEC,IAAY,EAAe;EACnE,IAAI;IACF,OAAOhC,uBAAuB,CAAC+B,KAAK,CAAC;EACvC,CAAC,CAAC,MAAM;IACN,MAAM,IAAIF,KAAK,CACb,GAAGG,IAAI,2DACT,CAAC;EACH;AACF;AAEA,OAAO,SAASC,MAAMA,CACpBC,QAAkB,EAClBC,IAAU,EACVhB,MAAc,EACdG,OAAwC,EACxCK,QAAyB,EACnB;EACN,IAAIS,EAAkB;EACtB,IAAIC,IAA+B;EAEnC,IAAI,OAAOf,OAAO,KAAK,UAAU,EAAE;IACjCc,EAAE,GAAGd,OAAO;IACZe,IAAI,GAAGT,SAAS;EAClB,CAAC,MAAM;IACLQ,EAAE,GAAGT,QAAS;IACdU,IAAI,GAAGf,OAAO;EAChB;EAEAI,gBAAgB,CAACU,EAAE,CAAC;EAEpB,IAAI;IACF,MAAM;MAAE/B,CAAC;MAAEC,CAAC;MAAEC,CAAC;MAAEC;IAAO,CAAC,GAAGa,eAAe,CAACgB,IAAI,CAAC;IACjD,MAAMC,iBAAiB,GAAGR,aAAa,CAACI,QAAQ,EAAE,UAAU,CAAC;IAC7D,MAAMK,aAAa,GAAGT,aAAa,CAACK,IAAI,EAAE,MAAM,CAAC;IAEjDjB,oBAAoB,CAACC,MAAM,CAAC;IAE5B,MAAMqB,SAAS,GAAGtC,SAAS,CAAC,CAAC;IAC7BsC,SAAS,CACNC,SAAS,CAACH,iBAAiB,EAAEC,aAAa,EAAElC,CAAC,EAAEC,CAAC,EAAEC,CAAC,EAAEC,MAAM,EAAEW,MAAM,CAAC,CACpEuB,IAAI,CACHC,GAAG,IAAI;MACLP,EAAE,CAAC,IAAI,EAAEtC,MAAM,CAAC8C,IAAI,CAACD,GAAG,CAAC,CAAC;IAC5B,CAAC,EACDE,GAAG,IAAI;MACLT,EAAE,CAACS,GAAG,CAAC;IACT,CACF,CAAC;EACL,CAAC,CAAC,OAAOA,GAAG,EAAE;IACZT,EAAE,CAACS,GAAY,CAAC;EAClB;AACF;AAEA,OAAO,SAASC,UAAUA,CACxBZ,QAAkB,EAClBC,IAAU,EACVhB,MAAc,EACdG,OAAuB,EACf;EACR,MAAM;IAAEjB,CAAC;IAAEC,CAAC;IAAEC,CAAC;IAAEC;EAAO,CAAC,GAAGa,eAAe,CAACC,OAAO,CAAC;EACpD,MAAMgB,iBAAiB,GAAGR,aAAa,CAACI,QAAQ,EAAE,UAAU,CAAC;EAC7D,MAAMK,aAAa,GAAGT,aAAa,CAACK,IAAI,EAAE,MAAM,CAAC;EAEjDjB,oBAAoB,CAACC,MAAM,CAAC;EAE5B,MAAMqB,SAAS,GAAGtC,SAAS,CAAC,CAAC;EAC7B,MAAM6C,MAAM,GAAGP,SAAS,CAACQ,aAAa,CACpCV,iBAAiB,EACjBC,aAAa,EACblC,CAAC,EACDC,CAAC,EACDC,CAAC,EACDC,MAAM,EACNW,MACF,CAAC;EAED,OAAOrB,MAAM,CAAC8C,IAAI,CAACG,MAAM,CAAC;AAC5B","ignoreList":[]}
@@ -38,14 +38,69 @@ var CipherOrWrapMode = /*#__PURE__*/function (CipherOrWrapMode) {
38
38
  function hasAnyNotIn(usages, allowed) {
39
39
  return usages.some(usage => !allowed.includes(usage));
40
40
  }
41
+
42
+ // WebCrypto §18.4.4: algorithm name lookup is case-insensitive, but the
43
+ // canonical mixed-case form is preserved in the resulting `name` field
44
+ // (e.g. "aes-gcm" → "AES-GCM"). This map is built lazily on first call so
45
+ // the registry of canonical names below can stay declared after the
46
+ // function. Without this, callers who pass lowercase strings bypass the
47
+ // downstream `SUPPORTED_ALGORITHMS` set comparisons silently.
48
+ //
49
+ // The map's value type is `AnyAlgorithm` so callers can use the lookup
50
+ // result directly without re-asserting. The `as AnyAlgorithm` at insertion
51
+ // is the single contract boundary: every name in `SUPPORTED_ALGORITHMS` is
52
+ // already a member of `AnyAlgorithm` by construction.
53
+ let _canonicalAlgorithmNames = null;
54
+ function getCanonicalAlgorithmNames() {
55
+ if (_canonicalAlgorithmNames === null) {
56
+ const map = new Map();
57
+ for (const set of Object.values(SUPPORTED_ALGORITHMS)) {
58
+ if (!set) continue;
59
+ for (const name of set) {
60
+ map.set(name.toLowerCase(), name);
61
+ }
62
+ }
63
+ _canonicalAlgorithmNames = map;
64
+ }
65
+ return _canonicalAlgorithmNames;
66
+ }
41
67
  function normalizeAlgorithm(algorithm, _operation) {
68
+ const map = getCanonicalAlgorithmNames();
42
69
  if (typeof algorithm === 'string') {
43
70
  return {
44
- name: algorithm
71
+ name: map.get(algorithm.toLowerCase()) ?? algorithm
72
+ };
73
+ }
74
+ if (typeof algorithm.name === 'string') {
75
+ const canonical = map.get(algorithm.name.toLowerCase()) ?? algorithm.name;
76
+ return {
77
+ ...algorithm,
78
+ name: canonical
45
79
  };
46
80
  }
47
81
  return algorithm;
48
82
  }
83
+
84
+ // WebCrypto §25.7.6 (JWK import): if the JWK's `ext` member is present and
85
+ // false, the requested `extractable` parameter must also be false. If the
86
+ // JWK's `key_ops` member is present, every requested usage must appear in
87
+ // it. We centralize the check here so every importKey path that accepts
88
+ // `format === 'jwk'` can reuse it.
89
+ function validateJwkExtAndKeyOps(jwk, extractable, keyUsages) {
90
+ if (jwk.ext === false && extractable) {
91
+ throw lazyDOMException('JWK "ext" is false but extractable was requested', 'DataError');
92
+ }
93
+ if (jwk.key_ops !== undefined) {
94
+ if (!Array.isArray(jwk.key_ops)) {
95
+ throw lazyDOMException('JWK "key_ops" must be an array', 'DataError');
96
+ }
97
+ for (const usage of keyUsages) {
98
+ if (!jwk.key_ops.includes(usage)) {
99
+ throw lazyDOMException(`JWK "key_ops" does not include requested usage "${usage}"`, 'DataError');
100
+ }
101
+ }
102
+ }
103
+ }
49
104
  function getAlgorithmName(name, length) {
50
105
  switch (name) {
51
106
  case 'AES-CBC':
@@ -547,6 +602,7 @@ async function kmacImportKey(algorithm, format, data, extractable, keyUsages) {
547
602
  if (!jwk || typeof jwk !== 'object') {
548
603
  throw lazyDOMException('Invalid keyData', 'DataError');
549
604
  }
605
+ validateJwkExtAndKeyOps(jwk, extractable, keyUsages);
550
606
  if (jwk.kty !== 'oct') {
551
607
  throw lazyDOMException('Invalid JWK format for KMAC key', 'DataError');
552
608
  }
@@ -608,6 +664,7 @@ function rsaImportKey(format, data, algorithm, extractable, keyUsages) {
608
664
  if (jwk.kty !== 'RSA') {
609
665
  throw new Error('Invalid JWK format for RSA key');
610
666
  }
667
+ validateJwkExtAndKeyOps(jwk, extractable, keyUsages);
611
668
  const handle = NitroModules.createHybridObject('KeyObjectHandle');
612
669
  const keyType = handle.initJwk(jwk, undefined);
613
670
  if (keyType === undefined) {
@@ -675,6 +732,7 @@ async function hmacImportKey(algorithm, format, data, extractable, keyUsages) {
675
732
  if (!jwk || typeof jwk !== 'object') {
676
733
  throw new Error('Invalid keyData');
677
734
  }
735
+ validateJwkExtAndKeyOps(jwk, extractable, keyUsages);
678
736
  if (jwk.kty !== 'oct') {
679
737
  throw new Error('Invalid JWK format for HMAC key');
680
738
  }
@@ -737,6 +795,7 @@ async function aesImportKey(algorithm, format, data, extractable, keyUsages) {
737
795
  if (jwk.kty !== 'oct') {
738
796
  throw new Error('Invalid JWK format for AES key');
739
797
  }
798
+ validateJwkExtAndKeyOps(jwk, extractable, keyUsages);
740
799
  const handle = NitroModules.createHybridObject('KeyObjectHandle');
741
800
  const keyType = handle.initJwk(jwk, undefined);
742
801
  if (keyType === undefined || keyType !== 0) {
@@ -799,6 +858,7 @@ function edImportKey(format, data, algorithm, extractable, keyUsages) {
799
858
  keyObject = new PublicKeyObject(handle);
800
859
  } else if (format === 'jwk') {
801
860
  const jwkData = data;
861
+ validateJwkExtAndKeyOps(jwkData, extractable, keyUsages);
802
862
  const handle = NitroModules.createHybridObject('KeyObjectHandle');
803
863
  const keyType = handle.initJwk(jwkData);
804
864
  if (keyType === undefined) {
@@ -1117,6 +1177,13 @@ const hkdfImportKey = async (format, keyData, algorithm, extractable, keyUsages)
1117
1177
  const {
1118
1178
  name
1119
1179
  } = algorithm;
1180
+ // WebCrypto §28.7.6: HKDF keys are never extractable. The previous
1181
+ // implementation passed `extractable` through verbatim, allowing callers
1182
+ // to round-trip the input keying material via `exportKey` — defeating
1183
+ // the whole point of the deriveBits-only usage.
1184
+ if (extractable) {
1185
+ throw lazyDOMException(`${name} keys are not extractable`, 'SyntaxError');
1186
+ }
1120
1187
  if (hasAnyNotIn(keyUsages, ['deriveKey', 'deriveBits'])) {
1121
1188
  throw new Error(`Unsupported key usage for a ${name} key`);
1122
1189
  }
@@ -1126,7 +1193,7 @@ const hkdfImportKey = async (format, keyData, algorithm, extractable, keyUsages)
1126
1193
  const keyObject = createSecretKey(keyData);
1127
1194
  return new CryptoKey(keyObject, {
1128
1195
  name
1129
- }, keyUsages, extractable);
1196
+ }, keyUsages, false);
1130
1197
  }
1131
1198
  default:
1132
1199
  throw new Error(`Unable to import ${name} key with format ${format}`);
@@ -1381,9 +1448,13 @@ export class Subtle {
1381
1448
  return asyncDigest(normalizedAlgorithm, data);
1382
1449
  }
1383
1450
  async deriveBits(algorithm, baseKey, length) {
1384
- // Allow either deriveBits OR deriveKey usage (WebCrypto spec allows both)
1385
- if (!baseKey.keyUsages.includes('deriveBits') && !baseKey.keyUsages.includes('deriveKey')) {
1386
- throw new Error('baseKey does not have deriveBits or deriveKey usage');
1451
+ // WebCrypto §SubtleCrypto.deriveBits step 11: throw InvalidAccessError
1452
+ // unless `baseKey.[[usages]]` contains "deriveBits" specifically. The
1453
+ // previous `deriveBits || deriveKey` accept-either branch silently
1454
+ // promoted deriveKey-only keys into deriveBits use, contradicting the
1455
+ // spec usage gate.
1456
+ if (!baseKey.keyUsages.includes('deriveBits')) {
1457
+ throw lazyDOMException('baseKey does not have deriveBits usage', 'InvalidAccessError');
1387
1458
  }
1388
1459
  if (baseKey.algorithm.name !== algorithm.name) throw new Error('Key algorithm mismatch');
1389
1460
  switch (algorithm.name) {