C#和PHP之间的不同RC2加密结果
我试图用PHP实现与C代码相同的结果。加密算法是RC2,对.NET使用C#和PHP之间的不同RC2加密结果,c#,php,encryption,rc2-cipher,C#,Php,Encryption,Rc2 Cipher,我试图用PHP实现与C代码相同的结果。加密算法是RC2,对.NET使用RC2CryptoServiceProvider,对PHP使用mcrypt() 这是C部分: 这是PHP部分: function encryptRC2($datastring, $keystring, $ivstring) { $encrypted = mcrypt_encrypt(MCRYPT_RC2, $keystring, $datastring, MCRYPT_MODE_CBC, $ivstring);
RC2CryptoServiceProvider
,对PHP使用mcrypt()
这是C部分:
这是PHP部分:
function encryptRC2($datastring, $keystring, $ivstring) {
$encrypted = mcrypt_encrypt(MCRYPT_RC2, $keystring, $datastring, MCRYPT_MODE_CBC, $ivstring);
return base64_encode($encrypted);
}
我试图:
- 使用与C端匹配的
强制编码mb_convert_string()
- 更改密码模式(即使C#的默认值为CBC,也不行)
- 尝试
abase64\u encode()
stringstrtoupper()
我不能改变C#算法,我需要用PHP匹配相同的结果 请向我们展示一些输入、输出和关键值。我们中的一些人不会有一个C#和PHP编程环境。请向我们展示一些输入、输出和键值。我们中的一些人不会有一个C#和PHP编程环境。
function encryptRC2($datastring, $keystring, $ivstring) {
$encrypted = mcrypt_encrypt(MCRYPT_RC2, $keystring, $datastring, MCRYPT_MODE_CBC, $ivstring);
return base64_encode($encrypted);
}