信息的新鲜度和效度JAVA PHP MySQL的
问题描述:
注:程序在Java中,服务器使用PHP和MySQL ...文件.LOG或.txt文件信息的新鲜度和效度JAVA PHP MySQL的
我有一个程序来的最后一行从一个txt文件并通过HTTP请求将其发送到服务器。该文件由外部程序编写,但用户可以打开并修改它。
这些行是这种格式,时间将在本地计算机时间。
[HH:MM:SS]消息
如果我认为在(真实)消息的时间是在我可以用它通过用时间在修复比较,以验证该新鲜度和有效性的计算机的时间位置? (服务器时间,gtm时间等)
用户可以在世界任何地方,我不能保证在本地机器的时间是准确的。我的想法是启动程序并检查机器上的时间,并将其与我的外部时间进行比较。然后以某种方式设法确保消息不是由用户完成的......例如消息应该是20s〜计算机时间和计算机时间应该与外部时间同步。
从来没有做过这样的事情,但真正感兴趣。
(我知道永远不会有黑客程序的证明,但想使之硬如可能)
谢谢,如果需要的话,我会在下午添加详细信息。对于时间问题
答
两个选项:
如果你可以修改创建该文件的程序,请务必使用一个固定的时区时间来写。这将确保时间在所有时区都是准确的。
或者你可以写时区并在服务器端计算相应的时间。
关于用户篡改数据:
我建议你生成消息的MD5哈希值,并沿发送。然后在服务器端再次根据消息内容计算MD5。如果散列与传递给服务器的MD5不匹配,则意味着用户已经篡改了数据。