1

基本的に、次のようなファイルの変更を追跡しています。

array (
    'crc-of-file' => 'latest-file-contents'
)

これは、実行時に異なるファイルのファイル コンテンツを同時に処理しているためです。

問題は、ファイルの内容に対してどのようなハッシュ アルゴリズムを使用すればよいかということです (ファイルはとにかく読み込まれるため、文字列として)。

パフォーマンスだけでなく、衝突防止も重要です。これまでのところ、セキュリティへの影響は見られません。

編集:コンテンツをハッシュする代わりに使用できたもう1つのことは、ファイル変更のタイムスタンプですが、それがどれほど信頼できるかはわかりませんでした. 一方で、毎回ファイルをハッシュするよりも、上記のスタンプを監視する方が速いと思います。

4

1 に答える 1

0

CRCはハッシュアルゴリズムではなく、チェックサムアルゴリズムであるため、衝突の可能性は非常に高くなります。

md5は非常に高速であり、アプリケーション/ボリュームの種類に応じて衝突のリスクはかなり低くなります。ファイルをバッファリングしている場合は、拡張子を使用して増分ハッシュhashを確認することもできます。

もう少し複雑ですが、(持っている場合は)Inotify拡張機能も一見の価値があります。

于 2012-04-27T02:01:51.607 に答える