我们想在客户站点
创建一个日志文件几百个字节的不可读数据是可以的。但有些客户不会向我们发送无法验证其中包含合理数据的文件。
我到目前为止看到的唯一合理选择是附加加密校验和(例如SHA256(SECRET_VALUE + "logtext")
)。 SECRET_VALUE
将是硬编码的,简单的“security through obscurity”。有没有更好的方法?
我们使用DotNet库,如果重要的话,我不想手工实施任何加密算法。
答案 0 :(得分:1)
您可以使用带有密钥的标准HMAC算法来执行校验和。
使用密钥可以简单地防止可以直接重新生成校验和。可以从代码中提取硬编码密钥,但对于您的用例,我认为足够
结果是二进制哈希。要将其插入到文本文件中,请将值编码为十六进制或base64,并确保您能够恢复服务器端的进程,以便可以使用原始文件再次计算哈希值。
您还可以使用分离的哈希文件来避免修改日志文件
答案 1 :(得分:0)