PHP最高の暗号化法としてPHP5.5から使える「password_hash」があります。
でもそれを、5.5未満のバージョンで使いたい!
特に私が使っている、さくらインターネットのサーバーはPHP 5.4までしか使えない問題があります。orz
書き方はすごく簡単なのに・・・
<?php $passwordHash = password_hash('secret-password', PASSWORD_DEFAULT); if (password_verify('bad-password', $passwordHash)) { // パスワードが一致した } else { // パスワードが一致しなかった }
なんと!
「PHP5.3.7以降」なら同名のユーザー関数が使えるようにする「password_compact」があります。
使い方はいたって簡単。
- 「password_compat」にアクセスして右側にある「Download Zip」でファイルをダウンロード
- 「lib/password.php」を置きたい場所にセットする
- require ‘password.php’;でOK!
<?php require 'password.php'; $passwordHash = password_hash('secret-password', PASSWORD_DEFAULT); if (password_verify('bad-password', $passwordHash)) { // パスワードが一致した } else { // パスワードが一致しなかった }
すごく簡単ですね!
※実際にソフトウェアで使用する場合はライセンス内容を確認してください。著作権内容とライセンス表示が必要です。(2018.09.24追記)