我需要一个小问题。如何修复该代码以便我也可以在 android 中使用它。我只需要从 android projet 的 assets 文件夹中加载一个文件,解密它并显示文件的大小和需要多长时间到应用程序来解密它。
代码 :
package decryption;
import java.io.*;
import javax.crypto.*;
import javax.crypto.spec.*;
public class Decryption {
public static void main(String args[]) throws Exception {
File file = new File("ecryption.pdf");
System.out.println(file.getAbsolutePath());
System.out.println("user.dir is: " + System.getProperty("user.dir"));
Cipher cipher = Cipher.getInstance("AES/CBC/NoPadding");
SecretKeySpec keySpec = new SecretKeySpec("01234567890abcde".getBytes(), "AES");
IvParameterSpec ivSpec = new IvParameterSpec("fedcba9876543210".getBytes());
cipher.init(Cipher.DECRYPT_MODE, keySpec, ivSpec);
FileInputStream fis = new FileInputStream(new File("ecrypted.pdf"));
long start = System.currentTimeMillis();
System.out.print(start+" ");
CipherInputStream cis = new CipherInputStream(fis, cipher);
FileOutputStream fos = new FileOutputStream(new File("decrypted.pdf"));
long end = System.currentTimeMillis();
System.out.print(end);
byte[] b = new byte[8];
int i;
while ((i = cis.read(b)) != -1) {
fos.write(b, 0, i);
}
fos.flush(); fos.close();
cis.close(); fis.close();
}
}