如果我使用DateTime.Now作为软件许可认证的一部分来强制使用软件的天数,那么只需更改系统时钟就可以避免这种情况吗?
如果有更好的方法来获得真正的UTC时间?
答案 0 :(得分:10)
如果我使用DateTime.Now作为软件许可身份验证的一部分 强制执行软件可以使用的天数,可以这样做 通过简单地改变系统时钟来规避?
DateTime.Now使用系统时钟,所以是的,它可以被规避。
如果有更好的方法来获得准确的系统时间?
是的,您可以通过www查询时间服务器。但是你知道,即使这样也可以规避,因为用户可以修改他的主机文件并用你自己的代理替换你正在使用的地址,并随时返回。因此,这将取决于您希望保护软件的程度。如果您真的关心软件的知识产权,那么您最好购买商业许可软件。
答案 1 :(得分:6)
每次我使用这种方法进行测试时都会影响到这一点,所以答案是肯定它会对它产生影响
答案 2 :(得分:3)
是的,当然,DateTime.Now从系统时钟获取其值 更好的方法是在Internet上使用NTP服务器。
在代码项目的this article中,您可以找到允许客户端连接到NTP服务器的代码