我正在尝试使用 javascript(使用 crypto-js 和 jsbn 库)加密/解密 RSA 中的长消息。
到目前为止,要加密/解密短消息,我有以下代码:
function encrypt(signedCert, msg) {
key = new RSAKey();
m = asciiToHex(msg);
m = new BigInteger(m, 16)
//n and e retrieved from the digital certificate
key.setPublic(signedCert.msg.subject.pk.n, signedCert.msg.subject.pk.e);
var ctxt = key.doPublic(m).toString(16);
return ctxt;
}
function decrypt(sk, ctxt) {
key = new RSAKey();
c = new BigInteger(ctxt, 16);
key.setPrivate(sk.n, sk.e, sk.d);
var ptxt = key.doPrivate(c).toString(16);
var ptxt = hexToAscii(ptxt);
return ptxt;
}
当消息很短时,这就像一个魅力。但是,对于我的生活,当消息很长时,我无法弄清楚如何加密/解密!
谁能帮忙?谢谢 :)