我有一个C#.net应用程序与我反编译。提斯应用程序使用的登录密码cryption: http://www.obviex.com/samples/Sample.aspx?Source=EncryptionWithSaltCS&Title=Encryption%20With%20Salt&Lang=C%23C#RijndaelEnhanced解密与php mcrypt
C#代码
rijndaelKey = new Krypto.RijndaelEnhanced(passPhrase, initVector);
PlainPassword = DiverseVariablen.rijndaelKey.Decrypt(Conversions.ToString(row["ProjectKennwort"])))
我有通行证和iv。
我如何解密密码在PHP? 我尝试了几种mcrypt_decrypt()的变体。
Didt somene有个想法吗?
友好的问候和非常感谢。
谢谢答案:但它不帮助。我试过了,但它力度不够。我混淆的是,C#类需要16字节IV和256字节的密钥。但一个256字节的密钥需要在PHP 32字符四。 – GreenRover 2011-05-04 07:56:43
你还在使用mcrypt不是吗?就像我说的,我会尝试使用phpseclib的Crypt_AES。使用起来更容易。 mcrypt也可以使用,但它会以令人困惑的方式进行操作。像mcrypt_enc_get_iv_size(),iirc,总是说32,对于AES。这是因为mcrypt实现Rijndael,而不是AES和Rijndael支持可变块大小,其中最大的是256位。如果你使用128位密钥,它应该仍然可以工作,尽管那个函数说了什么。或者你可以只使用phpseclib的Crypt_AES,并消除头痛... – 2011-05-04 14:12:05
我试了两个。在这里我的phpseclib测试http://pastebin.com/SKPG7gR2 – GreenRover 2011-05-05 07:09:46