如何下载客户端证书并将其安装到客户端计算机

时间:2017-09-30 21:14:39

标签: security encryption certificate client

我问这个问题是因为我认为当我们尝试访问某些启用https的网站(例如gmail,facebook,我们的网上银行)时,我们不会下载或安装客户端证书。

那么我们如何确保从我们的机器发送的信息被正确加密?

感谢。

1 个答案:

答案 0 :(得分:1)

您列出的所有示例都没有使用客户端证书,除了您的网上银行。

客户端证书是您作为客户端发送到服务器以进行身份​​验证的内容。这也称为“双向TLS”或“相互TLS”认证 VPN服务是利用双向TLS的一个特别常见的例子。在Web上,它通常仅用于服务器到服务器的身份验证,因为设置和维护非常难以供实际人员使用(但有些银行确实提供了它作为选项)。

您实际想到的是,您如何知道互联网上的网站的服务器证书是有效的,而无需手动导入它们。答案很简单 - 你已经预装好了......有点。
当然,您实际上并没有为Web上每个启用TLS的网站提供证书(这是不可能的),但是Web浏览器附带了一组根CA证书,可以验证它们。

它的工作方式称为“信任链”,它是这样的:

  1. 根证书颁发机构(CA)的数量有限,几乎每个人都信任。所有CA都有一个或多个自签名的“根”证书,这些证书预先安装在您的Web浏览器中。
  2. 根CA通过使用其根证书对其进行签名,向自己或“子CA”(例如经销商或业务中不太受信任的权限)颁发“中间”证书。
  3. 然后,中间CA为最终客户签署并颁发个人证书(此处的客户是指购买证书的实体)。这些被称为“叶子”证书。
  4. 从技术上讲,中间CA是可选的,叶证书可以由根CA直接签名;反之亦然 - 可以有多个中间体。

    当您访问例如facebook.com,它将提供与用于签署它的中间体捆绑在一起的叶子证书;您的浏览器验证服务的叶子是否由服务的中间证书签名,然后(因为它已预先安装了所有根证书),它还验证中间件是否由其中一个根CA签名,完成了信任链验证

    这是一个复杂而脆弱的结构,但它以某种方式起作用,它是我们今天最好的。