【问题标题】:PKCS#7 data payload unpacking with NodeJS?PKCS#7 使用 NodeJS 解包数据有效负载?
【发布时间】:2012-10-18 14:29:02
【问题描述】:

我正在开发适用于 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

NodeJS 中的等价物是什么? 这个想法是访问包含 xml plist 的p7sign.data

这是否可以使用crypto 或外部节点库(ursa 等)?

【问题讨论】:

  • 您找到解决方案了吗?您是否使用加密来实现您的目标?

标签: ios node.js encryption cryptography pkcs#7


【解决方案1】:

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

$ openssl smime -verify -in FILE -inform der 

openssl 命令必须是苹果提供的(不是来自端口或自制软件),以便它可以在钥匙串中找到签名证书和 CA。

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

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

【讨论】:

  • -inform der 以防文件为 DER 格式(如 .mobileprovision 文件),否则使用 smimepem
  • node-forge此时不做pkcs7验证。
猜你喜欢
  • 2011-05-17
  • 1970-01-01
  • 2011-10-04
  • 2011-09-30
  • 1970-01-01
  • 2019-07-08
  • 1970-01-01
  • 2016-05-24
  • 2017-11-30
相关资源
最近更新 更多