mirror of
https://github.com/nodejs/node.git
synced 2026-10-28 10:15:07 +08:00
test: update WPT for WebCryptoAPI to b638c093cd
PR-URL: https://github.com/nodejs/node/pull/66689 Reviewed-By: Filip Skokan <panva.ip@gmail.com> Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
This commit is contained in:
1 parent
4381c4730e
commit
782a3ac8ae
90 files changed
+310
-282
No files matched your search
+18
-1
@@ -1 +1,18 @@
|
||||
Directory for Crypto API tests
|
||||
Tests for the Web Cryptography API are grouped by specification:
|
||||
|
||||
- Tests for [Web Cryptography API Level 2](https://w3c.github.io/webcrypto/)
|
||||
are in this directory's existing operation subdirectories and root files.
|
||||
- Tests for [Modern Algorithms in the Web Cryptography API](https://wicg.github.io/webcrypto-modern-algos/)
|
||||
are in `modern-algos/`, including `supports()`, `getPublicKey()`, and key format extensions.
|
||||
- Tests for [Secure Curves in the Web Cryptography API](https://wicg.github.io/webcrypto-secure-curves/)
|
||||
are in `secure-curves/`. Ed25519 and X25519 are part of the core specification;
|
||||
Ed448 and X448 are covered by the secure curves specification.
|
||||
|
||||
Each specification directory has a `META.yml` linking to its specification.
|
||||
Helpers used across specifications remain in the shared operation directories
|
||||
or `util/`; helpers specific to an extension are alongside that extension's tests.
|
||||
|
||||
Use `.tentative` only for assertions not yet required by a specification or that
|
||||
contradict a specification, as described in the [file naming guidelines](../docs/writing-tests/file-names.md).
|
||||
An algorithm being defined in an extension specification does not by itself make
|
||||
its tests tentative.
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=failures.js
|
||||
run_test(["AES-OCB"]);
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=failures.js
|
||||
run_test(["Ed448"]);
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=failures.js
|
||||
run_test(["ML-DSA-44", "ML-DSA-65", "ML-DSA-87"]);
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=failures.js
|
||||
run_test(["ML-KEM-512", "ML-KEM-768", "ML-KEM-1024"]);
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=failures.js
|
||||
run_test(["X448"]);
|
||||
Vendored
-6
@@ -1,6 +0,0 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=failures.js
|
||||
run_test(["ChaCha20-Poly1305"]);
|
||||
-6
@@ -1,6 +0,0 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=failures.js
|
||||
run_test(["KMAC128", "KMAC256"]);
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
// META: title=WebCryptoAPI: importKey() for OKP keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../util/okp_key_fixtures.js
|
||||
// META: script=okp_importKey_fixtures.js
|
||||
// META: script=okp_importKey.js
|
||||
|
||||
|
||||
// Test importKey and exportKey for OKP algorithms.
|
||||
runTests("Ed448");
|
||||
-10
@@ -1,10 +0,0 @@
|
||||
// META: title=WebCryptoAPI: importKey() for OKP keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../util/okp_key_fixtures.js
|
||||
// META: script=okp_importKey_fixtures.js
|
||||
// META: script=okp_importKey.js
|
||||
|
||||
|
||||
// Test importKey and exportKey for OKP algorithms.
|
||||
runTests("X448");
|
||||
Vendored
-9
@@ -1,9 +0,0 @@
|
||||
// META: title=WebCryptoAPI: importKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../util/okp_key_fixtures.js
|
||||
// META: script=okp_importKey_failures_fixtures.js
|
||||
// META: script=importKey_failures.js
|
||||
|
||||
|
||||
run_test(["Ed448"]);
|
||||
Vendored
-9
@@ -1,9 +0,0 @@
|
||||
// META: title=WebCryptoAPI: importKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../util/okp_key_fixtures.js
|
||||
// META: script=okp_importKey_failures_fixtures.js
|
||||
// META: script=importKey_failures.js
|
||||
|
||||
|
||||
run_test(["X448"]);
|
||||
@@ -0,0 +1 @@
|
||||
spec: https://wicg.github.io/webcrypto-modern-algos/
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: deriveBits() Using Argon2
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=argon2_vectors.js
|
||||
// META: script=argon2.js
|
||||
File renamed without changes.
File renamed without changes.
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: digest() cSHAKE algorithms
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=digest_test_data.js
|
||||
// META: script=digest.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../digest/digest_test_data.js
|
||||
// META: script=../../digest/digest.js
|
||||
// META: timeout=long
|
||||
|
||||
var subtle = crypto.subtle; // Change to test prefixed implementations
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// META: title=WebCryptoAPI: digest() KangarooTwelve algorithms
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=xof_digest.js
|
||||
// META: timeout=long
|
||||
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: digest() SHA-3 algorithms
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=digest_test_data.js
|
||||
// META: script=digest.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../digest/digest_test_data.js
|
||||
// META: script=../../digest/digest.js
|
||||
// META: timeout=long
|
||||
|
||||
var subtle = crypto.subtle; // Change to test prefixed implementations
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// META: title=WebCryptoAPI: digest() TurboSHAKE algorithms
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=xof_digest.js
|
||||
// META: timeout=long
|
||||
|
||||
File renamed without changes.
+1
-1
@@ -1,5 +1,5 @@
|
||||
// META: title=WebCryptoAPI: KEM encapsulateBits() and decapsulateBits() tests
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=ml_kem_vectors.js
|
||||
// META: script=hybrid_kem_vectors.js
|
||||
// META: timeout=long
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// META: title=WebCryptoAPI: KEM encapsulateKey() and decapsulateKey() tests
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=ml_kem_vectors.js
|
||||
// META: script=hybrid_kem_vectors.js
|
||||
// META: timeout=long
|
||||
File renamed without changes.
File renamed without changes.
+3
-3
@@ -1,9 +1,9 @@
|
||||
// META: title=WebCryptoAPI: encrypt() Using AES-OCB w/ 120-bit iv
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=aes_common_fixtures.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../encrypt_decrypt/aes_common_fixtures.js
|
||||
// META: script=aes_ocb_fixtures.js
|
||||
// META: script=aes_ocb_vectors.js
|
||||
// META: script=aes.js
|
||||
// META: script=../../encrypt_decrypt/aes.js
|
||||
// META: timeout=long
|
||||
|
||||
run_test();
|
||||
File renamed without changes.
File renamed without changes.
+1
-1
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: encrypt()/decrypt() ChaCha20-Poly1305
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
|
||||
var subtle = crypto.subtle; // Change to test prefixed implementations
|
||||
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/failures.js
|
||||
run_test(["AES-OCB"]);
|
||||
+3
-3
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=failures.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/failures.js
|
||||
run_test(["MLKEM768-P256", "MLKEM768-X25519", "MLKEM1024-P384"]);
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/failures.js
|
||||
run_test(["ML-DSA-44", "ML-DSA-65", "ML-DSA-87"]);
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/failures.js
|
||||
run_test(["ML-KEM-512", "ML-KEM-768", "ML-KEM-1024"]);
|
||||
Vendored
+6
@@ -0,0 +1,6 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/failures.js
|
||||
run_test(["ChaCha20-Poly1305"]);
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/failures.js
|
||||
run_test(["KMAC128", "KMAC256"]);
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: generateKey() Successful Calls
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=successes.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/successes.js
|
||||
run_test(["AES-OCB"]);
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: generateKey() Successful Calls
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=successes.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/successes.js
|
||||
run_test(["MLKEM768-P256", "MLKEM768-X25519", "MLKEM1024-P384"]);
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: generateKey() Successful Calls
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=successes.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/successes.js
|
||||
run_test(["ML-DSA-44", "ML-DSA-65", "ML-DSA-87"]);
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: generateKey() Successful Calls
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=successes.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/successes.js
|
||||
run_test(["ML-KEM-512", "ML-KEM-768", "ML-KEM-1024"]);
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: generateKey() Successful Calls
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=successes.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/successes.js
|
||||
run_test(["ChaCha20-Poly1305"]);
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: generateKey() Successful Calls
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=successes.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/successes.js
|
||||
run_test(["KMAC128", "KMAC256"]);
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: getPublicKey() method
|
||||
// META: timeout=long
|
||||
// META: script=util/helpers.js
|
||||
// META: script=../util/helpers.js
|
||||
|
||||
"use strict";
|
||||
|
||||
+2
-3
@@ -2,12 +2,11 @@
|
||||
// META: script=/resources/idlharness.js
|
||||
// META: timeout=long
|
||||
|
||||
// https://wicg.github.io/webcrypto-secure-curves/
|
||||
// https://wicg.github.io/webcrypto-modern-algos/
|
||||
|
||||
idl_test(
|
||||
['webcrypto', 'webcrypto-secure-curves', 'webcrypto-modern-algos'],
|
||||
['html', 'dom'],
|
||||
['webcrypto-modern-algos'],
|
||||
['webcrypto', 'html', 'dom'],
|
||||
idl_array => {
|
||||
idl_array.add_objects({
|
||||
Crypto: ['crypto'],
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: importKey() for symmetric keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=symmetric_importKey.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../import_export/symmetric_importKey.js
|
||||
|
||||
runTests("AES-OCB");
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: importKey() for symmetric keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=symmetric_importKey.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../import_export/symmetric_importKey.js
|
||||
|
||||
runTests("Argon2i");
|
||||
runTests("Argon2d");
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: importKey() for symmetric keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=symmetric_importKey.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../import_export/symmetric_importKey.js
|
||||
|
||||
runTests("ChaCha20-Poly1305");
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: importKey() for Hybrid KEM keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=Hybrid-KEM_importKey_fixtures.js
|
||||
// META: script=ml_importKey.js
|
||||
|
||||
File renamed without changes.
+2
-2
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: importKey() for symmetric keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=symmetric_importKey.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../import_export/symmetric_importKey.js
|
||||
|
||||
runTests("KMAC128");
|
||||
runTests("KMAC256");
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: importKey() for ML-DSA keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../util/mldsa_key_fixtures.js
|
||||
// META: script=ML-DSA_importKey_fixtures.js
|
||||
// META: script=ml_importKey.js
|
||||
File renamed without changes.
+1
-1
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: importKey() for ML-KEM keys
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=ML-KEM_importKey_fixtures.js
|
||||
// META: script=ml_importKey.js
|
||||
|
||||
File renamed without changes.
File renamed without changes.
+1
-1
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: raw-secret and raw-public importKey() format aliases
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
|
||||
// For all existing symmetric algorithms in WebCrypto, "raw-secret" acts as an
|
||||
// alias of "raw". For all existing asymmetric algorithms in WebCrypto,
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: CryptoKey serialization
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=serialization.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../serialization/serialization.js
|
||||
run_test([
|
||||
{
|
||||
name: 'AES-OCB',
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: CryptoKey serialization
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=serialization.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../serialization/serialization.js
|
||||
run_test([
|
||||
{
|
||||
name: 'ChaCha20-Poly1305',
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: Hybrid KEM CryptoKey serialization
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=serialization.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../serialization/serialization.js
|
||||
run_test([
|
||||
{
|
||||
name: 'MLKEM768-P256',
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: CryptoKey serialization
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=serialization.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../serialization/serialization.js
|
||||
run_test([
|
||||
{
|
||||
name: 'KMAC128',
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: CryptoKey serialization
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=serialization.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../serialization/serialization.js
|
||||
|
||||
run_test([
|
||||
{
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: CryptoKey serialization
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=serialization.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../serialization/serialization.js
|
||||
run_test([
|
||||
{
|
||||
name: 'ML-KEM-512',
|
||||
+2
-2
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: sign() and verify() Using KMAC
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=kmac_vectors.js
|
||||
// META: script=mac.js
|
||||
// META: script=../../sign_verify/mac.js
|
||||
// META: script=kmac.js
|
||||
// META: timeout=long
|
||||
|
||||
File renamed without changes.
File renamed without changes.
+2
-2
@@ -1,8 +1,8 @@
|
||||
// META: title=WebCryptoAPI: sign() and verify() Using ML-DSA
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../util/mldsa_key_fixtures.js
|
||||
// META: script=mldsa_vectors.js
|
||||
// META: script=signature.js
|
||||
// META: script=../../sign_verify/signature.js
|
||||
// META: script=mldsa.js
|
||||
// META: timeout=long
|
||||
|
||||
File renamed without changes.
File renamed without changes.
+1
-1
@@ -1,5 +1,5 @@
|
||||
// META: title=WebCrypto API: supports method tests for algorithms in https://wicg.github.io/webcrypto-modern-algos/
|
||||
// META: script=util/helpers.js
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=util/supports.js
|
||||
|
||||
'use strict';
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
// META: title=WebCrypto API: supports method tests
|
||||
// META: script=util/helpers.js
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=util/supports.js
|
||||
|
||||
'use strict';
|
||||
File renamed without changes.
File renamed without changes.
@@ -0,0 +1 @@
|
||||
spec: https://wicg.github.io/webcrypto-secure-curves/
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
// META: title=WebCryptoAPI: deriveKey() Using ECDH with CFRG Elliptic Curves
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=cfrg_curves_bits_fixtures.js
|
||||
// META: script=derive.js
|
||||
// META: script=cfrg_curves.js
|
||||
// META: script=cfrg_curves_bits.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../derive_bits_keys/cfrg_curves_bits_fixtures.js
|
||||
// META: script=../../derive_bits_keys/derive.js
|
||||
// META: script=../../derive_bits_keys/cfrg_curves.js
|
||||
// META: script=../../derive_bits_keys/cfrg_curves_bits.js
|
||||
|
||||
// Define subtests from a `promise_test` to ensure the harness does not
|
||||
// complete before the subtests are available. `explicit_done` cannot be used
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
// META: title=WebCryptoAPI: deriveKey() Using ECDH with CFRG Elliptic Curves
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=cfrg_curves_bits_fixtures.js
|
||||
// META: script=derive.js
|
||||
// META: script=cfrg_curves.js
|
||||
// META: script=cfrg_curves_keys.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../derive_bits_keys/cfrg_curves_bits_fixtures.js
|
||||
// META: script=../../derive_bits_keys/derive.js
|
||||
// META: script=../../derive_bits_keys/cfrg_curves.js
|
||||
// META: script=../../derive_bits_keys/cfrg_curves_keys.js
|
||||
|
||||
// Define subtests from a `promise_test` to ensure the harness does not
|
||||
// complete before the subtests are available. `explicit_done` cannot be used
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/failures.js
|
||||
run_test(["Ed448"]);
|
||||
+6
@@ -0,0 +1,6 @@
|
||||
// META: title=WebCryptoAPI: generateKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/failures.js
|
||||
run_test(["X448"]);
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: generateKey() Successful Calls
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=successes.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/successes.js
|
||||
run_test(["Ed448"]);
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
// META: title=WebCryptoAPI: generateKey() Successful Calls
|
||||
// META: timeout=long
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=/common/subset-tests.js
|
||||
// META: script=algorithm_registry.js
|
||||
// META: script=successes.js
|
||||
// META: script=../../generateKey/algorithm_registry.js
|
||||
// META: script=../../generateKey/successes.js
|
||||
run_test(["X448"]);
|
||||
@@ -0,0 +1,10 @@
|
||||
// META: script=/resources/WebIDLParser.js
|
||||
// META: script=/resources/idlharness.js
|
||||
// META: timeout=long
|
||||
|
||||
// https://wicg.github.io/webcrypto-secure-curves/
|
||||
|
||||
idl_test(
|
||||
['webcrypto-secure-curves'],
|
||||
['webcrypto']
|
||||
);
|
||||
Vendored
+10
@@ -0,0 +1,10 @@
|
||||
// META: title=WebCryptoAPI: importKey() for OKP keys
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../util/okp_key_fixtures.js
|
||||
// META: script=../../import_export/okp_importKey_fixtures.js
|
||||
// META: script=../../import_export/okp_importKey.js
|
||||
|
||||
|
||||
// Test importKey and exportKey for OKP algorithms.
|
||||
runTests("Ed448");
|
||||
+10
@@ -0,0 +1,10 @@
|
||||
// META: title=WebCryptoAPI: importKey() for OKP keys
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../util/okp_key_fixtures.js
|
||||
// META: script=../../import_export/okp_importKey_fixtures.js
|
||||
// META: script=../../import_export/okp_importKey.js
|
||||
|
||||
|
||||
// Test importKey and exportKey for OKP algorithms.
|
||||
runTests("X448");
|
||||
test/fixtures/wpt/WebCryptoAPI/secure-curves/import_export/okp_importKey_failures_Ed448.https.any.js
Vendored
+9
@@ -0,0 +1,9 @@
|
||||
// META: title=WebCryptoAPI: importKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../util/okp_key_fixtures.js
|
||||
// META: script=../../import_export/okp_importKey_failures_fixtures.js
|
||||
// META: script=../../import_export/importKey_failures.js
|
||||
|
||||
|
||||
run_test(["Ed448"]);
|
||||
Vendored
+9
@@ -0,0 +1,9 @@
|
||||
// META: title=WebCryptoAPI: importKey() for Failures
|
||||
// META: timeout=long
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../util/okp_key_fixtures.js
|
||||
// META: script=../../import_export/okp_importKey_failures_fixtures.js
|
||||
// META: script=../../import_export/importKey_failures.js
|
||||
|
||||
|
||||
run_test(["X448"]);
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: CryptoKey serialization
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=serialization.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../serialization/serialization.js
|
||||
run_test([
|
||||
{
|
||||
name: 'Ed448',
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
// META: title=WebCryptoAPI: CryptoKey serialization
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=serialization.js
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../serialization/serialization.js
|
||||
run_test([
|
||||
{
|
||||
name: 'X448',
|
||||
+8
@@ -0,0 +1,8 @@
|
||||
// META: title=WebCryptoAPI: sign() and verify() Using EdDSA
|
||||
// META: script=../../util/helpers.js
|
||||
// META: script=../../sign_verify/eddsa_vectors.js
|
||||
// META: script=../../sign_verify/signature.js
|
||||
// META: script=../../sign_verify/eddsa.js
|
||||
// META: timeout=long
|
||||
|
||||
run_test("Ed448");
|
||||
-8
@@ -1,8 +0,0 @@
|
||||
// META: title=WebCryptoAPI: sign() and verify() Using EdDSA
|
||||
// META: script=../util/helpers.js
|
||||
// META: script=eddsa_vectors.js
|
||||
// META: script=signature.js
|
||||
// META: script=eddsa.js
|
||||
// META: timeout=long
|
||||
|
||||
run_test("Ed448");
|
||||
Vendored
+1
-1
@@ -100,7 +100,7 @@
|
||||
"path": "web-locks"
|
||||
},
|
||||
"WebCryptoAPI": {
|
||||
"commit": "3127c3a492e63578ed2bf76e3d4bda805183b5a3",
|
||||
"commit": "b638c093cd3e1849715130bcd99041f79980bb12",
|
||||
"path": "WebCryptoAPI"
|
||||
},
|
||||
"webidl": {
|
||||
|
||||
@@ -38,7 +38,7 @@ assert.deepStrictEqual(getUnexpectedPasses(flakySpecs, {}), []);
|
||||
|
||||
const specs = WPTTestSpec.from(
|
||||
'WebCryptoAPI',
|
||||
'getPublicKey.tentative.https.any.js',
|
||||
'modern-algos/getPublicKey.https.any.js',
|
||||
[],
|
||||
);
|
||||
|
||||
@@ -47,11 +47,11 @@ assert.deepStrictEqual(specs.map((spec) => ({
|
||||
isWebWorkerTest: spec.isWebWorkerTest(),
|
||||
})), [
|
||||
{
|
||||
testPath: 'WebCryptoAPI/getPublicKey.tentative.https.any.html',
|
||||
testPath: 'WebCryptoAPI/modern-algos/getPublicKey.https.any.html',
|
||||
isWebWorkerTest: false,
|
||||
},
|
||||
{
|
||||
testPath: 'WebCryptoAPI/getPublicKey.tentative.https.any.worker.html',
|
||||
testPath: 'WebCryptoAPI/modern-algos/getPublicKey.https.any.worker.html',
|
||||
isWebWorkerTest: true,
|
||||
},
|
||||
]);
|
||||
@@ -90,7 +90,7 @@ assert.deepStrictEqual(
|
||||
|
||||
const skippedSpecs = WPTTestSpec.from(
|
||||
'WebCryptoAPI',
|
||||
'getPublicKey.tentative.https.any.js',
|
||||
'modern-algos/getPublicKey.https.any.js',
|
||||
[{ requires: [], skip: 'unsupported' }],
|
||||
);
|
||||
assert.deepStrictEqual(
|
||||
@@ -100,7 +100,7 @@ assert.deepStrictEqual(
|
||||
|
||||
const skippedSubtestSpecs = WPTTestSpec.from(
|
||||
'WebCryptoAPI',
|
||||
'getPublicKey.tentative.https.any.js',
|
||||
'modern-algos/getPublicKey.https.any.js',
|
||||
[{ requires: [], skipTests: [/getPublicKey method/] }],
|
||||
);
|
||||
assert.ok(skippedSubtestSpecs.every(
|
||||
@@ -108,7 +108,7 @@ assert.ok(skippedSubtestSpecs.every(
|
||||
|
||||
const scopedSpecs = WPTTestSpec.from(
|
||||
'WebCryptoAPI',
|
||||
'getPublicKey.tentative.https.any.js',
|
||||
'modern-algos/getPublicKey.https.any.js',
|
||||
[],
|
||||
(spec) => (spec.getStatusKey().endsWith('.any.worker.html') ?
|
||||
[{ requires: [], skip: 'worker only' }] : []),
|
||||
@@ -119,26 +119,26 @@ assert.deepStrictEqual(
|
||||
);
|
||||
|
||||
const sourceRule = {
|
||||
key: 'getPublicKey.tentative.https.any.js',
|
||||
key: 'modern-algos/getPublicKey.https.any.js',
|
||||
requires: [],
|
||||
fail: { expected: ['shared failure'] },
|
||||
};
|
||||
const workerRule = {
|
||||
key: 'getPublicKey.tentative.https.any.worker.html',
|
||||
key: 'modern-algos/getPublicKey.https.any.worker.html',
|
||||
requires: [],
|
||||
fail: { expected: ['worker failure'] },
|
||||
};
|
||||
const expectedFailureSpecs = WPTTestSpec.from(
|
||||
'WebCryptoAPI',
|
||||
'getPublicKey.tentative.https.any.js',
|
||||
'modern-algos/getPublicKey.https.any.js',
|
||||
[sourceRule],
|
||||
(spec) => (spec.isWebWorkerTest() ? [workerRule] : []),
|
||||
);
|
||||
const expectedResults = {
|
||||
'getPublicKey.tentative.https.any.html': {
|
||||
'modern-algos/getPublicKey.https.any.html': {
|
||||
fail: { expected: ['shared failure'] },
|
||||
},
|
||||
'getPublicKey.tentative.https.any.worker.html': {
|
||||
'modern-algos/getPublicKey.https.any.worker.html': {
|
||||
fail: { expected: ['shared failure', 'worker failure'] },
|
||||
},
|
||||
};
|
||||
@@ -147,15 +147,15 @@ assert.deepStrictEqual(
|
||||
getUnexpectedPasses(expectedFailureSpecs, expectedResults),
|
||||
[],
|
||||
);
|
||||
expectedResults['getPublicKey.tentative.https.any.worker.html'].fail.expected =
|
||||
expectedResults['modern-algos/getPublicKey.https.any.worker.html'].fail.expected =
|
||||
['worker failure'];
|
||||
assert.deepStrictEqual(
|
||||
getUnexpectedPasses(expectedFailureSpecs, expectedResults),
|
||||
['getPublicKey.tentative.https.any.worker.html:shared failure'],
|
||||
['modern-algos/getPublicKey.https.any.worker.html:shared failure'],
|
||||
);
|
||||
expectedResults['getPublicKey.tentative.https.any.worker.html'].fail.expected =
|
||||
expectedResults['modern-algos/getPublicKey.https.any.worker.html'].fail.expected =
|
||||
['shared failure'];
|
||||
assert.deepStrictEqual(
|
||||
getUnexpectedPasses(expectedFailureSpecs, expectedResults),
|
||||
['getPublicKey.tentative.https.any.worker.html:worker failure'],
|
||||
['modern-algos/getPublicKey.https.any.worker.html:worker failure'],
|
||||
);
|
||||
@@ -32,99 +32,99 @@ function skipSubtests(...entries) {
|
||||
|
||||
if (!hasOpenSSL(3, 0)) {
|
||||
skip(
|
||||
'encrypt_decrypt/aes_ocb.tentative.https.any.js',
|
||||
'generateKey/failures_AES-OCB.tentative.https.any.js',
|
||||
'generateKey/failures_kmac.tentative.https.any.js',
|
||||
'generateKey/successes_AES-OCB.tentative.https.any.js',
|
||||
'generateKey/successes_kmac.tentative.https.any.js',
|
||||
'import_export/AES-OCB_importKey.tentative.https.any.js',
|
||||
'import_export/KMAC_importKey.tentative.https.any.js',
|
||||
'serialization/aes-ocb.tentative.https.any.js',
|
||||
'serialization/kmac.tentative.https.any.js',
|
||||
'sign_verify/kmac.tentative.https.any.js');
|
||||
'modern-algos/encrypt_decrypt/aes_ocb.https.any.js',
|
||||
'modern-algos/generateKey/failures_AES-OCB.https.any.js',
|
||||
'modern-algos/generateKey/failures_kmac.https.any.js',
|
||||
'modern-algos/generateKey/successes_AES-OCB.https.any.js',
|
||||
'modern-algos/generateKey/successes_kmac.https.any.js',
|
||||
'modern-algos/import_export/AES-OCB_importKey.https.any.js',
|
||||
'modern-algos/import_export/KMAC_importKey.https.any.js',
|
||||
'modern-algos/serialization/aes-ocb.https.any.js',
|
||||
'modern-algos/serialization/kmac.https.any.js',
|
||||
'modern-algos/sign_verify/kmac.https.any.js');
|
||||
}
|
||||
|
||||
if (!hasOpenSSL(3, 2) || hasFIPS(3)) {
|
||||
skip(
|
||||
'derive_bits_keys/argon2.tentative.https.any.js',
|
||||
'import_export/Argon2_importKey.tentative.https.any.js');
|
||||
'modern-algos/derive_bits_keys/argon2.https.any.js',
|
||||
'modern-algos/import_export/Argon2_importKey.https.any.js');
|
||||
}
|
||||
|
||||
if (!hasOpenSSL(3, 5) && !isBoringSSL) {
|
||||
skip(
|
||||
'encap_decap/encap_decap_bits.tentative.https.any.js',
|
||||
'encap_decap/encap_decap_keys.tentative.https.any.js',
|
||||
'generateKey/failures_Hybrid-KEM.tentative.https.any.js',
|
||||
'generateKey/failures_ML-DSA.tentative.https.any.js',
|
||||
'generateKey/failures_ML-KEM.tentative.https.any.js',
|
||||
'generateKey/successes_Hybrid-KEM.tentative.https.any.js',
|
||||
'generateKey/successes_ML-DSA.tentative.https.any.js',
|
||||
'generateKey/successes_ML-KEM.tentative.https.any.js',
|
||||
'import_export/Hybrid-KEM_importKey.tentative.https.any.js',
|
||||
'import_export/ML-DSA_importKey.tentative.https.any.js',
|
||||
'import_export/ML-KEM_importKey.tentative.https.any.js',
|
||||
'serialization/hybridkem.tentative.https.window.js',
|
||||
'serialization/mldsa.tentative.https.any.js',
|
||||
'serialization/mlkem.tentative.https.any.js',
|
||||
'sign_verify/mldsa.tentative.https.any.js');
|
||||
'modern-algos/encap_decap/encap_decap_bits.https.any.js',
|
||||
'modern-algos/encap_decap/encap_decap_keys.https.any.js',
|
||||
'modern-algos/generateKey/failures_Hybrid-KEM.https.any.js',
|
||||
'modern-algos/generateKey/failures_ML-DSA.https.any.js',
|
||||
'modern-algos/generateKey/failures_ML-KEM.https.any.js',
|
||||
'modern-algos/generateKey/successes_Hybrid-KEM.https.any.js',
|
||||
'modern-algos/generateKey/successes_ML-DSA.https.any.js',
|
||||
'modern-algos/generateKey/successes_ML-KEM.https.any.js',
|
||||
'modern-algos/import_export/Hybrid-KEM_importKey.https.any.js',
|
||||
'modern-algos/import_export/ML-DSA_importKey.https.any.js',
|
||||
'modern-algos/import_export/ML-KEM_importKey.https.any.js',
|
||||
'modern-algos/serialization/hybridkem.https.window.js',
|
||||
'modern-algos/serialization/mldsa.https.any.js',
|
||||
'modern-algos/serialization/mlkem.https.any.js',
|
||||
'modern-algos/sign_verify/mldsa.https.any.js');
|
||||
|
||||
skipSubtests(
|
||||
['getPublicKey.tentative.https.any.js', /ml-?(?:kem|dsa)/i],
|
||||
['modern-algos/getPublicKey.https.any.js', /ml-?(?:kem|dsa)/i],
|
||||
[
|
||||
'supports-modern.tentative.https.any.js',
|
||||
'modern-algos/supports-modern.https.any.js',
|
||||
/(?:ml-?(?:kem|dsa)|(?:en|de)capsulateKey)/i,
|
||||
]);
|
||||
}
|
||||
|
||||
if (isBoringSSL) {
|
||||
skip(
|
||||
'derive_bits_keys/cfrg_curves_bits_curve448.tentative.https.any.js',
|
||||
'derive_bits_keys/cfrg_curves_keys_curve448.tentative.https.any.js',
|
||||
'digest/cshake.tentative.https.any.js',
|
||||
'digest/sha3.tentative.https.any.js',
|
||||
'generateKey/failures_Ed448.tentative.https.any.js',
|
||||
'generateKey/failures_Hybrid-KEM.tentative.https.any.js',
|
||||
'generateKey/failures_X448.tentative.https.any.js',
|
||||
'generateKey/successes_Ed448.tentative.https.any.js',
|
||||
'generateKey/successes_Hybrid-KEM.tentative.https.any.js',
|
||||
'generateKey/successes_X448.tentative.https.any.js',
|
||||
'import_export/Hybrid-KEM_importKey.tentative.https.any.js',
|
||||
'import_export/okp_importKey_Ed448.tentative.https.any.js',
|
||||
'import_export/okp_importKey_failures_Ed448.tentative.https.any.js',
|
||||
'import_export/okp_importKey_failures_X448.tentative.https.any.js',
|
||||
'import_export/okp_importKey_X448.tentative.https.any.js',
|
||||
'serialization/ed448.tentative.https.any.js',
|
||||
'serialization/hybridkem.tentative.https.window.js',
|
||||
'serialization/x448.tentative.https.any.js',
|
||||
'sign_verify/eddsa_curve448.tentative.https.any.js');
|
||||
'secure-curves/derive_bits_keys/cfrg_curves_bits_curve448.https.any.js',
|
||||
'secure-curves/derive_bits_keys/cfrg_curves_keys_curve448.https.any.js',
|
||||
'modern-algos/digest/cshake.https.any.js',
|
||||
'modern-algos/digest/sha3.https.any.js',
|
||||
'secure-curves/generateKey/failures_Ed448.https.any.js',
|
||||
'modern-algos/generateKey/failures_Hybrid-KEM.https.any.js',
|
||||
'secure-curves/generateKey/failures_X448.https.any.js',
|
||||
'secure-curves/generateKey/successes_Ed448.https.any.js',
|
||||
'modern-algos/generateKey/successes_Hybrid-KEM.https.any.js',
|
||||
'secure-curves/generateKey/successes_X448.https.any.js',
|
||||
'modern-algos/import_export/Hybrid-KEM_importKey.https.any.js',
|
||||
'secure-curves/import_export/okp_importKey_Ed448.https.any.js',
|
||||
'secure-curves/import_export/okp_importKey_failures_Ed448.https.any.js',
|
||||
'secure-curves/import_export/okp_importKey_failures_X448.https.any.js',
|
||||
'secure-curves/import_export/okp_importKey_X448.https.any.js',
|
||||
'secure-curves/serialization/ed448.https.any.js',
|
||||
'modern-algos/serialization/hybridkem.https.window.js',
|
||||
'secure-curves/serialization/x448.https.any.js',
|
||||
'secure-curves/sign_verify/eddsa_curve448.https.any.js');
|
||||
|
||||
skipSubtests(
|
||||
['encap_decap/encap_decap_bits.tentative.https.any.js', /(?:ml-kem-512|mlkem)/i],
|
||||
['encap_decap/encap_decap_keys.tentative.https.any.js', /(?:ml-kem-512|mlkem)/i],
|
||||
['generateKey/failures_ML-KEM.tentative.https.any.js', /ml-kem-512/i],
|
||||
['generateKey/successes_ML-KEM.tentative.https.any.js', /ml-kem-512/i],
|
||||
['getPublicKey.tentative.https.any.js', /(?:ed448|x448|ml-kem-512|mlkem)/i],
|
||||
['import_export/ML-KEM_importKey.tentative.https.any.js', /ml-kem-512/i],
|
||||
['serialization/mlkem.tentative.https.any.js', /ml-kem-512/i],
|
||||
['supports-modern.tentative.https.any.js', /(?:ml-kem-512|mlkem)/i]);
|
||||
['modern-algos/encap_decap/encap_decap_bits.https.any.js', /(?:ml-kem-512|mlkem)/i],
|
||||
['modern-algos/encap_decap/encap_decap_keys.https.any.js', /(?:ml-kem-512|mlkem)/i],
|
||||
['modern-algos/generateKey/failures_ML-KEM.https.any.js', /ml-kem-512/i],
|
||||
['modern-algos/generateKey/successes_ML-KEM.https.any.js', /ml-kem-512/i],
|
||||
['modern-algos/getPublicKey.https.any.js', /(?:ed448|x448|ml-kem-512|mlkem)/i],
|
||||
['modern-algos/import_export/ML-KEM_importKey.https.any.js', /ml-kem-512/i],
|
||||
['modern-algos/serialization/mlkem.https.any.js', /ml-kem-512/i],
|
||||
['modern-algos/supports-modern.https.any.js', /(?:ml-kem-512|mlkem)/i]);
|
||||
}
|
||||
|
||||
if (hasFIPS(3)) {
|
||||
skip(
|
||||
'encrypt_decrypt/aes_ocb.tentative.https.any.js',
|
||||
'encrypt_decrypt/chacha20_poly1305.tentative.https.any.js',
|
||||
'generateKey/failures_AES-OCB.tentative.https.any.js',
|
||||
'generateKey/failures_chacha20_poly1305.tentative.https.any.js',
|
||||
'generateKey/successes_AES-OCB.tentative.https.any.js',
|
||||
'generateKey/successes_chacha20_poly1305.tentative.https.any.js',
|
||||
'import_export/AES-OCB_importKey.tentative.https.any.js',
|
||||
'import_export/ChaCha20-Poly1305_importKey.tentative.https.any.js',
|
||||
'serialization/aes-ocb.tentative.https.any.js',
|
||||
'serialization/chacha20-poly1305.tentative.https.any.js');
|
||||
'modern-algos/encrypt_decrypt/aes_ocb.https.any.js',
|
||||
'modern-algos/encrypt_decrypt/chacha20_poly1305.https.any.js',
|
||||
'modern-algos/generateKey/failures_AES-OCB.https.any.js',
|
||||
'modern-algos/generateKey/failures_chacha20_poly1305.https.any.js',
|
||||
'modern-algos/generateKey/successes_AES-OCB.https.any.js',
|
||||
'modern-algos/generateKey/successes_chacha20_poly1305.https.any.js',
|
||||
'modern-algos/import_export/AES-OCB_importKey.https.any.js',
|
||||
'modern-algos/import_export/ChaCha20-Poly1305_importKey.https.any.js',
|
||||
'modern-algos/serialization/aes-ocb.https.any.js',
|
||||
'modern-algos/serialization/chacha20-poly1305.https.any.js');
|
||||
|
||||
skipSubtests(
|
||||
[
|
||||
'supports-modern.tentative.https.any.js',
|
||||
'modern-algos/supports-modern.https.any.js',
|
||||
/(?:ChaCha20-Poly1305|^supports returns (?:true|false) for algorithm objects with (?:valid|invalid) parameters$)/,
|
||||
],
|
||||
[
|
||||
@@ -135,8 +135,8 @@ if (hasFIPS(3)) {
|
||||
|
||||
if (hasFIPS()) {
|
||||
skip(
|
||||
'digest/kangarootwelve.tentative.https.any.js',
|
||||
'digest/turboshake.tentative.https.any.js');
|
||||
'modern-algos/digest/kangarootwelve.https.any.js',
|
||||
'modern-algos/digest/turboshake.https.any.js');
|
||||
}
|
||||
|
||||
// OpenSSL 3.0 through 3.3 reject SHA-1 signature generation in FIPS mode.
|
||||
@@ -153,39 +153,39 @@ if (hasFIPS(3) && !hasOpenSSL(3, 4)) {
|
||||
if (hasFIPS(3, 5)) {
|
||||
skip(
|
||||
'derive_bits_keys/cfrg_curves_bits_curve25519.https.any.js',
|
||||
'derive_bits_keys/cfrg_curves_bits_curve448.tentative.https.any.js',
|
||||
'secure-curves/derive_bits_keys/cfrg_curves_bits_curve448.https.any.js',
|
||||
'derive_bits_keys/cfrg_curves_keys_curve25519.https.any.js',
|
||||
'derive_bits_keys/cfrg_curves_keys_curve448.tentative.https.any.js',
|
||||
'generateKey/failures_Hybrid-KEM.tentative.https.any.js',
|
||||
'secure-curves/derive_bits_keys/cfrg_curves_keys_curve448.https.any.js',
|
||||
'modern-algos/generateKey/failures_Hybrid-KEM.https.any.js',
|
||||
'generateKey/failures_X25519.https.any.js',
|
||||
'generateKey/failures_X448.tentative.https.any.js',
|
||||
'generateKey/successes_Hybrid-KEM.tentative.https.any.js',
|
||||
'secure-curves/generateKey/failures_X448.https.any.js',
|
||||
'modern-algos/generateKey/successes_Hybrid-KEM.https.any.js',
|
||||
'generateKey/successes_X25519.https.any.js',
|
||||
'generateKey/successes_X448.tentative.https.any.js',
|
||||
'import_export/Hybrid-KEM_importKey.tentative.https.any.js',
|
||||
'secure-curves/generateKey/successes_X448.https.any.js',
|
||||
'modern-algos/import_export/Hybrid-KEM_importKey.https.any.js',
|
||||
'import_export/okp_importKey_X25519.https.any.js',
|
||||
'import_export/okp_importKey_X448.tentative.https.any.js',
|
||||
'secure-curves/import_export/okp_importKey_X448.https.any.js',
|
||||
'import_export/okp_importKey_failures_X25519.https.any.js',
|
||||
'import_export/okp_importKey_failures_X448.tentative.https.any.js',
|
||||
'serialization/hybridkem.tentative.https.window.js',
|
||||
'secure-curves/import_export/okp_importKey_failures_X448.https.any.js',
|
||||
'modern-algos/serialization/hybridkem.https.window.js',
|
||||
'serialization/x25519.https.any.js',
|
||||
'serialization/x448.tentative.https.any.js');
|
||||
'secure-curves/serialization/x448.https.any.js');
|
||||
|
||||
skipSubtests(
|
||||
[
|
||||
'derive_bits_keys/derived_bits_length.https.any.js',
|
||||
/^X25519 derivation/,
|
||||
],
|
||||
['encap_decap/encap_decap_bits.tentative.https.any.js', /mlkem/i],
|
||||
['encap_decap/encap_decap_keys.tentative.https.any.js', /mlkem/i],
|
||||
['getPublicKey.tentative.https.any.js', /(?:X25519|X448|MLKEM)/],
|
||||
['modern-algos/encap_decap/encap_decap_bits.https.any.js', /mlkem/i],
|
||||
['modern-algos/encap_decap/encap_decap_keys.https.any.js', /mlkem/i],
|
||||
['modern-algos/getPublicKey.https.any.js', /(?:X25519|X448|MLKEM)/],
|
||||
[
|
||||
'import_export/raw_format_aliases.tentative.https.any.js',
|
||||
'modern-algos/import_export/raw_format_aliases.https.any.js',
|
||||
/(?:X25519|X448)/,
|
||||
],
|
||||
['supports-modern.tentative.https.any.js', /mlkem/i],
|
||||
['modern-algos/supports-modern.https.any.js', /mlkem/i],
|
||||
[
|
||||
'supports.tentative.https.any.js',
|
||||
'modern-algos/supports.https.any.js',
|
||||
/(?:X25519|^deriveKey promise tests|^supports validates the ECDH public key$)/,
|
||||
],
|
||||
[
|
||||
@@ -245,7 +245,7 @@ if (hasFIPS(4)) {
|
||||
|
||||
if (!hasFIPS()) {
|
||||
skipSubtests(
|
||||
['digest/kangarootwelve.tentative.https.any.js', /C=(?:\d{4,}|5(?:1[3-9]|[2-9]\d)|[6-9]\d{2}) bytes/]);
|
||||
['modern-algos/digest/kangarootwelve.https.any.js', /C=(?:\d{4,}|5(?:1[3-9]|[2-9]\d)|[6-9]\d{2}) bytes/]);
|
||||
}
|
||||
|
||||
function assertNoOverlap(fileSkips, subtestSkips) {
|
||||
|
||||
Reference in new issue
Block a user