RのWeb制作

Webサービス制作のための技術情報を。

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

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

[PHP]まとめ読みをPSRで改良する(3)

(2)の記事から「PDO」を使い、データの通信をオブジェクト化しました。 password_hashを使い、パスワード処理の暗号化も行いました。 PDOを導入する一番の理由は「mysql_query」 …

[Kaggle] Titanic 約80% by ランダムフォレスト

実力不足感が否めませんが、Kaggleのチュートリアル的なTitanicにおいてランダムフォレストで正答率約80%を出せたのでコードを載せておきます。 Colaboratory 実施期間:2019/0 …

[Meisyo]第2回公式戦決勝戦

名将と呼ばれた者達、第2回公式戦決勝戦がありました。結果をお伝えします。 (ゲームにログインしていれば、こちらから結果を見ることが出来ます) オモテ: 都立東京読売巨人高校 チーム総合力:115.12 …

[Meisyo]野手起用法設定の導入検討

コメントいただきました。 面白いなこれは・・・一人で開発してもいいもんじゃないですね。ありがたいです。 導入は時間が出来たらします!

とても簡単なPythonインストール in Windows10

拍子抜けするほど簡単なPythonインストール。 パソコン初心者のあなたにも簡単にできます! 目次 Pythonとは? Pythonの入手 Pythonのインストール Pythonの動作確認 インスト …