【发布时间】:2012-06-21 09:49:34
【问题描述】:
验证文件和防止更改其内容的最简单方法是什么?
就像获取文件的md5 hash 并将保存的md5 哈希与当前的md5 hash 进行比较。
如何在 C++ 中做到这一点?
例子:
我有一个文件: myfile.txt
I am content
基本上是我想要的:
bool validate()
{
string saved_content = "I am content";
if(saved_content !== CONTENT_FROM_FILE("myfile.txt")) return false;
return true;
}
【问题讨论】:
-
除非您让操作系统强制执行此操作(例如,获取排他锁或使用适当的文件系统权限),否则无法阻止某人更改文件。
-
创建一个 SHA1 和,要求用户写下来或打印出来。下次读取文件时,要求用户输入之前记下的校验和。这几乎是防止有权访问文件的用户篡改文件的唯一真正方法。
标签: c++ file validation hash md5