我一直在尝试使用exoplayer在我的服务器上传输加密的视频。我想出了关于自定义数据源的所有信息,它正在传输其他未加密的在线视频,但当我尝试解密视频时,我得到了一个错误,我只知道密码字符串(这是"abc123“,我也有这个的md5 ),我不知道我应该如何准确地将其转换为密钥,然后使用它与我的密码错误1)当我使用密码字符串作为密钥时,我得到了不支持的密钥大小错误,2)当我使用md5作为密钥时,我得到了UnrecognizedInputFormatException
String sb="abc123";
byte []b=sb.getBytes();
mSecretKeySpec = new SecretKeySpec(b,"AES");
mIvParameterSpec = new IvParameterSpec("abc123".getBytes());
try {
mCipher = Cipher.getInstance("AES/CBC/NoPadding");
mCipher.init(Cipher.DECRYPT_MODE, mSecretKeySpec,mIvParameterSpec);
} catch (Exception e) {
System.out.println(e.getMessage()+e.getCause()+"fuckeddd");
e.printStackTrace();
}发布于 2019-04-16 06:54:55
“abc123”不是有效的加密密钥。加密密钥是一个16字节的二进制值。
https://stackoverflow.com/questions/55697392
复制相似问题