且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

加密在PHP中,解密在C#中使用AES / Rijndael算法(WP7 / Silverlight的)

更新时间:2023-02-17 17:06:51

因此,这里的答案是:

我DROP掉了MD5屁滚尿流PHP和C#,和他们现在工作正常。

I droped the MD5 crap out of PHP and C#, and they are now working properly.

万一你丢弃在这里寻找对于同样的答案,这里是一个示例代码。不要忘了让自己的密钥和IV

Just in case you dropped here looking for the same answer, here is a sample code. Don't forget to make your own key and iv (although those bellow will work, is not recommended to use!)

PHP(虽然这些波纹管会的工作,不建议使用!):

PHP:

function encrypt128($message) {
    $vector = "0000000000000000";
    $key = "00000000000000000000000000000000";

    $block = mcrypt_get_block_size('rijndael_128', 'cbc');
    $pad = $block - (strlen($message) % $block);
    $message .= str_repeat(chr($pad), $pad);

    $cipher = mcrypt_module_open(MCRYPT_RIJNDAEL_128, '', 'cbc', '');
    mcrypt_generic_init($cipher, $key, $vector);
    $result = mcrypt_generic($cipher, $message);
    mcrypt_generic_deinit($cipher);

    return base64_encode($result);
}



C#:

C#:

byte[] cripted = EncryptStringToBytes("Test", System.Text.Encoding.UTF8.GetBytes("00000000000000000000000000000000"), System.Text.Encoding.UTF8.GetBytes("0000000000000000"));