首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SSL记录协议也加密握手协议吗?

SSL记录协议也加密握手协议吗?
EN

Security用户
提问于 2019-11-23 22:18:27
回答 1查看 353关注 0票数 2

据我所知,在SSL中客户端和服务器之间建立的第一个通信协议是握手协议,正如 site所说:

SSL记录协议用于传输会话中的任何数据--消息和其他SSL协议(例如握手协议).

我的问题是,在客户机和服务器之间的第一个通信协议(握手协议之前)之前,记录协议是如何加密它们之间的数据的?

例如,记录协议使用哪些密钥进行加密,以及它如何与客户端共享此密钥?

EN

回答 1

Security用户

发布于 2019-11-23 23:15:42

来自RFC 8446,第5节 (TLS 1.3,Record Protocol):

TLS记录协议接收要传输的消息,将数据分割成可管理的块,保护记录并传输结果。接收到的数据被验证、解密、重新组装,然后传送到更高级别的客户端。

在记录层加密碎片的密码可以随着时间的推移而改变。最初,由于没有建立密钥,所以将使用零密码。这实际上意味着不使用加密,“密文”与原始片段相同。

握手协议(通过记录层进行)最初开始使用此空密码。在客户机和服务器共享安全参数(使用客户端Hello和server握手消息)之后,它们可以开始执行密钥交换以建立共享秘密。在此之后,他们将能够将记录层切换到基于共享秘密的更安全的密码。在TLS 1.2和更早版本中,此开关是使用更改密码规范消息启动的。

SSL/TLS具有一定的历史,有两种基于非对称密码体制的密钥交换。一种是基于RSA加密,另一种是基于Diffie-Hellman (DH).在TLS 1.3中,只有DH密钥交换机制仍然存在。

使用RSA密钥交换,客户端生成随机的预科秘密,使用服务器提供的证书使用RSA公钥对其进行加密,并将结果发送给服务器。服务器将能够使用相应的私密RSA密钥解密结果,从而获得相同的主密钥。

在Diffie-Hellman密钥交换的情况下,双方生成一个新的密钥对(私钥和相应的公钥),并彼此共享公钥。通过在特殊方式中组合自己的私钥和对等方的公钥,他们将获得相同的共享秘密。

在这两种情况下,都会获得一个共享秘密,并将其转换为对称密钥。此密钥将用于加密记录层中的片段。

有关TLS的更广泛处理,请参见SSL/TLS是如何工作的?

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

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

复制
相关文章

相似问题

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