鞍山师范学院学报
2005—04。7(2):60一62
解析SSL握手
协议
离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载
李海成
(辽东学院信息技术学院,辽宁丹东118003)
摘要:ssL协议是网络安全的重要协议,被广泛应用于安全数据传输与互联网交易中.它分为记录层协
议和握手协议.握手协议允许服务器和客户端相互认证,在传输数据前协商加密算法和密码密钥,本文就
握手协议的原理加以解析.
关键词:SSL协议;记录层协议;握手协议;证书
中图分类号:TP393文献标识码:A 文章篇号:1008-2441(2005)02舶60旬3
AnmvseHandshakeProtocolofSSL
UHai—cheng
(sc_Il蒯矿删白硎Ⅲ幻n&孔c^肋肠秽,£i∞如昭Coz2e扩,阮,ldD,lgL洳,li增118003,c柚m)
Ab灯act:TheSSLPmtocolisaimportantpIDtocoltokeepmenetsecurity,anditiswidelyappli—
cableincommunicationsecudt),.Itcanbedividedinto山ereco坩protocoland山ehandshakepro—
toc01.Therecordpmtocolallows出eclientandthesenrertotestifyeacho出er,andam嘶ge枷th—
meticandkeysto山eencryptionbefore出edatais眦nsmitted.Thisp印er酉Vesananalyseoftlle
handshakeprotoc01.
Keywords:SSLprotocol;Recordprotocol;Handshakeprotocol;Cenificate
ssL(安全套接层协议)是由Netscape开发出来的一种让在可持有证书的浏览软件(如IntemetE]【plorer、Netscape
Navigator)和www服务器(如Netscape的NetscapeEnterprisesever)之间构造的安全通道中传输数据的协议,它运行在
TCP/IP层之上、应用层之下,是一种利用公开密钥技术的工业标准,其产品包括由№tscape、Microsoft、IBMOpenMarket等
公司提供的支持SsL的客户机和服务器以及诸如Apache—SsL等产品,用TCP/IP代表高级协议.在通信过程中,允许一
个支持ssL协议的www服务器在支持SsL协议的客户端使协议本身获得信任,使客户端得到服务器的信任,从而在两
台机器间建立一个可靠的传输连接.实际的双方通过CA机构发放的证书互相进行验证,从而在不安全的开放型网络上
建立安全的加密的数据通道,为电子商务的运行提供了良好环境l1I.
SsL协议的主要目标是向基于Internet的客户端/服务器的应用程序提供了客户端和服务器的鉴别、数据完整性及
信息机密性等安全措施.协议由两层构成:ssL记录协议和sSL握手协议.ssL记录协议在一些可靠的传输协议(如TCP)
上,用于封装各种高层的协议,SsL握手协议允许服务器和客户端相互认证,并且在传输数据前协商加密算法和密码密
钥.SSL独立于应用层的协议,对高层的协议透明,这是它的一个优点.
这里以SsL协议v3.0为例,对握手协议进行解析.
1 SSL协议v3.0的目标12j
(1)密码的安全:SSL协议用来在两点间建立一个安全的连接;(2)互操作性:没有对方代码的情况下,程序员仍能独
立开发成功交换密码的sSD.O的应用程序;(3)可扩展性:SsL可扩展新的公钥和其它算法;(4)相对的效率:密码的操
作,特别是公钥操作大量占用CPu的时间,因此,sSL协议采用了缓冲的技术以减少连接数.
2 握手协议(HandshakeProtoc01)
2.1 SSL握手协议产生会话态的密码参数
当SSL客户端和服务器开始通信时.先协商协议版本,选择密码算法及可选的相互认证,使用公钥加密产生共享密
收稿日期:2004—10—11
作者简介:李海成(1966一),男,辽宁绥中人,辽东学院讲师 万方数据
第2期 李海成:解析SSL握手协议 6l
钥,其过程如下:
(1)客户向服务器发送clientHeuo消息,服务器以seⅣerHeⅡo消息应答.这一对消息主要用来协商以下信息:协议版
本、sessionID、加密算法等.此外双方还交换clientHeⅡo.啪dom和SenrerHeuo.random这两个新生成的随机数.
(2)服务器然后发送自己的证书(cert击cate消息),如果它需要验证客户的身份,将发送ce硒cateReqIlest消息.
(3)服务器发送Ser佗rHeⅡ0Done消息,表示握手的第一阶段已完成,服务器将等待客户的应答.
(4)如果接收到CertificateRequest消息,客户端将发送cen诳cate消息(或者NoCerf击cate消息).客户创建一个叫做
pp屯master—secret的随机数,用服务器的公钥加密,发送给服务器(clientExchaIlge消息).如果客户以发送ceni{icate消
息,将用自己的私钥作一数字签名,发送给服务器(Certi{icateVedfy消息),以此证明自己是证书的真正拥有者.
(5)客户端发送ChaIlgecipherspec和Finished消息应答,表示握手过程结束.
在握手协议的任意步骤,如果协商结果不符合自己的要求,通信的任一方均可终止握手进程。握手完成后,客户端和
服务器可以开始交换数据.
2.2恢复和复制情况
客户端和服务器决定恢复一个先前的会话,或复制一个存在的会话,而不协商新的安全参数时,过程如下:
客户端传送clientheuo使用恢复会话ID,服务器核对它的会话缓存,寻找匹配项.如果找到匹配项,并且服务器愿意
在指定的会话状态下重建连接,它将用同一会话ID送senrerhello.此时,客户段和服务器送chan驴ciphetspec消息并且
直接进行到finished消息,重新连接完成后,客户端和服务器可以开始交换应用层数据,如果未发现匹配的会话1D,服务
器产生一个新的会话ID,SsL客户端和服务器进行完整的握手过程l3|.
2.3消息定义
(1)clientHeⅡo消息:clientHeuo消息是当客户端首先与服务器连接时,所要传送的第一条消息.在以下三种情况下
传送clientHeuo消息:作为服务器HeⅡorequest消息的响应;客户端主动请求连接;重新协商以存在的安全参数.
ClientHello消息结构如下:
Slmct{
Ptotoc01Versionclient—version;
Randomrandom:
SessionIDsessionjd;
CipherSuitecipher_suites<2—216—1>;
CompressionMethodcompression—methods<1—25—1>;
}CliemHeUo;
cliem—version:客户端想要在这个会话期间使用的ssL协议版本;
mndom:客户端生成的随机结构;
sessionjd:客户端在这个连接使用的会话ID;
cipheLsuites:客户端支持的密码种类表,按客户端优先排序;
compression—methods:客户支持的压缩算法表,按客户端优先排序.
clienthello消息发送后,客户端等待Sen,erhello消息.
(2)ServerheⅡo消息:服务器处理ClientheⅡo消息,并且返回握手时警告或SenrerheUo消息.
Stmct{
PmtocolVersionsen,er—version;
Randomrandom:
SessionIDsession_id:
CipherSuitecipher—Suite;
CompressionMethodc吣pression—_method;
}Sen,erHello;
(3)服务器证书:通常状态下,要求对服务器进行身份认证.那么服务器送ServerheUo消息后,应送它的服务器证
书.证书类型应符合选择密钥交换算法,并且通常是一张x.509.v3格式的证书. 万方数据
62 鞍山师范学院学报 第7卷
0paqueASN.1Cert<1—2“一l>;
Stmct{
ASN.1Cencertificatelist<1—224—1>:
}Certificate:
certificate』st:x.509.v3格式的证书链,先是发送者证书,后是cA证书.
(4)serverheⅡodone消息:服务器送senrerhellodone消息,显示senrerheUo结束.发送这条消息后,服务器将等客户
端回答.
Stmct{
}SenterHeUoDone;
(5)证书验证:这条消息用来提供一张客户端证书的证实.
它的结构定义为:
struct{
Signaturesignature;
}CenificateVerify;
(6)Finished消息:Fjnished消息是由刚刚协商生成的加密算法、加密密钥、MAc密码保护的,用来验证握手是否成
功,结构如下:
eum{client(0x434C4E54),senrer(0x53525652)}Sender;
struct{
opaquemd5一hash[16];
叩aquesha』ash[20];
}Fjnished;
m(15_hash:MD5(master-secret+pad2+MD5(handshake_Inessa肛s+Sender+masteLsecret+padl));
sha-hash:MD5(m鼬ter_secret+pad2+SHA(handshake-messages+sender+master-secret+padl));
其中master-secret是由pre—.masteLsecret计算得到的.
2.4密码的计算
(1)非对称密码的计算:Diffie—HeUmaIl,RSA和Fonezza采用同样的算法根据pre—master—secret来计算master—se—
cret.计算出master_secret后,pre—master_secret应该从内存中删除.
MasteL鼻ecret=MD5(pre—master—secret+SHA(A+pre—master—secret+ClientHell0.mndom+SenrerHeUo.mdom))+
MD5(pre-jnaster_secret+SHA(“BB”+pre—master—secret+ClientHeno.random+Sen,erHello.mdom))+MD5(pre—mastef—
secret+SHA(“CCC”+pre—master_secret+ClientHeⅡo.啪dom+SenrerHeⅡo.random))[4J;
(2)对称的密码的计算:用于对ssL记录进行加密并保证完整性,如使用DEs加密并使用MD5生成认证码.
3结束语
综合以上观点,ssL协议的运行经过ssL握手协议产生会话态的密码参数、恢复和复制情况、消息定义和密码的计
算等过程,每个过程都经过结构体进行封装,进行传输并在需要时实现验证和产生回应,实现可靠的连接,即所谓握手;
在传输的信息中可以采用不同的加密算法,保证两点问信息传输的安全,从而实现了SsL协议的功能.
参考文献:
[1]王顺满,王成儒.安全套接层协议及其
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
[J].计算机安全.2001,(4):30—35.
[2]王育民.密码学基础与应用[M].西安:西安电子科技大学出版社,1990.
[3]JH.LoxtonNumberTheoryarIdcrypto铲印hy[M].Endand:c锄bridgeuniversitypress,1990.
[4]吴世忠,祝世雄,张文政.应用密码学协议、算法与c源程序[M].北京:机械工业出版社,1998.
(责任编辑:张冬冬)
万方数据
解析SSL握手协议
作者: 李海成, LI Hai-cheng
作者单位: 辽东学院,信息技术学院,辽宁,丹东,118003
刊名: 鞍山师范学院学报
英文刊名: JOURNAL OF ANSHAN NORMAL UNIVERSITY
年,卷(期): 2005,7(2)
被引用次数: 5次
参考文献(4条)
1.王顺满;王成儒 安全套接层协议及其设计[期刊论文]-计算机安全 2001(04)
2.王育民 密码学基础与应用 1990
3.J H Loxton Number Theory and Cryptography 1990
4.吴世忠;祝世雄;张文政 应用密码学协议、算法与C源程序 1998
本文读者也读过(10条)
1. 陈敬佳.Chen Jingjia SSL/TLS的安全性分析与实现[期刊论文]-武汉理工大学学报(信息与管理工程版)
2005,27(5)
2. 钟熙宇 SSL协议及其应用[期刊论文]-计算机与数字工程2004,32(5)
3. 林琪.卢昱.LIN Qi.LU Yu 实现SSL协议中的"握手"过程[期刊论文]-小型微型计算机系统2000,21(8)
4. 郑陆军 构建一个基于SSL的安全Web网站[期刊论文]-电脑知识与技术(经验技巧)2002(9)
5. 戴一格.李仁发.DAI Yige.LI Runfa 基于SSL的嵌入式浏览器的设计与实现[期刊论文]-科学技术与工程
2006,6(19)
6. 张峰岭.ZHANG Feng-ling 为SSL协议加上数字签名[期刊论文]-现代计算机(专业版)2002(7)
7. 易江波.赵战生.阮耀平 SSL及使用SSLeay实现证书的签发和管理[期刊论文]-计算机应用研究2001,18(1)
8. 王顺满.王成儒.杨鼎才 安全套接层协议及其设计[期刊论文]-计算机安全2001(4)
9. 林雪云 利用ssl为tcp Socket通信加密[期刊论文]-电脑开发与应用2008,21(4)
10. 马永红.骆小红.Ma Yonghong.Luo Xiaohong 基于SSL协议的安全Web站点实现[期刊论文]-科技广场2008(3)
引证文献(5条)
1.周永利.陈英武 制造网格资源调度及安全性管理[期刊论文]-电子技术应用 2007(8)
2.胡晓晔.李峻屹 SSL协议分析及实现[期刊论文]-电脑知识与技术 2008(29)
3.吴敏.梁爽 实现SSL协议快速连接的一种解决
方案
气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载
[期刊论文]-兰州理工大学学报 2008(1)
4.舒丹 制造网格环境下安全问题的研究[学位论文]硕士 2006
5.覃东 基于SSL的VPN网关系统的设计及实现[学位论文]硕士 2006
本文链接:http://d.g.wanfangdata.com.cn/Periodical_assfxyxb200502020.aspx