chromium/third_party/blink/web_tests/crypto/subtle/ecdh/deriveKey-failures-expected.txt

Tests deriveKey() with various bad parameters for ECDH

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".

Importing the private key...
Importing the public key...

Deriving an AES key with no length...
error is: TypeError: Failed to execute 'deriveKey' on 'SubtleCrypto': AesDerivedKeyParams: length: Missing required property

Deriving an AES key with bad length...
error is: OperationError: AES key length must be 128 or 256 bits

Deriving an AES key with unsupported length...
error is: OperationError: 192-bit AES keys are not supported

Deriving an AES-CBC key with unsupported usage (sign)...
error is: SyntaxError: Cannot create a key using the specified key usages.

Deriving using an ECDH key that has deriveBits but NOT deriveKey... usage
error is: InvalidAccessError: key.usages does not permit this operation

Deriving using public instead of private key...
error is: InvalidAccessError: key.usages does not permit this operation

Deriving using private instead of public key...
error is: InvalidAccessError: The public parameter for ECDH key derivation is not a public EC key

Deriving a key larger than the field size of P-521...
error is: OperationError: Length specified for ECDH key derivation is too large. Maximum allowed is 528 bits

Deriving a zero-length HMAC key...
error is: TypeError: HMAC key length must not be zero

Deriving a key larger than field size of P-521, by requesting an HMAC SHA-512 key with no length...
error is: OperationError: Length specified for ECDH key derivation is too large. Maximum allowed is 528 bits

Deriving a key using mismatched curves on public/private keys...
error is: InvalidAccessError: The public parameter for ECDH key derivation is for a different named curve

Deriving a key using a public EC key for different algorithm (ECDSA)...
error is: InvalidAccessError: The public parameter for ECDH key derivation must be for ECDH

Deriving a key using an AES key for public key...
error is: InvalidAccessError: The public parameter for ECDH key derivation is not a public EC key

Deriving a key without specifying the "public" parameter...
error is: TypeError: Failed to execute 'deriveKey' on 'SubtleCrypto': EcdhKeyDeriveParams: public: Missing required property

Deriving a key having specified a bogus "public" parameter...
error is: TypeError: Failed to execute 'deriveKey' on 'SubtleCrypto': EcdhKeyDeriveParams: public: Must be a CryptoKey

Deriving an ECDH key using ECDH...
error is: NotSupportedError: Failed to execute 'deriveKey' on 'SubtleCrypto': ECDH: Unsupported operation: get key length

Deriving an RSA-OAEP key using ECDH...
error is: NotSupportedError: Failed to execute 'deriveKey' on 'SubtleCrypto': RSA-OAEP: Unsupported operation: get key length


PASS successfullyParsed is true

TEST COMPLETE