RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

Web制作

PHP5.5から使える暗号化「password_hash」を「password_compact」を使って以前のバージョンで利用する

投稿日:2013年12月15日 更新日:

Passwords, Logins
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

使い方はいたって簡単。

  • 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追記)

-Web制作

執筆者:


  1. ななしにんげん より:

    コピーライトという文章がありましたけど、大丈夫なんですか?

    • rei より:

      コメントありがとうございます。
      copyright(著作権)については、
      リンクにある通り、
      The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
      =このソフトを使うときは著作権と許諾内容をどこかに書いてね
      という内容です。
      内容に記載していなかったので追記しておきます。ありがとうございます。

comment

メールアドレスが公開されることはありません。

関連記事

(VPSでつくる) Nginx Unit+venv+FlaskでHello World

連載第六回目です。 色々と設定を行ってきましたが、今の状態ではNginx(Webサーバー)上で動的なサイトを表示することはできません。 そのため、今回はNginx Unit(APサーバー)を用いて、簡 …

[Meisyo]ビッグデータから学ぶ試合の基礎設計4

ここでは、「どのパラメータが打率等にどれくらい関係するのか」を理解することで強いチームを作る指針を記載しておきます。 機械学習(重回帰分析)を使って本気で遊んでます。 実際のデータセットはこちら 野手 …

no image

知らなかった!「while」と「do while」の違い

Perl→PHPを独学でやって現在C言語をやってます。 「do{ ~ }while( ~ );」←ナニコレ状態でした。 「while」と「do while」の違いは、 「前」で条件判定をするか、「後ろ …

[Meisyo]ver0.04へのアップデート

Meisyoがバージョン0.04になりました。 バージョンNo.の基準はありません。(1.00(正式リリース)が遠い) 下記機能が0.04で追加されました。 目的としては、「ユーザがゲームを長く楽しめ …

no image

PHPで祝日判定

PHP 祝日判定で検索すると、「GoogleカレンダーAPIで祝日を取得する」ばかりです。 しかし、GoogleカレンダーAPIは抜け落ちている祝日が存在することが知られています。 今回は、抜け落ちが …