我有一個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