您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 一种安全的即时通信解决方案
ComputerEngineeringandApplications计算机工程与应用2011,47(3)1引言即时通信(IM)是一种实时的互联网通信方式,网络上的用户可以通过IM软件实现文字、语音和视频等信息的实时传递,以及点对点的数据交换。IM在人们的日常联系中发挥着越来越大的作用,并且用户群正从普通用户扩大到企业用户[1]。据报告显示,已经有超过85%的企业用户正在使用IM服务,但只有12%的企业使用了安全的企业IM服务和专用的安全策略[2]。随着IM企业用户的急速增长,迫切需要提供一种高效灵活的安全机制来解决其内在的安全隐患问题。目前,针对企业的IM应用主要是通过128位的安全套接字层(SecuritySocketLayer,SSL)加密来保护即时通信连接的。SSL协议确保了通信消息的机密性和完整性[3],所有在网络中传输的消息都被加密。但是,由于SSL加密保护的信息对于服务器端来说是可见的,一旦服务器受到攻击,所有经过服务器的消息都有可能泄露。如果攻击者知道服务器使用了匿名的密钥交换,服务器还可能遭到重放攻击。为了解决IM用户间通信的安全问题,Mannan和vanOorschot于2006年设计了即时通信密钥交换协议(InstantMes-sagingKeyExchange,IMKE)[4],能够很容易地集成到现有IM系统中。但该协议的安全性是以服务器可信为前提的,并使用了临时的公/私钥对,因此不能保证消息的抗抵赖性。提出了一种基于椭圆曲线密码体制的安全即时通信解决方案,使用了椭圆曲线密码体制来进行密钥管理和会话密钥协商,用对称加密算法来加密通信内容,通过公钥证书对通信双方的身份进行进认证来防止中间人的攻击,并且它的实现算法可以公开。由于椭圆曲线密码体制相对其他非对称密码具有在相同安全级别下所需要密钥长度短、计算时间少的优点,使得方案具有较高的执行性能。2椭圆曲线密码体制简介1985年N.Koblitz和V.Miller独立提出了椭圆曲线密码体制(ECC),其安全性基于椭圆曲线上离散对数问题(ECDLP)的难解性。ECC是一种能够适应未来信息安全技术发展的新型密码体制,目前已成为公钥密码体制中的研究热点。为了用椭圆曲线构造密码系统,首先需要找到一个单向陷门函数,如椭圆曲线上的数量乘。椭圆曲线的数量乘是这样定义的:设E为域K上的椭圆曲线,G为E上的一点,这个点被一个正整数k相乘的乘法定义为k个G相加,因而有kG=G+G++G (共有k个G)若存在椭圆曲线上的另一点N≠G,满足方程kG=N。可以看出,给定k和G,计算N相对容易,而给定N和G,计算k=logGN相对困难。这就是椭圆曲线离散对数问题。一种安全的即时通信解决方案宁国强,李谢华,尹张飞NINGGuoqiang,LIXiehua,YINZhangfei湖南大学计算机与通信学院,长沙410082CollegeofComputerandCommunication,HunanUniversity,Changsha410082,ChinaE-mail:ngq_cs@163.comNINGGuoqiang,LIXiehua,YINZhangfei.Solutiontosecureinstantmessaging.ComputerEngineeringandApplications,2011,47(3):82-83.Abstract:ThispaperproposesasolutiontothesecureInstantMessaging(IM)basedonEllipticCurveCryptosystem(ECC)foraverityofsecurityissuesinIM.ThesolutionappliesECCtokeymanagementandsessionkeynegotiation.Soitcanen-suretheauthentication,confidentialityandintegrityofthecommunicationinclient-serverandclient-client.Experimentalresultsshowthatthesolutionhashighsecurityandperformance.Keywords:InstantMessaging(IM);ellipticcurve;certificate;securitykey摘要:针对即时通信中存在的各种安全问题,提出一种基于椭圆曲线密码体制的安全解决方案。方案使用了椭圆曲线密码体制进行密钥管理和会话密钥协商,保证客户端与服务器端,客户端与客户通信的确认性、机密性和完整性。实验结果表明,该方案具有较好的安全性和执行性能。关键词:即时通信;椭圆曲线;证书;安全密钥DOI:10.3778/j.issn.1002-8331.2011.03.024文章编号:1002-8331(2011)03-0082-02文献标识码:A中图分类号:TP309作者简介:宁国强(1985—),男,硕士研究生,研究生方向为信息安全;李谢华(1977—),男,博士,讲师,研究方向为网络应用,无线通信;尹张飞(1984—),硕士研究生,研究生方向为信息安全。收稿日期:2009-05-07修回日期:2009-08-31822011,47(3)离散对数的求解是非常困难的,而椭圆曲线离散对数问题比有限域上的离散对数问题更难求解,这意味着ECC能以更小的密钥长度来产生与其他公钥密码算法相同等级的安全性。总的来说,ECC有以下优点[5]:(1)安全性能更高;(2)计算量小,处理速度快;(3)存储空间占用小;(4)带宽要求低。由于ECC的这些优点,使得其非常适合对安全性和效率要求都较高的即时通信系统,特别对于带宽有限的无线网络环境,ECC具有更大的优势。3安全通信方案设计即时通信系统一般都基于Server/Client模型,提出的方案仍基于这一模型,但在原即时通信协议上增加了安全模块,为所有的通信连接提供数据的保密性、完整性等。由于要使用证书,所以需要在服务器端增加认证机构(CertificateAuthority,CA),负责证书的颁发、分送和管理等。IM服务器与所有客户端均使用相同且公开的基点G,服务器随机选择小于基点的阶n的正整数KRS为私钥,计算服务器公钥KUS=KRSG。该方案分为:(1)注册/登录认证;(2)客户端之间通信。方案中所用到的符号说明如下:A、B、S客户端A、B和IM服务器SIDA、IDBA和B的用户名pwAA的用户密码KUA,KRAA的公钥和私钥KA,KBA和S(B)之间的共享密钥KSASA和S之间对话的会话密钥{data}K密钥K加密后的数据[data]K使用密钥K的MAC输出数据H哈希函数G椭圆曲线的基点ICA,ICBA和B的证书(1)注册/登录认证a1:A®S:IDA{RASh(pwA)}KAa2:A¬S:{Rsh'(pwA)}KAa3:A®S:h(Rs)其中:h¹h'。KUA=KRA•G(1)KA=KRA•KUS=KRA•G•KRS=(G•KRA)•KRS=KRS•KUA(2)①A首先生成密钥对(KUA,KRA),以及随机数RAS。然后使用共享密钥加密RAS和用户密码pwA的哈希值,将消息a1发送给服务器S。②S收到a1后,计算IDA对应的pwA的哈希值,再按式(2)计算KA,然后使用KA解密。若解密后的h(pwA)与S计算的哈希值不相等,则断开连接,否则生成随机数RS,向A发送消息a2。③A收到a2后,先独立计算pwA的哈希值,再与a2中的h'(pwA)比较。若不相等,则断开连接;否则,计算会话密钥KsAS=h(RAS),并向服务器S发送响应消息a3。④S收到消息a3后,先独立计算RS的哈希值,再与a3中的h(RS)比较,若不相等,则断开连接。否则,也计算会话密钥KSAS=h(RAS)。⑤对于注册过程,A注册成功后,服务器S对用户名IDA及公钥KUA生成X.509证书ICA,同时更新证书列表,并使用自己的私钥KRS进行签名,返回给A。通过认证后,服务器S便向A发送联系人列表。两者之间交换数据的格式如下:A®S:{clientData}KsAS[clientData]KsASA¬S:{serverData}KsAS[serverData]KsAS(2)客户端之间通信①当A请求与B通信时,A首先查找本地是否保存有B的证书。若有,则验证证书;否则向服务器S请求B的证书ICB。②A收到B的证书后,从证书中导出对应的椭圆曲线的参数TB=(p,a,b,G,n,h)和公开密钥KUB,并验证其合法性。③A根据B的参数计算共享密钥KB=KRA•KUB,然后生成随机数RA,并用KB加密后发送给B。④B收到A的会话请求,同样先获取A的证书ICA,导出对应的椭圆曲线参数TA=(p,a,b,G,n,h)和公开密钥KUA,再计算共享密钥KB=KRB•KUA来解密RA。具体过程如下:A®B:{RA}KBA¬B:{RBh(RA)}KBA®B:h'(RARB)其中:h¹h'。⑤A和B确认对方的身份后,再分别计算会话密钥KSAB=h(RARB),之后便可以通过KSAB来加密通信内容了。4安全性和性能分析4.1安全性分析提出的解决方案中主要考虑用户之间通信连接的安全。假设A和B之间存在一个攻击者C,C可以对A和B之间的通信线路进行窃听、修改数据包、得到椭圆曲线的基点G以及得到A、B的证书。如果C要获取A、B之间的通信内容,则必须得到A、B之间的会话密钥。这主要有两种方式:一是根据截获的A、B之间通信的密文信息和所采用的对称加密算法的特点,直接从中分析出通信明文;二是根据A(或B)的证书导出椭圆曲线的参数和公开密钥,再反向计算A的私有密钥。对于第一种方法,其难度取决于所采用的对称加密算法的强度(提出的解决方案采用了AES-256算法)。对于长期在线的IM用户,可以通过定期更新对称密钥的策略来降低已知密文攻击的威胁;对于第二种方法,此类攻击等同于求解椭圆曲线上离散对数问题。目前针对椭圆曲线上离散对数问题,最有效的求解方法为Pohlig-Hellman方法和Pollard-ρ方法[6-7],它们的时间复杂度为O(n)。但当p足够大,而且基点G的阶n也很大时,上述算法的O(n)计算量是不能实现的。4.2性能分析采用Crypto++5.5密码算法库实现了该安全方案,对称加密算法为AES-256,哈希函数为SHA1和RIPEMD160。运行环境为Pentium43.0GHz,DDR400512MB。实验结果显示:A、B登录过程中耗用约15ms,A、B建立通信连接的时间约为18~22ms,方案的性能主要在于ECC的密钥对的生成速度和加解密速度,而所消耗的对称加密时间基本上可以忽略。(下转93页)宁国强,李谢华,尹张飞:一种安全的即时通信解决方案832011,47(3)5结论提出了一种基于Chen混沌系统的新的图像加密算法,将三维空间的彩色图像Pm´n´3转换成二维的灰度图像Pm´(n´3),降低了算法的计算强度和空间需求,从而减少了运行时间,加快了加密速度;置乱时实现了不同层(R、G、B)亮度值的完全混合,加密效果好,安全性更高。仿真结果证明新算法的密钥空间大,足够阻止各种穷举分析;安全性分析表明新的图像加密方案有很高的安全性,在图像加密和基于网络的信息传递中有着潜在的应用价值。参考文献:[1]MatthewsR.Onthederivationofachaoticencryptionalgo-rithm[J].Cryptologia,1989,13(1):29-42.[2]DachseltF,SchwarzW.Chaosandcryptography[J].IEEETransac-tionsonCircuitsandSystemsI:FundamentalTheoryandAppli-cations,2001,48(12):1498-1509.[3]GaoT,ChenZ.Imageencryp
本文标题:一种安全的即时通信解决方案
链接地址:https://www.777doc.com/doc-3174958 .html