勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPのhash_file関数でファイルの改ざんを検知する方法

  PHP

サイト内の特定の数ページのみ簡易的なものでも良いので自動でファイルの改ざんチェックを行ってほしいと要望を受けた。差分を出してチェックするのは大変そうだけど簡易的なもので良いのであればhash_file関数でハッシュ値を比較するのが良さそう。以下に簡単な使い方をメモ。

 

利用方法

ソースコード

<?php
$file = './test.js';
var_dump(hash_file('sha256', $file)); //string(64) "2f3019ac80d538665733681f971504097d3d796ec5a91bb69797967b08ab5802"

解説等

ファイルの内容からハッシュ値を生成できるので、値をデータベース等に格納しておき、値が異なっていれば通知を行うような形でいけそう。後はCronで自動実行すれば良い。

 

リファレンス

hash_file

https://www.php.net/manual/ja/function.hash-file.php

 - PHP

  関連記事

PHPの配列でキーの最大値を取得

PHPの配列でキーの最大値を取得したかった。以下で対応する。 $test = a ...

PHPでデータベースを取り扱いやすくなるORMライブラリ「idiorm」の利用方法

Codeigniterでデータベースを取り扱う際にクエリビルダクラスを用いて可読 ...

PHPからDBX Platformを利用してサーバ内のファイルをアップロードする方法

PHPで何らかのファイルを保存するようなケースだと今まではローカルに保存する、も ...

PHPでスマホ(iPhone / Android)に画像をダウンロードさせる方法とダウンロード後の保存場所について

PHPで作ったシステムにスマホ(iPhone / Android)でアクセスし何 ...

CAPTCHAに代わる無料のツール「Cloudflare Turnstile」の導入方法

CAPTCHAと言えばGoogleのreCAPTCHAを思い浮かべるが、稀にCl ...