前提
ある文字列を暗号化して、その暗号化した値をURLパラメーターのGETの値として渡しています。
これを受け取った先で、+が半角空白になり、復号化に失敗します。
どうして+が半角空白で受け取ってしまうのでしょうか?
&と同じ意味になるのでしょうか?
また暗号化の文字に+や&など特定の記号を含めたくない場合はどのようにしたらよいでしょうか?
暗号化には、openssl_encrypt openssl_decryptを使用しています。
復号化の際に(int)としているからでしょうか?
宜しくお願い致します。
実現したいこと
ここに実現したいことを箇条書きで書いてください。
- ▲▲機能を動作するようにする
発生している問題・エラーメッセージ
暗号化後のイメージ d+dfgs==12aw5ds GETで受け取った値 d dfgs==12aw5ds
該当のソースコード
php
1/* 2* 値を暗号化する 3*/ 4function angouka($value){ 5 //openssl 6 // 暗号化 7 $c_t = openssl_encrypt($value, 'AES-128-ECB', SATEI_KEY); 8 return $c_t; 9} 10/* 11* 値を復号化する 12*/ 13function hukugouka($value){ 14 $p_t = openssl_decrypt($value, 'AES-128-ECB', SATEI_KEY); 15 $p_t = (int)$p_t; 16 return $p_t; 17} 18
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
受け取った値の中に半角空白があれば、+に置換でしょうか・・・?

回答2件
あなたの回答
tips
プレビュー