mirror of
https://github.com/danbulant/jose
synced 2026-05-24 20:41:46 +00:00
test: add ECDH-ES test vectors from rfc8037
This commit is contained in:
parent
9daca837bf
commit
a2d428e5e0
1 changed files with 42 additions and 0 deletions
42
test/cookbook/rfc8037.ecdhes.test.js
Normal file
42
test/cookbook/rfc8037.ecdhes.test.js
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
const test = require('ava')
|
||||
|
||||
const { improvedDH } = require('../../lib/help/runtime_support')
|
||||
|
||||
if (!improvedDH) return
|
||||
|
||||
const { JWK: { asKey } } = require('../..')
|
||||
const computeSecret = require('../../lib/jwa/ecdh/compute_secret')
|
||||
|
||||
test('RFC8037 - A.6. ECDH-ES with X25519', t => {
|
||||
const pub = asKey({
|
||||
kty: 'OKP',
|
||||
crv: 'X25519',
|
||||
x: '3p7bfXt9wbTTW2HC7OQ1Nz-DQ8hbeGdNrfx-FG-IK08'
|
||||
})
|
||||
|
||||
const ephemeral = asKey({
|
||||
kty: 'OKP',
|
||||
crv: 'X25519',
|
||||
x: 'hSDwCYkwp1R0i33ctD73Wg2_Og0mOBr066SpjqqbTmo',
|
||||
d: 'dwdtCnMYpX08FsFyUbJmRd9ML4frwJkqsXf7pR25LCo'
|
||||
})
|
||||
|
||||
t.deepEqual(computeSecret(ephemeral, pub), Buffer.from('4a5d9d5ba4ce2de1728e3bf480350f25e07e21c947d19e3376f09b3c1e161742', 'hex'))
|
||||
})
|
||||
|
||||
test('RFC8037 - A.6. ECDH-ES with X448', t => {
|
||||
const pub = asKey({
|
||||
kty: 'OKP',
|
||||
crv: 'X448',
|
||||
x: 'PreoKbDNIPW8_AtZm2_sz22kYnEHvbDU80W0MCfYuXL8PjT7QjKhPKcG3LV67D2uB73BxnvzNgk'
|
||||
})
|
||||
|
||||
const ephemeral = asKey({
|
||||
kty: 'OKP',
|
||||
crv: 'X448',
|
||||
x: 'mwj3zDG34-Z9ItWuoSEHSic70rg94Jxj-qc9LCLF2bvINmRyQdlT1AxbEtqIEg1TF3-A5TLEH6A',
|
||||
d: 'mo9JJdFRn1d1z0awS1gA1O6e6LrovFVl1JjCjdnJuvV0qUGXRIlzkQBjgqbxJ6sdmsLYwKWYcms'
|
||||
})
|
||||
|
||||
t.deepEqual(computeSecret(ephemeral, pub), Buffer.from('07fff4181ac6cc95ec1c16a94a0f74d12da232ce40a77552281d282bb60c0b56fd2464c335543936521c24403085d59a449a5037514a879d', 'hex'))
|
||||
})
|
||||
Loading…
Reference in a new issue