BadPaddingException:尝试解密字节数组时出现解密错误?

时间:2017-05-29 09:36:04

标签: java encryption rsa badpaddingexception

public static String decrypt(byte[] text, PrivateKey key) {
    byte[] decryptedText = null;
    try {
        final Cipher cipher = Cipher.getInstance("RSA");
        cipher.init(Cipher.DECRYPT_MODE, key);
        decryptedText = cipher.doFinal(text);
    } catch (Exception e) {
        e.printStackTrace();
    }

    return new String(decryptedText);
}

有我的代码,由于某种原因我得到了这个错误,我认为这与使用Cipher类的默认构造函数有关。

为什么我收到此错误?

1 个答案:

答案 0 :(得分:0)

为了获得合理的结果,您通常不想加密任意个字节数。

相反:您放大使用 padding 加密的字节数。

请参阅&#34上的here;为什么要填充?"