ホームページ  >  記事  >  バックエンド開発  >  PHPのbase64_decodeを文字化けさせるにはどうすればよいですか?

PHPのbase64_decodeを文字化けさせるにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-06-23 13:29:503345ブラウズ

たとえば、今次の文字列をデコードしたいとします
$code = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA88pPKPqRTcVGKcVNrphzUtq9hs1eSgyO/+g9DEfOVeeHlhaEhnYPabBJkpCayg3wTUKkBIWF5iPbPKKQ p5zzdcWyvUXRcrHPzW77zm7HeraPT+YpXJlHjOdhERrGWKglvZmcVbcBLTr8mOlH3JjWmRf51G +LKPjT3OhVcJqCPwF+gC5CggyYiuiVN2OtvVjt2Tb2cxrjtVLbRCKTBq+4EpabkkEzWmurWLtr FT2N2ANDRDtfTmSpeQdHlzenlbWOFk8r3ty3/UiAP4HY53o1pvj5zDo5vZwHe25aoFHxSEJ3q/8H1OlCjbdeEeyTXA8IBqO5tNYRutS++8HlerZ4rQIDAQAB';
$tests=base64_decode($code);
var_dump( $tests );
出力は次のとおりです:

誰かこれを行う方法を教えてもらえますか?


ディスカッションへの返信 (解決策)

明らかに彼は何らかの処理を行っています

それはプロジェクトのデータ

明らかに、彼は何らかの処理も行っています

データがどのプロジェクトであるかによって異なります
処理はありません、私は例を挙げています:

$mod='d61df77df0b16df298c4e87e0f281ff5262684e486c4b495f23997ec7c 81bb8a70 c7ed314a667b0f098bb608a967db6be4a820e1b9960accebd2360654ef1825e8198e1d957e9e280c151bb01163066809e732c200cb0e9c61ca6567e25efa208bf 3 629dec0e29a89d96433107c26c7c29a6e4a12a4dd4b8a2b89a61ef3f3267'; $ exp='010001'
$key=base64_encode ( hex2bin ( "30819f300d06092a864886f70d010101050003818d0030818902818100{$mod}0203{$exp}" ) );デコード($key);
var_dump( $tests );$tests=base64_decode ($key);
var_dump( $tests );
出力内容は次のとおりです:

hex2bin
16 進値を ASCII 文字に変換するのに hex2bin 関数

を使用するのはなぜですか?


明らかに、彼は何らかの処理を行っています

それはプロジェクトのデータによって異なります

処理はありません、例を挙げてみましょう:

$mod='d61df77df0b16df298c4e87e0f281ff5262684e486c4b495f2399 7ec 7c81bb8a70c7ed314a667b0f098bb608a967db6be4a820e1b9960accebd2360654 ef1825e8198e1d957e9e280c151bb01163066809e732c200cb0e9c61ca6567e25 e fa208bf3629dec0e29a89d96433107c26c7c29a6e4a12a4dd4b8a2b89a61ef3f3267';
$exp=' 010001' ;
$key=base64_encode ( hex2bin ( "30819f300d06092a864886f70d010101050003818d0030818902818100{$mod}0203{$exp}" ) ); ($key);

var_dump( $tests );$tests=base64_decode($key) );
var_dump( $tests );
出力内容は次のとおりです:
bin2hex ではなく hex2bin ですか?


何を議論するのかわかりません
データ内に印刷できない文字があるため、交換には Base64 エンコードが使用されます データの本当の意味を知りたい場合は、少なくともプログラムがそれをどのように使用するかを見てください。

皆さん、ありがとうございます。主に JAVA と PHP の RSA 署名検証の問題について解決しました。 PHP は署名検証に openssl によって生成された pem ファイルのみを使用できるため、Java クライアントは 1024 ビットの 16 進数の公開キー文字列のみを提供します。長い間、昨夜終わったばかりでした。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。