當我嘗試使用bouncycastle加密/解密PDF文件時,這給了我一個空的pdf(與184Ko大小)。該代碼完美地與文本文件一起工作。但沒有辦法用PDF文件。 任何人都有一個想法如何在Java中加密/解密PDF文件?PDF加密/解密不工作
波紋管,我使用的加密代碼, 我得到一個異常時,我加密PDF文件(java.lang.ArrayIndexOutOfBoundsException:用於RSA塊太多數據)在這一行密文= cipher.doFinal(輸入):
Security.addProvider(new org.bouncycastle.jce.provider.BouncyCastleProvider());
byte[] input = acVote;
byte[] cipherText = null;
Cipher cipher = null;
try {
cipher = Cipher.getInstance("RSA/ECB/OAEPPadding", "BC");
SecureRandom random = new SecureRandom();
//do encryption
cipher.init(Cipher.ENCRYPT_MODE, pubKey, random);
cipherText = cipher.doFinal(input);
} catch (Exception ex) {
log.error("Exeption Message : " + ex);
}
當我加密一個.txt文件,它的工作原理...
**(A)**您不顯示任何代碼。因此,我們不知道您嘗試了什麼。那麼我們怎麼能說出那個錯誤呢? **(B)**您談論PDF加密。您的意思是使用PDF規範中提到的加密算法之一進行加密,因此您可以使用標準PDF查看器進行解密?或者你的意思是PDF不可知的加密? – mkl
PDFencryption作爲字符串加密... 正如我所說的這項工作的.txt文件,但不是.pdf文件... –
PDFs不是字符串,不是字符數據,它們是二進制文件。因此,使用用於文本字符串的代碼可能會導致PDF失敗。 – mkl