我使用node-RSA对node JS中的文本进行加密,并将其传递给客户端(Javascript),其中使用了JSEncrypt库,但解密后的消息始终为空。公钥和私钥在nodeJS服务器上开发,用公钥加密,在javascript端用私钥解密。
这是不正确的!
谁能告诉我应该在javascript中使用哪个库来解密来自nodejs的消息(使用Node-RSA).OR还有其他想法吗!!
我们已经在使用HTTPS了,但是我们的用例是这样的:我们在它之间有一个代理。它不受信任的代理,我们被迫使用它..所以我们想使用加密解密..虽然我们在客户端有值得信任的人,所以我们在客户端解密。
发布于 2017-05-31 17:45:28
我在javascript (客户端)使用了CryptoBrowserify加密。
import CryptoBrowserify from 'crypto-browserify';
public encryptStringWithRsaPublicKey(data: string, publicKey: string): string {
var encrypted = CryptoBrowserify.publicEncrypt( publicKey,new Buffer(data));
return encrypted.toString('Base64');
}和crypto在Nodejs上解密
decrypt = function(privateKey, data) {
var crypto = require('crypto');
var buffer = new Buffer(data, 'base64');
var decrypted = crypto.privateDecrypt(privateKey, buffer);
return decrypted.toString('utf8')
};发布于 2017-03-21 20:50:03
Nodejs有自己的加密库,经过优化和测试,推荐使用:https://nodejs.org/api/crypto.html
https://stackoverflow.com/questions/42927598
复制相似问题