DateTime.Now是否受更改系统时钟的影响?

Dr.*_*ABT 6 c# datetime

如果我使用DateTime.Now作为软件许可认证的一部分来强制使用软件的天数,那么只需更改系统时钟就可以避免这种情况吗?

如果是这样有更好的方法来获得真正的UTC时间?

Dar*_*rov 11

如果我使用DateTime.Now作为软件许可认证的一部分来强制使用软件的天数,那么只需更改系统时钟就可以避免这种情况吗?

DateTime.Now使用系统时钟,所以是的,它可以被规避.

如果是这样,有更好的方法来获得准确的系统时间?

是的,您可以通过www查询时间服务器.但是你知道,即使这样也可以规避,因为用户可以修改他的主机文件并用你自己的代理替换你正在使用的地址,并随时返回.因此,这将取决于您希望保护软件的程度.如果您真的关心软件的知识产权,那么您最好购买商业许可软件.

  • @sll您可以使用服务私钥对时间进行签名,以便它不会伪造. (2认同)
  • @sll不,你的程序只需要你的公钥. (2认同)
  • @sll否.客户端只有服务的公钥.该服务保持私钥......私密.显然,它需要是您拥有的时间服务(显然可以从更通用的时间服务器获取其数据).如果服务是HTTPS服务,而不是不安全的服务,这当然都是为您完成的.(它还需要没有自签名证书). (2认同)

小智 6

每次我使用这种方法进行测试都会对此产生影响,所以答案是肯定的,它确实会影响它

  • +1为诚实和学习宝贵的教训:) (2认同)