首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >系统时间和证书

系统时间和证书
EN

Security用户
提问于 2012-11-29 12:33:06
回答 4查看 19.4K关注 0票数 11

最近,我意外地将系统时间更改为另一个月,然后我冲浪到了一个安全的站点。我收到谷歌Chrome的警告,上面提到了我的系统时间,并说证书无效。

如果我有一个有效的证书,在已经通过的时间内是可以的,并且我能够更改系统时间,那么会发生什么呢?还能用吗?会有警告吗?

欢迎作出解释。

EN

回答 4

Security用户

回答已采纳

发布于 2012-11-29 14:02:47

验证证书需要检查与“当前时间”有关的几个日期,这是由进行验证的系统(即您的台式机或膝上型计算机)所知道的。特别是,您的系统将尝试获取新的吊销信息( CRL)。如果你的系统时钟关闭,它不会认为它可以下载的任何CRL是“新鲜的”;它可能会发出可怕的警告,特别是如果它看到一个CRL“来自未来”。

此外,在SSL/TLS中,客户端和服务器相互告知它们当前时间的概念。在那里,可以再次警告不一致之处。

总之,改变你的时钟,以接受一个已经过期的证书可能“工作”,但不是“工作良好”。当然,这取决于浏览器在证书验证方面的宽大处理,因此针对特定问题的最佳操作是测试它。创建您自己的CA,在过去发出一个具有过期日期的服务器证书,在浏览器中将您的CA安装为受信任的CA,重新设置时钟,连接到使用过期测试证书的测试服务器,并查看发生了什么。无论如何,这很难是一个合理的生产用途设置(要求您的客户设置他们的时钟是某种程度上,比方说,商业次优)。

票数 16
EN

Security用户

发布于 2012-11-29 13:40:26

SSL证书的主要目的是向客户端证明他们已连接到他们试图访问的正确站点。由客户端根据自己的时间检查证书有效的时间。由于您的时间提前了一个月,您可能会浏览到一个需要替换SSL证书的站点,因此您的浏览器认为它无效。如果您更改了服务器上的时间,服务器会认为它是正常的,但是任何连接的客户端都会有实际的时间,并拒绝证书过期。

票数 4
EN

Security用户

发布于 2012-11-29 13:54:55

如果更改系统时间,如果正在使用的浏览器或软件使用本地系统时间作为时间来源,则证书将被视为无效。有一些软件使用远程系统作为时间来源,因此不受本地时间变化的影响,但这是罕见的。

之所以这样做,是因为证书可以通过蛮力破解,但这需要时间和大量的CPU周期。通常,您将看到公共SSL证书的时间跨度为1年,但对于大多数大型供应商(VeriSign、Thawte等),它们可能长达4年。其理论是,与公钥(公钥=证书)相关联的私钥“不可能”在一年内被强制使用。因此,证书当局避免说该证书永远有效,因为10年后很可能会破解该证书,因为1-10年过去了,而2年--假定CPU将随着时间的推移而变得更加强大(摩尔定律/罗斯定律)。

要更直接地回答您的问题-是的,证书将“正常工作”,如果您的意思是它将加密您的通信,只要您接受风险(风险=警告),这不是合法的服务器(可能的模拟或通信拦截/人在中间)。如果您将时钟更改回正确的时间,并且没有警告(也没有说永久允许浏览器中的异常),则可以合理地确保您不是攻击的受害者。无法确保的是SSL的“身份验证”部分,如果需要单击“接受”,服务器将由证书颁发机构为其提供凭单。

如果你想要更多细节,请告诉我。我不知道你还对什么感兴趣。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/24704

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档