首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSL证书信任模型

SSL证书信任模型
EN

Security用户
提问于 2014-10-20 02:35:48
回答 2查看 1.7K关注 0票数 1

我一直在研究SSL证书信任模型,有些东西是没有意义的。如果我是正确的,则信任模型表明,如果链顶部有一个具有受信任根证书的证书链,则该链中的所有证书都将被信任。这是没有意义的,因为这样我就可以用自己的密钥对为google.com创建一个有效的证书。我这样做是通过获取google.com的证书链,比如说Verisign,然后是google.com。我将保留根证书,但修改google.com证书中的密钥对。此证书链将被信任,因为根证书是可信的,因此所有其他证书都是可信的。这样你就可以在中间攻击中创造出一个人。

EN

回答 2

Security用户

回答已采纳

发布于 2014-10-20 03:09:42

SSL证书有一个扩展字段,该字段定义允许使用证书的内容。

当您从VeriSign购买带有证书签名请求的证书时,它通常不包括使用证书对下游证书进行签名的扩展权限;特别是对于没有权限的任何域。

以google.com为例(根到叶节点):

  1. Equifax安全CA -根CA (因此隐含的下游签名权限)
  2. GeoTrust全局CA -具有证书签名者属性
  3. G2 -拥有证书签名者属性,但只能对叶节点进行签名
  4. *.google.com -没有权限签署其他证书的通配符域证书。

浏览器检查从根到叶的有效性。叶证书或中间证书声称的任何权威机构都被签署证书的证书所授权;最终导致对根证书局和根证书颁发机构的信任。

票数 3
EN

Security用户

发布于 2014-10-20 03:56:35

您在这里丢失了数字证书的一个非常重要的部分。那部分是数字签名。基本上,数字证书由3个部分组成:

  1. 一把公钥。
  2. 证书信息。(有关用户的“标识”信息,如名称、用户ID等)。
  3. 一个或多个数字签名。

数字签名是证书的加密散列。它基本上是证书本身的摘要(例如SHA-1),由CA的私钥签名(验证)。这就是告诉浏览器该证书由某人(您的浏览器也可以信任的人)验证的内容。

正如您所说,您可以轻松地获取证书并更改它。但是你真正不能改变的是这个数字签名(因为你没有属于那个受信任的人的私钥)。因此,您的浏览器将立即检测到它,因为它将无法验证数字签名。

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

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

复制
相关文章

相似问题

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