[PHP-users 35579] Re: mcrypt_decrypt() が正しく複合化できない

Hideo hideox @ gmail.com
2011年 5月 26日 (木) 20:24:09 JST


さいとうと申します。

ごめんなさい、先ほどの投稿ですが勘違いでした。
$raw_output = true で暗号化してますね・・・

2011年5月26日20:21 Hideo <hideox @ gmail.com>:
> さいとうと申します。
>
> $mcrypt_data = mcrypt_decrypt('rijndael-256', $key,
> base64_decode($data_enc), 'ecb');
> とかでもダメですか?未検証ですが;
>
>
> 2011年5月26日17:35 youo hoko <yoko00068 @ yahoo.co.jp>:
>> 星野と申します
>>
>> mcrypt以外(openssl_*系関数等)でAES256 ECBで暗号化したデータを
>> PHPの mcrypt_*系関数で復号出来ないようです。
>>
>> サンプルコード
>> ---
>> <?php
>>    $key = 'secret key' ;
>>    $data = 'abcd1234' ;
>>    $data_enc = openssl_encrypt($data,'aes-256-ecb',$key,TRUE) ;
>>
>>    echo "openssl:" , openssl_decrypt($data_enc,'aes-256-ecb',$key,TRUE),"\n" ;
>>    echo "mcrypt :" , mcrypt_decrypt('rijndael-256',$key,$data_enc,'ecb') ,"\n" ;
>> ?>
>> ---
>> 結果
>>> openssl:abcd1234
>>> mcrypt :[バイナリになってしまい表示不能]
>>
>> openssl_decrypt()とmcrypt_decrypt()の結果が違ってしまってます。
>>
>> その他試したこと
>>
>> ・PHPのmcryptで暗号化したものはPHPのmcryptで復号できる
>> ・PHPのopensslで暗号化したものはPerlのCrypt::Rijndaelで復号できる
>> ・PerlのCrypt::Rijndaelで暗号化したものはPHPのmcryptで復号できない
>> ・mcrypt_module_open() から使っても同じ結果です
>>
>> PHPのmcryptがおかしいように思います
>> というかlibmcryptがおかしいということでしょうか
>>
>> PHPのPKCS#5パディングがjava等と違うという問題もあるようですが、
>> パディング除去は複合化後の処理なので、関係ないと思います。
>>
>> 環境
>> # php -v
>>> PHP 5.3.0 (cli) (built: Nov  2 2009 05:23:58)
>>> Copyright (c) 1997-2009 The PHP Group
>>> Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies
>>
>> # uname -a
>>> Linux web2 2.6.18-164.6.1.el5 #1 SMP Tue Nov 3 16:12:36 EST 2009 x86_64 x86_64 x86_64 GNU/Linux
>>
>> # cat /etc/issue | head -1
>>> CentOS release 5.4 (Final)
>>
>> # rpm -qa | grep mcrypt
>>> libmcrypt-2.5.8-4.el5.centos
>>> libmcrypt-devel-2.5.8-4.el5.centos
>> _______________________________________________
>> PHP-users mailing list  PHP-users @ php.gr.jp
>> http://ml.php.gr.jp/mailman/listinfo/php-users
>> PHP初心者のためのページ - 質問する前にはこちらをお読みください
>> http://oldwww.php.gr.jp/php/novice.php3
>>
>
>
>
> --
> /**-----------------------------------------
>  * hideox @ gmail.com
>  */
>



-- 
/**-----------------------------------------
 * hideox @ gmail.com
 */


PHP-users メーリングリストの案内