我使用triple des在android中加密了一个文件。使用php将此文件上载到服务器。必须编写php脚本来解密同一个文件。
php新手,任何帮助都会受到php脚本的赞赏。
public void encrypt(InputStream in, OutputStream out) throws Exception {
final SecretKey key = new SecretKeySpec(keyBytes, "DESede");
final IvParameterSpec param = new IvParameterSpec(iv);
final Cipher cipher = Cipher.getInstance("DESede/CBC/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, key, param);
// Read in the cleartext bytes and write to out to encrypt
int numRead = 0;
while ((numRead = in.read(buf)) >= 0) {
byte[] output = cipher.doFinal(buf, 0, numRead);
if(output != null) {
byte[] enc = Base64.encode(output, 0);
out.write(enc);
}
}
out.close();
}
我正在传递keyBytes
和iv
的十六进制值的硬编码值。
答案 0 :(得分:1)
所以,似乎你将不得不使用mcrypt扩展。 mcrypt扩展支持TRIPLEDES。
<强> Installation 强>
mcrypt支持的密码的List。
以下是一些mcrypt examples。
要解密的mcrypt函数是here。
我目前正在学习android和高级php。如果您是php的新手,我强烈建议您访问php.net。这对我很有帮助。