水平有限,欢迎指正!
1、介绍
tls协议的主要目的是给两个交流中的应用提供私密性和数据完整性。本协议由两层组成:tls记录协议和tls握手协议。在最底层,覆盖在某个可靠传输协议上的,是tls记录协议。tls协议提供连接安全性,该安全性有两个基本的属性:
1)连接是私有的。对称加密算法用来数据加密(例如:DES、RC4、等)。每一条连接和以秘钥协商为基础的另一个协议(tls握手协议)生成了独一无二的对称加密秘钥。tls记录协议也可以在无加密的情况下使用。
2)连接是可靠的。消息传输使用keyed MAC 验证数据完整性。安全哈希函数(例如:SHA、MD5、等)用来MAC计算。tls记录协议可以在无MAC的情况下操作,但是通常只被使用在这种模式,另一个协议使用记录协议作为一个传输机,来协商安全参数。
tls记录协议用来各种高层协议的封装。tls握手协议就是这样一个被封装的协议,允许客户端可服务器在应用层协议传输或接收到数据的第一个字节之前,进行互相认证、协商加密算法、和秘钥。tls握手协议提供连接安全性,该安全性有三个基本属性:
1)双方的身份可以使用非对称,或公钥,加密算法(例如:RSA、DSS、等)进行认证。这个认证是可选的,但是通常需要只要一方的认证。
2)共享秘钥的协商是安全的:协商的秘钥是无法被窃听的,并且任何已认证的连接的秘钥是无法被获得的,即使是在链路中间的攻击者。
3)协商是可靠的:没有攻击者可以在没被侦测到的情况下修改协商通信。
tls协议的一个优势是,tls与应用层协议是独立开来的。高层协议可以在tls协议之上进行传输。然而,tls标准没有阐述协议怎样使用tls来增加安全性;怎么开始tls握手和怎么理解认证证书交换的决定,留个运行在tls之上的协议的设计和开发者。
原文地址:https://www.cnblogs.com/yuchengxin/p/9734287.html