基于多路密钥协商的物联网安全通信方法

2015-11-26 01:08谢婉娟
计算机与现代化 2015年2期
关键词:分片数据包密钥

谢婉娟

(华南理工大学信息网络工程研究中心,广东 广州 510640)

0 引言

物联网被称为继计算机、互联网与移动通信网之后世界信息产业的新一轮科技浪潮,引起了国内外学者和产业界的高度关注,给信息化生活带来了极大的机遇。关于物联网的概念,国际各研究机构及标准组织给出了不同的定义。1999 年Auto-ID Labs[1]提出了基于RFID 的物联网的概念。2005 年,国际电信联盟(ITU)在《ITU 互联网报告2005:物联网》[2]中正式确定“物联网”的概念,报告指出,射频识别技术(RFID)、传感器技术、纳米技术、智能嵌入技术将得到更广泛的应用,世界上的各类物品从房屋到椅子、从汽车到轮胎都可以通过互联网主动进行信息交换和通信。2012 年7 月,由我国工信部电信研究院发起立项,国内外其他企业、单位、研究机构和标准组织参与并共同协商制定了“物联网概述”标准[3],该标准是全球第一个物联网总体性标准,给出了物联网的最新定义:物联网是信息社会的一个全球性基础设施,它基于现有的和未来的可互操作的信息和通信技术,通过物理的和虚拟的物物相联,提供更好的服务。物联网将结合M2M(Machine to Machine)通信、自治网络、数据挖掘和决策、安全和隐私保护以及云计算等领先技术与先进的感知和驱动技术[4]。

物联网之所以能得到国内外学者、产业界的高度关注,就是因为其有巨大的发展空间、应用范围和应用前景。然而,物联网的发展还处于初级阶段,技术条件还不够成熟,还面临着各种各样的挑战,特别是物联网中的安全问题较之传统通信网络更为突出。具体表现在以下3 个方面:

1)从物联网的端系统来看,其终端节点呈现异构性,而且经常处于无人值守的场合,缺乏有效的监控,容易遭受破坏,网络的健康稳定运行难以保障,而且物联网终端大多处理能力有限,使得其无法采用复杂的安全方法而容易受到攻击。

2)从信息传输过程来看,物联网中的数据传输可能会经过多种异构的网络(如传感器网络、互联网、移动通信网之类的专用网等),异构网络的融合性、互联互通性也将产生安全薄弱环节。

3)从应用的角度来看,物联网上传输的是涉及企业经营的生产、物流、销售各个方面的机密数据,如果网络不安全,那么物品信息、个人隐私等很可能被泄露,物联网的应用也可能成为黑客远程控制他人物品,甚至是操纵城市交通网、城市供电系统的渠道。

针对物联网的安全问题,目前的研究大都集中在物联网的安全架构以及感知层的RFID 相关安全机制方面:文献[5]分析了物联网的安全特征及关键技术;文献[6]设计了一种物联网安全管理框架;文献[7]从物联网中感知信息的整个处理过程考虑物联网的安全层次模型,提出包含信息采集、处理、传输3个方面的安全架构;文献[8]提出了一种物联网安全模型及其安全威胁类型;文献[9]提出了一种基于挑战/应答机制的RFID 认证协议。关于物联网端到端的安全通信方法的研究相对较少,并且这些方法基本都依赖于单路传输的加密和认证技术,通过增加加密的强度和认证过程的复杂性来保证物联网的安全要求,而且只能在特定的场景下使用,不具有普遍性,如文献[10]提出了一种基于DTLS 协议的物联网端到端双向认证机制,该机制是基于现有的公钥加密算法实现的;文献[11]提出了一种基于IPsec 的适应于传感器网络节点之间的端到端安全通信方法;文献[12]介绍了一种适应于物联网处理能力有限的设备与普通设备之间的安全通信方法。

考虑到物联网终端大多处理能力有限,而传统的单路传输安全通信方法无法在保证安全的同时降低运算的复杂度,本文提出一种基于多路密钥协商的物联网安全通信方法。

1 安全通信方法的设计思想

本方法利用多路传输技术可以增加窃听、密钥破解的难度这一特点,在设计过程中尽量采用相对简单的加密和认证算法,让处理能力有限的物联网终端之间能进行安全通信。基本思想是:通信双方选择多条不同的传输路径进行基于Diffie-Hellman[13]算法密钥协商,将密钥协商信息分片并根据选择的路径发送给接收方,这样便协商出了一个安全的会话密钥。然后,发送方使用该密钥加密数据并将得到的密文分片经多路传输。

2 设计内容

2.1 多路传输的网络模型

本方法采用的多路传输的网络模型如图1 所示。A、B 为2 个通信终端,它们之间存在n 条通信路径,其中M1,1,…,Mn,i为路径的中间转发结点。如果A、B 通信时只采用其中的一条路径传输数据,那么攻击者只要攻击路径中的任何一个结点就可以得到全部数据,而如果采用多路传输分片数据,要获得所有数据必须至少在每一条路径上劫持一个结点。

图1 多路传输的网络模型

通信双方路径选择原则:通信双方根据当前网络的性能、终端的处理能力和业务的安全要求3 个方面来决定传输的路径数目(假设选择m 条,时延抖动等指标进行衡量)来确定。后续的多路密钥协商以及多路数据传输过程都以此原则进行路径的选择。

2.2 多路密钥协商

物联网是一个多种异构网络相融合的网络,网络规模很大、环境非常复杂,通信终端数目众多,使得密钥管理相比传统网络更困难,很难在网络中配置一个可信任的第三方安全中心进行会话密钥的分配。密钥协商相比于由通信中的某一方生成会话密钥再传输给其他成员这种密钥传输方式更加公平,产生的随机化密钥质量更高,而且该方法能够解决大规模网络中的密钥分配难的问题[14]。因此本文采用密钥协商进行密钥分配,同时为了增强密钥传输的安全性,将密钥协商与多路传输技术相结合,采用基于Diffie-Hellman 算法的多路径密钥协商方案,即通信双方将各自生成的密钥协商数据分片,并为每一个数据分片加上时间戳,用自己的私钥对消息内容进行数字签名,将所有的分片经过相同处理后经多条不同的路径传输到通信对端。

多路密钥协商的前提条件:

1)源结点和目的结点之间存在n 条不相交的路径;

2)在一次通信的过程中,源节点和目的结点可认为是安全的;

3)通信双方通过安全通道获取了对方正确的公钥,并通过双向认证验证了对方的身份。

4)通信双方A 和B 通过某种途径(即使是不安全的途径)已经获得了密钥协商公共参数p 和g(p和g 是大素数且g 是模p 的本原元)。

多路密钥协商过程:

通信方A 选择一个大的随机数x∈[1,p-1],计算X=gxmod p,从n 条不相交路径中选择m 条路径进行传输(路径选择原则见2.1 节),选择随机数ka1,…,kam,且满足公式(1)的要求:

并且在所选路径上向B 分别发送消息:

其中m 为总的分片数目,Tai为每一路的时间戳,防止重放攻击,SA为A 的私钥,ESA(kai,Tai,m)表示A 用自己的私钥SA对消息计算的数字签名,供对方进行消息认证;

B 采用与A 相同的步骤进行发送密钥分片:选取一个大的随机数y∈[1,p -1],计算Y=gymod p,选择m 条路径(可以与A 选择的传输路径不同)传输密钥协商数据分片,选择随机数kb1,…,kbm,且满足公式(3)的要求:

并且在所选路径上向A 分别发送消息:

消息中的参数意义与公式(4)相同。

通信方A 每收到一个消息Mi,根据随机数ka 与Tai判断消息是否重放,若为重放消息则直接丢弃,否则用对方的公钥核实签名,若验证不通过则使用除该条路径以外的路径向对方发送重传消息Mi的请求,否则将消息存放在缓存中用于后续密钥重组,密钥重组方法见公式(1)(通信方B 采用类似的过程)。

最后,通信双方根据重组的密钥协商数据分别计算出会话密钥,Kab=Yxmod p 以及Kba=Xymod p,再向对方发送基于HMAC[15]算法的消息认证码HKab(X,Y)以及HKba(Y,X),双方根据认证码验证是否协商出了正确的密钥Kab=Kba。

以上所描述的过程如图2 所示。

图2 多路密钥协商的过程

该方案与单路的Diffie-Hellman 密钥协商算法相比,首先增加了2 次叠加求和的运算,这对算法复杂度的影响很小,可以忽略;其次,对于每一次发送的数据包都需要进行公钥签名及认证,对方案的整体复杂度的影响较大,需要进一步简化。但是由于采用了多路传输技术,使得协商出的密钥相比单路密钥协商出的密钥在相同长度情况下密钥的安全性增加(增大了攻击者获取完整密钥的难度)。

同时,该方案与文献[16-17]中的密钥协商方案相比,每一个通信方在整个密钥协商过程中只需要要进行2 次指数运算,而文献中的方案在传输每一路消息时都需要进行一次指数运算,本方案降低了运算复杂度。

2.3 数据加密

由于物联网终端的处理能力有限,不能采用复杂的加密算法,但是物联网环境复杂,要保证通信的安全,简单的加密算法无法实现,针对此问题本章节将对称加密算法与多路传输相结合,利用对称加密算法计算简单、加密效率高的优点,以及多路传输数据分片使窃听完整密文和破解恢复明文的难度增加的特点,在保证安全的同时降低了运算的复杂度。

通信双方协商出正确的密钥Kab后,发送方将要传输的原始消息用密钥Kab对消息进行对称加密,然后将加密后的消息进行分割,并加上相应的标识(会话序号、快标识)以及消息认证码,再进行多路传输(路径选择原则见2.1 节)。消息传送到接收方后,根据数据块的标识对消息进行重组并解密,得到初始的消息明文。

发送方A 加密数据和传输密文的过程如下:

A 采用密钥协商阶段产生的密钥Kab和与B 协商的对称加密算法E,对要传输的数据进行加密,假设要传送的数据包为M,加密后的密文为C=EKab(M),然后A 将密文C 分割成n 个子数据包c1,c2,…,cn,具体的分割算法可根据根据网络的性能(如丢包率、带宽、时延)及消息的安全性要求进行选择,并为每一个子数据包加上会话序号seq、块标识i、时间戳Ti:

其中,会话序号与块标识用于接收方的数据重组,加时间戳是为了防止重放攻击。再使用带密钥的哈希函数H 计算消息认证码HKab(ci,seq,i,Ti),供接收方对消息进行验证,最后在选择的每一条路径上发送消息:

接收方B 接收到数据后的处理过程如下:

B 每收到一个数据包,根据认证码对其进行消息认证,认证通过后,根据块标识将子数据包重组并解密,恢复出消息明文包M。

与传统的单路传输加密方法相比,该方法的加密和解密过程没有区别,只是增加了数据包的分割、重组操作以及数据包的签名验证操作,这与采用高强度的加解密算法相比运算开销增加还是可以接受的。

3 安全性分析

3.1 多路密钥协商的安全性分析

本文采用基于Diffie-Hellman 算法的多路密钥协商方案,将密钥协商信息分片经多路传输,用这种方法协商出的会话密钥不仅具有单路密钥协商所建立的会话密钥的共同优点:

1)抗重放攻击。

由于每一次密钥协商过程中双方选择的随机数(也可以称为短暂私钥)都是不相同的,不同的组合将生成不同的密钥,因此能很好地防范重放攻击。

2)前向安全性。

因为会话密钥的计算仅仅依赖于双方的短暂私钥,与通信双方的长期私钥(公钥机制中的私钥)无关。某次会话过程中,即使通信一方或双方的长期私钥都被破解了,由于攻击者不知道在此之前的短暂私钥,也无法解决有限域上的离散对数难题,不能推算出在此之前计算的会话密钥,因此密钥具有前向安全性。

3)完整性。

从会话密钥的计算过程可以看出,任何一方都无法事先决定最终的密钥值,而是由双方选择的随机数共同推导得出,协商结束后双方拥有了一个相同的密钥值。

4)已知密钥安全性。

已知密钥安全性也是由于每次协商过程选择的随机数不同所保证的,随机数不同,得到的会话密钥不相同,每次计算得到的密钥之间具有独立性,无法根据已知的会话密钥计算出将来的会话密钥。

5)抵抗窃听攻击。

由于网络中传输的并非是最终的会话密钥,攻击者通过窃听无法获取密钥,因此能有效地抵抗窃听攻击。

还具有相比于单路密钥协商更好的安全性,该方案能有效对抗Diffie-Hellman 密钥协商协议所存在的中间人攻击。因为攻击者如果具有伪造数据包的能力,那么单路密钥协商方式对这种攻击无能为力,而如果采用将密钥协商信息分片经多路传输,攻击者截获并伪造所有路径上的密钥协商信息的难度将大大增加,攻击者要获取所有路径上的数据才能得到密钥,此时密钥泄露的概率为pn,显然小于单条路径被截获的概率p。并且由于每一路数据包都附加了消息摘要值,会话双方能及时验证每条路径上的数据是否被篡改并请求重传。因此,多路交互协商出的密钥的安全性更高。

3.2 数据加密的安全性分析

经多路密钥协商得出的会话密钥的安全性是很高的,攻击者要想获得密钥值,不仅要截获所有路径上的密钥协商信息,而且还必须解决有限域上的离散对数难题,这无疑是很困难的。其次,将通信数据经该密钥加密后再分割成多个数据片分别传输,且每个数据包中都添加了相应的消息认证码,相对于单路径的传输,攻击者截获部分路径的数据包获取的信息量较小,能恢复出完整的消息原文可能性也是非常小的。最后,攻击者要想伪造或篡改数据包,也只能发送部分伪造的数据分片,接收端将伪造的数据分片与其他分片重组后,经过解密算法恢复出的明文可能是乱码,可以很轻易地发现数据被篡改。

从以上分析可以看出,本文所提的方案与单路传输安全方案相比,经多路协商出的密钥更加安全,可以有效抵抗中间人攻击,密文分片后通过多条相互独立的路径传输,使得攻击者截获完整数据包的难度增加,伪造数据分片被发现的几率也增大。

4 结束语

本文结合多路传输技术,提出了一种适用于物联网环境的安全通信方法,该方法使得终端可以选择相对简单的加密和解密算法获得与复杂算法相同的安全性,降低了终端的计算开销,这对于终端处理能力有限以及通信安全要求高的物联网比较适应。下一步的研究重点是多路径的发现方法,考虑将本文所提方法与网络层的多径路由相结合,同时对路径的选择原则进行进一步的细化。

[1]Auto-ID Labs.Auto-ID Labs home Page[DB/OL].http://www.autoidlabs.org/page.html,2014-05-11.

[2]International Telecommunication Union.Internet Reports 2005:The Internet of Things[R].Geneva:ITU,2005.

[3]ITU-T,Recommendation Y.2060-2012.Overview of the Internet of things[S].

[4]物联网在线.国际电信联盟正式通过“物联网概述”(Y.IoT-overview)标准草案[EB/OL].http://www.iot-online.com/zhengce/2012/0327/17982.html,2014-03-11.

[5]杨庚,许建,陈伟,等.物联网安全特征与关键技术[J].南京邮电大学学报(自然科学版),2010,30(4):20-29.

[6]肖毅.物联网安全管理技术研究[J].通信技术,2011,44(1):69-70.

[7]刘宴兵,胡文平.基于物联网的网络信息安全体系[J].中兴通讯技术,2011,17(1):28-33.

[8]Babar S,Mahalle P,Stango A,et al.Proposed security model and threat taxonomy for the internet of things (IoT)[M]// Recent Trends in Network Security and Applications.Springer Berlin Heidelberg,2010:420-429.

[9]王小妮,魏桂英.物联网RFID 系统数据传输中密码算法的研究[J].北京信息科技大学学报,2009,12(4):75-78.

[10]Kothmayr T,Schmitt C,Hu W,et al.A DTLS based endto-end security architecture for the Internet of Things withtwo-way authentication[C]// Proc.the 37th IEEE International Conference on Pervasive Computing and Communication.2012:956-96.

[11]Raza S,Chung T,Duquennoy S,et al.Securing Internet of Things with Lightweight IPSec[R].Sweden:Swedish Institute of Computer Science,2010.

[12]Bonetto R,Bui N,Lakkundi V,et al.Secure communication for smart IoT objects:Protocol stacks,use cases and practical examples[C]// Proc.2012 IEEE International Symposium on World of Wireless,Mobile and Multimedia Networks (WoWMoM).2012:1-7.

[13]Diffie W,Hellman M.New directions in cryptography[J].IEEE Trans.Inform.Theory,1976,22(6):644-654.

[14]吴世忠,祝世雄,张文政,等.应用密码学-协议、算法与C 源程序[M].北京:机械工业出版社,2006:70-84.

[15]IETF-RFC2104,HMAC:Keyed-hashing for Message Authentication(1997)[S].

[16]任卫东,陈立全,朱文远,等.一种基于Kademlia 的网络语音安全多路通信方法[J].信息网络安全,2012(11):27-31.

[17]郭婵.无线网状网多径路由协议及其安全机制的研究[D].合肥:中国科学技术大学,2010.

猜你喜欢
分片数据包密钥
上下分片與詞的時空佈局
分片光滑边值问题的再生核方法
密码系统中密钥的状态与保护*
CDN存量MP4视频播放优化方法
基于模糊二分查找的帧分片算法设计与实现
SmartSniff
一种对称密钥的密钥管理方法及系统
基于ECC的智能家居密钥管理机制的实现
视觉注意的数据包优先级排序策略研究
移动IPV6在改进数据包发送路径模型下性能分析