Closed Bug 1999945 Opened 11 months ago Closed 11 months ago

[wpt-sync] Sync PR 54417 - WebCryptoAPI Modern Algorithms

Categories

(Core :: DOM: Web Crypto, task, P4)

task

Tracking

()

RESOLVED FIXED
147 Branch
Tracking Status
firefox147 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Attachments

(1 file)

Sync web-platform-tests PR 54417 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/54417
Details from upstream follow.

Filip Skokan <panva.ip@gmail.com> wrote:

WebCryptoAPI Modern Algorithms

includes:

  • ML-DSA (no context)
  • cSHAKE digest (no customization, no functionName, not inside HMAC, RSA, or HKDF)
  • SHA3 digest (not inside HMAC, RSA, or HKDF)
  • ChaCha20-Poly1305
  • AES-OCB (not testing variable iv length, only 15-byte ones)
  • Argon2 (using just the RFC vectors for pass, no failure tests)
  • ML-KEM
  • KMAC
  • getPublicKey() (using generally supported algorithms)
  • supports() (using generally supported algorithms)
Component: web-platform-tests → DOM: Web Crypto
Product: Testing → Core
Whiteboard: [wptsync downstream] → [wptsync downstream error]
Whiteboard: [wptsync downstream error] → [wptsync downstream]
Attached file Notable wpt changes —
# CI Results Ran 8 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI Total 263 tests and 299 subtests ## Status Summary ### Firefox `OK` : 190[GitHub] 262[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-windows11-32-24h2-debug, Gecko-windows11-32-24h2-opt, Gecko-windows11-64-24h2-debug] 263[Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-opt, Gecko-windows11-64-24h2-opt] `PASS` : 33022[GitHub] 58832[Gecko-windows11-32-24h2-opt] 59445[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-windows11-32-24h2-debug, Gecko-windows11-64-24h2-debug] 59448[Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-opt, Gecko-windows11-64-24h2-opt] `FAIL` : 9400[GitHub] 9538[Gecko-android-em-14-x86_64-debug-geckoview, Gecko-android-em-14-x86_64-lite-opt-geckoview, Gecko-android-em-14-x86_64-opt-geckoview, Gecko-linux2404-64-opt, Gecko-windows11-32-24h2-debug, Gecko-windows11-32-24h2-opt, Gecko-windows11-64-24h2-debug, Gecko-windows11-64-24h2-opt] ### Chrome `OK` : 190 `PASS` : 30498 `FAIL` : 11924 ### Safari `OK` : 190 `PASS` : 31668 `FAIL` : 10706 `PRECONDITION_FAILED`: 48 ## Links [Gecko CI (Treeherder)](https://treeherder.mozilla.org/#/jobs?repo=try&revision=2db384f70f57df9a3174bd046189a0deb2a5d9a1) [GitHub PR Head](https://wpt.fyi/results/?sha=b561ade80268be4ebb131d891800e0144b624fcc&label=pr_head) [GitHub PR Base](https://wpt.fyi/results/?sha=b561ade80268be4ebb131d891800e0144b624fcc&label=pr_base) ## Details ### Firefox-only Failures * [/WebCryptoAPI/import_export/ec_importKey_failures_ECDH.https.any.html](https://wpt.live/WebCryptoAPI/import_export/ec_importKey_failures_ECDH.https.any.html) [[wpt.fyi](https://wpt.fyi/results/WebCryptoAPI/import_export/ec_importKey_failures_ECDH.https.any.html)] * Invalid 'use' field: importKey(jwk(private), {name: ECDH, namedCurve: P-256}, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: ECDH, namedCurve: P-384}, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: ECDH, namedCurve: P-521}, true, [deriveKey, deriveBits]): `FAIL` * [/WebCryptoAPI/import_export/ec_importKey_failures_ECDH.https.any.worker.html](https://wpt.live/WebCryptoAPI/import_export/ec_importKey_failures_ECDH.https.any.worker.html) [[wpt.fyi](https://wpt.fyi/results/WebCryptoAPI/import_export/ec_importKey_failures_ECDH.https.any.worker.html)] * Invalid 'use' field: importKey(jwk(private), {name: ECDH, namedCurve: P-256}, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: ECDH, namedCurve: P-384}, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: ECDH, namedCurve: P-521}, true, [deriveKey, deriveBits]): `FAIL` * [/WebCryptoAPI/import_export/ec_importKey_failures_ECDSA.https.any.html](https://wpt.live/WebCryptoAPI/import_export/ec_importKey_failures_ECDSA.https.any.html) [[wpt.fyi](https://wpt.fyi/results/WebCryptoAPI/import_export/ec_importKey_failures_ECDSA.https.any.html)] * Invalid 'use' field: importKey(jwk(private), {name: ECDSA, namedCurve: P-256}, true, [sign]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: ECDSA, namedCurve: P-384}, true, [sign]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: ECDSA, namedCurve: P-521}, true, [sign]): `FAIL` * [/WebCryptoAPI/import_export/ec_importKey_failures_ECDSA.https.any.worker.html](https://wpt.live/WebCryptoAPI/import_export/ec_importKey_failures_ECDSA.https.any.worker.html) [[wpt.fyi](https://wpt.fyi/results/WebCryptoAPI/import_export/ec_importKey_failures_ECDSA.https.any.worker.html)] * Invalid 'use' field: importKey(jwk(private), {name: ECDSA, namedCurve: P-256}, true, [sign]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: ECDSA, namedCurve: P-384}, true, [sign]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: ECDSA, namedCurve: P-521}, true, [sign]): `FAIL` * [/WebCryptoAPI/import_export/okp_importKey_failures_Ed25519.https.any.worker.html](https://wpt.live/WebCryptoAPI/import_export/okp_importKey_failures_Ed25519.https.any.worker.html) [[wpt.fyi](https://wpt.fyi/results/WebCryptoAPI/import_export/okp_importKey_failures_Ed25519.https.any.worker.html)] * Invalid key pair: importKey(jwk(private), Ed25519, true, [sign]): `FAIL` * Invalid key pair: importKey(jwk(private), Ed25519, true, [sign, sign]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: Ed25519}, true, [sign]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: Ed25519}, true, [sign, sign]): `FAIL` * Invalid 'use' field: importKey(jwk(private), Ed25519, true, [sign]): `FAIL` * Invalid 'use' field: importKey(jwk (public) , Ed25519, true, [verify]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: Ed25519}, true, [sign]): `FAIL` * Invalid 'use' field: importKey(jwk (public) , {name: Ed25519}, true, [verify]): `FAIL` * Invalid 'crv' field: importKey(jwk(private), Ed25519, true, [sign]): `FAIL` * Invalid 'crv' field: importKey(jwk (public) , Ed25519, true, [verify]): `FAIL` * Invalid 'crv' field: importKey(jwk(private), {name: Ed25519}, true, [sign]): `FAIL` * Invalid 'crv' field: importKey(jwk (public) , {name: Ed25519}, true, [verify]): `FAIL` * [/WebCryptoAPI/import_export/okp_importKey_failures_Ed25519.https.any.html](https://wpt.live/WebCryptoAPI/import_export/okp_importKey_failures_Ed25519.https.any.html) [[wpt.fyi](https://wpt.fyi/results/WebCryptoAPI/import_export/okp_importKey_failures_Ed25519.https.any.html)] * Invalid key pair: importKey(jwk(private), Ed25519, true, [sign]): `FAIL` * Invalid key pair: importKey(jwk(private), Ed25519, true, [sign, sign]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: Ed25519}, true, [sign]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: Ed25519}, true, [sign, sign]): `FAIL` * Invalid 'use' field: importKey(jwk(private), Ed25519, true, [sign]): `FAIL` * Invalid 'use' field: importKey(jwk (public) , Ed25519, true, [verify]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: Ed25519}, true, [sign]): `FAIL` * Invalid 'use' field: importKey(jwk (public) , {name: Ed25519}, true, [verify]): `FAIL` * Invalid 'crv' field: importKey(jwk(private), Ed25519, true, [sign]): `FAIL` * Invalid 'crv' field: importKey(jwk (public) , Ed25519, true, [verify]): `FAIL` * Invalid 'crv' field: importKey(jwk(private), {name: Ed25519}, true, [sign]): `FAIL` * Invalid 'crv' field: importKey(jwk (public) , {name: Ed25519}, true, [verify]): `FAIL` * [/WebCryptoAPI/import_export/okp_importKey_failures_X25519.https.any.worker.html](https://wpt.live/WebCryptoAPI/import_export/okp_importKey_failures_X25519.https.any.worker.html) [[wpt.fyi](https://wpt.fyi/results/WebCryptoAPI/import_export/okp_importKey_failures_X25519.https.any.worker.html)] * Invalid key pair: importKey(jwk(private), X25519, true, [deriveKey]): `FAIL` * Invalid key pair: importKey(jwk(private), X25519, true, [deriveBits, deriveKey]): `FAIL` * Invalid key pair: importKey(jwk(private), X25519, true, [deriveBits]): `FAIL` * Invalid key pair: importKey(jwk(private), X25519, true, [deriveKey, deriveBits, deriveKey, deriveBits]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: X25519}, true, [deriveKey]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: X25519}, true, [deriveBits]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits]): `FAIL` * Invalid 'use' field: importKey(jwk(private), X25519, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'crv' field: importKey(jwk(private), X25519, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'crv' field: importKey(jwk (public) , X25519, true, []): `FAIL` * Invalid 'crv' field: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'crv' field: importKey(jwk (public) , {name: X25519}, true, []): `FAIL` * [/WebCryptoAPI/import_export/okp_importKey_failures_X25519.https.any.html](https://wpt.live/WebCryptoAPI/import_export/okp_importKey_failures_X25519.https.any.html) [[wpt.fyi](https://wpt.fyi/results/WebCryptoAPI/import_export/okp_importKey_failures_X25519.https.any.html)] * Invalid key pair: importKey(jwk(private), X25519, true, [deriveKey]): `FAIL` * Invalid key pair: importKey(jwk(private), X25519, true, [deriveBits, deriveKey]): `FAIL` * Invalid key pair: importKey(jwk(private), X25519, true, [deriveBits]): `FAIL` * Invalid key pair: importKey(jwk(private), X25519, true, [deriveKey, deriveBits, deriveKey, deriveBits]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: X25519}, true, [deriveKey]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: X25519}, true, [deriveBits]): `FAIL` * Invalid key pair: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits]): `FAIL` * Invalid 'use' field: importKey(jwk(private), X25519, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'use' field: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'crv' field: importKey(jwk(private), X25519, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'crv' field: importKey(jwk (public) , X25519, true, []): `FAIL` * Invalid 'crv' field: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits]): `FAIL` * Invalid 'crv' field: importKey(jwk (public) , {name: X25519}, true, []): `FAIL` (See attachment for full changes)
Status: NEW → RESOLVED
Closed: 11 months ago
Resolution: --- → FIXED
Target Milestone: --- → 147 Branch
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: