SSL与TLS
5p~4I'yE[$k7^0最新版本的TLS(Transport Layer Security,传输层安
全协议)是IETF(Internet Engineering
Task Force,Internet工程任务组)制定的一种新的协议,它建立在SSL 3.0协议规范之上,是SSL
3.0的后续版本。在TLS与SSL3.0之间存在着显著的差别,主要是它们所支持的加密算法不同,所以TLS与SSL3.0不能互操作。IXPUB技术博客K"c
\/f/tl;Y
1.TLS与SSL的差异
,u;{
f/^rg2B}01)版本号:TLS记录格式与SSL记录格式相同,但版本号的值不同,TLS的版本1.0使
用的版本号为SSLv3.1。
h$or5^-Y9jB L02)
报文鉴别码:SSLv3.0和TLS的MAC算法及MAC计算的范围不同。TLS使用了RFC-2104定义的HMAC算法。SSLv3.0使用了相似的
算法,两者差别在于SSLv3.0中,填充字节与密钥之间采用的是连接运算,而HMAC算法采用的是异或运算。但是两者的安全程度是相同的。IXPUB技术博客A-})N7B%}T6r.c
3)伪随机函数:TLS使用 了称为PRF的伪随机函数来将密钥扩展成数据块,是更安全的方式。
)Uns0{*Js9E(F04)
报警代码:TLS支持几乎所有的SSLv3.0报警代码,而且TLS还补充定义了很多报警代码,如解密失败(decryption_failed)、记录
溢出(record_overflow)、未知CA(unknown_ca)、拒绝访问(access_denied)等。
P~9^3F2h
n05)密文族和客户证书:SSLv3.0和TLS存在少量差别,
即TLS不支持Fortezza密钥交换、加密算法和客户证书。IXPUB技术博客
F"z-K,D1v4Z-t)d)~YS
6)certificate_verify和finished消息:SSLv3.0和
TLS在用certificate_verify和finished消息计算MD5和SHA-1散列码时,计算的输入有少许差别,但安全性相当。
{R"gpuM07)加密计算:TLS与SSLv3.0在计算主密值
(master
secret)时采用的方式不同。
8t`YCO8@'d08)
填充:用户数据加密之前需要增加的填充字节。在SSL中,填充后的数据长度要达到密文块长度的最小整数倍。而在TLS中,填充后的数据长度可以是密文块长
度的任意整数倍(但填充的最大长度为255字节),这种方式可以防止基于对报文长度进行分析的攻击。
阅读(518) | 评论(0) | 转发(0) |