Skip to Main Content
PHPクックブック ―モダンPHPによるWebアプリケーション実用レシピ集
book

PHPクックブック ―モダンPHPによるWebアプリケーション実用レシピ集

by Eric A. Mann, 廣川 類, 桑村 潤
March 2024
Intermediate to advanced content levelIntermediate to advanced
408 pages
5h 16m
Japanese
O'Reilly Japan, Inc.
Content preview from PHPクックブック ―モダンPHPによるWebアプリケーション実用レシピ集

9章セキュリティと暗号

PHPは、ランタイム環境が寛容であるため、とても使いやすい言語です。プログラマがミスを犯したとしても、PHPは意図を推測して対応してくれます。残念なことに、この長所は重要な短所であると考える開発者もいます。PHPは寛容であるため、膨大な量の「悪い」コードがあたかも正しいかのように機能し続けることができてしまうのです。

さらに悪いことに、この「悪い」コードの多くはチュートリアルに掲載され、開発者が自分のプロジェクトにコピー&ペーストするようになり、このサイクルを永続化させてしまっています。このような寛容なランタイムとPHPの長い歴史が、PHPそのものが安全でないという認識につながっています。実際のところ、どのようなプログラミング言語でも、危険にさらすような使い方は簡単にできます。

PHPは、悪意のある入力を簡単にフィルタし、ユーザのデータをサニタイズする機能をネイティブにサポートしています。Webのコンテキストでは、このユーティリティは悪意のある入力や攻撃からユーザの情報を守るために非常に重要です。PHPはまた、認証時にパスワードを安全にハッシュ化し、安全に検証するための関数もサポートしています。

[注記]

PHPのデフォルトのパスワードハッシュ関数とパスワード検証関数は、どちらもセキュアなハッシュアルゴリズムと処理時間が一定となるセキュアな実装です。これにより、タイミング情報を使って情報を抜き取ろうとするようなサイドチャネル攻撃からアプリケーションを守ることができます。ハッシュ(あるいは検証)を独自に実装しようとすると、上記のPHPが対応済みのリスクへの対応がアプリケーション側で必要となります。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

初めてのGo言語 ―他言語プログラマーのためのイディオマティックGo実践ガイド

初めてのGo言語 ―他言語プログラマーのためのイディオマティックGo実践ガイド

Jon Bodner, 武舎 広幸
Python機械学習クックブック 第2版

Python機械学習クックブック 第2版

Kyle Gallatin, Chris Albon, 中田 秀基
エンジニアが学ぶ会計システムの「知識」と「技術」

エンジニアが学ぶ会計システムの「知識」と「技術」

広川 敬祐, 五島 伸二, 小田 恭彦, 大塚 晃, 川勝 健司

Publisher Resources

ISBN: 9784814400621Publisher Website