タグ

PHPに関するjsstudyのブックマーク (181)

  • bcryptの72文字制限をSHA-512ハッシュで回避する方式の注意点

    宅ふぁいる便から平文パスワードが漏洩した件を受けて、あらためてパスワードの安全な保存方法が関心を集めています。現在のパスワード保存のベストプラクティスは、パスワード保存に特化したハッシュ関数(ソルトやストレッチングも用いる)であるbcryptやArgon2などを用いることです。PHPの場合は、PHP5.5以降で使用できるpassword_hash関数が非常に便利ですし、他の言語やアプリケーションフレームワークでも、それぞれ用意されているパスワード保護の機能を使うことはパスワード保護の第一選択肢となります。 なかでもbcryptは、PHPのpassword_hash関数のデフォルトアルゴリズムである他、他の言語でも安全なハッシュ保存機能として広く利用されていますが、パスワードが最大72文字で切り詰められるという実装上の特性があり、その点が気になる人もいるようです(この制限はDoS脆弱性回避が

    bcryptの72文字制限をSHA-512ハッシュで回避する方式の注意点
    jsstudy
    jsstudy 2019/03/31
    PHPのbcrypt実装はバイナリセーフでない → SHA-512ハッシュ(バイナリ)中にNULLバイトがあると、そこから先を「切り詰め」してしまう。先頭がNULLバイトになる場合、crypt関数にはゼロ文字のパスワードが指定される
  • PHP業界の重鎮 廣川類氏のコラム第三回 次のPHPはどうなる? バージョン7.2でここが変わる - KUSANAGI Tech Column

    PHP 7.2の新機能について取り上げ、3つの観点から詳細に解説します。クラスメソッドの型宣言の省略が可能となり、スクリプト内のクラスに段階的に型宣言を追加し更新することが可能となりました。またpassword_hash関数がArgon2に進化し、より柔軟にハッシュ関数の生成が可能となりました。さらに、暗号ライブラリLibsodiumがPHPコアに標準的に組み込まれ、暗号APIが標準サポートされることでPHPが更に使いやすく実用的な言語に進化します。 PHP 7.2の新機能: クラスメソッドの型宣言の省略 11月9日にリリース候補版(Release Candidate, RC)であるPHP 7.2.0 RC6が公開されました。特に大きな問題が見つからない限り、このRC6版が最後のRCとなり、予定通り11月30日にPHP 7.2.0が正式公開される予定です。以下、前号に引き続きPHP 7.2

    PHP業界の重鎮 廣川類氏のコラム第三回 次のPHPはどうなる? バージョン7.2でここが変わる - KUSANAGI Tech Column
    jsstudy
    jsstudy 2019/03/31
    PHP 7.2では、ハッシュ値生成アルゴリズムとしてPassword Hashing Competition 2015の勝者であるArgon2が使用できるようになりました。パスワード用ハッシュ値生成関数では、ハッシュ生成にかかる計算コストをパラメータとして指定
  • Argon2 - Wikipedia

    この記事の出典や参考文献は、一次資料や記事主題の関係者による情報源に頼っています。 信頼できる第三者情報源とされる出典の追加が求められています。 出典検索?: "Argon2" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2016年1月) Argon2[読み疑問点]は、2015年7月に開催されたパスワードハッシュ競技会(英語版)で優勝した鍵導出関数である[1][2]。ルクセンブルク大学のアレックス・ビリュコフ(英語版)、ダニエル・ディヌ、ディミトリー・コブラトビッヒによって設計された[3]。 Argon2はクリエイティブ・コモンズのCC0の下で公開されている。公開されたものには三つのバージョンがある。 Argon2dはGPUによる攻撃に強い耐性がある。 Argon2iはサイドチャネル攻撃に耐えるよ

  • PHP: 定義済み定数 - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    PHP: 定義済み定数 - Manual
  • PHP: password_verify - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    PHP: password_verify - Manual
  • PHP: password_hash - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    PHP: password_hash - Manual
  • パスワードハッシュアルゴリズム bcrypt と Modular Crypt Format(MCF) - Qiita

    そして、実際にハッシュを行うハッシュアルゴリズムとして有名なのは、MD5やSHA-1, SHA-256, SHA-512が挙げられます。 ただ、MD5やSHA-1はすでにハッシュの衝突が発見されており、使用は推奨されません。 上に挙げたハッシュアルゴリズムの他にbcryptというパスワードハッシュアルゴリズムがあります。 やっと題ですが、この記事ではそのbcryptについて解説したいと思います。 bcryptはBlowfish暗号を利用したパスワードハッシュアルゴリズムです。 ただ単にハッシュ化するだけでなく、ソルトの付与とストレッチングを行うことで、より強固なハッシュ値を求められるようになっています。 1999年に発表され、OpenBSDのデフォルトのパスワードハッシュアルゴリズムとして採用されています。また、その他のLinuxディストリビューションにもライブラリが含まれています。 b

    パスワードハッシュアルゴリズム bcrypt と Modular Crypt Format(MCF) - Qiita
    jsstudy
    jsstudy 2019/03/31
    bcryptのバージョン
  • Post by @yuskamiya

    認証システムを作るときに頻繁に使用するBCryptですが、あまり中身をよく知らずに使っていたので調べてみました。備忘録も兼ねて学んだことを文書化しておこうと思います。 意外と日語の文献が少なく、苦手な英語を読みながら頑張ったので間違えている部分もあるかもしれません!変なところがあったらご指摘いただけますとうれしいです。

    Post by @yuskamiya
  • 【bcrypt】ユーザーパスワードを本当に安全に保存する方法 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作

    こんにちは、バックエンドエンジニアの Kaz です。 今回はアプリケーション開発における「ユーザーパスワードの保存」に着目し、いかにして安全にユーザーのパスワードを保存するかを考えていきます。 パスワード保存における安全性の確保 ユーザーパスワードの実情 まずはじめに、そもそもなぜパスワードを安全に保管しておく必要があるのでしょうか。 ユーザーのパスワードが漏れると、攻撃者がユーザーになりすましてログインできるようになるほか、ユーザーは銀行からショッピングサイトまで、さまざまなサービスで パスワードを使いまわしている のです。 たとえば Keeper 社が実施したアンケート調査 では、18 〜 30 歳の 87% がパスワードを再利用している という結果がでています。 これが意味するところは、万が一あなたのサービスからパスワードが漏れてしまうと、その影響はあなたのサービスに留まらず、そのユ

    【bcrypt】ユーザーパスワードを本当に安全に保存する方法 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作
    jsstudy
    jsstudy 2019/03/31
    bcryptは「blowfish」という暗号アルゴリズムを用いたパスワードハッシュ関数で、出力結果としてハッシュ値とsaltとストレッチング回数、ハッシュ関数のバージョンがセットになった値(Modular Crypt Format)を返してくれる関数
  • 失敗しない Laravel 導入方法 - RAKUS Developers Blog | ラクス エンジニアブログ

    はじめに はじめまして、ラクス新卒1年目のMasaKuと申します。 PHPの勉強を開始した当初は「とにかく動かせること」「思い通りに動くこと」だけで満足していました。 しかし、勉強を進めていくうちに「もっと綺麗にできないものか」と思うようになり、フレームワークの勉強を開始しました。 フレームワークは、使い方を覚えるまでは時間がかかるものですが、要領が分かってくると、たった数行書くだけでいろんな機能を実現してくれるため、Webアプリ開発を強力にサポートしてくれます。 LaravelではComposerというシステムを利用することで簡単に導入することができるため、これからフレームワークを勉強しようとしている方にもおすすめのフレームワークであると考えます。 記事は、生のPHPは書いたことがあるけれど、フレームワークは使ったことがない、という方に対して、導入の一歩をお手伝いできるよおうな記事にな

    失敗しない Laravel 導入方法 - RAKUS Developers Blog | ラクス エンジニアブログ
  • windows Laravel環境構築 - Qiita

    windows Laravel環境構築 環境 OS windows10 xammp install インストールされていない方は、入れましょう。 こだわりがなければphpの最新版が入ったものを入れましょう。 ポチポチでインストールできるはず。 XAMPP Apache + MariaDB + PHP + Perl https://www.apachefriends.org/jp/index.html composer install xammpを入れてから入れましょう。 phpを指定するところがあるのでxammpのphpを指定。 Download Composer https://getcomposer.org/download/ Composerインストールの参考サイト 失敗しない Laravel 導入方法 http://tech-blog.rakus.co.jp/entry/2017/

    windows Laravel環境構築 - Qiita
  • xamppでLaravelの環境構築 - Qiita

    Laravelを試してみ用と思い立ち、とりあえずxamppでLaravelが動作する環境を作ってみた。 環境 □OS:Windows10 home 64bitPHP:7.2.6 (PHPのバージョンアップはこちら参照) Composerのインストール Composerというソフトウェアが必要らしいのでインストールを実施 こちらからComposerをダウンロードする。 Downloadをクリック Composer-Setup.exeのリンクをクリック ダウンロードしたexeファイルを実行 xamppのphp.exeのファイルを指定 ここまでくれば、インストールできたこととなる。 Laravelのインストール xamppシェルを起動 htdocsに移動し次のコマンドを実行

    xamppでLaravelの環境構築 - Qiita
  • PukiWikiでbodycasheを利用してHTMLコンバートタイムを70倍に高速化

    大量アクセスに弱いPukiWiki対策 PukiWikiはリクエストされるごとにWiki形式で書かれた文章をHTMLに変換しています。 1ページだけなら大した負荷にはなりませんが、アクセスが10、100と重なるとかなりの負荷になります。 毎回HTMLに変換するのは無駄が多いので、HTMLに変換したものをキャッシュ(保存)します。そのファイルをアクセス時に読み込むことで高速化と、負荷の軽減を実現します。 HTMLファイルのキャッシュ化には「bodycache」というプラグインを利用します。 数あるキャッシュ系プラグインの中でも運用の手間がかからず、正常に動作するお勧めのプラグインです。しかし導入にはPukiWiki家のファイルを修正する必要があるなど、多少の専門知識が必要になるので、当サイトで導入方法・注意点を解説します。 導入に際して注意点 便利なbodycacheですが、いくつか注意点

    PukiWikiでbodycasheを利用してHTMLコンバートタイムを70倍に高速化
    jsstudy
    jsstudy 2019/03/23
  • ウェブページのキャッシュ — CodeIgniter 3.2.0-dev ドキュメント

    jsstudy
    jsstudy 2019/03/23
  • キャッシングドライバ — CodeIgniter 3.2.0-dev ドキュメント

    jsstudy
    jsstudy 2019/03/23
  • CodeIgniterメモ - Qiita

    コントローラーやモデルを作る上での注意 クラス名は被らないようにすること(後々困ったりする ネームスペースを使用できるようにすれば多少はましになるかも) フォルダで分けた場合はプレフィックスをつける等 loadまでは問題なかったがメソッドを呼び出したところでメモリ不足になった。 同じ名前のクラスは作らない プロファイラ出力

    CodeIgniterメモ - Qiita
    jsstudy
    jsstudy 2019/03/23
  • Plugin/statichtml.inc.php - Sonots' PukiWiki プラグイン

    jsstudy
    jsstudy 2019/03/23
    PukiWikiの静的HTMLシステム化
  • Tank Auth: Authentication library for CodeIgniter

    Tank Auth is an authentication library for PHP-framework CodeIgniter. It's based on DX Auth, although the code was seriously reworked. The latest version is 1.0.9. Project repository Changelog 1.0.9 PHPass settings are moved to config-file for better control over user data. 1.0.8 Some technical changes to make the library compatible with CodeIgniter v.2.0.0. 1.0.7 New parameter db_table_prefix is

    Tank Auth: Authentication library for CodeIgniter
    jsstudy
    jsstudy 2019/03/17
    ログイン
  • GitHub - yoosuf/DX-Auth: Discontinued - Simple and Lightweight Auth System for CodeIgniter

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - yoosuf/DX-Auth: Discontinued - Simple and Lightweight Auth System for CodeIgniter
    jsstudy
    jsstudy 2019/03/17
    ログイン
  • Ion Auth

    If you think you've found a bug please Create an Issue. If you're having an issue with CodeIgniter or for general help with development I recommend checking out the CodeIgniter Forums. If you need a customization or help implementing Ion Auth into your project please Email Me for Consulting Information. If your company would like a support contract or service agreement please Reach Out to discuss

    jsstudy
    jsstudy 2019/03/17
    ログイン