gpt4 book ai didi

javascript - RSA 使用 jsencrypt 加密并使用 bouncy caSTLe 解密?

转载 作者:行者123 更新时间:2023-11-30 00:10:29 25 4
gpt4 key购买 nike

对了,我有个小问题。我正在使用 Javascript 库 (jsencrypt) 在浏览器中加密消息。然后将此消息发送到后端,在后端使用 Java 库 (bouncycaSTLe) 对其进行解密。我的问题是虽然我可以使用这两个库来加密和解密消息,但它们似乎不想一起工作。因此,当我在浏览器中加密我的消息并将其发送到后端时,我最终得到了乱码。有人知道这里发生了什么吗?

JSENCRYPT

var text = "This is another msg!";
var pubkey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwyTZf5gRWJdEevtK7sJSz14lhs1Jw7+aFhGtr4cbDGxdiXH8J+BwuYmBc6QFMhRw7AeYcgkx9zPb3SICzr+oK17RMA6T66dH+GPXp75LFUmfONfk2JdSeO80mMODGctSuefWDvoQ24Cq0Bz+ysrhP7hRqvJso5a0GMNPwt8ErtWfz4HZjSsaaZ7gXga2h5dq1OTcGNfevkDN9CJtFW/0Wwb/F6cnXngVHE41rsN4POUB3IWcX2CrCGxSraa+xsT/P7AJ8HRJ4wcjl9G2K/rlHJ8ZXZKlIuWwEzx0/F0IjE+S93tLpDgt6YJxjWqYqjL2uuJAGmEU323+PWA3jFTC+QIDAQAB";

var encrypt = new JSEncrypt();
encrypt.setPublicKey(pubkey);
var ciphertext = encrypt.encrypt(text);
console.log("ciphertext : " + ciphertext);

var decrypt = new JSEncrypt();
decrypt.setPrivateKey($("#privkey").val());
var plaintext = decrypt.decrypt(ciphertext);
console.log("plaintext : " + plaintext);

弹跳城堡

String cipherText = "jQ/I+oyyIfG5ARIHZsa6MfxwHciCt+3p6l+bLh4NPinq2s8eDjbO9O8abhVt2xuBQQcPAIaqbiP3Y3vRFYLOD2O+inKWiL1SpSBxvUb0XlWMgLmOqWUL6w6sL2iEla3i5EbdlrkK0uLA7QOUc6/fGVyLVe8VL7Vv4BGlo/cxR2FN74HK4MtLFRNaLKejwD6WbCNQoz4sIMA/Ez8GRSVEMyeYVZoWELShvyIRCqVADboAeuEP5l+oFlzgQfW6HFdpPnX+9TnHrbezdWhXiuJiD1Mq4VTicsya50MNcXJuPDV7NINYZs72UCS8NTYvfVkFc2lO7EUlDvvJ7Ns4wWuuWQ==";

PemReader pemReader = new PemReader(new InputStreamReader(new FileInputStream("priv.pem")));
PemObject pemObject = null;

try
{
pemObject = pemReader.readPemObject();

} finally {

pemReader.close();
}

PrivateKey privateKey = EncryptionUtil.generatePrivateKey(pemObject.getContent());
byte[] plainText = EncryptionUtil.asymDecrypt(privateKey, cipherText.getBytes());
System.out.println(new String(plainText));

最佳答案

@EbbeM.Pedersen

You are properly getting different default padding modes. Keywords like RSA-OAEP padding & PKCS#1 padding comes to mind.

确实是这个问题。我将 bouncycaSTLe 中的默认填充更改为 PKCS#1,现在一切正常。

感谢一百万。

关于javascript - RSA 使用 jsencrypt 加密并使用 bouncy caSTLe 解密?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36696854/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com