节点使用公共证书加密

时间:2016-05-17 19:55:32

标签: php node.js ssl encryption

我正在尝试相当于php seal函数。 我所拥有的是一个要加密的字符串,一个公钥和一个随机生成的密钥,我必须使用' rs4'来编码字符串。算法

到目前为止,我设法使用加密函数对字符串进行编码:

var password = crypto.randomBytes(128);
var cipher = crypto.createCipher('rc4', password);
var crypted = cipher.update(text,'utf8','base64');
crypted += cipher.final('base64');

但不知何故,我需要在加密中加入公共x509证书。

有人能指出我正确的方向吗?

2 个答案:

答案 0 :(得分:0)

RC4不是公钥加密系统。您正在寻找(按照优先顺序):

  • 节点钠
  • RSAES-OAEP与MGF1 + SHA256和e = 65537

此外,对于秘密密钥加密,请勿使用RC4。

答案 1 :(得分:0)

最后我没有找到任何在节点中实现相同加密的方法,所以我只是从发送数据加密的节点调用了一个php cli脚本,并读取了加密base64结果的stdout :(