Must know something of everything and everything of something!

SSL&TLS&WTLS原理

上一篇 / 下一篇  2007-04-03 14:37:29 / 个人分类:network

SSLTLSWTLS原理 51Testing软件测试网~;V#N"D!D#|B2e

fa*T1b2^v5mG01. SSL/TLS/WTLS概念

^.Vc9QTQWT0

)xw&{4?+bw!V0SSL (Secure Socket Layer):安全套接字协议层是Internet上领先的安全协议软件,它是由Netscape公司开发的主要用于WEB的安全传输协议。当SSL会话开始后,WEB浏览器将公共密钥发送给WEB服务器,这样服务器可以很安全地将私人密钥发送给浏览器。浏览器和服务器在会话期间,用私人密钥加密数据。这种协议在WEB上获得了广泛的应用。SSL可能与由IETF提出的协议和验证方法并入名为TLS (Transport LayerSecurity)的新协议。51Testing软件测试网+w Aa;r,d8U }%o#y8fw

kr Sj4C ]k0TLS (Transport Layer Security): IETF(www.ietf.org)将SSL作了标准化,即RFC2246,并将其称为TLS。WTLS (Wireless Transport Layer Security):在WAP的环境下,由于手机及手持设备的处理和存储能力有限,WAP论坛(www.wapforum.org)在TLS的基础上做了简化,提出了WTLS协议,以适应无线的特殊环境。51Testing软件测试网`^vU,wP

51Testing软件测试网Q4T N?2e)v4} W-?ZL

2. 整体结构概览51Testing软件测试网-{^ jj _^|

Ll&[1R&f#BD0SSL是一个介于HTTP协议与TCP层之间的一个可选层,其位置介于应用层与传输层之间。如果利用SSL协议来访问网页,其步骤如下:①用户:在浏览器的地址栏里输入http ://www.sslserver-com;②HTTP层:将用户需求翻译成HTTP请求;③SSL层:借助下层协议的信道安全协商出一份加密密钥,并用此密钥来加密HTTP请求;④TCP层:与WEB服务器的相应端口建立连接,传递SSL处理后的数据。接收端与此过程相反。

9h4R)q aLNLA051Testing软件测试网]"ke1x!h@-t7T

SSL在TCP之上建立了一个加密通道,通过这一层的数据经过了加密,因此达到保密的效果。SSL协议分为两部分:Handshake Protocol和Record Protocol 。其中HandshakeProtocol用来协商密钥,协议的大部分内容就是通信双方如何利用它来安全地协商出一份密钥。Record Protocol则定义了传输的格式。51Testing软件测试网%XC9s{#u JC,hc5x2W

51Testing软件测试网zKH0B[iF

3. 密钥协商的形象化比喻

kSSxD051Testing软件测试网,|%M? x^)sTd

我们假设A与B通信,A是SSL客户端,B是SSL服务器端,加密后的消息放在方括号“[]”里,以突出明文与密文的区别。双方的处理动作的说明用圆括号“()”括起。A:我想和你安全地通话,我这里的对称加密算法有DES、RC5,密钥交换算法有RSA和DH,摘要算法有MD5和SHA。B:我们用DES-RSA-SHA这对组合好了。这是我的证书,里面有我的名字和公钥,你拿去验证一下我的身份(把证书发给A)。目前没有别的可说的了。A:(查看证书上B的名字是否无误,并通过手头早已有的CA证书验证了B的证书的真实性,如果其中一项有误,发出警告并断开连接,这一步保证了B的公钥的真实性)(产生一份秘密消息,这份秘密消息处理后将用作加密密钥,加密初始化向量和hmac的密钥。将这份秘密消息用B的公钥加密,封装成称作Client Key Exchange的消息。由于用了B的公钥,保证了第三方无法窃听)我生成了一份秘密消息,并用你的公钥加密了,给你(把ClientkeyExchange发给B)注意,下面我就要用加密的办法给你发消息了!(将秘密消息进行处理,生成加密密钥,加密初始化向量和hmac的密钥)[我说完了]B:(用自己的私钥将ClientkeyExchange中的秘密消息解密出来,然后将秘密消息进行处理,生成加密密钥,加密初始化向量和hmac的密钥,这时双方已经安全地协商出一套加密办法了)注意,我也要开始用加密的办法给你发消息了![我说完了]A:[我的秘密是...]B:[其他人不会听到的...]。51Testing软件测试网 t9Vq B6\$D

$S6dt2Y3v*C N Y04. 加密的计算51Testing软件测试网Nq"fN*h(U?cE-[f-Z

51Testing软件测试网}z_ h\:lOZ

上一步讲了密钥的协商,但是还没有阐明是如何利用加密密钥,加密初始化向量和hmac的密钥来加密消息的。其过程不过如此:①借助hmac的密钥,对明文的消息做安全的摘要处理,然后和明文放到一起;②借助加密密钥,加密初始化向量加密上面的消息。51Testing软件测试网*Nu8J fN:])_'`2W/R,B \

&j(g^"}1g#Q05. WTLS

|4r$L5PN0

6{D1?['XD0在无线WAP的环境中,也有安全加密的需求,因此WAPforum参照在WWW世界里最为流行的SSL协议设计了WTLS。从原理上说,'这份协议与SSL是基本相同的,但在具体的地方作了许多改动。而这些改动中的大多没有什么技术上的需要,而是由于考虑到手持设备运算与存储的局限而尽量做了简化。51Testing软件测试网{:j(u Y&|l


相关阅读:

TAG: SSL TLS WTLS network

 

评分:0

我来说两句

日历

« 2024-03-28  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 76521
  • 日志数: 93
  • 建立时间: 2007-03-22
  • 更新时间: 2007-12-31

RSS订阅

Open Toolbar