使用NodeJS解压缩PKCS#7数据负载?

Oli*_*ier 5 encryption cryptography node.js ios pkcs#7

我正在为iOS开发MDM NodeJS服务器.在Apple文档中,给出了以下ruby代码:

  p7sign = OpenSSL::PKCS7::PKCS7.new(req.body)
  store = OpenSSL::X509::Store.new
  p7sign.verify(nil, store, nil, OpenSSL::PKCS7::NOVERIFY)
  signers = p7sign.signers
Run Code Online (Sandbox Code Playgroud)

NodeJS中的等价物是什么?我们的想法是访问p7sign.data包含xml plist的内容.

是否可以使用其中一个crypto或外部节点lib(ursa等)?

Alb*_*rto 0

一个好的选择是使用 child_process 直接调用 openssl。我这样做是为了验证 iOS .mobileprovision 文件。

$ openssl smime -verify -in FILE -inform der 
Run Code Online (Sandbox Code Playgroud)

openssl 命令需要由 Apple 提供(而不是来自 ports 或 homebrew),以便它可以在钥匙串中找到签名证书和 CA。

我自己还没有尝试过,但是node-forge 库包含许多加密算法的实现。

https://npmjs.org/package/node-forge#pkcs7