0

使用 node-forge 生成 smime (CMS) 签名在 Cloudflare Worker Editor 上运行良好,但是当我部署代码时,出现 CPU 超时(错误 1102)。所以,我假设,当我打电话signature.sign({ detached: true });时,生成签名只需要时间。我正在使用Business: 50ms.

所以,

  1. 是否可以通过设置任何属性来增加节点锻造过程?
  2. 除了 node-forge 之外,我还有其他选择吗(期待一些例子,我研究 pkijs)

寻找指导方针。

4

2 回答 2

2

不幸的是,在纯 JavaScript 中实现的加密算法可能运行非常缓慢,并且超过了 Workers 施加的当前 CPU 时间限制。

相反,请尝试使用 WebCrypto API。Workers 支持一些 WebCrypto,特别是它支持以RSASSA-PKCS1-v1_5格式生成签名。根据 Google 的快速搜索,看起来这可能是您对 S/MIME 所需要的。

于 2019-01-28T19:06:16.787 回答
0

CloudFlare 最近向工作人员添加了WebCrypto。您真的不想使用 JS 加密,Forge 充满了它,请参阅Javascript Cryptography Considered Harmful了解原因。

如果你想要的是一个纯加密签名,你甚至不需要 PKIjs,直接使用

如果您真的想要 S/MIME,请查看PKIjs并使用 WebCrypto。S / MIME 示例

于 2019-02-10T00:45:05.570 回答