的NodeJS。异步加密和解密

时间:2015-07-01 14:01:42

标签: node.js asynchronous encryption

我想知道为什么没有任何用于加密的异步功能&解析本机nodejs加密模块或我找不到的任何其他模块。 对称或不对称。

我想在服务器请求上使用此功能,并担心如果它不是异步的话,会阻止和减慢大量请求的服务器。

也许我的担心太多了,加密/解密过程的强度也不算太大。

感谢。

2 个答案:

答案 0 :(得分:1)

您必须获得异步加密/解密的唯一可能性是将这些操作委托给另一个进程。您可以在nodejs中执行的唯一异步操作是I / O操作,而纯计算操作将阻止您的过程直到完成。请记住,节点是单线程的。

答案 1 :(得分:0)

虽然Node的事件循环是单线程的,但Node可以轻松调用在Node的线程池中运行的C绑定。这为您提供了两全其美的优势:单线程控制平面,多核数据平面。

您可以使用crypto-async模块在​​Node的线程池中异步执行零拷贝密码,哈希和HMAC操作,以实现多核吞吐量,而不会阻塞事件循环。