-5
我想在Android中使用AES 128位加密简单解密加密的ts文件。 我知道,如果我玩m3u8,那么Player可以照顾这个,但我希望直接访问ts,并希望单独播放这些,因此需要在播放之前解密它。解密AES加密.ts文件
让我知道适用于相同的Java类。
我想在Android中使用AES 128位加密简单解密加密的ts文件。 我知道,如果我玩m3u8,那么Player可以照顾这个,但我希望直接访问ts,并希望单独播放这些,因此需要在播放之前解密它。解密AES加密.ts文件
让我知道适用于相同的Java类。
假设你知道这是用于对文件进行加密密钥,您可以使用以下命令:
public static void decrypt() {
try {
Log.d(C.TAG, "Decrypt Started");
byte[] bytes = new BigInteger(<your key>, 16).toByteArray();
FileInputStream fis = new FileInputStream(<location of encrypted file>);
FileOutputStream fos = new FileOutputStream(<location of decrypted file>);
SecretKeySpec sks = new SecretKeySpec(bytes, <encryption type>);
Cipher cipher = Cipher.getInstance(<encryption type>);
cipher.init(Cipher.DECRYPT_MODE, sks);
CipherInputStream cis = new CipherInputStream(fis, cipher);
int b;
byte[] d = new byte[8];
while ((b = cis.read(d)) != -1) {
fos.write(d, 0, b);
}
fos.flush();
fos.close();
cis.close();
Log.d(C.TAG, "Decrypt Ended");
} catch (NoSuchAlgorithmException e) {
Log.d(C.TAG, "NoSuchAlgorithmException");
e.printStackTrace();
} catch (InvalidKeyException e) {
Log.d(C.TAG, "InvalidKeyException");
e.printStackTrace();
} catch (IOException e) {
Log.d(C.TAG, "IOException");
e.printStackTrace();
} catch (NoSuchPaddingException e) {
Log.d(C.TAG, "NoSuchPaddingException");
e.printStackTrace();
}
}
<
和>
为您的文件中的相应事物之间更换的一切,你是好走。
谢谢你的代码片段。我对AES有IV,所以可以用作Key吗?我是AES新手,请告诉我。 – PGU
所以这意味着我不能在将来因为我过去的错误而提问? – PGU
不,这意味着人们不会被鼓励来帮助你。 –
那么为什么要再次投票呢? – PGU