ZendFramework パスワード暗号化・復号化
2010年08月14日
ZendFrameworkのフィルターを使用してパスワードの暗号化を試してみたけど文字化けするので別の方法を試してみた。
正しいのかどうかは保障できないけど・・・。
マニュアルを見ると下記のようにするといいよー的に読めました。
1 2 | $filter = new Zend_Filter_Encrypt(array('key'=>'独自キー','salt'=>true, 'vector'=>'5e0s3s24')); $encode = $filter->filter('パスワード'); |
でも、これだと文字化けしてしまうので困った。
というわけで、下記のようにした。
1 2 3 4 | $password = base64_encode('パスワード'); $filter = new Zend_Filter_Encrypt(array('key'=>'独自キー','salt'=>true, 'vector'=>'5e0s3s24')); $encode = $filter->filter($password); $pass = base64_encode($encode); |
こうすることで、無事文字化けから解消されました。
なんで、base64_encodeを2度使う羽目になるかは分かりませんが、どっちかだけだと文字化けしてしまいました。
復号化も暗号化と同じようにします。
1 2 3 4 | $password = base64_decode($encode); $filter = new Zend_Filter_Decrypt(array('key'=>'独自キー','salt'=>true, 'vector'=>'5e0s3s24')); $decode = $filter->filter($password); $pass = base64_decode($decode); |
これで元に戻りました。
ちなみにvectorの文字列は適当ですが8文字でないとダメらしいです。
また、指定をしないと文字化けを引き起こしてしまいました。
コメントする
:コメント(2)
:トラックバック(0)
コメント:2件
- 1. もみじ総合法律事務所
たまには更新して下さい。
毎日見てクリックしてるのですから^^。(2010年12月03日)
- 2. art project team
もみじ総合法律事務所様
毎日ありがとうございます!!
頑張って更新できるようにします^^;(2010年12月14日)
トラックバック:0件
- トラックバックはありません。




