Harness status: OK

Found 231 tests

217 Pass
14 Fail
Pass	Bad usages: importKey(spki, {name: X25519}, true, [encrypt])
Pass	Bad usages: importKey(spki, {name: X25519}, false, [encrypt])
Pass	Bad usages: importKey(spki, {name: X25519}, true, [decrypt])
Pass	Bad usages: importKey(spki, {name: X25519}, false, [decrypt])
Pass	Bad usages: importKey(spki, {name: X25519}, true, [sign])
Pass	Bad usages: importKey(spki, {name: X25519}, false, [sign])
Pass	Bad usages: importKey(spki, {name: X25519}, true, [verify])
Pass	Bad usages: importKey(spki, {name: X25519}, false, [verify])
Pass	Bad usages: importKey(spki, {name: X25519}, true, [wrapKey])
Pass	Bad usages: importKey(spki, {name: X25519}, false, [wrapKey])
Pass	Bad usages: importKey(spki, {name: X25519}, true, [unwrapKey])
Pass	Bad usages: importKey(spki, {name: X25519}, false, [unwrapKey])
Pass	Bad usages: importKey(spki, {name: X25519}, true, [deriveKey])
Pass	Bad usages: importKey(spki, {name: X25519}, false, [deriveKey])
Pass	Bad usages: importKey(spki, {name: X25519}, true, [deriveBits])
Pass	Bad usages: importKey(spki, {name: X25519}, false, [deriveBits])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, deriveKey, encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, deriveKey, encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, encrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, deriveKey, decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, deriveKey, decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, decrypt])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, deriveKey, sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, deriveKey, sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, sign])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, deriveKey, verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, deriveKey, verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, verify])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, deriveKey, wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, deriveKey, wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, wrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, deriveKey, unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, deriveKey, unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveBits, unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveBits, unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, unwrapKey])
Pass	Bad usages: importKey(pkcs8, {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, unwrapKey])
Pass	Bad usages: importKey(raw, {name: X25519}, true, [encrypt])
Pass	Bad usages: importKey(raw, {name: X25519}, false, [encrypt])
Pass	Bad usages: importKey(raw, {name: X25519}, true, [decrypt])
Pass	Bad usages: importKey(raw, {name: X25519}, false, [decrypt])
Pass	Bad usages: importKey(raw, {name: X25519}, true, [sign])
Pass	Bad usages: importKey(raw, {name: X25519}, false, [sign])
Pass	Bad usages: importKey(raw, {name: X25519}, true, [verify])
Pass	Bad usages: importKey(raw, {name: X25519}, false, [verify])
Pass	Bad usages: importKey(raw, {name: X25519}, true, [wrapKey])
Pass	Bad usages: importKey(raw, {name: X25519}, false, [wrapKey])
Pass	Bad usages: importKey(raw, {name: X25519}, true, [unwrapKey])
Pass	Bad usages: importKey(raw, {name: X25519}, false, [unwrapKey])
Pass	Bad usages: importKey(raw, {name: X25519}, true, [deriveKey])
Pass	Bad usages: importKey(raw, {name: X25519}, false, [deriveKey])
Pass	Bad usages: importKey(raw, {name: X25519}, true, [deriveBits])
Pass	Bad usages: importKey(raw, {name: X25519}, false, [deriveBits])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey, encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey, encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, encrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey, decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey, decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, decrypt])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey, sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey, sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, sign])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey, verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey, verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, verify])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey, wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey, wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, wrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey, unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey, unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveBits, unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveBits, unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits, unwrapKey])
Pass	Bad usages: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits, unwrapKey])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, true, [encrypt])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, false, [encrypt])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, true, [decrypt])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, false, [decrypt])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, true, [sign])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, false, [sign])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, true, [verify])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, false, [verify])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, true, [wrapKey])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, false, [wrapKey])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, true, [unwrapKey])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, false, [unwrapKey])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, true, [deriveKey])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, false, [deriveKey])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, true, [deriveBits])
Pass	Bad usages: importKey(jwk (public) , {name: X25519}, false, [deriveBits])
Pass	Empty usages: importKey(pkcs8, {name: X25519}, true, [])
Pass	Empty usages: importKey(pkcs8, {name: X25519}, false, [])
Pass	Empty usages: importKey(jwk(private), {name: X25519}, true, [])
Pass	Empty usages: importKey(jwk(private), {name: X25519}, false, [])
Pass	Bad key length: importKey(spki, {name: X25519}, true, [])
Pass	Bad key length: importKey(spki, {name: X25519}, false, [])
Pass	Bad key length: importKey(pkcs8, {name: X25519}, true, [deriveKey])
Pass	Bad key length: importKey(pkcs8, {name: X25519}, false, [deriveKey])
Pass	Bad key length: importKey(pkcs8, {name: X25519}, true, [deriveBits, deriveKey])
Pass	Bad key length: importKey(pkcs8, {name: X25519}, false, [deriveBits, deriveKey])
Pass	Bad key length: importKey(pkcs8, {name: X25519}, true, [deriveBits])
Pass	Bad key length: importKey(pkcs8, {name: X25519}, false, [deriveBits])
Pass	Bad key length: importKey(pkcs8, {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass	Bad key length: importKey(pkcs8, {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass	Bad key length: importKey(raw, {name: X25519}, true, [])
Pass	Bad key length: importKey(raw, {name: X25519}, false, [])
Fail	Bad key length: importKey(jwk (public) , {name: X25519}, true, [])
Fail	Bad key length: importKey(jwk (public) , {name: X25519}, false, [])
Fail	Bad key length: importKey(jwk(private), {name: X25519}, true, [deriveKey])
Fail	Bad key length: importKey(jwk(private), {name: X25519}, false, [deriveKey])
Fail	Bad key length: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey])
Fail	Bad key length: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey])
Fail	Bad key length: importKey(jwk(private), {name: X25519}, true, [deriveBits])
Fail	Bad key length: importKey(jwk(private), {name: X25519}, false, [deriveBits])
Fail	Bad key length: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Fail	Bad key length: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass	Missing JWK 'x' parameter: importKey(jwk(private), {name: X25519}, true, [deriveKey])
Pass	Missing JWK 'x' parameter: importKey(jwk(private), {name: X25519}, false, [deriveKey])
Pass	Missing JWK 'x' parameter: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey])
Pass	Missing JWK 'x' parameter: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey])
Pass	Missing JWK 'x' parameter: importKey(jwk(private), {name: X25519}, true, [deriveBits])
Pass	Missing JWK 'x' parameter: importKey(jwk(private), {name: X25519}, false, [deriveBits])
Pass	Missing JWK 'x' parameter: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass	Missing JWK 'x' parameter: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass	Missing JWK 'kty' parameter: importKey(jwk(private), {name: X25519}, true, [deriveKey])
Pass	Missing JWK 'kty' parameter: importKey(jwk(private), {name: X25519}, false, [deriveKey])
Pass	Missing JWK 'kty' parameter: importKey(jwk(private), {name: X25519}, true, [deriveBits, deriveKey])
Pass	Missing JWK 'kty' parameter: importKey(jwk(private), {name: X25519}, false, [deriveBits, deriveKey])
Pass	Missing JWK 'kty' parameter: importKey(jwk(private), {name: X25519}, true, [deriveBits])
Pass	Missing JWK 'kty' parameter: importKey(jwk(private), {name: X25519}, false, [deriveBits])
Pass	Missing JWK 'kty' parameter: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass	Missing JWK 'kty' parameter: importKey(jwk(private), {name: X25519}, false, [deriveKey, deriveBits, deriveKey, deriveBits])
Pass	Missing JWK 'crv' parameter: importKey(jwk (public) , {name: X25519}, true, [])
Pass	Missing JWK 'crv' parameter: importKey(jwk (public) , {name: X25519}, false, [])
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])
Pass	Missing algorithm name: importKey(pkcs8, {}, true, deriveKey)
Pass	Missing algorithm name: importKey(pkcs8, {}, false, deriveKey)
Pass	Missing algorithm name: importKey(pkcs8, {}, true, deriveBits)
Pass	Missing algorithm name: importKey(pkcs8, {}, false, deriveBits)
Pass	Missing algorithm name: importKey(jwk(private), {}, true, deriveKey)
Pass	Missing algorithm name: importKey(jwk(private), {}, false, deriveKey)
Pass	Missing algorithm name: importKey(jwk(private), {}, true, deriveBits)
Pass	Missing algorithm name: importKey(jwk(private), {}, false, deriveBits)
Pass	Invalid 'kty' field: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits])
Pass	Invalid 'kty' field: importKey(jwk (public) , {name: X25519}, true, [])
Pass	Import from a non-extractable: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits])
Pass	Import from a non-extractable: importKey(jwk (public) , {name: X25519}, true, [])
Pass	Invalid 'use' field: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits])
Pass	Invalid 'crv' field: importKey(jwk(private), {name: X25519}, true, [deriveKey, deriveBits])
Pass	Invalid 'crv' field: importKey(jwk (public) , {name: X25519}, true, [])