8

Is it safe to use File Last Modified (e.g. NTFS) when detecting if a file has changed? If not, does file backup applications always hash the whole file to check for changes? If so what hash algorithm is suited for this check?

4

3 回答 3

5

这取决于应用程序的要求。它可以容忍误报吗?假阴性?

文件上次修改日期不可靠。例如,FTP 可以更改修改日期而不更改文件,或者一个文件可以下载两次,一次超过自身,更改修改日期而不更改文件。另一方面,有一些实用程序可以更改文件但保持相同的文件上次修改日期。

如果在更改文件时绝对必须对文件采取措施,可靠的方法是使用良好的哈希或指纹。这确实需要时间。在不花费太多时间的情况下提高几率的一种方法是将修改日期与文件大小进行比较,但这也不是万无一失的。

于 2011-12-11T00:01:17.997 回答
2

我不会那么相信上次修改时间,因为即使打开文件并添加单个字符也会改变它的修改时间。哈希有冲突的问题,所以我建议阅读 Rabin 的指纹算法。

于 2011-12-10T22:39:31.657 回答
0

我认为习惯于设置有效且定期监控的哈希检查。最后修改我认为并不像许多人想的那样安全。坚持检查哈希并使用定期检查的好软件。

相信我,一旦您习惯了不选择最简单的路线并始终采取最安全的方式,您就会养成良好的习惯,从而使您能够采取其他安全措施。

于 2018-09-03T19:53:50.700 回答