首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >简单的SSL如何实现服务器到客户端的通信?

简单的SSL如何实现服务器到客户端的通信?
EN

Stack Overflow用户
提问于 2012-04-14 01:54:27
回答 1查看 537关注 0票数 2

SSL服务器是否为连接的每个客户端随机生成临时密钥对?

我了解公钥加密是如何工作的--公钥,秘密解密密钥。这解释了拥有SSL证书的主机如何从客户端接收加密数据。但是SSL服务器如何将加密数据发送回客户端呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-04-14 02:07:36

(在this question上有一个关于这个主题的讨论,尽管它被编辑了很多次,所以它可能会让人困惑。)

服务器证书中的公钥仅在握手期间使用。在握手期间,客户端和服务器协商用于实际加密的秘密共享密钥(每个会话一个新密钥)。

如何协商这个秘密取决于密码套件:RSA or Diffie-Hellman密钥交换。当使用RSA密钥交换时,客户端加密预主秘密并将其发送到服务器(服务器是唯一能够解密它的人)。当使用DH时,客户端在DH交换期间验证服务器发送的临时参数的签名:最终结果也是共享的预主秘密。然后,双方将其与交换的随机值一起使用,以计算主秘密。

在名为"Handshake Protocol Overview"的TLS规范部分中有更多细节。

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

https://stackoverflow.com/questions/10145838

复制
相关文章

相似问题

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