Javascript 在PHP中使用EasyRSA加密,在JS中使用节点RSA解密

Javascript 在PHP中使用EasyRSA加密,在JS中使用节点RSA解密,javascript,php,node.js,encryption,cryptography,Javascript,Php,Node.js,Encryption,Cryptography,问题 我正在尝试创建一个简单的无信任文件共享应用程序。我使用EasyRSA()创建一个密钥对,然后用公钥加密我的数据。我将私钥发送到我的JS,在这里我使用节点RSA()。在这里,我尝试使用先前创建的私钥进行解密。但这种情况会发生: 错误 Uncaught Error: Error during decryption (probably incorrect key). Original error: Error: Incorrect data or key at NodeRSA.modul

问题

我正在尝试创建一个简单的无信任文件共享应用程序。我使用EasyRSA()创建一个密钥对,然后用公钥加密我的数据。我将私钥发送到我的JS,在这里我使用节点RSA()。在这里,我尝试使用先前创建的私钥进行解密。但这种情况会发生:

错误

Uncaught Error: Error during decryption (probably incorrect key). Original error: Error: Incorrect data or key
    at NodeRSA.module.exports.NodeRSA.$$decryptKey (drop.js:23265)
    at NodeRSA.module.exports.NodeRSA.decrypt (drop.js:23213)
    at window.onload (drop.js:22270)
我的JS代码如下所示:

var NodeRSA = require('node-rsa');
window.onload = function() {
    var key_val = $('#key').val();
    var ciphertext = $('#encrypted').val();
    var key = new NodeRSA();
    key.importKey($('#key').val(), 'pkcs1');
    var ciphertext_base = key.encrypt(ciphertext, 'base64');
    var decrypted_base = key.decrypt(btoa(ciphertext));
    console.log(decrypted);

}

我认为这与用于创建密钥的格式/密钥大小/算法之间的不兼容有关。如果有人能帮我“破解”并使其生效,我将非常感谢您。

您没有提供足够的信息。。。PHP代码?你的钥匙是什么格式的?给出输入和输出数据等示例。对于初学者,EasyRSA不使用PKCS1填充。另一方面,实际的加密是。