【发布时间】:2011-05-19 06:22:33
【问题描述】:
我正在为我的应用程序 RSA 加密使用 bouncycastle 库。 我的问题是:当我使用相同的密钥对一个明文进行两次加密时,它会导致两个不同的密文,所以在 bouncycastles 实现中必须有某种随机化(RSA 本身不是随机的,所以 enc(a, k)总是一样的)。
谁能告诉我,这是怎么做到的?我发现了一些关于加密致盲的信息,但对我来说,我似乎必须为此使用一些致盲引擎。
这里是我的源代码:
private byte[] encRSA(byte[] in, java.security.PublicKey publicKey) {
try {
Cipher rsaCipher = Cipher.getInstance("RSA/NONE/PKCS1Padding", "BC");
rsaCipher.init(Cipher.ENCRYPT_MODE, publicKey);
rsaCipher.update(in);
return rsaCipher.doFinal();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
谁能帮帮我?
谢谢!!!
【问题讨论】:
标签: java cryptography rsa bouncycastle