LibCrypto+LibWeb: Check EC keys validity on SubtleCrypto import_key

Fix various TODO by checking the validity of ECDSA and ECDH keys when
they are imported. There are no checks in place for raw import because
the spec doesn't contemplate them yet.

Also add some internal tests since WPT doesn't seem to provide them.
This commit is contained in:
devgianlu
2025-05-31 18:43:16 +02:00
committed by Shannon Booth
parent a90950cac7
commit 7f44b88eea
Notes: github-actions[bot] 2025-06-25 00:23:36 +00:00
5 changed files with 321 additions and 12 deletions

View File

@@ -0,0 +1,30 @@
ECDSA P-256 PUB - jwk OK: DataError: Invalid key
ECDSA P-256 PUB - spki OK: DataError: Invalid key
ECDSA P-256 PRIV - jwk OK: DataError: Invalid key
ECDSA P-256 PRIV - pkcs8 OK: DataError: Invalid key
ECDSA P-256 PRIV - pkcs8 OK: DataError: Invalid key
ECDSA P-384 PUB - jwk OK: DataError: Invalid key
ECDSA P-384 PUB - spki OK: DataError: Invalid key
ECDSA P-384 PRIV - jwk OK: DataError: Invalid key
ECDSA P-384 PRIV - pkcs8 OK: DataError: Invalid key
ECDSA P-384 PRIV - pkcs8 OK: DataError: Invalid key
ECDSA P-521 PUB - jwk OK: DataError: Invalid key
ECDSA P-521 PUB - spki OK: DataError: Invalid key
ECDSA P-521 PRIV - jwk OK: DataError: Invalid key
ECDSA P-521 PRIV - pkcs8 OK: DataError: Invalid key
ECDSA P-521 PRIV - pkcs8 OK: DataError: Invalid key
ECDH P-256 PUB - jwk OK: DataError: Invalid key
ECDH P-256 PUB - spki OK: DataError: Invalid key
ECDH P-256 PRIV - jwk OK: DataError: Invalid key
ECDH P-256 PRIV - pkcs8 OK: DataError: Invalid key
ECDH P-256 PRIV - pkcs8 OK: DataError: Invalid key
ECDH P-384 PUB - jwk OK: DataError: Invalid key
ECDH P-384 PUB - spki OK: DataError: Invalid key
ECDH P-384 PRIV - jwk OK: DataError: Invalid key
ECDH P-384 PRIV - pkcs8 OK: DataError: Invalid key
ECDH P-384 PRIV - pkcs8 OK: DataError: Invalid key
ECDH P-521 PUB - jwk OK: DataError: Invalid key
ECDH P-521 PUB - spki OK: DataError: Invalid key
ECDH P-521 PRIV - jwk OK: DataError: Invalid key
ECDH P-521 PRIV - pkcs8 OK: DataError: Invalid key
ECDH P-521 PRIV - pkcs8 OK: DataError: Invalid key