首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >中间安全证书中的TLS人

中间安全证书中的TLS人
EN

Stack Overflow用户
提问于 2013-11-12 05:38:04
回答 1查看 216关注 0票数 0

首先,我很抱歉,鉴于有这么多相关的帖子,我又提出了一个关于这个问题的问题。在阅读了他们和相关网站之后,我仍然不清楚其中的几点。

  1. 浏览器通过安全套接字连接到服务器
  2. 服务器使用它的证书来响应它的公钥。这是我最麻烦的一步。在这条从服务器到客户端的消息中,证书能否很容易地与服务器的公钥分离?如果它是根证书(已经包含在浏览器中),那么中间人不能伪造它,但如果不是呢?客户端用于验证证书的任何在线机制都不能被劫持吗?此外,如果客户端的计算机被破坏,根CA可能会被破坏,对吗?有避免这种情况的步骤吗?最后一件事:据说证书在签署之前是不安全的。我不知道这意味着什么,特别是因为证书可以自己签名。我认为这意味着有人在确保消息的真实性,因此证书签名本身听起来不安全(“您是真正的证书吗?”.“嗯,当然,我肯定是的”)。如果认证证书的机制是互联网,我想知道这是如何安全的。签署证书是否与声明客户端验证证书的内容(字面上)相同?
  3. 会话密钥使用公钥加密并发送到服务器。此会话密钥是服务器和客户端将用于加密通信的其余部分的对称密钥。

我必须说,网上的大部分信息都是如此模糊。在解释和挥手上有这么多的漏洞。我猜是很少人知道实际的机制吗?

EN

回答 1

Stack Overflow用户

发布于 2013-11-12 06:09:31

你遗漏了几步。其中之一是到目前为止,服务器在整个握手过程中发送一个数字签名,并使用其私钥签名。只有服务器可以使用自己的证书来完成这一任务。没有其他人的。客户端使用发送的证书中的公钥验证数字签名。这证明服务器拥有证书。它还证明了服务器是发送所有其他握手消息的同一个实体。

顺便说一句,你的第三步是虚构的。根本不发送会话密钥。它是在两端独立计算的。

编辑您的答案上的注释:

服务器(从JoesGoods)从CA获得证书?

通常是通过互联网浏览器。

这能被劫持吗?

不超过任何其他安全SSL会话。

证书是“签名”的

对,是这样。

这意味着其中的一部分是使用CA的私钥加密的。

不是的。是你捏造的。

特别是拥有web服务器信息的位(JoesGoods的服务器信息)

不是的。是你捏造的。

整个证书都是用CA的私钥签名的,这并不意味着“加密”。

Bob的浏览器通过安全套接字连接到服务器,并发送一个"hello“数据包。

此时套接字并不安全。只是纯文本而已。

服务器将其公钥和证书发送给Bob。

不是的。服务器发送其证书。公钥已经在证书中。

浏览器检查the服务器(JoesGoods)是否与证书签名部分中的内容匹配

整个证书都是签名的。客户端检查它连接到的服务器是否与证书的subjectDN匹配。

key服务器的公钥也用CA的私钥签名

因为它在证书里。否则,就没有其他办法可以做到这一点。这就是为什么它不是单独发送的,也是为什么整个证书被签名,而不仅仅是你喜欢的部分。

浏览器使用步骤(2)中包含的key服务器的公钥向key服务器(JoesGoods)发送客户端密钥交换包。

这部分与密码套件有关。您所描述的适用于RSA密码套件。迪夫-赫尔曼是一个不同的故事,并有扩大的空间,包括其他人。

此客户端密钥用于生成对称密钥以执行交换的其余部分。这个客户端密钥被称为“预选密钥”,是一个随机密钥。由于对称密钥是使用该密钥创建的,因此我想知道为什么不直接发送对称密钥本身,因为此时连接已经加密和验证。

因为这样就没那么安全了。

这些步骤中也有一些是不正常的。

当这些步骤已经在RFC 2246中完全指定时,我真的不明白非正式地列举所有这些步骤的意义。已经有足够的错误信息在互联网上传播,比如这件未经维护的废话

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

https://stackoverflow.com/questions/19921716

复制
相关文章

相似问题

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