NodeJS - 从P7B文件获取证书链

问题描述 投票:0回答:1

我正在尝试使用CMS base64编码的字符串,将其转换为pkcs7文件并使用javascript / nodejs提取叶子和中间证书,类似于以下openssl命令:

openssl pkcs7 -print_certs -in certificate.p7b -out certificate.cer

我几乎阅读了所有文章,并阅读其他语言的解决方案,但不是节点。我知道你可以使用node-forge实现我需要的东西,但是node-forge不支持ECC算法。任何人都知道任何其他解决方案/ npm包可以帮助我实现这一目标吗?请帮我。我对此很新。

node.js cryptography pkcs#7 ecdsa p7b
1个回答
0
投票

你看到了Node.js的PKI.js吗?它是一个纯JavaScript库,用于实现PKI应用程序中使用的格式。它基于W3C Web Cryptography API,完全支持CMS消息中的所有“Suite B”算法。 OP提交的代码段:

const cmsSignedBuffer = stringToArrayBuffer(fromBase64(token.signature)); 
const asn1 = asn1js.fromBER(cmsSignedBuffer); 
const cmsContentSimpl = new pkijs.ContentInfo({ schema: asn1.result }); 
const cmsSignedSimpl = new pkijs.SignedData({ schema: cmsContentSimpl.content })

另一种方法是使用像openssl-nodejs这样的openssl包装器。包装器只是生成一个子进程来调用openssl。因此,必须在部署Node.js应用程序的系统上安装openssl。

© www.soinside.com 2019 - 2024. All rights reserved.