mirror of
https://github.com/danbulant/jose
synced 2026-05-24 20:41:46 +00:00
This is as per - https://tools.ietf.org/html/draft-ietf-cose-webauthn-algorithms-01 - https://mailarchive.ietf.org/arch/msg/cose/91MouVA43DefbpQOB7l5daCEeIc
26 lines
761 B
JavaScript
26 lines
761 B
JavaScript
// require 'secp256k1' renamed to 'P-256K'
|
|
require('../../P-256K')
|
|
|
|
const test = require('ava')
|
|
const { createPublicKey, createPrivateKey } = require('crypto')
|
|
|
|
const { keyObjectToJWK, jwkToPem } = require('../../lib/help/key_utils')
|
|
const { JWK: fixtures } = require('../fixtures')
|
|
const clone = obj => JSON.parse(JSON.stringify(obj))
|
|
|
|
test('EC P-256K Public key', t => {
|
|
const expected = clone(fixtures['P-256K'])
|
|
delete expected.d
|
|
const pem = createPublicKey(jwkToPem(expected))
|
|
const actual = keyObjectToJWK(pem)
|
|
|
|
t.deepEqual(actual, expected)
|
|
})
|
|
|
|
test('EC P-256K Private key', t => {
|
|
const expected = fixtures['P-256K']
|
|
const pem = createPrivateKey(jwkToPem(expected))
|
|
const actual = keyObjectToJWK(pem)
|
|
|
|
t.deepEqual(actual, expected)
|
|
})
|