相关疑难解决方法(0)

尝试使用私钥解密消息时出现node-rsa错误

所以我一直在尝试使用带有node-rsa的节点和带有jsencrypt的 javascript 来创建一个网站(用于分配),其中javascript客户端获取服务器生成的公钥(node-rsa),加密消息(jsencrypt)用户已输入,将其发送到服务器并让服务器对其进行解密(node-rsa).密钥的生成起作用,加密工作但解密不起作用.当我启动节点脚本时,我执行以下加密...

var NodeRSA = require('node-rsa');
var myDecrypter = new NodeRSA({b: 512});
Run Code Online (Sandbox Code Playgroud)

当客户端请求密钥(我使用快速)时,运行以下内容.

app.get('/getPublicKey', function(req, res){
    var publicKeyJson = {"Key": ""};
    console.log(myDecrypter.exportKey('public'));
    publicKeyJson.Key = myDecrypter.exportKey('public');
    res.json(JSON.stringify(publicKeyJson));
});
Run Code Online (Sandbox Code Playgroud)

然后客户端像这样保存该密钥......

var myEncrypter = new JSEncrypt();
var myJson  = "";
$.getJSON( "getPublicKey", function( data ) {
    myJson = JSON.parse(data).Key;
        setKey();
});
function setKey() {
    myEncrypter.setPublicKey(myJson);
}
Run Code Online (Sandbox Code Playgroud)

当我在客户端加密并发送消息时,我这样做......

function messageEncrypt() {
    message = document.getElementById("message").value;
    var encrypted = myEncrypter.encrypt(message);
    myMessage = {"username": "", "userId": 0.0, "message": ""};
    myMessage.username = me.username;
    myMessage.userId …
Run Code Online (Sandbox Code Playgroud)

javascript encryption cryptography node.js

6
推荐指数
1
解决办法
7889
查看次数

标签 统计

cryptography ×1

encryption ×1

javascript ×1

node.js ×1