传输层安全协议

传输层安全协议(Transport Layer Security Protocol,TLSP)

目录

  • 1 什么是传输层安全协议[1]
  • 2 TLSP的构成[1]
  • 3 TLSP的保护方式[2]
  • 4 TLSP与SSL的区别[3]
  • 5 参考文献

什么是传输层安全协议

  传输层安全协议(以下简称TLSP)是确保互联网上通信应用和其用户隐私的协议。当服务器和客户机进行通信,TLS确保没有第三方能窃听或盗取信息。TLS是SSL的后续协议。

TLSP的构成

  TLSP由2层构成:TLS记录协议和TLS握手协议。TLS记录协议使用机密方法,如数据加密标准(DES),来保证连接安全。TLS记录协议也可以不使用加密技术。TLS握手协议使服务器和客户机在数据交换之前进行相互鉴定,并协商加密算法和密钥。

  TLS协议是基于Netscape的SSL3.0协议的;但是,TLS和SSL不能同时使用。TLS协议包含一个允许TLS实现退到SSL3.0的机制。最新的浏览器版本都支持TLS。1996年颁布的TLSWorkingGroup继续在TLS协议及相关应用中使用。

TLSP的保护方式

  TLSP有两种办法向通信协议提供保护。第一个办法是给用TLS加密的通信分配一个新端口(比如端口80和443)。第二个办法是对通信协议进行升级,在里面加上TLS协议的功能。

TLSP与SSL的区别

  (1)版本号不同。

  虽然TLS的记录格式与SSL的记录格式相同,且头中各域的含义也相同,但其版本值不同。TLS版本中,主版本号为3,从版本号为1。

  (2)消息认证码不同。

  TLS和SSL的MAC模式有两点不同:算法不同及MAC计算范围不同。TLS使用由RFC2104定义的HMAC算法,且TLS中MAC的计算不仅包含了SSL中MAC计算的各个域,还增加了一个体现协议版本号的域TLSCompressed。

  (3)伪随机函数不同。

  TLS使用称为PRF的伪随机函数将密码扩展成生成密钥的数据分组,其目的是使用相对较小的共享密码值,生成较长的数据分组,以防止对Hash函数和MAC的攻击。同时为了保证PRF的足够安全,PRF同时使用了MD5和SHA一1两种Hash函数。

  (4)报警消息不同。

  TLS支持除无证书外的SSL定义的所有报警消息,并且还定义了许多附加的消息,主要有如下消息。

  (5)密码组不同。

  TLS和SSL提供的密码组有一些小的差别。其中,对于密钥交换算法,TLS支持除Fortezza外的所有SSL定义的密钥交换算法;对于对称加密算法,TLS包括除Fortezza外的所有SSL定义的对称加密算法。

  (6)客户端证书类型不同。

  TLS定义的证书类型中不包括在SSL中定义的rsa_ephemeral_dh、dss_ephem_eral_dh及fortezza_kea证书类型,且TLS不包含Fortezza模式,仅使用rsa_sign和dss_sign类型对Diffie_Hellman参数加密。

  (7)证书验证及完成消息不同。

  TLS证书验证消息(certificate{verify)中,MD5和SHA-1的Hash值只根据握手消息计算,而SSL中Hash值的计算还包含主密钥和填充值。与SSL中的完成消息(Finished)相比,TLS中的完成消息基于共享主密钥、先前的握手消息以及标识服务器或客户端标签的Hash数据。

  (8)密码计算方法不同。

  TLS中次密钥的计算方法与SSL中的相同,但TLS主密钥是次密钥和两个随机Hello值的Hash值,其计算方法与SSL中的不同。

  (9)填充值不同。

  SSL在加密前,采用填充域使得用户数据为加密所需分组长度的最小整数倍。而在TLS中,填充域长度不超过255个字节,使用户数据为加密所需分组长度的任意整数倍。其可变的填充值可以防止基于交换消息长度分析的攻击。

参考文献

  1. 1.0 1.1 中国信息安全测评中心编著.WEB系统安全和渗透性测试基础.航空工业出版社,2009
  2. 步山岳,张有东编著.计算机信息安全技术.高等教育出版社,2005
  3. 蒋睿,陆哲明等编著.网络信息安全理论与技术.华中科技大学出版社,2007
阅读数:250