mirror of
https://github.com/danbulant/jose
synced 2026-05-22 13:58:47 +00:00
chore: update dev deps
This commit is contained in:
parent
3993462e8c
commit
455f43e656
4 changed files with 32 additions and 26 deletions
12
package.json
12
package.json
|
|
@ -365,24 +365,24 @@
|
|||
"prettier": "npx prettier --loglevel silent --write ./test ./src ./tools ./test-browser ./test-deno"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/node": "^16.6.2",
|
||||
"@types/node": "^16.7.6",
|
||||
"ava": "^3.15.0",
|
||||
"bowser": "^2.11.0",
|
||||
"c8": "^7.8.0",
|
||||
"esbuild": "^0.12.21",
|
||||
"esbuild": "^0.12.24",
|
||||
"glob": "^7.1.7",
|
||||
"karma": "^6.3.4",
|
||||
"karma-browserstack-launcher": "1.6.0",
|
||||
"karma-qunit": "^4.1.2",
|
||||
"karma-summary-reporter": "^2.0.2",
|
||||
"nock": "^13.1.1",
|
||||
"nock": "^13.1.3",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"prettier": "^2.3.2",
|
||||
"qunit": "^2.16.0",
|
||||
"tar": "^6.1.10",
|
||||
"tar": "^6.1.11",
|
||||
"timekeeper": "^2.2.0",
|
||||
"typedoc": "^0.21.6",
|
||||
"typedoc": "^0.21.9",
|
||||
"typedoc-plugin-markdown": "^3.10.4",
|
||||
"typescript": "^4.3.5"
|
||||
"typescript": "^4.4.2"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -56,14 +56,12 @@ export const generateEpk: GenerateEpkFunction = async (key: unknown) => {
|
|||
throw new TypeError(invalidKeyInput(key, 'CryptoKey'))
|
||||
}
|
||||
|
||||
return (
|
||||
await crypto.subtle.generateKey(
|
||||
// @deno-expect-error
|
||||
{ name: 'ECDH', namedCurve: (<EcKeyAlgorithm>key.algorithm).namedCurve },
|
||||
true,
|
||||
['deriveBits'],
|
||||
)
|
||||
).privateKey
|
||||
return (<{ publicKey: CryptoKey; privateKey: CryptoKey }>await crypto.subtle.generateKey(
|
||||
// @deno-expect-error
|
||||
{ name: 'ECDH', namedCurve: (<EcKeyAlgorithm>key.algorithm).namedCurve },
|
||||
true,
|
||||
['deriveBits'],
|
||||
)).privateKey
|
||||
}
|
||||
|
||||
export const ecdhAllowed: EcdhAllowedFunction = (key: unknown) => {
|
||||
|
|
|
|||
|
|
@ -120,7 +120,7 @@ export async function generateKeyPair(alg: string, options?: GenerateKeyPairOpti
|
|||
throw new JOSENotSupported('unsupported or invalid JWK "alg" (Algorithm) Parameter value')
|
||||
}
|
||||
|
||||
return <Promise<CryptoKeyPair>>(
|
||||
return <Promise<{ publicKey: CryptoKey; privateKey: CryptoKey }>>(
|
||||
crypto.subtle.generateKey(algorithm, options?.extractable ?? false, keyUsages)
|
||||
)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -110,20 +110,28 @@ function subtleMapping(jwk: JWK): {
|
|||
|
||||
const parse: JWKParseFunction = async (jwk: JWK): Promise<CryptoKey> => {
|
||||
const { algorithm, keyUsages } = subtleMapping(jwk)
|
||||
let format = 'jwk'
|
||||
let keyData: JWK | Uint8Array = { ...jwk }
|
||||
delete keyData.alg
|
||||
if (algorithm.name === 'PBKDF2') {
|
||||
format = 'raw'
|
||||
keyData = base64url(jwk.k!)
|
||||
}
|
||||
return crypto.subtle.importKey(
|
||||
// @deno-expect-error
|
||||
format,
|
||||
keyData,
|
||||
// @deno-expect-error
|
||||
const rest: [RsaHashedImportParams | EcKeyAlgorithm | Algorithm, boolean, KeyUsage[]] = [
|
||||
algorithm,
|
||||
jwk.ext ?? false,
|
||||
<KeyUsage[]>jwk.key_ops ?? keyUsages,
|
||||
]
|
||||
|
||||
if (algorithm.name === 'PBKDF2') {
|
||||
return crypto.subtle.importKey(
|
||||
'raw',
|
||||
base64url(jwk.k!),
|
||||
...rest,
|
||||
)
|
||||
}
|
||||
|
||||
const keyData: JWK = { ...jwk }
|
||||
delete keyData.alg
|
||||
return crypto.subtle.importKey(
|
||||
// @deno-expect-error
|
||||
'jwk',
|
||||
keyData,
|
||||
...rest,
|
||||
)
|
||||
}
|
||||
export default parse
|
||||
|
|
|
|||
Loading…
Reference in a new issue