jose 中是否有任何实用程序可以将 Ed25519 的密钥从 PEM 转换为 JWK?

use*_*363 4 jose

Ed25519PEM密钥对生成如下:

-----BEGIN PRIVATE KEY-----
NC4CAQAwBQYcK2VwBCIEIIWUb0/MoKaBxQkmmPlHIGyPfDQb/U3D6jQ+gMUGtvpa
-----END PRIVATE KEY-----

-----BEGIN PUBLIC KEY-----
NCowBQYDK2VwAyEAWFnlEbTVgD4TilnSzyDmZK16dm1IeQURtHFcLhSwmDo=
-----END PUBLIC KEY-----
Run Code Online (Sandbox Code Playgroud)

在 中jose 3.11.1parseJwk接受JWK输入,用于生成用于签名和验证的密钥。将密钥jose转换为在第三方实用程序中使用或与第三方实用程序一起使用是否有实用程序?我没有找到一个项目。PEMJWKpaseseJwknodejs

小智 7

要获取 KeyObject,您不需要 JWK 格式的密钥。它与节点的KeyObject实例一起使用。所以你可以轻松做到

const { createPublicKey, createPrivateKey } = require('crypto')

const publicKey = createPublicKey(pemPublicKey)
const privateKey = createPrivateKey(pemPrivateKey)
Run Code Online (Sandbox Code Playgroud)

这记录在库在其文档中使用的KeyLike接口中。