有手
2016-03-06 07:00php 3des加密.net无法解析
2因项目需要,需要与对方的接口对接 ,对方是.net开发的,需要与我们的php对接,但是php 3des加密后,.net的无法解析,且加密后的字符串与.net加密后的字符串,前半部分一样,后半部分就不一样!,也就是说加密后的字符串不相等,有高手吗,高分求解?
.net程序:
public static string Encrypt3DES(string a_strString, string a_strKey)
{
TripleDESCryptoServiceProvider DES = new TripleDESCryptoServiceProvider();
DES.Key = ASCIIEncoding.ASCII.GetBytes(a_strKey);
DES.Mode = CipherMode.ECB;
ICryptoTransform DESEncrypt = DES.CreateEncryptor();
byte[] Buffer = ASCIIEncoding.ASCII.GetBytes(a_strString);
return Convert.ToBase64String(DESEncrypt.TransformFinalBlock(Buffer, 0, Buffer.Length));
}
我写的php加密程度:
function encrypt($string) {
$key = "05217c03d7b74fe581fc449b";
$cipher_alg = MCRYPT_TRIPLEDES;
$iv = mcrypt_create_iv(mcrypt_get_iv_size($cipher_alg,MCRYPT_MODE_ECB), MCRYPT_RAND);
$encrypted_string = mcrypt_encrypt($cipher_alg, $key, $string, MCRYPT_MODE_ECB, $iv);
return base64_encode($encrypted_string);//转化成16进制
}
- 点赞
- 回答
- 收藏
- 复制链接分享
1条回答
为你推荐
- C#和PHP中的TripleDES加密不一样(PKCS7,ECB)?
- cryptography
- encryption
- php
- c#
- 4个回答
- PHP中的C#TripleDES ECB加密
- encryption
- php
- c#
- 1个回答
- JavaScript中的三重DES加密和PHP中的解密
- javascript
- encryption
- php
- 1个回答
- 使用openssl des-ede从命令行解密,零填充和原始数据
- 3des
- encryption
- php
- 1个回答
- Java和PHP对称加密(DES)
- java
- des
- encryption
- php
- 3个回答