react-native-quick-crypto 1.1.0 → 1.1.2
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.
- package/QuickCrypto.podspec +1 -0
- package/android/CMakeLists.txt +4 -0
- package/android/build.gradle +5 -1
- package/cpp/argon2/HybridArgon2.cpp +10 -3
- package/cpp/blake3/HybridBlake3.cpp +5 -3
- package/cpp/cipher/CCMCipher.cpp +35 -26
- package/cpp/cipher/CCMCipher.hpp +2 -4
- package/cpp/cipher/ChaCha20Cipher.cpp +19 -27
- package/cpp/cipher/ChaCha20Cipher.hpp +2 -4
- package/cpp/cipher/ChaCha20Poly1305Cipher.cpp +41 -36
- package/cpp/cipher/ChaCha20Poly1305Cipher.hpp +2 -4
- package/cpp/cipher/GCMCipher.cpp +17 -20
- package/cpp/cipher/HybridCipher.cpp +44 -47
- package/cpp/cipher/HybridCipher.hpp +17 -1
- package/cpp/cipher/HybridRsaCipher.cpp +93 -56
- package/cpp/cipher/OCBCipher.cpp +5 -5
- package/cpp/cipher/XChaCha20Poly1305Cipher.cpp +27 -32
- package/cpp/cipher/XSalsa20Cipher.cpp +78 -16
- package/cpp/cipher/XSalsa20Cipher.hpp +25 -3
- package/cpp/cipher/XSalsa20Poly1305Cipher.cpp +32 -41
- package/cpp/dh/HybridDiffieHellman.cpp +29 -0
- package/cpp/ec/HybridEcKeyPair.cpp +35 -33
- package/cpp/ec/HybridEcKeyPair.hpp +3 -7
- package/cpp/ecdh/HybridECDH.cpp +23 -0
- package/cpp/ed25519/HybridEdKeyPair.cpp +73 -117
- package/cpp/ed25519/HybridEdKeyPair.hpp +5 -9
- package/cpp/hash/HybridHash.cpp +5 -7
- package/cpp/hkdf/HybridHkdf.cpp +6 -4
- package/cpp/hmac/HybridHmac.cpp +4 -6
- package/cpp/keys/HybridKeyObjectHandle.cpp +630 -2
- package/cpp/keys/HybridKeyObjectHandle.hpp +21 -1
- package/cpp/kmac/HybridKmac.cpp +4 -4
- package/cpp/mldsa/HybridMlDsaKeyPair.cpp +37 -49
- package/cpp/mlkem/HybridMlKemKeyPair.cpp +39 -43
- package/cpp/pbkdf2/HybridPbkdf2.cpp +7 -8
- package/cpp/rsa/HybridRsaKeyPair.cpp +5 -8
- package/cpp/rsa/HybridRsaKeyPair.hpp +4 -7
- package/cpp/scrypt/HybridScrypt.cpp +6 -4
- package/cpp/sign/HybridSignHandle.cpp +47 -72
- package/cpp/sign/HybridVerifyHandle.cpp +47 -67
- package/cpp/slhdsa/HybridSlhDsaKeyPair.cpp +245 -0
- package/cpp/slhdsa/HybridSlhDsaKeyPair.hpp +48 -0
- package/cpp/turboshake/HybridTurboShake.cpp +379 -0
- package/cpp/turboshake/HybridTurboShake.hpp +28 -0
- package/cpp/utils/HybridUtils.cpp +195 -43
- package/cpp/utils/HybridUtils.hpp +9 -2
- package/cpp/utils/QuickCryptoUtils.hpp +72 -0
- package/deps/blake3/README.md +6 -7
- package/deps/blake3/c/blake3.c +3 -2
- package/deps/blake3/c/blake3.h +2 -2
- package/deps/blake3/c/blake3_dispatch.c +2 -2
- package/deps/blake3/c/blake3_impl.h +1 -1
- package/deps/blake3/c/blake3_neon.c +5 -4
- package/deps/ncrypto/include/ncrypto/version.h +2 -2
- package/deps/ncrypto/include/ncrypto.h +9 -2
- package/deps/ncrypto/src/ncrypto.cpp +130 -35
- package/lib/commonjs/argon2.js +51 -2
- package/lib/commonjs/argon2.js.map +1 -1
- package/lib/commonjs/cipher.js +109 -11
- package/lib/commonjs/cipher.js.map +1 -1
- package/lib/commonjs/dhKeyPair.js +3 -0
- package/lib/commonjs/dhKeyPair.js.map +1 -1
- package/lib/commonjs/dsa.js +11 -2
- package/lib/commonjs/dsa.js.map +1 -1
- package/lib/commonjs/ec.js +37 -30
- package/lib/commonjs/ec.js.map +1 -1
- package/lib/commonjs/ed.js +60 -6
- package/lib/commonjs/ed.js.map +1 -1
- package/lib/commonjs/hash.js +67 -10
- package/lib/commonjs/hash.js.map +1 -1
- package/lib/commonjs/hkdf.js +33 -6
- package/lib/commonjs/hkdf.js.map +1 -1
- package/lib/commonjs/hmac.js +15 -5
- package/lib/commonjs/hmac.js.map +1 -1
- package/lib/commonjs/keys/classes.js +33 -7
- package/lib/commonjs/keys/classes.js.map +1 -1
- package/lib/commonjs/keys/generateKeyPair.js +85 -4
- package/lib/commonjs/keys/generateKeyPair.js.map +1 -1
- package/lib/commonjs/keys/index.js +50 -2
- package/lib/commonjs/keys/index.js.map +1 -1
- package/lib/commonjs/keys/publicCipher.js +10 -4
- package/lib/commonjs/keys/publicCipher.js.map +1 -1
- package/lib/commonjs/keys/signVerify.js +9 -2
- package/lib/commonjs/keys/signVerify.js.map +1 -1
- package/lib/commonjs/keys/utils.js +59 -1
- package/lib/commonjs/keys/utils.js.map +1 -1
- package/lib/commonjs/random.js +74 -11
- package/lib/commonjs/random.js.map +1 -1
- package/lib/commonjs/rsa.js +15 -5
- package/lib/commonjs/rsa.js.map +1 -1
- package/lib/commonjs/scrypt.js +47 -6
- package/lib/commonjs/scrypt.js.map +1 -1
- package/lib/commonjs/slhdsa.js +70 -0
- package/lib/commonjs/slhdsa.js.map +1 -0
- package/lib/commonjs/specs/slhDsaKeyPair.nitro.js +6 -0
- package/lib/commonjs/specs/slhDsaKeyPair.nitro.js.map +1 -0
- package/lib/commonjs/specs/turboshake.nitro.js +6 -0
- package/lib/commonjs/specs/turboshake.nitro.js.map +1 -0
- package/lib/commonjs/subtle.js +975 -253
- package/lib/commonjs/subtle.js.map +1 -1
- package/lib/commonjs/utils/cipher.js +18 -7
- package/lib/commonjs/utils/cipher.js.map +1 -1
- package/lib/commonjs/utils/conversion.js +86 -28
- package/lib/commonjs/utils/conversion.js.map +1 -1
- package/lib/commonjs/utils/errors.js +63 -4
- package/lib/commonjs/utils/errors.js.map +1 -1
- package/lib/commonjs/utils/timingSafeEqual.js +7 -2
- package/lib/commonjs/utils/timingSafeEqual.js.map +1 -1
- package/lib/commonjs/utils/types.js.map +1 -1
- package/lib/commonjs/utils/validation.js +46 -0
- package/lib/commonjs/utils/validation.js.map +1 -1
- package/lib/commonjs/x509certificate.js +6 -6
- package/lib/commonjs/x509certificate.js.map +1 -1
- package/lib/module/argon2.js +51 -2
- package/lib/module/argon2.js.map +1 -1
- package/lib/module/cipher.js +109 -11
- package/lib/module/cipher.js.map +1 -1
- package/lib/module/dhKeyPair.js +3 -0
- package/lib/module/dhKeyPair.js.map +1 -1
- package/lib/module/dsa.js +11 -2
- package/lib/module/dsa.js.map +1 -1
- package/lib/module/ec.js +38 -31
- package/lib/module/ec.js.map +1 -1
- package/lib/module/ed.js +61 -7
- package/lib/module/ed.js.map +1 -1
- package/lib/module/hash.js +67 -10
- package/lib/module/hash.js.map +1 -1
- package/lib/module/hkdf.js +33 -6
- package/lib/module/hkdf.js.map +1 -1
- package/lib/module/hmac.js +15 -5
- package/lib/module/hmac.js.map +1 -1
- package/lib/module/keys/classes.js +31 -5
- package/lib/module/keys/classes.js.map +1 -1
- package/lib/module/keys/generateKeyPair.js +86 -5
- package/lib/module/keys/generateKeyPair.js.map +1 -1
- package/lib/module/keys/index.js +50 -2
- package/lib/module/keys/index.js.map +1 -1
- package/lib/module/keys/publicCipher.js +10 -4
- package/lib/module/keys/publicCipher.js.map +1 -1
- package/lib/module/keys/signVerify.js +9 -2
- package/lib/module/keys/signVerify.js.map +1 -1
- package/lib/module/keys/utils.js +57 -1
- package/lib/module/keys/utils.js.map +1 -1
- package/lib/module/random.js +74 -12
- package/lib/module/random.js.map +1 -1
- package/lib/module/rsa.js +14 -4
- package/lib/module/rsa.js.map +1 -1
- package/lib/module/scrypt.js +47 -6
- package/lib/module/scrypt.js.map +1 -1
- package/lib/module/slhdsa.js +64 -0
- package/lib/module/slhdsa.js.map +1 -0
- package/lib/module/specs/slhDsaKeyPair.nitro.js +4 -0
- package/lib/module/specs/slhDsaKeyPair.nitro.js.map +1 -0
- package/lib/module/specs/turboshake.nitro.js +4 -0
- package/lib/module/specs/turboshake.nitro.js.map +1 -0
- package/lib/module/subtle.js +976 -254
- package/lib/module/subtle.js.map +1 -1
- package/lib/module/utils/cipher.js +18 -7
- package/lib/module/utils/cipher.js.map +1 -1
- package/lib/module/utils/conversion.js +84 -28
- package/lib/module/utils/conversion.js.map +1 -1
- package/lib/module/utils/errors.js +61 -4
- package/lib/module/utils/errors.js.map +1 -1
- package/lib/module/utils/timingSafeEqual.js +8 -3
- package/lib/module/utils/timingSafeEqual.js.map +1 -1
- package/lib/module/utils/types.js.map +1 -1
- package/lib/module/utils/validation.js +44 -0
- package/lib/module/utils/validation.js.map +1 -1
- package/lib/module/x509certificate.js +6 -6
- package/lib/module/x509certificate.js.map +1 -1
- package/lib/typescript/argon2.d.ts.map +1 -1
- package/lib/typescript/cipher.d.ts +2 -2
- package/lib/typescript/cipher.d.ts.map +1 -1
- package/lib/typescript/dhKeyPair.d.ts.map +1 -1
- package/lib/typescript/dsa.d.ts.map +1 -1
- package/lib/typescript/ec.d.ts.map +1 -1
- package/lib/typescript/ed.d.ts.map +1 -1
- package/lib/typescript/hash.d.ts +2 -2
- package/lib/typescript/hash.d.ts.map +1 -1
- package/lib/typescript/hkdf.d.ts.map +1 -1
- package/lib/typescript/hmac.d.ts +2 -2
- package/lib/typescript/hmac.d.ts.map +1 -1
- package/lib/typescript/index.d.ts +13 -8
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/keys/classes.d.ts +10 -1
- package/lib/typescript/keys/classes.d.ts.map +1 -1
- package/lib/typescript/keys/generateKeyPair.d.ts +12 -1
- package/lib/typescript/keys/generateKeyPair.d.ts.map +1 -1
- package/lib/typescript/keys/index.d.ts +3 -1
- package/lib/typescript/keys/index.d.ts.map +1 -1
- package/lib/typescript/keys/publicCipher.d.ts.map +1 -1
- package/lib/typescript/keys/signVerify.d.ts.map +1 -1
- package/lib/typescript/keys/utils.d.ts +21 -4
- package/lib/typescript/keys/utils.d.ts.map +1 -1
- package/lib/typescript/random.d.ts +5 -1
- package/lib/typescript/random.d.ts.map +1 -1
- package/lib/typescript/rsa.d.ts.map +1 -1
- package/lib/typescript/scrypt.d.ts.map +1 -1
- package/lib/typescript/slhdsa.d.ts +19 -0
- package/lib/typescript/slhdsa.d.ts.map +1 -0
- package/lib/typescript/specs/keyObjectHandle.nitro.d.ts +9 -0
- package/lib/typescript/specs/keyObjectHandle.nitro.d.ts.map +1 -1
- package/lib/typescript/specs/slhDsaKeyPair.nitro.d.ts +16 -0
- package/lib/typescript/specs/slhDsaKeyPair.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/turboshake.nitro.d.ts +11 -0
- package/lib/typescript/specs/turboshake.nitro.d.ts.map +1 -0
- package/lib/typescript/specs/utils.nitro.d.ts +0 -2
- package/lib/typescript/specs/utils.nitro.d.ts.map +1 -1
- package/lib/typescript/subtle.d.ts +3 -2
- package/lib/typescript/subtle.d.ts.map +1 -1
- package/lib/typescript/utils/cipher.d.ts +13 -1
- package/lib/typescript/utils/cipher.d.ts.map +1 -1
- package/lib/typescript/utils/conversion.d.ts +13 -9
- package/lib/typescript/utils/conversion.d.ts.map +1 -1
- package/lib/typescript/utils/errors.d.ts +12 -0
- package/lib/typescript/utils/errors.d.ts.map +1 -1
- package/lib/typescript/utils/timingSafeEqual.d.ts.map +1 -1
- package/lib/typescript/utils/types.d.ts +32 -15
- package/lib/typescript/utils/types.d.ts.map +1 -1
- package/lib/typescript/utils/validation.d.ts +3 -1
- package/lib/typescript/utils/validation.d.ts.map +1 -1
- package/lib/typescript/x509certificate.d.ts.map +1 -1
- package/nitrogen/generated/android/QuickCrypto+autolinking.cmake +2 -0
- package/nitrogen/generated/android/QuickCryptoOnLoad.cpp +20 -0
- package/nitrogen/generated/ios/QuickCryptoAutolinking.mm +20 -0
- package/nitrogen/generated/shared/c++/AsymmetricKeyType.hpp +48 -0
- package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.cpp +9 -0
- package/nitrogen/generated/shared/c++/HybridKeyObjectHandleSpec.hpp +9 -0
- package/nitrogen/generated/shared/c++/HybridSlhDsaKeyPairSpec.cpp +29 -0
- package/nitrogen/generated/shared/c++/HybridSlhDsaKeyPairSpec.hpp +72 -0
- package/nitrogen/generated/shared/c++/HybridTurboShakeSpec.cpp +22 -0
- package/nitrogen/generated/shared/c++/HybridTurboShakeSpec.hpp +70 -0
- package/nitrogen/generated/shared/c++/HybridUtilsSpec.cpp +0 -2
- package/nitrogen/generated/shared/c++/HybridUtilsSpec.hpp +0 -3
- package/nitrogen/generated/shared/c++/JWK.hpp +9 -1
- package/nitrogen/generated/shared/c++/JWKkty.hpp +4 -0
- package/nitrogen/generated/shared/c++/KangarooTwelveVariant.hpp +76 -0
- package/nitrogen/generated/shared/c++/TurboShakeVariant.hpp +76 -0
- package/package.json +38 -7
- package/src/argon2.ts +80 -2
- package/src/cipher.ts +139 -15
- package/src/dhKeyPair.ts +8 -0
- package/src/dsa.ts +19 -2
- package/src/ec.ts +52 -29
- package/src/ed.ts +95 -16
- package/src/hash.ts +125 -12
- package/src/hkdf.ts +44 -6
- package/src/hmac.ts +17 -7
- package/src/keys/classes.ts +46 -5
- package/src/keys/generateKeyPair.ts +151 -5
- package/src/keys/index.ts +73 -3
- package/src/keys/publicCipher.ts +10 -4
- package/src/keys/signVerify.ts +13 -2
- package/src/keys/utils.ts +78 -5
- package/src/random.ts +104 -11
- package/src/rsa.ts +26 -4
- package/src/scrypt.ts +73 -6
- package/src/slhdsa.ts +146 -0
- package/src/specs/keyObjectHandle.nitro.ts +17 -0
- package/src/specs/slhDsaKeyPair.nitro.ts +29 -0
- package/src/specs/turboshake.nitro.ts +21 -0
- package/src/specs/utils.nitro.ts +0 -2
- package/src/subtle.ts +1246 -333
- package/src/utils/cipher.ts +30 -8
- package/src/utils/conversion.ts +129 -40
- package/src/utils/errors.ts +72 -4
- package/src/utils/timingSafeEqual.ts +8 -3
- package/src/utils/types.ts +80 -15
- package/src/utils/validation.ts +70 -1
- package/src/x509certificate.ts +5 -6
- package/deps/blake3/.cargo/config.toml +0 -2
- package/deps/blake3/.git-blame-ignore-revs +0 -2
- package/deps/blake3/.github/workflows/build_b3sum.py +0 -38
- package/deps/blake3/.github/workflows/ci.yml +0 -491
- package/deps/blake3/.github/workflows/tag.yml +0 -43
- package/deps/blake3/.github/workflows/upload_github_release_asset.py +0 -73
- package/deps/blake3/CONTRIBUTING.md +0 -31
- package/deps/blake3/Cargo.toml +0 -135
- package/deps/blake3/b3sum/Cargo.lock +0 -513
- package/deps/blake3/b3sum/Cargo.toml +0 -26
- package/deps/blake3/b3sum/README.md +0 -72
- package/deps/blake3/b3sum/src/main.rs +0 -564
- package/deps/blake3/b3sum/src/unit_tests.rs +0 -235
- package/deps/blake3/b3sum/tests/cli_tests.rs +0 -680
- package/deps/blake3/b3sum/what_does_check_do.md +0 -176
- package/deps/blake3/benches/bench.rs +0 -623
- package/deps/blake3/build.rs +0 -389
- package/deps/blake3/c/CMakeLists.txt +0 -383
- package/deps/blake3/c/CMakePresets.json +0 -73
- package/deps/blake3/c/Makefile.testing +0 -82
- package/deps/blake3/c/blake3-config.cmake.in +0 -14
- package/deps/blake3/c/blake3_avx2.c +0 -326
- package/deps/blake3/c/blake3_avx2_x86-64_unix.S +0 -1815
- package/deps/blake3/c/blake3_avx2_x86-64_windows_gnu.S +0 -1817
- package/deps/blake3/c/blake3_avx2_x86-64_windows_msvc.asm +0 -1828
- package/deps/blake3/c/blake3_avx512.c +0 -1388
- package/deps/blake3/c/blake3_avx512_x86-64_unix.S +0 -4824
- package/deps/blake3/c/blake3_avx512_x86-64_windows_gnu.S +0 -2615
- package/deps/blake3/c/blake3_avx512_x86-64_windows_msvc.asm +0 -2634
- package/deps/blake3/c/blake3_c_rust_bindings/Cargo.toml +0 -32
- package/deps/blake3/c/blake3_c_rust_bindings/README.md +0 -4
- package/deps/blake3/c/blake3_c_rust_bindings/benches/bench.rs +0 -477
- package/deps/blake3/c/blake3_c_rust_bindings/build.rs +0 -253
- package/deps/blake3/c/blake3_c_rust_bindings/cross_test.sh +0 -31
- package/deps/blake3/c/blake3_c_rust_bindings/src/lib.rs +0 -333
- package/deps/blake3/c/blake3_c_rust_bindings/src/test.rs +0 -696
- package/deps/blake3/c/blake3_sse2.c +0 -566
- package/deps/blake3/c/blake3_sse2_x86-64_unix.S +0 -2291
- package/deps/blake3/c/blake3_sse2_x86-64_windows_gnu.S +0 -2332
- package/deps/blake3/c/blake3_sse2_x86-64_windows_msvc.asm +0 -2350
- package/deps/blake3/c/blake3_sse41.c +0 -560
- package/deps/blake3/c/blake3_sse41_x86-64_unix.S +0 -2028
- package/deps/blake3/c/blake3_sse41_x86-64_windows_gnu.S +0 -2069
- package/deps/blake3/c/blake3_sse41_x86-64_windows_msvc.asm +0 -2089
- package/deps/blake3/c/blake3_tbb.cpp +0 -37
- package/deps/blake3/c/dependencies/CMakeLists.txt +0 -3
- package/deps/blake3/c/dependencies/tbb/CMakeLists.txt +0 -28
- package/deps/blake3/c/example.c +0 -36
- package/deps/blake3/c/example_tbb.c +0 -57
- package/deps/blake3/c/libblake3.pc.in +0 -12
- package/deps/blake3/c/main.c +0 -166
- package/deps/blake3/c/test.py +0 -97
- package/deps/blake3/media/B3.svg +0 -70
- package/deps/blake3/media/BLAKE3.svg +0 -85
- package/deps/blake3/media/speed.svg +0 -1474
- package/deps/blake3/reference_impl/Cargo.toml +0 -8
- package/deps/blake3/reference_impl/README.md +0 -14
- package/deps/blake3/reference_impl/reference_impl.rs +0 -374
- package/deps/blake3/src/ffi_avx2.rs +0 -65
- package/deps/blake3/src/ffi_avx512.rs +0 -169
- package/deps/blake3/src/ffi_neon.rs +0 -82
- package/deps/blake3/src/ffi_sse2.rs +0 -126
- package/deps/blake3/src/ffi_sse41.rs +0 -126
- package/deps/blake3/src/guts.rs +0 -60
- package/deps/blake3/src/hazmat.rs +0 -704
- package/deps/blake3/src/io.rs +0 -64
- package/deps/blake3/src/join.rs +0 -92
- package/deps/blake3/src/lib.rs +0 -1835
- package/deps/blake3/src/platform.rs +0 -587
- package/deps/blake3/src/portable.rs +0 -198
- package/deps/blake3/src/rust_avx2.rs +0 -474
- package/deps/blake3/src/rust_sse2.rs +0 -775
- package/deps/blake3/src/rust_sse41.rs +0 -766
- package/deps/blake3/src/test.rs +0 -1049
- package/deps/blake3/src/traits.rs +0 -227
- package/deps/blake3/src/wasm32_simd.rs +0 -794
- package/deps/blake3/test_vectors/Cargo.toml +0 -19
- package/deps/blake3/test_vectors/cross_test.sh +0 -25
- package/deps/blake3/test_vectors/src/bin/generate.rs +0 -4
- package/deps/blake3/test_vectors/src/lib.rs +0 -350
- package/deps/blake3/test_vectors/test_vectors.json +0 -217
- package/deps/blake3/tools/compiler_version/Cargo.toml +0 -7
- package/deps/blake3/tools/compiler_version/build.rs +0 -6
- package/deps/blake3/tools/compiler_version/src/main.rs +0 -27
- package/deps/blake3/tools/instruction_set_support/Cargo.toml +0 -6
- package/deps/blake3/tools/instruction_set_support/src/main.rs +0 -10
- package/deps/blake3/tools/release.md +0 -16
- package/deps/ncrypto/.bazelignore +0 -4
- package/deps/ncrypto/.bazelrc +0 -1
- package/deps/ncrypto/.bazelversion +0 -1
- package/deps/ncrypto/.clang-format +0 -111
- package/deps/ncrypto/.github/workflows/bazel.yml +0 -58
- package/deps/ncrypto/.github/workflows/commitlint.yml +0 -16
- package/deps/ncrypto/.github/workflows/linter.yml +0 -38
- package/deps/ncrypto/.github/workflows/macos.yml +0 -43
- package/deps/ncrypto/.github/workflows/release-please.yml +0 -16
- package/deps/ncrypto/.github/workflows/ubuntu.yml +0 -128
- package/deps/ncrypto/.github/workflows/visual-studio.yml +0 -49
- package/deps/ncrypto/.python-version +0 -1
- package/deps/ncrypto/.release-please-manifest.json +0 -3
- package/deps/ncrypto/BUILD.bazel +0 -44
- package/deps/ncrypto/CHANGELOG.md +0 -37
- package/deps/ncrypto/CMakeLists.txt +0 -79
- package/deps/ncrypto/MODULE.bazel +0 -16
- package/deps/ncrypto/MODULE.bazel.lock +0 -461
- package/deps/ncrypto/cmake/CPM.cmake +0 -1225
- package/deps/ncrypto/cmake/ncrypto-flags.cmake +0 -17
- package/deps/ncrypto/ncrypto.pc.in +0 -10
- package/deps/ncrypto/patches/0001-Expose-libdecrepit-so-NodeJS-can-use-it-for-ncrypto.patch +0 -28
- package/deps/ncrypto/pyproject.toml +0 -38
- package/deps/ncrypto/release-please-config.json +0 -11
- package/deps/ncrypto/src/CMakeLists.txt +0 -40
- package/deps/ncrypto/tests/BUILD.bazel +0 -11
- package/deps/ncrypto/tests/CMakeLists.txt +0 -7
- package/deps/ncrypto/tests/basic.cpp +0 -856
- package/deps/ncrypto/tools/run-clang-format.sh +0 -42
- package/deps/simdutf/.clang-format +0 -4
- package/deps/simdutf/.github/ISSUE_TEMPLATE/bug_report.md +0 -62
- package/deps/simdutf/.github/ISSUE_TEMPLATE/config.yml +0 -1
- package/deps/simdutf/.github/ISSUE_TEMPLATE/feature_request.md +0 -35
- package/deps/simdutf/.github/ISSUE_TEMPLATE/standard-issue-template.md +0 -29
- package/deps/simdutf/.github/pull_request_template.md +0 -51
- package/deps/simdutf/.github/workflows/aarch64.yml +0 -39
- package/deps/simdutf/.github/workflows/alpine.yml +0 -27
- package/deps/simdutf/.github/workflows/amalgamation_demos.yml +0 -34
- package/deps/simdutf/.github/workflows/armv7.yml +0 -32
- package/deps/simdutf/.github/workflows/atomic_fuzz.yml +0 -25
- package/deps/simdutf/.github/workflows/cifuzz.yml +0 -37
- package/deps/simdutf/.github/workflows/clangformat.yml +0 -36
- package/deps/simdutf/.github/workflows/debian-latestcxxstandards.yml +0 -40
- package/deps/simdutf/.github/workflows/debian.yml +0 -33
- package/deps/simdutf/.github/workflows/documentation.yml +0 -36
- package/deps/simdutf/.github/workflows/emscripten.yml +0 -19
- package/deps/simdutf/.github/workflows/loongarch64-gcc-14.2.yml +0 -39
- package/deps/simdutf/.github/workflows/macos-latest.yml +0 -29
- package/deps/simdutf/.github/workflows/msys2-clang.yml +0 -48
- package/deps/simdutf/.github/workflows/msys2.yml +0 -50
- package/deps/simdutf/.github/workflows/ppc64le.yml +0 -29
- package/deps/simdutf/.github/workflows/rvv-1024-clang-18.yml +0 -35
- package/deps/simdutf/.github/workflows/rvv-128-clang-17.yml +0 -35
- package/deps/simdutf/.github/workflows/rvv-256-gcc-14.yml +0 -31
- package/deps/simdutf/.github/workflows/s390x.yml +0 -29
- package/deps/simdutf/.github/workflows/selective-amalgamation.yml +0 -29
- package/deps/simdutf/.github/workflows/typos.yml +0 -19
- package/deps/simdutf/.github/workflows/ubuntu22-cxx20.yml +0 -30
- package/deps/simdutf/.github/workflows/ubuntu22.yml +0 -32
- package/deps/simdutf/.github/workflows/ubuntu22_gcc12.yml +0 -27
- package/deps/simdutf/.github/workflows/ubuntu22sani.yml +0 -29
- package/deps/simdutf/.github/workflows/ubuntu24-cxxstandards.yml +0 -34
- package/deps/simdutf/.github/workflows/ubuntu24-unsignedchar.yml +0 -34
- package/deps/simdutf/.github/workflows/ubuntu24.yml +0 -32
- package/deps/simdutf/.github/workflows/ubuntu24sani.yml +0 -36
- package/deps/simdutf/.github/workflows/ubuntu24sani_clang.yml +0 -29
- package/deps/simdutf/.github/workflows/vs17-arm-ci.yml +0 -21
- package/deps/simdutf/.github/workflows/vs17-ci-cxx20.yml +0 -41
- package/deps/simdutf/.github/workflows/vs17-ci.yml +0 -41
- package/deps/simdutf/.github/workflows/vs17-clang-ci.yml +0 -41
- package/deps/simdutf/.github/workflows/vs17-cxxstandards.yml +0 -36
- package/deps/simdutf/AI_USAGE_POLICY.md +0 -56
- package/deps/simdutf/AUTHORS +0 -6
- package/deps/simdutf/CMakeLists.txt +0 -231
- package/deps/simdutf/CONTRIBUTING.md +0 -214
- package/deps/simdutf/CONTRIBUTORS +0 -1
- package/deps/simdutf/Doxyfile +0 -2584
- package/deps/simdutf/Makefile.crosscompile +0 -54
- package/deps/simdutf/README-RVV.md +0 -16
- package/deps/simdutf/SECURITY.md +0 -8
- package/deps/simdutf/benchmarks/CMakeLists.txt +0 -101
- package/deps/simdutf/benchmarks/alignment.cpp +0 -150
- package/deps/simdutf/benchmarks/base64/CMakeLists.txt +0 -30
- package/deps/simdutf/benchmarks/base64/benchmark_base64.cpp +0 -875
- package/deps/simdutf/benchmarks/base64/libbase64_spaces.h +0 -49
- package/deps/simdutf/benchmarks/base64/node_base64.h +0 -227
- package/deps/simdutf/benchmarks/base64/openssl3_base64.h +0 -334
- package/deps/simdutf/benchmarks/benchmark.cpp +0 -65
- package/deps/simdutf/benchmarks/benchmark_to_well_formed_utf16.cpp +0 -347
- package/deps/simdutf/benchmarks/competition/.clang-format-ignore +0 -5
- package/deps/simdutf/benchmarks/competition/CppCon2018/utf_utils.cpp +0 -1276
- package/deps/simdutf/benchmarks/competition/CppCon2018/utf_utils.h +0 -595
- package/deps/simdutf/benchmarks/competition/README.md +0 -7
- package/deps/simdutf/benchmarks/competition/hoehrmann/hoehrmann.h +0 -91
- package/deps/simdutf/benchmarks/competition/inoue2008/inoue_utf8_to_utf16.h +0 -444
- package/deps/simdutf/benchmarks/competition/inoue2008/inoue_utf8_to_utf16_tables.h +0 -13183
- package/deps/simdutf/benchmarks/competition/inoue2008/script.py +0 -73
- package/deps/simdutf/benchmarks/competition/llvm/ConvertUTF.cpp +0 -738
- package/deps/simdutf/benchmarks/competition/llvm/ConvertUTF.h +0 -293
- package/deps/simdutf/benchmarks/competition/u8u16/COPYRIGHT +0 -8
- package/deps/simdutf/benchmarks/competition/u8u16/Makefile +0 -44
- package/deps/simdutf/benchmarks/competition/u8u16/OSL3.0.txt +0 -169
- package/deps/simdutf/benchmarks/competition/u8u16/Profiling/BOM_Profiler.h +0 -148
- package/deps/simdutf/benchmarks/competition/u8u16/Profiling/i386_timer.h +0 -45
- package/deps/simdutf/benchmarks/competition/u8u16/Profiling/ppc_timer.c +0 -34
- package/deps/simdutf/benchmarks/competition/u8u16/README +0 -56
- package/deps/simdutf/benchmarks/competition/u8u16/config/config_defs.h +0 -43
- package/deps/simdutf/benchmarks/competition/u8u16/config/g4_config.h +0 -27
- package/deps/simdutf/benchmarks/competition/u8u16/config/mmx_config.h +0 -16
- package/deps/simdutf/benchmarks/competition/u8u16/config/p4_config.h +0 -18
- package/deps/simdutf/benchmarks/competition/u8u16/config/p4_ideal_config.h +0 -16
- package/deps/simdutf/benchmarks/competition/u8u16/config/spu_config.h +0 -28
- package/deps/simdutf/benchmarks/competition/u8u16/config/ssse3_config.h +0 -20
- package/deps/simdutf/benchmarks/competition/u8u16/iconv_u8u16.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/lib/altivec_simd.h +0 -440
- package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_basic_ops.py +0 -121
- package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_half_operand_versions.py +0 -158
- package/deps/simdutf/benchmarks/competition/u8u16/lib/libgen/make_test.py +0 -270
- package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd.h +0 -141
- package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_basic.h +0 -216
- package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_built_in.h +0 -119
- package/deps/simdutf/benchmarks/competition/u8u16/lib/mmx_simd_modified.h +0 -2430
- package/deps/simdutf/benchmarks/competition/u8u16/lib/outline.txt +0 -39
- package/deps/simdutf/benchmarks/competition/u8u16/lib/spu_simd.h +0 -421
- package/deps/simdutf/benchmarks/competition/u8u16/lib/sse_simd.h +0 -836
- package/deps/simdutf/benchmarks/competition/u8u16/lib/stdint.h +0 -222
- package/deps/simdutf/benchmarks/competition/u8u16/libu8u16_BE.c +0 -4
- package/deps/simdutf/benchmarks/competition/u8u16/libu8u16_LE.c +0 -5
- package/deps/simdutf/benchmarks/competition/u8u16/proto/u8u16.py +0 -390
- package/deps/simdutf/benchmarks/competition/u8u16/src/Makefile +0 -18
- package/deps/simdutf/benchmarks/competition/u8u16/src/bytelex.h +0 -448
- package/deps/simdutf/benchmarks/competition/u8u16/src/charsets/ASCII_EBCDIC.h +0 -284
- package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.c +0 -1975
- package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.pdf +0 -0
- package/deps/simdutf/benchmarks/competition/u8u16/src/libu8u16.w +0 -2263
- package/deps/simdutf/benchmarks/competition/u8u16/src/multiliteral.h +0 -239
- package/deps/simdutf/benchmarks/competition/u8u16/src/u8u16.c +0 -232
- package/deps/simdutf/benchmarks/competition/u8u16/src/x8x16.c +0 -194
- package/deps/simdutf/benchmarks/competition/u8u16/src/xml_error.c +0 -193
- package/deps/simdutf/benchmarks/competition/u8u16/src/xml_error.h +0 -167
- package/deps/simdutf/benchmarks/competition/u8u16/src/xmldecl.c +0 -288
- package/deps/simdutf/benchmarks/competition/u8u16/src/xmldecl.h +0 -117
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_g4.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_mmx.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_p4.c +0 -3
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_p4_ideal.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_spu.c +0 -2
- package/deps/simdutf/benchmarks/competition/u8u16/u8u16_ssse3.c +0 -3
- package/deps/simdutf/benchmarks/competition/u8u16/x8x16_p4.c +0 -2
- package/deps/simdutf/benchmarks/competition/utf8lut/LICENSE +0 -23
- package/deps/simdutf/benchmarks/competition/utf8lut/data/test_minimal.txt +0 -44
- package/deps/simdutf/benchmarks/competition/utf8lut/readme.md +0 -106
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_clang_corr_tests.cmd +0 -11
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_clang_corr_tests.sh +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_corr_tests.sh +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_example.sh +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_file_conv.sh +0 -14
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_iconv_lib.sh +0 -11
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_gcc_iconv_sample.sh +0 -8
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_corr_tests.cmd +0 -12
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_example.cmd +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_file_conv.cmd +0 -14
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_iconv_lib.cmd +0 -11
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_mingw_iconv_sample.cmd +0 -8
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_corr_tests.cmd +0 -11
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_example.cmd +0 -12
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_file_conv.cmd +0 -13
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_iconv_lib.cmd +0 -10
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/build_msvc_iconv_sample.cmd +0 -9
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/html_table.py +0 -25
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/measure.py +0 -94
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/resize.py +0 -20
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/wipe_all.cmd +0 -2
- package/deps/simdutf/benchmarks/competition/utf8lut/scripts/wipe_interm.cmd +0 -1
- package/deps/simdutf/benchmarks/competition/utf8lut/src/base/CustomMemcpy.h +0 -75
- package/deps/simdutf/benchmarks/competition/utf8lut/src/base/PerfDefs.h +0 -47
- package/deps/simdutf/benchmarks/competition/utf8lut/src/base/Timing.cpp +0 -17
- package/deps/simdutf/benchmarks/competition/utf8lut/src/base/Timing.h +0 -76
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/AllProcessors.cpp +0 -35
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BaseBufferProcessor.cpp +0 -117
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BaseBufferProcessor.h +0 -210
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BufferDecoder.h +0 -158
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/BufferEncoder.h +0 -104
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/ProcessorPlugins.h +0 -334
- package/deps/simdutf/benchmarks/competition/utf8lut/src/buffer/ProcessorSelector.h +0 -186
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderLut.cpp +0 -140
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderLut.h +0 -42
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/DecoderProcess.h +0 -100
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/Dfa.h +0 -57
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderLut.cpp +0 -85
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderLut.h +0 -27
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/EncoderProcess.h +0 -126
- package/deps/simdutf/benchmarks/competition/utf8lut/src/core/ProcessTrivial.h +0 -108
- package/deps/simdutf/benchmarks/competition/utf8lut/src/iconv/iconv.cpp +0 -139
- package/deps/simdutf/benchmarks/competition/utf8lut/src/iconv/iconv.h +0 -74
- package/deps/simdutf/benchmarks/competition/utf8lut/src/message/MessageConverter.cpp +0 -65
- package/deps/simdutf/benchmarks/competition/utf8lut/src/message/MessageConverter.h +0 -91
- package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/CorrectnessTests.cpp +0 -772
- package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/Example.cpp +0 -12
- package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/FileConverter.cpp +0 -486
- package/deps/simdutf/benchmarks/competition/utf8lut/src/tests/iconv_sample.c +0 -162
- package/deps/simdutf/benchmarks/competition/utf8lut/src/utf8lut.h +0 -15
- package/deps/simdutf/benchmarks/competition/utf8sse4/fromutf8-sse.cpp +0 -292
- package/deps/simdutf/benchmarks/competition/utfcpp/LICENSE +0 -23
- package/deps/simdutf/benchmarks/competition/utfcpp/README.md +0 -1503
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/checked.h +0 -335
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/core.h +0 -338
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/cpp11.h +0 -103
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/cpp17.h +0 -103
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8/unchecked.h +0 -274
- package/deps/simdutf/benchmarks/competition/utfcpp/source/utf8.h +0 -34
- package/deps/simdutf/benchmarks/dataset/README.md +0 -155
- package/deps/simdutf/benchmarks/dataset/emoji.txt +0 -204
- package/deps/simdutf/benchmarks/dataset/scripts/utf8type.py +0 -40
- package/deps/simdutf/benchmarks/dataset/wikipedia_mars/Makefile +0 -80
- package/deps/simdutf/benchmarks/dataset/wikipedia_mars/convert_to_utf6.py +0 -20
- package/deps/simdutf/benchmarks/find/CMakeLists.txt +0 -6
- package/deps/simdutf/benchmarks/find/findbenchmark.cpp +0 -63
- package/deps/simdutf/benchmarks/find/findbenchmarker.h +0 -46
- package/deps/simdutf/benchmarks/shortbench.cpp +0 -555
- package/deps/simdutf/benchmarks/src/CMakeLists.txt +0 -52
- package/deps/simdutf/benchmarks/src/apple_arm_events.h +0 -1104
- package/deps/simdutf/benchmarks/src/benchmark.cpp +0 -3899
- package/deps/simdutf/benchmarks/src/benchmark.h +0 -317
- package/deps/simdutf/benchmarks/src/benchmark_base.cpp +0 -144
- package/deps/simdutf/benchmarks/src/benchmark_base.h +0 -98
- package/deps/simdutf/benchmarks/src/cmdline.cpp +0 -176
- package/deps/simdutf/benchmarks/src/cmdline.h +0 -35
- package/deps/simdutf/benchmarks/src/event_counter.h +0 -162
- package/deps/simdutf/benchmarks/src/linux-perf-events.h +0 -104
- package/deps/simdutf/benchmarks/stream.cpp +0 -209
- package/deps/simdutf/benchmarks/threaded.cpp +0 -123
- package/deps/simdutf/cmake/CPM.cmake +0 -1363
- package/deps/simdutf/cmake/JoinPaths.cmake +0 -23
- package/deps/simdutf/cmake/add_cpp_test.cmake +0 -68
- package/deps/simdutf/cmake/simdutf-config.cmake.in +0 -2
- package/deps/simdutf/cmake/simdutf-flags.cmake +0 -26
- package/deps/simdutf/cmake/toolchains-ci/riscv64-linux-gnu.cmake +0 -4
- package/deps/simdutf/cmake/toolchains-dev/README.md +0 -32
- package/deps/simdutf/cmake/toolchains-dev/aarch64.cmake +0 -14
- package/deps/simdutf/cmake/toolchains-dev/loongarch64.cmake +0 -22
- package/deps/simdutf/cmake/toolchains-dev/powerpc64.cmake +0 -16
- package/deps/simdutf/cmake/toolchains-dev/powerpc64le.cmake +0 -16
- package/deps/simdutf/cmake/toolchains-dev/riscv64.cmake +0 -16
- package/deps/simdutf/cmake/toolchains-dev/rvv-spike.cmake +0 -38
- package/deps/simdutf/doc/avx512.png +0 -0
- package/deps/simdutf/doc/logo.png +0 -0
- package/deps/simdutf/doc/logo.svg +0 -165
- package/deps/simdutf/doc/node2023.png +0 -0
- package/deps/simdutf/doc/shortinput.md +0 -78
- package/deps/simdutf/doc/utf16utf8.png +0 -0
- package/deps/simdutf/doc/utf8utf16.png +0 -0
- package/deps/simdutf/doc/widelogo.png +0 -0
- package/deps/simdutf/doxygen.py +0 -50
- package/deps/simdutf/fuzz/.clang-format +0 -9
- package/deps/simdutf/fuzz/CMakeLists.txt +0 -45
- package/deps/simdutf/fuzz/README.md +0 -168
- package/deps/simdutf/fuzz/atomic_base64.cpp +0 -448
- package/deps/simdutf/fuzz/base64.cpp +0 -278
- package/deps/simdutf/fuzz/build.sh +0 -83
- package/deps/simdutf/fuzz/conversion.cpp +0 -669
- package/deps/simdutf/fuzz/helpers/.clang-format-ignore +0 -1
- package/deps/simdutf/fuzz/helpers/common.h +0 -135
- package/deps/simdutf/fuzz/helpers/nameof.hpp +0 -1258
- package/deps/simdutf/fuzz/main.cpp +0 -72
- package/deps/simdutf/fuzz/minimize_and_cleanse.sh +0 -87
- package/deps/simdutf/fuzz/misc.cpp +0 -216
- package/deps/simdutf/fuzz/random_fuzz.sh +0 -154
- package/deps/simdutf/fuzz/roundtrip.cpp +0 -588
- package/deps/simdutf/fuzz/safe_conversion.cpp +0 -104
- package/deps/simdutf/riscv/Dockerfile +0 -16
- package/deps/simdutf/riscv/README.md +0 -24
- package/deps/simdutf/riscv/remove-docker-station +0 -8
- package/deps/simdutf/riscv/run-docker-station +0 -31
- package/deps/simdutf/scripts/.flake8 +0 -2
- package/deps/simdutf/scripts/Makefile +0 -2
- package/deps/simdutf/scripts/README_ADD_FUNCTION.md +0 -49
- package/deps/simdutf/scripts/add_function.py +0 -330
- package/deps/simdutf/scripts/amalgamation_tests.py +0 -156
- package/deps/simdutf/scripts/base64/Makefile +0 -2
- package/deps/simdutf/scripts/base64/README.md +0 -2
- package/deps/simdutf/scripts/base64/avx512.py +0 -76
- package/deps/simdutf/scripts/base64/neon_decode.py +0 -143
- package/deps/simdutf/scripts/base64/neon_generate_lut.py +0 -101
- package/deps/simdutf/scripts/base64/sse.py +0 -252
- package/deps/simdutf/scripts/base64/sseregular.py +0 -160
- package/deps/simdutf/scripts/base64/sseurl.py +0 -283
- package/deps/simdutf/scripts/base64/table.py +0 -59
- package/deps/simdutf/scripts/base64bench_print.py +0 -145
- package/deps/simdutf/scripts/benchmark-all.py +0 -119
- package/deps/simdutf/scripts/benchmark_print.py +0 -324
- package/deps/simdutf/scripts/check_feature_macros.py +0 -156
- package/deps/simdutf/scripts/check_typos.sh +0 -13
- package/deps/simdutf/scripts/clang_format.sh +0 -35
- package/deps/simdutf/scripts/clang_format_docker.sh +0 -38
- package/deps/simdutf/scripts/common.py +0 -24
- package/deps/simdutf/scripts/compilation_benchmark.py +0 -55
- package/deps/simdutf/scripts/compile_many_variations.sh +0 -64
- package/deps/simdutf/scripts/create_latex_table.py +0 -62
- package/deps/simdutf/scripts/docker/Dockerfile +0 -14
- package/deps/simdutf/scripts/docker/Makefile +0 -9
- package/deps/simdutf/scripts/docker/README.md +0 -30
- package/deps/simdutf/scripts/docker/llvm.gpg +0 -0
- package/deps/simdutf/scripts/ppc64_convert_utf16_to_utf8.py +0 -155
- package/deps/simdutf/scripts/prepare_doxygen.sh +0 -21
- package/deps/simdutf/scripts/release.py +0 -197
- package/deps/simdutf/scripts/shortinputplots.py +0 -97
- package/deps/simdutf/scripts/sse_convert_utf16_to_utf8.py +0 -422
- package/deps/simdutf/scripts/sse_convert_utf32_to_utf16.py +0 -105
- package/deps/simdutf/scripts/sse_utf8_utf16_decode.py +0 -186
- package/deps/simdutf/scripts/sse_validate_utf16le_proof.py +0 -137
- package/deps/simdutf/scripts/sse_validate_utf16le_testcases.py +0 -129
- package/deps/simdutf/scripts/table.py +0 -207
- package/deps/simdutf/scripts/tests/new.txt +0 -33
- package/deps/simdutf/scripts/tests/old.txt +0 -33
- package/deps/simdutf/scripts/tests/results.txt +0 -272
- package/deps/simdutf/simdutf.pc.in +0 -11
- package/deps/simdutf/singleheader/.flake8 +0 -2
- package/deps/simdutf/singleheader/CMakeLists.txt +0 -64
- package/deps/simdutf/singleheader/README-dev.md +0 -81
- package/deps/simdutf/singleheader/README.md +0 -19
- package/deps/simdutf/singleheader/amalgamate.py +0 -513
- package/deps/simdutf/singleheader/amalgamation_demo.c +0 -59
- package/deps/simdutf/singleheader/amalgamation_demo.cpp +0 -54
- package/deps/simdutf/singleheader/test-features.py +0 -262
- package/deps/simdutf/src/CMakeLists.txt +0 -78
- package/deps/simdutf/tests/CMakeLists.txt +0 -483
- package/deps/simdutf/tests/atomic_base64_tests.cpp +0 -2845
- package/deps/simdutf/tests/base64_tests.cpp +0 -3617
- package/deps/simdutf/tests/basic_fuzzer.cpp +0 -805
- package/deps/simdutf/tests/bele_tests.cpp +0 -182
- package/deps/simdutf/tests/constexpr_base64_tests.cpp +0 -387
- package/deps/simdutf/tests/convert_latin1_to_utf16be_tests.cpp +0 -52
- package/deps/simdutf/tests/convert_latin1_to_utf16le_tests.cpp +0 -80
- package/deps/simdutf/tests/convert_latin1_to_utf32_tests.cpp +0 -66
- package/deps/simdutf/tests/convert_latin1_to_utf8_tests.cpp +0 -120
- package/deps/simdutf/tests/convert_utf16_to_utf8_safe_tests.cpp +0 -203
- package/deps/simdutf/tests/convert_utf16_to_utf8_with_replacement_tests.cpp +0 -276
- package/deps/simdutf/tests/convert_utf16be_to_latin1_tests.cpp +0 -109
- package/deps/simdutf/tests/convert_utf16be_to_latin1_tests_with_errors.cpp +0 -136
- package/deps/simdutf/tests/convert_utf16be_to_utf32_tests.cpp +0 -193
- package/deps/simdutf/tests/convert_utf16be_to_utf32_with_errors_tests.cpp +0 -381
- package/deps/simdutf/tests/convert_utf16be_to_utf8_tests.cpp +0 -259
- package/deps/simdutf/tests/convert_utf16be_to_utf8_with_errors_tests.cpp +0 -266
- package/deps/simdutf/tests/convert_utf16le_to_latin1_tests.cpp +0 -148
- package/deps/simdutf/tests/convert_utf16le_to_latin1_tests_with_errors.cpp +0 -176
- package/deps/simdutf/tests/convert_utf16le_to_utf32_tests.cpp +0 -213
- package/deps/simdutf/tests/convert_utf16le_to_utf32_with_errors_tests.cpp +0 -318
- package/deps/simdutf/tests/convert_utf16le_to_utf8_tests.cpp +0 -343
- package/deps/simdutf/tests/convert_utf16le_to_utf8_with_errors_tests.cpp +0 -271
- package/deps/simdutf/tests/convert_utf32_to_latin1_tests.cpp +0 -111
- package/deps/simdutf/tests/convert_utf32_to_latin1_with_errors_tests.cpp +0 -96
- package/deps/simdutf/tests/convert_utf32_to_utf16be_tests.cpp +0 -148
- package/deps/simdutf/tests/convert_utf32_to_utf16be_with_errors_tests.cpp +0 -192
- package/deps/simdutf/tests/convert_utf32_to_utf16le_tests.cpp +0 -166
- package/deps/simdutf/tests/convert_utf32_to_utf16le_with_errors_tests.cpp +0 -215
- package/deps/simdutf/tests/convert_utf32_to_utf8_tests.cpp +0 -181
- package/deps/simdutf/tests/convert_utf32_to_utf8_with_errors_tests.cpp +0 -261
- package/deps/simdutf/tests/convert_utf8_to_latin1_tests.cpp +0 -516
- package/deps/simdutf/tests/convert_utf8_to_latin1_with_errors_tests.cpp +0 -579
- package/deps/simdutf/tests/convert_utf8_to_utf16be_tests.cpp +0 -412
- package/deps/simdutf/tests/convert_utf8_to_utf16be_with_errors_tests.cpp +0 -480
- package/deps/simdutf/tests/convert_utf8_to_utf16le_tests.cpp +0 -671
- package/deps/simdutf/tests/convert_utf8_to_utf16le_with_errors_tests.cpp +0 -455
- package/deps/simdutf/tests/convert_utf8_to_utf32_tests.cpp +0 -1204
- package/deps/simdutf/tests/convert_utf8_to_utf32_with_errors_tests.cpp +0 -337
- package/deps/simdutf/tests/convert_valid_utf16be_to_latin1_tests.cpp +0 -37
- package/deps/simdutf/tests/convert_valid_utf16be_to_utf32_tests.cpp +0 -97
- package/deps/simdutf/tests/convert_valid_utf16be_to_utf8_tests.cpp +0 -126
- package/deps/simdutf/tests/convert_valid_utf16le_to_latin1_tests.cpp +0 -71
- package/deps/simdutf/tests/convert_valid_utf16le_to_utf32_tests.cpp +0 -122
- package/deps/simdutf/tests/convert_valid_utf16le_to_utf8_tests.cpp +0 -244
- package/deps/simdutf/tests/convert_valid_utf32_to_latin1_tests.cpp +0 -49
- package/deps/simdutf/tests/convert_valid_utf32_to_utf16be_tests.cpp +0 -92
- package/deps/simdutf/tests/convert_valid_utf32_to_utf16le_tests.cpp +0 -114
- package/deps/simdutf/tests/convert_valid_utf32_to_utf8_tests.cpp +0 -109
- package/deps/simdutf/tests/convert_valid_utf8_to_latin1_tests.cpp +0 -84
- package/deps/simdutf/tests/convert_valid_utf8_to_utf16be_tests.cpp +0 -124
- package/deps/simdutf/tests/convert_valid_utf8_to_utf16le_tests.cpp +0 -221
- package/deps/simdutf/tests/convert_valid_utf8_to_utf32_tests.cpp +0 -155
- package/deps/simdutf/tests/count_utf16be.cpp +0 -64
- package/deps/simdutf/tests/count_utf16le.cpp +0 -61
- package/deps/simdutf/tests/count_utf8.cpp +0 -87
- package/deps/simdutf/tests/detect_encodings_tests.cpp +0 -312
- package/deps/simdutf/tests/embed/valid_utf8.txt +0 -1
- package/deps/simdutf/tests/embed_tests.cpp +0 -22
- package/deps/simdutf/tests/find_tests.cpp +0 -77
- package/deps/simdutf/tests/fixed_string_tests.cpp +0 -153
- package/deps/simdutf/tests/helpers/CMakeLists.txt +0 -25
- package/deps/simdutf/tests/helpers/compiletime_conversions.h +0 -222
- package/deps/simdutf/tests/helpers/fixed_string.h +0 -267
- package/deps/simdutf/tests/helpers/random_int.cpp +0 -30
- package/deps/simdutf/tests/helpers/random_int.h +0 -39
- package/deps/simdutf/tests/helpers/random_utf16.cpp +0 -123
- package/deps/simdutf/tests/helpers/random_utf16.h +0 -52
- package/deps/simdutf/tests/helpers/random_utf32.cpp +0 -41
- package/deps/simdutf/tests/helpers/random_utf32.h +0 -40
- package/deps/simdutf/tests/helpers/random_utf8.cpp +0 -93
- package/deps/simdutf/tests/helpers/random_utf8.h +0 -36
- package/deps/simdutf/tests/helpers/test.cpp +0 -231
- package/deps/simdutf/tests/helpers/test.h +0 -193
- package/deps/simdutf/tests/helpers/transcode_test_base.cpp +0 -1257
- package/deps/simdutf/tests/helpers/transcode_test_base.h +0 -683
- package/deps/simdutf/tests/helpers/utf16.h +0 -27
- package/deps/simdutf/tests/installation_tests/find/CMakeLists.txt +0 -43
- package/deps/simdutf/tests/installation_tests/from_fetch/CMakeLists.txt +0 -47
- package/deps/simdutf/tests/internal_tests.cpp +0 -27
- package/deps/simdutf/tests/null_safety_tests.cpp +0 -94
- package/deps/simdutf/tests/random_fuzzer.cpp +0 -779
- package/deps/simdutf/tests/readme_tests.cpp +0 -274
- package/deps/simdutf/tests/reference/CMakeLists.txt +0 -23
- package/deps/simdutf/tests/reference/decode_utf16.h +0 -81
- package/deps/simdutf/tests/reference/decode_utf32.h +0 -47
- package/deps/simdutf/tests/reference/encode_latin1.cpp +0 -1
- package/deps/simdutf/tests/reference/encode_latin1.h +0 -32
- package/deps/simdutf/tests/reference/encode_utf16.cpp +0 -49
- package/deps/simdutf/tests/reference/encode_utf16.h +0 -20
- package/deps/simdutf/tests/reference/encode_utf32.cpp +0 -1
- package/deps/simdutf/tests/reference/encode_utf32.h +0 -36
- package/deps/simdutf/tests/reference/encode_utf8.cpp +0 -1
- package/deps/simdutf/tests/reference/encode_utf8.h +0 -40
- package/deps/simdutf/tests/reference/validate_utf16.cpp +0 -60
- package/deps/simdutf/tests/reference/validate_utf16.h +0 -14
- package/deps/simdutf/tests/reference/validate_utf16_to_latin1.cpp +0 -35
- package/deps/simdutf/tests/reference/validate_utf16_to_latin1.h +0 -13
- package/deps/simdutf/tests/reference/validate_utf32.cpp +0 -27
- package/deps/simdutf/tests/reference/validate_utf32.h +0 -12
- package/deps/simdutf/tests/reference/validate_utf32_to_latin1.cpp +0 -27
- package/deps/simdutf/tests/reference/validate_utf32_to_latin1.h +0 -12
- package/deps/simdutf/tests/reference/validate_utf8.cpp +0 -82
- package/deps/simdutf/tests/reference/validate_utf8.h +0 -11
- package/deps/simdutf/tests/reference/validate_utf8_to_latin1.cpp +0 -43
- package/deps/simdutf/tests/reference/validate_utf8_to_latin1.h +0 -12
- package/deps/simdutf/tests/select_implementation.cpp +0 -43
- package/deps/simdutf/tests/simdutf_c_tests.cpp +0 -244
- package/deps/simdutf/tests/span_tests.cpp +0 -401
- package/deps/simdutf/tests/special_tests.cpp +0 -559
- package/deps/simdutf/tests/straight_c_test.c +0 -187
- package/deps/simdutf/tests/text_encoding_tests.cpp +0 -77
- package/deps/simdutf/tests/to_well_formed_utf16_tests.cpp +0 -377
- package/deps/simdutf/tests/utf8_length_from_utf16_tests.cpp +0 -202
- package/deps/simdutf/tests/validate_ascii_basic_tests.cpp +0 -165
- package/deps/simdutf/tests/validate_ascii_with_errors_tests.cpp +0 -77
- package/deps/simdutf/tests/validate_utf16be_basic_tests.cpp +0 -175
- package/deps/simdutf/tests/validate_utf16be_with_errors_tests.cpp +0 -188
- package/deps/simdutf/tests/validate_utf16le_basic_tests.cpp +0 -268
- package/deps/simdutf/tests/validate_utf16le_with_errors_tests.cpp +0 -274
- package/deps/simdutf/tests/validate_utf32_basic_tests.cpp +0 -92
- package/deps/simdutf/tests/validate_utf32_with_errors_tests.cpp +0 -114
- package/deps/simdutf/tests/validate_utf8_basic_tests.cpp +0 -178
- package/deps/simdutf/tests/validate_utf8_brute_force_tests.cpp +0 -88
- package/deps/simdutf/tests/validate_utf8_puzzler_tests.cpp +0 -33
- package/deps/simdutf/tests/validate_utf8_with_errors_tests.cpp +0 -228
- package/deps/simdutf/tools/CMakeLists.txt +0 -85
- package/deps/simdutf/tools/fastbase64.cpp +0 -250
- package/deps/simdutf/tools/sutf.cpp +0 -556
- package/deps/simdutf/tools/sutf.h +0 -40
- package/lib/tsconfig.tsbuildinfo +0 -1
package/lib/module/subtle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Buffer","SBuffer","KFormatType","KeyEncoding","KeyType","CryptoKey","KeyObject","PublicKeyObject","PrivateKeyObject","SecretKeyObject","bufferLikeToArrayBuffer","argon2Sync","lazyDOMException","normalizeHashName","HashContext","validateMaxBufferLength","asyncDigest","createSecretKey","createPublicKey","NitroModules","pbkdf2DeriveBits","ecImportKey","ecdsaSignVerify","ec_generateKeyPair","ecDeriveBits","rsa_generateKeyPair","getRandomValues","createHmac","timingSafeEqual","createSign","createVerify","ed_generateKeyPairWebCrypto","x_generateKeyPairWebCrypto","xDeriveBits","Ed","mldsa_generateKeyPairWebCrypto","mlkem_generateKeyPairWebCrypto","MlKem","hkdfDeriveBits","KWebCryptoKeyFormat","CipherOrWrapMode","hasAnyNotIn","usages","allowed","some","usage","includes","normalizeAlgorithm","algorithm","_operation","name","getAlgorithmName","length","ecExportKey","key","format","keyObject","kWebCryptoKeyFormatRaw","handle","exportKey","kWebCryptoKeyFormatSPKI","exported","export","type","kWebCryptoKeyFormatPKCS8","Error","rsaExportKey","rsaCipher","mode","data","rsaParams","expectedType","kWebCryptoCipherEncrypt","hashAlgorithm","hash","label","undefined","rsaCipherModule","createHybridObject","RSA_PKCS1_OAEP_PADDING","encrypt","decrypt","aesCipher","aesCtrCipher","aesCbcCipher","aesGcmCipher","aesOcbCipher","counter","byteLength","keyLength","cipherType","factory","cipher","createCipher","isCipher","cipherKey","iv","updated","update","final","result","Uint8Array","set","buffer","aesAeadCipher","config","additionalData","tagLength","validTagLengths","algorithmName","tagByteLength","cipherSuffix","authTagLen","processData","kWebCryptoCipherDecrypt","dataView","ciphertextLength","slice","authTag","setAuthTag","setAAD","tag","getAuthTag","ivBuffer","aesKwCipher","isWrap","exportedKey","defaultWrapIV","chaCha20Poly1305Cipher","aesGenerateKey","extractable","keyUsages","validUsages","keyBytes","keyAlgorithm","hmacGenerateKey","hashName","Math","ceil","webCryptoHashName","WebCrypto","kmacGenerateKey","defaultLength","kmacSignVerify","signature","outputLengthBits","outputLengthBytes","keyData","kmac","customizationBuffer","customization","createKmac","computed","digest","sigBuffer","kmacImportKey","jwk","kty","expectedAlg","alg","keyType","initJwk","rsaImportKey","checkSet","createKeyObject","DER","SPKI","PKCS8","keyDetails","asymmetricKeyDetails","publicExponentBytes","publicExponent","exp","bytes","value","unshift","floor","normalizedHash","algorithmWithDetails","modulusLength","hmacImportKey","k","decoded","from","keyBitLength","normalizedAlgorithm","aesImportKey","actualLength","edImportKey","isX","allowedUsages","init","jwkData","PRIVATE","pqcImportKeyObject","initPqcRaw","mldsaImportKey","isPublicFormat","mlkemImportKey","exportKeySpki","exportKeyPkcs8","exportKeyRaw","byteOffset","exportKeyJWK","exportJwk","key_ops","ext","JwkRsa","JwkRsaPss","JwkRsaOaep","JwkHmac","crv","namedCurve","importGenericSecretKey","checkLength","isBuffer","hkdfImportKey","checkCryptoKeyPairUsages","pair","privateKey","argon2DeriveBits","baseKey","nonce","parallelism","memory","passes","secretValue","associatedData","message","algName","toLowerCase","secret","version","isCryptoKeyPair","hmacSignVerify","hmac","computedBuffer","rsaSignVerify","padding","saltLength","RSA_PKCS1_PADDING","RSA_PKCS1_PSS_PADDING","paddingValue","signer","sig","sign","verifier","verify","edSignVerify","isSign","expectedKeyType","curveType","ed","rawKey","dataBuffer","signSync","signatureBuffer","verifySync","mldsaSignVerify","signVerify","cipherOrWrap","op","SUPPORTED_ALGORITHMS","Set","generateKey","importKey","deriveBits","wrapKey","unwrapKey","encapsulateBits","decapsulateBits","encapsulateKey","decapsulateKey","ASYMMETRIC_ALGORITHMS","Subtle","supports","operation","_lengthOrAdditionalAlgorithm","has","additionalAlg","supported","deriveKey","derivedKeyAlgorithm","getKeyLength","derivedBits","pqcAlgos","wrappingKey","wrapAlgorithm","jwkString","JSON","stringify","paddedLength","paddedBuffer","alloc","copy","writeUInt8","wrappedKey","unwrappingKey","unwrapAlgorithm","unwrappedKeyAlgorithm","decrypted","nullIndex","indexOf","toString","trim","parse","getPublicKey","publicKeyObject","toCryptoKey","_encapsulateCore","variant","mlkem","setPublicKey","encapsulateSync","_decapsulateCore","ciphertext","setPrivateKey","decapsulateSync","sharedKeyAlgorithm","sharedKey","importedKey","subtle","hmacAlg"],"sourceRoot":"../../src","sources":["subtle.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["Buffer","SBuffer","KFormatType","KeyEncoding","KeyType","kNamedCurveAliases","CryptoKey","KeyObject","PublicKeyObject","PrivateKeyObject","SecretKeyObject","bufferLikeToArrayBuffer","argon2Sync","lazyDOMException","normalizeHashName","HashContext","validateJwkStructure","validateMaxBufferLength","asyncDigest","createSecretKey","createPublicKey","NitroModules","pbkdf2DeriveBits","ecImportKey","ecdsaSignVerify","ec_generateKeyPair","ecDeriveBits","rsa_generateKeyPair","getRandomValues","createHmac","timingSafeEqual","createSign","createVerify","ed_generateKeyPairWebCrypto","x_generateKeyPairWebCrypto","xDeriveBits","Ed","mldsa_generateKeyPairWebCrypto","slhdsa_generateKeyPairWebCrypto","SLH_DSA_VARIANTS","mlkem_generateKeyPairWebCrypto","MlKem","hkdfDeriveBits","KWebCryptoKeyFormat","CipherOrWrapMode","hasAnyNotIn","usages","allowed","some","usage","includes","requireArgs","actual","required","method","TypeError","_canonicalAlgorithmNames","getCanonicalAlgorithmNames","map","Map","set","Object","values","SUPPORTED_ALGORITHMS","name","toLowerCase","normalizeAlgorithm","algorithm","_operation","get","canonical","getAlgorithmName","length","aliasKeyFormat","format","kUncompressedSpkiLength","ecExportKey","key","keyObject","kWebCryptoKeyFormatRaw","handle","exportKey","kWebCryptoKeyFormatSPKI","exported","export","type","namedCurve","expected","undefined","byteLength","jwk","exportJwk","x","y","from","raw","Uint8Array","tmp","createHybridObject","curveAlias","initECRaw","buffer","DER","SPKI","kWebCryptoKeyFormatPKCS8","Error","rsaExportKey","rsaCipher","mode","data","rsaParams","expectedType","kWebCryptoCipherEncrypt","hashAlgorithm","hash","label","rsaCipherModule","RSA_PKCS1_OAEP_PADDING","encrypt","decrypt","aesCipher","aesCtrCipher","aesCbcCipher","aesGcmCipher","aesOcbCipher","counter","keyLength","cipherType","factory","cipher","createCipher","isCipher","cipherKey","iv","updated","update","final","result","aesAeadCipher","config","additionalData","tagLength","validTagLengths","algorithmName","tagByteLength","cipherSuffix","authTagLen","processData","kWebCryptoCipherDecrypt","dataView","ciphertextLength","slice","authTag","setAuthTag","setAAD","tag","getAuthTag","ivBuffer","aesKwCipher","isWrap","exportedKey","defaultWrapIV","chaCha20Poly1305Cipher","aesGenerateKey","extractable","keyUsages","validUsages","keyBytes","keyAlgorithm","hmacGenerateKey","hashName","Math","ceil","webCryptoHashName","WebCrypto","kmacGenerateKey","defaultLength","kmacSignVerify","signature","outputLength","outputLengthBits","outputLengthBytes","keyData","kmac","customizationBuffer","customization","createKmac","computed","digest","sigBuffer","kmacImportKey","kty","expectedAlg","alg","keyType","initJwk","err","cause","rsaImportKey","checkSet","checkUsages","expectedUse","jwkContext","JwkRsa","JwkRsaPss","JwkRsaOaep","PUBLIC","PRIVATE","createKeyObject","PKCS8","keyDetails","asymmetricKeyDetails","publicExponentBytes","publicExponent","exp","bytes","value","unshift","floor","normalizedHash","algorithmWithDetails","modulusLength","hmacImportKey","k","decoded","keyBitLength","normalizedAlgorithm","aesImportKey","requiresRawSecret","acceptsRaw","actualLength","edImportKey","isX","allowedUsages","init","jwkData","crv","PQC_SEEDLESS_PKCS8_LENGTHS","PQC_FAMILY","pqcImportKeyObject","isPublic","ab","family","initPqcRaw","priv","pqcIsPublicImport","validatePqcJwk","validatePqcFormat","mldsaImportKey","slhdsaImportKey","mlkemImportKey","exportKeySpki","exportKeyPkcs8","startsWith","exportKeyRaw","isSecret","exportSecret","byteOffset","exportRawPublic","fail","exportKeyJWK","key_ops","ext","JwkHmac","pbkdf2ImportKey","checkLength","isBuffer","argon2ImportKey","hkdfImportKey","checkCryptoKeyPairUsages","pair","privateKey","argon2DeriveBits","baseKey","nonce","parallelism","memory","passes","secretValue","associatedData","message","algName","secret","version","isCryptoKeyPair","hmacSignVerify","hmac","computedBuffer","rsaSignVerify","padding","saltLength","RSA_PKCS1_PADDING","RSA_PKCS1_PSS_PADDING","paddingValue","signer","sig","sign","verifier","verify","edSignVerify","isSign","expectedKeyType","curveType","ed","rawKey","dataBuffer","signSync","signatureBuffer","verifySync","mldsaSignVerify","signVerify","cipherOrWrap","Set","generateKey","importKey","deriveBits","wrapKey","unwrapKey","encapsulateBits","decapsulateBits","encapsulateKey","decapsulateKey","ASYMMETRIC_ALGORITHMS","validateKdfDeriveBitsLength","supportsCheck","op","supported","has","supportsImpl","operation","lengthOrAdditionalAlgorithm","additional","getKeyLength","normalized","normalizedAdd","addLen","Subtle","supports","arguments","deriveKey","derivedKeyAlgorithm","normalizedDerivedKeyAlgorithm","derivedBits","pqcAlgos","wrappingKey","wrapAlgorithm","normalizedWrapAlgorithm","jwkString","JSON","stringify","paddedLength","paddedBuffer","alloc","copy","writeUInt8","wrappedKey","unwrappingKey","unwrapAlgorithm","unwrappedKeyAlgorithm","normalizedUnwrapAlgorithm","decrypted","nullIndex","indexOf","toString","trim","parse","getPublicKey","publicKeyObject","toCryptoKey","_encapsulateCore","variant","mlkem","setPublicKey","encapsulateSync","_decapsulateCore","ciphertext","setPrivateKey","decapsulateSync","sharedKeyAlgorithm","sharedKey","importedKey","subtle","getHmacBlockSize"],"sourceRoot":"../../src","sources":["subtle.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -43,14 +43,25 @@ export function validateEncoding(data, encoding) {
|
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
|
|
46
|
+
/**
|
|
47
|
+
* Reads an unsigned-integer option from an options-like object.
|
|
48
|
+
*
|
|
49
|
+
* Returns `undefined` if the option is missing, `null`, or `undefined`.
|
|
50
|
+
* Throws `RangeError` if the value is present but not a non-negative
|
|
51
|
+
* 32-bit integer (NaN, Infinity, fractional, negative, or > 2^32 - 1).
|
|
52
|
+
*
|
|
53
|
+
* Replaces the previous `Record<string, any>` + sentinel-`-1` signature,
|
|
54
|
+
* which defeated the type checker (audit Phase 1.4). Callers that used
|
|
55
|
+
* `getUIntOption(opts ?? {}, key) !== -1 ? getUIntOption(...) : default`
|
|
56
|
+
* collapse to `getUIntOption(opts, key) ?? default`.
|
|
57
|
+
*/
|
|
47
58
|
export function getUIntOption(options, key) {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
59
|
+
if (options == null) return undefined;
|
|
60
|
+
const value = options[key];
|
|
61
|
+
if (value == null) return undefined;
|
|
62
|
+
if (typeof value !== 'number' || !Number.isFinite(value) || !Number.isInteger(value) || value < 0 || value > 0xffff_ffff) {
|
|
63
|
+
throw new RangeError(`options.${key} must be a non-negative 32-bit integer, got ${String(value)}`);
|
|
53
64
|
}
|
|
54
|
-
return
|
|
65
|
+
return value;
|
|
55
66
|
}
|
|
56
67
|
//# sourceMappingURL=cipher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["defaultEncoding","setDefaultEncoding","encoding","getDefaultEncoding","normalizeEncoding","enc","retried","toLowerCase","validateEncoding","data","normalizedEncoding","length","Error","getUIntOption","options","key","value"],"sourceRoot":"../../../src","sources":["utils/cipher.ts"],"mappings":";;AAEA;AACA,IAAIA,eAAyB,GAAG,QAAQ;AAExC,OAAO,SAASC,kBAAkBA,CAACC,QAAkB,EAAE;EACrDF,eAAe,GAAGE,QAAQ;AAC5B;AAEA,OAAO,SAASC,kBAAkBA,CAAA,EAAa;EAC7C,OAAOH,eAAe;AACxB;AAEA,OAAO,SAASI,iBAAiBA,CAACC,GAAW,EAAE;EAC7C,IAAI,CAACA,GAAG,EAAE,OAAO,MAAM;EACvB,IAAIC,OAAO;EACX,OAAO,IAAI,EAAE;IACX,QAAQD,GAAG;MACT,KAAK,MAAM;MACX,KAAK,OAAO;QACV,OAAO,MAAM;MACf,KAAK,MAAM;MACX,KAAK,OAAO;MACZ,KAAK,SAAS;MACd,KAAK,UAAU;QACb,OAAO,SAAS;MAClB,KAAK,QAAQ;MACb,KAAK,QAAQ;QACX,OAAO,QAAQ;MACjB,KAAK,QAAQ;MACb,KAAK,OAAO;MACZ,KAAK,KAAK;QACR,OAAOA,GAAG;MACZ;QACE,IAAIC,OAAO,EAAE,OAAO,CAAC;QACrBD,GAAG,GAAG,CAAC,EAAE,GAAGA,GAAG,EAAEE,WAAW,CAAC,CAAC;QAC9BD,OAAO,GAAG,IAAI;IAClB;EACF;AACF;AAEA,OAAO,SAASE,gBAAgBA,CAACC,IAAY,EAAEP,QAAgB,EAAE;EAC/D,MAAMQ,kBAAkB,GAAGN,iBAAiB,CAACF,QAAQ,CAAC;EACtD,MAAMS,MAAM,GAAGF,IAAI,CAACE,MAAM;EAE1B,IAAID,kBAAkB,KAAK,KAAK,IAAIC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;IACpD,MAAM,IAAIC,KAAK,CAAC,YAAYV,QAAQ,8BAA8BS,MAAM,EAAE,CAAC;EAC7E;AACF;;AAEA;AACA,OAAO,SAASE,aAAaA,
|
|
1
|
+
{"version":3,"names":["defaultEncoding","setDefaultEncoding","encoding","getDefaultEncoding","normalizeEncoding","enc","retried","toLowerCase","validateEncoding","data","normalizedEncoding","length","Error","getUIntOption","options","key","undefined","value","Number","isFinite","isInteger","RangeError","String"],"sourceRoot":"../../../src","sources":["utils/cipher.ts"],"mappings":";;AAEA;AACA,IAAIA,eAAyB,GAAG,QAAQ;AAExC,OAAO,SAASC,kBAAkBA,CAACC,QAAkB,EAAE;EACrDF,eAAe,GAAGE,QAAQ;AAC5B;AAEA,OAAO,SAASC,kBAAkBA,CAAA,EAAa;EAC7C,OAAOH,eAAe;AACxB;AAEA,OAAO,SAASI,iBAAiBA,CAACC,GAAW,EAAE;EAC7C,IAAI,CAACA,GAAG,EAAE,OAAO,MAAM;EACvB,IAAIC,OAAO;EACX,OAAO,IAAI,EAAE;IACX,QAAQD,GAAG;MACT,KAAK,MAAM;MACX,KAAK,OAAO;QACV,OAAO,MAAM;MACf,KAAK,MAAM;MACX,KAAK,OAAO;MACZ,KAAK,SAAS;MACd,KAAK,UAAU;QACb,OAAO,SAAS;MAClB,KAAK,QAAQ;MACb,KAAK,QAAQ;QACX,OAAO,QAAQ;MACjB,KAAK,QAAQ;MACb,KAAK,OAAO;MACZ,KAAK,KAAK;QACR,OAAOA,GAAG;MACZ;QACE,IAAIC,OAAO,EAAE,OAAO,CAAC;QACrBD,GAAG,GAAG,CAAC,EAAE,GAAGA,GAAG,EAAEE,WAAW,CAAC,CAAC;QAC9BD,OAAO,GAAG,IAAI;IAClB;EACF;AACF;AAEA,OAAO,SAASE,gBAAgBA,CAACC,IAAY,EAAEP,QAAgB,EAAE;EAC/D,MAAMQ,kBAAkB,GAAGN,iBAAiB,CAACF,QAAQ,CAAC;EACtD,MAAMS,MAAM,GAAGF,IAAI,CAACE,MAAM;EAE1B,IAAID,kBAAkB,KAAK,KAAK,IAAIC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;IACpD,MAAM,IAAIC,KAAK,CAAC,YAAYV,QAAQ,8BAA8BS,MAAM,EAAE,CAAC;EAC7E;AACF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASE,aAAaA,CAC3BC,OAAsD,EACtDC,GAAW,EACS;EACpB,IAAID,OAAO,IAAI,IAAI,EAAE,OAAOE,SAAS;EACrC,MAAMC,KAAK,GAAGH,OAAO,CAACC,GAAG,CAAC;EAC1B,IAAIE,KAAK,IAAI,IAAI,EAAE,OAAOD,SAAS;EACnC,IACE,OAAOC,KAAK,KAAK,QAAQ,IACzB,CAACC,MAAM,CAACC,QAAQ,CAACF,KAAK,CAAC,IACvB,CAACC,MAAM,CAACE,SAAS,CAACH,KAAK,CAAC,IACxBA,KAAK,GAAG,CAAC,IACTA,KAAK,GAAG,WAAW,EACnB;IACA,MAAM,IAAII,UAAU,CAClB,WAAWN,GAAG,+CAA+CO,MAAM,CAACL,KAAK,CAAC,EAC5E,CAAC;EACH;EACA,OAAOA,KAAK;AACd","ignoreList":[]}
|
|
@@ -3,17 +3,66 @@
|
|
|
3
3
|
import { Buffer as CraftzdogBuffer } from '@craftzdog/react-native-buffer';
|
|
4
4
|
import { Buffer as SafeBuffer } from 'safe-buffer';
|
|
5
5
|
import { NitroModules } from 'react-native-nitro-modules';
|
|
6
|
+
import { Platform } from 'react-native';
|
|
6
7
|
const utils = NitroModules.createHybridObject('Utils');
|
|
8
|
+
const isHermes = global.HermesInternal != null;
|
|
9
|
+
|
|
10
|
+
// v0.78.0, https://github.com/facebook/react-native/commit/c6f12254d16d87978383c08065a626d437e60450
|
|
11
|
+
// Use jsi::String::getStringData() rather than jsi::String::utf16()
|
|
12
|
+
const canGetU16StringFromJsiString = !(Platform.constants.reactNativeVersion.major == 0 && Platform.constants.reactNativeVersion.minor < 78);
|
|
13
|
+
|
|
14
|
+
// v0.79.0, https://github.com/facebook/react-native/commit/d9d824055e9f24614abd5657f9fc89a6ab3f2da2
|
|
15
|
+
const canCreateJsiStringFromUtf16 = !(Platform.constants.reactNativeVersion.major == 0 && Platform.constants.reactNativeVersion.minor < 79);
|
|
16
|
+
const baseNativeEncodings = ['hex', 'base64', 'base64url', 'utf8', 'utf-8', 'latin1', 'binary', 'ascii'];
|
|
17
|
+
const nativeStringToBufferEncodings = new Set(baseNativeEncodings);
|
|
18
|
+
const nativeBufferToStringEncodings = new Set(baseNativeEncodings);
|
|
19
|
+
|
|
20
|
+
// The fast and lossless paths for utf16le are only available on Hermes
|
|
21
|
+
if (isHermes) {
|
|
22
|
+
if (canGetU16StringFromJsiString) {
|
|
23
|
+
nativeStringToBufferEncodings.add('utf16le');
|
|
24
|
+
}
|
|
25
|
+
if (canCreateJsiStringFromUtf16) {
|
|
26
|
+
nativeBufferToStringEncodings.add('utf16le');
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// WebCrypto / Web IDL §BufferSource: SharedArrayBuffer-backed inputs must
|
|
31
|
+
// be rejected. Concurrent writes from another worker during async crypto
|
|
32
|
+
// can corrupt computations or leak intermediate state, so even copying
|
|
33
|
+
// the source isn't safe (the copy itself races). Reject at conversion.
|
|
34
|
+
// See Node's `lib/internal/webidl.js` BufferSource converter (commit
|
|
35
|
+
// bee10872588) — it throws TypeError, matching the WebIDL spec.
|
|
36
|
+
//
|
|
37
|
+
// We apply this guard to *every* conversion helper, not just the ones
|
|
38
|
+
// reached from `subtle.*`. That's deliberately stricter than Node, whose
|
|
39
|
+
// classic APIs (`createHash().update`, `createHmac().update`,
|
|
40
|
+
// `createCipheriv().update`, etc.) accept SAB-backed views. The TOCTOU
|
|
41
|
+
// concern is the same on either side of the WebCrypto / classic line, so
|
|
42
|
+
// we prefer the safer default everywhere.
|
|
43
|
+
export function rejectSharedArrayBuffer(buf) {
|
|
44
|
+
if (typeof SharedArrayBuffer === 'undefined') return;
|
|
45
|
+
if (buf instanceof SharedArrayBuffer) {
|
|
46
|
+
throw new TypeError('SharedArrayBuffer is not a supported BufferSource');
|
|
47
|
+
}
|
|
48
|
+
if (ArrayBuffer.isView(buf) && buf.buffer instanceof SharedArrayBuffer) {
|
|
49
|
+
throw new TypeError('View on a SharedArrayBuffer is not a supported BufferSource');
|
|
50
|
+
}
|
|
51
|
+
}
|
|
7
52
|
|
|
8
53
|
/**
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
54
|
+
* Returns the underlying ArrayBuffer of a Buffer / TypedArray view **without
|
|
55
|
+
* copying**, ignoring `byteOffset`/`byteLength`. The full backing storage is
|
|
56
|
+
* exposed.
|
|
57
|
+
*
|
|
58
|
+
* Only use this when the caller separately tracks `byteOffset`/`byteLength`
|
|
59
|
+
* and the native receiver needs to write back into the original memory
|
|
60
|
+
* (e.g. `randomFill`). For data that will be read by native crypto, use
|
|
61
|
+
* `binaryLikeToArrayBuffer`/`toArrayBuffer` instead — those slice to the
|
|
62
|
+
* view's region and won't leak unrelated bytes from the backing buffer.
|
|
15
63
|
*/
|
|
16
64
|
export const abvToArrayBuffer = buf => {
|
|
65
|
+
rejectSharedArrayBuffer(buf);
|
|
17
66
|
if (CraftzdogBuffer.isBuffer(buf)) {
|
|
18
67
|
return buf.buffer;
|
|
19
68
|
}
|
|
@@ -45,6 +94,8 @@ export function toArrayBuffer(buf) {
|
|
|
45
94
|
return ab;
|
|
46
95
|
}
|
|
47
96
|
export function bufferLikeToArrayBuffer(buf) {
|
|
97
|
+
rejectSharedArrayBuffer(buf);
|
|
98
|
+
|
|
48
99
|
// Buffer
|
|
49
100
|
if (CraftzdogBuffer.isBuffer(buf) || SafeBuffer.isBuffer(buf)) {
|
|
50
101
|
return toArrayBuffer(buf);
|
|
@@ -58,29 +109,19 @@ export function bufferLikeToArrayBuffer(buf) {
|
|
|
58
109
|
if (buf instanceof ArrayBuffer) {
|
|
59
110
|
return buf;
|
|
60
111
|
}
|
|
61
|
-
|
|
62
|
-
// If buf is a SharedArrayBuffer, convert it to ArrayBuffer.
|
|
63
|
-
// This typically involves a copy of the data.
|
|
64
|
-
if (typeof SharedArrayBuffer !== 'undefined' && buf instanceof SharedArrayBuffer) {
|
|
65
|
-
const arrayBuffer = new ArrayBuffer(buf.byteLength);
|
|
66
|
-
new Uint8Array(arrayBuffer).set(new Uint8Array(buf));
|
|
67
|
-
return arrayBuffer;
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
// If we reach here, 'buf' is of a type within BufferLike that has not been handled by the above checks.
|
|
71
|
-
// This indicates either an incomplete BufferLike definition or an unexpected input type.
|
|
72
|
-
// Throw an error to signal this, ensuring the function's contract (return ArrayBuffer or throw) is met.
|
|
73
|
-
throw new TypeError('Input must be a Buffer, ArrayBufferView, ArrayBuffer, or SharedArrayBuffer.');
|
|
112
|
+
throw new TypeError('Input must be a Buffer, ArrayBufferView, or ArrayBuffer.');
|
|
74
113
|
}
|
|
75
114
|
export function binaryLikeToArrayBuffer(input,
|
|
76
115
|
// CipherKey adds compat with node types
|
|
77
116
|
encoding = 'utf-8') {
|
|
117
|
+
rejectSharedArrayBuffer(input);
|
|
118
|
+
|
|
78
119
|
// string
|
|
79
120
|
if (typeof input === 'string') {
|
|
80
121
|
if (encoding === 'buffer') {
|
|
81
122
|
throw new Error('Cannot create a buffer from a string with a buffer encoding');
|
|
82
123
|
}
|
|
83
|
-
if (
|
|
124
|
+
if (nativeStringToBufferEncodings.has(encoding)) {
|
|
84
125
|
return utils.stringToBuffer(input, encoding);
|
|
85
126
|
}
|
|
86
127
|
const buffer = CraftzdogBuffer.from(input, encoding);
|
|
@@ -125,17 +166,32 @@ encoding = 'utf-8') {
|
|
|
125
166
|
}
|
|
126
167
|
throw new Error('Invalid argument type for "key". Need ArrayBuffer, TypedArray, KeyObject, CryptoKey, string');
|
|
127
168
|
}
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
return utils.bufferToString(buf, encoding);
|
|
169
|
+
export function ab2str(buf, encoding = 'hex', start, end) {
|
|
170
|
+
if (nativeBufferToStringEncodings.has(encoding)) {
|
|
171
|
+
return bufferToString(buf, encoding, start, end);
|
|
132
172
|
}
|
|
133
|
-
return CraftzdogBuffer.from(buf).toString(encoding);
|
|
173
|
+
return CraftzdogBuffer.from(buf).toString(encoding, start, end);
|
|
134
174
|
}
|
|
135
175
|
|
|
136
|
-
/** Native C++ buffer-to-string
|
|
137
|
-
export function bufferToString(buf, encoding = 'hex') {
|
|
138
|
-
|
|
176
|
+
/** Native C++ buffer-to-string with arguments normalization*/
|
|
177
|
+
export function bufferToString(buf, encoding = 'hex', start, end) {
|
|
178
|
+
// https://github.com/nodejs/node/blob/v24.15.0/lib/buffer.js#L915-L928
|
|
179
|
+
if (start === undefined || start < 0) {
|
|
180
|
+
start = 0;
|
|
181
|
+
} else if (start >= buf.byteLength) {
|
|
182
|
+
return '';
|
|
183
|
+
} else {
|
|
184
|
+
start = Math.trunc(start) || 0;
|
|
185
|
+
}
|
|
186
|
+
if (end === undefined || end > buf.byteLength) {
|
|
187
|
+
end = buf.byteLength;
|
|
188
|
+
} else {
|
|
189
|
+
end = Math.trunc(end) || 0;
|
|
190
|
+
}
|
|
191
|
+
if (end <= start) {
|
|
192
|
+
return '';
|
|
193
|
+
}
|
|
194
|
+
return utils.bufferToString(buf, encoding, start, end);
|
|
139
195
|
}
|
|
140
196
|
|
|
141
197
|
/** Native C++ string-to-buffer — exposed for benchmarking */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Buffer","CraftzdogBuffer","SafeBuffer","NitroModules","utils","createHybridObject","
|
|
1
|
+
{"version":3,"names":["Buffer","CraftzdogBuffer","SafeBuffer","NitroModules","Platform","utils","createHybridObject","isHermes","global","HermesInternal","canGetU16StringFromJsiString","constants","reactNativeVersion","major","minor","canCreateJsiStringFromUtf16","baseNativeEncodings","nativeStringToBufferEncodings","Set","nativeBufferToStringEncodings","add","rejectSharedArrayBuffer","buf","SharedArrayBuffer","TypeError","ArrayBuffer","isView","buffer","abvToArrayBuffer","isBuffer","toArrayBuffer","slice","byteOffset","byteLength","ab","length","view","Uint8Array","i","readUInt8","bufferLikeToArrayBuffer","binaryLikeToArrayBuffer","input","encoding","Error","has","stringToBuffer","from","Object","prototype","toString","call","handle","exportKey","ab2str","start","end","bufferToString","undefined","Math","trunc","str","kEmptyObject","freeze","create"],"sourceRoot":"../../../src","sources":["utils/conversion.ts"],"mappings":"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","ignoreList":[]}
|