无线传感器网络中长数据流的完整性保护方法

文档序号:7818081阅读:552来源:国知局
无线传感器网络中长数据流的完整性保护方法
【专利摘要】本发明公开了无线传感器网络的一个安全高效的数据完整性保护方法,属于物联网安全【技术领域】。本方法包括如下步骤:(1)预先配置阶段,实现把共享密钥从基站(BS)分别传送到发送方和接收方。(2)签名阶段,发送方使用签名算法生成数据元素的签名,并将数据元素及其签名发送给接收方。(3)验证阶段,接收方首先确认消息来源于发送方,然后使用上一阶段的签名算法验证数据元素及其签名。本发明是一种能有效降低完整性保护协议的通信成本的实用方法,因为它采用了现有方案所没有采用的蒙哥马利模乘,并限定了散射函数的输入长度,从而显著降低了长数据流的计算成本,满足了数据完整性保护机制新的安全和高效特点。
【专利说明】无线传感器网络中长数据流的完整性保护方法

【技术领域】
[0001]本发明涉及一种无线传感器网络中长数据流完整性保护的方法,属于物联网安全【技术领域】。

【背景技术】
[0002]现今无线传感器网络已经被广泛部署在军事、环境和其它商业应用。为了在一个敌对的网络中的两个传感器节点之间传输数据,要部署好完整性保护模块,以确保数据不被网络中的攻击者干扰。无论技术如何实现,数据完整性保护场景包括三个部分:基站(BS),发送方和接收方。在沟通之前,发送方和接收方通过基站使用共享密钥部署。在数据发送过程中,发送方将数据组织成固定大小的元素,并为每个数据元素生成一个消息验证码(MAC)(通过共享密钥)。然后它向接收方发送数据元素及消息验证码。一旦接收到数据和消息验证码,接收方将使用共享密钥验证消息验证码来确保接收的数据没有被干扰。
[0003]在上面的数据完整性保护系统中计算成本是一个严重的问题。由于有限的能量,发送方和接收方深切关注由签名和验证长数据流带来的高计算成本。因此,为了提高传感器节点的生命周期,目前的数据完整性保护技术主要是采用一个简单的散射函数来生成和验证消息验证码,而不是公共密钥加密。不幸的是,在目前的方案中,散射函数的输入长度取决于数据流,会导致高的计算成本和更短的生命周期。因此,精心设计一个传感器网络的数据完整性保护协议的先决条件是散射函数的输入长度独立于数据流的长度。
[0004]一个传感器网络的数据完整性保护协议应当满足下面的要求:(I)正确性。发送者和接收者应当确保敌对的网络中没有人可以干扰数据。(2)对重放攻击的强烈抵抗力。发送者和接收者应当确保数据流不被一个攻击者欺诈性地重复。(3)对顺序错误的强烈抵抗力。发送者和接收者应当确保多个数据元素的顺序不被一个攻击者改变。(4)签名和验证长数据流的低成本。由于能量有限,发送者和接收者应当保证它们的计算成本要低,尤其是当处理长数据流的时候。特别地,当一个数据流分解成多个数据元素时,下面的几个方案的计算成本应当低:(i)签名一个长数据元素;(ii)验证一个长数据元素;(iii)签名多个短数据元素;(iv)验证多个短数据元素。
[0005]很明显,设计一个传感器网络的数据完整性保护方法是一项重要的任务,因为资源限制的传感器节点没有能力来签名,传输和验证冗长的数据流。当前基于对称密钥的方案可以满足需求(1),(2)和(3)。然而,对于长数据流,签名和验证成本仍然很高。更重要的是,当考虑到研究主题,我们观察到现有的加密原语都不可以直接用于实现上述讨论的目标。


【发明内容】

[0006]发明目的:为了解决上述的安全和效率问题,本发明提出了一种无线传感器网络中长数据流的完整性保护方法,由于该方法限定了散射函数的输入长度,并使用蒙哥马利模乘(MM)对冗长的数据流进行操作,该方法能够提供满足上述安全性能的高效的密钥分配,签名和验证算法以及协议。
[0007]技术方案:一种无线传感器网络中长数据流的完整性保护方法,包括:
[0008](I)预先配置方法
[0009]预先配置方法实现了密钥材料的生成及其从基站到发送方和接收方的分发;基站按产生随机数的方法构造密钥生成函数,然后根据该函数生成共享密钥并通过完整/机密/抗重放保护的密钥分发渠道分配给发送方和接收方这两个实体;
[0010](2)签名方法
[0011]签名方法实现了发送方能够就数据元素和签名问题与接收方进行通信;当发送方使用签名算法对数据元素进行签名后,将生成的签名和消息验证码再发送给接收方;
[0012](3)验证方法
[0013]验证方法实现了接收方对接收到的签名和消息验证码的验证;接收方首先通过共享密钥对消息验证码进行验证确保消息来源为发送方并且消息没有被干扰篡改,然后使用签名算法对签名进行验证从而得到数据元素。
[0014]有益效果:与现有技术相比,本发明提供的无线传感器网络中长数据流的完整性保护方法,确保了传感器网络的数据完整性,简称为IPLDS,它建立在两个散射函数之上。然而,不同于目前的基于散射函数的机制,IPLDS是基于一个新颖的签名算法的新的方法。由于下面的理由,本发明没有使用传统的签名算法:在目前的签名算法中,散射函数操作的是整个数据流,这是相当费时的。另一方面,注意到蒙哥马利模乘(MM)比散射函数更高效,IPLDS旨在主要执行蒙哥马利模乘(MM)操作数据流,并且让多个数据元素共享一个散射函数的操作。通过这样做,发送方和接收方双方都可以显著地减少计算成本。
[0015]通过安全性分析和效益评估,该方法符合所要求的安全性目标。该方法也从理论和实验上验证了 IPLDS的效率,显示它可以满足上述所有的要求。本方法的研究对完善长数据流的完整性保护技术,进而推动我国物联网安全发展和繁荣互联网经济意义重大。

【专利附图】

【附图说明】
[0016]图1是数据完整性保护方案的系统模型。
[0017]图2是预先配置阶段流程图。
[0018]图3是签名阶段流程图。
[0019]图4是验证阶段流程图。

【具体实施方式】
[0020]下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
[0021]无线传感器网络的数据完整性保护方案的系统模型如图1所示。它包括本发明方法涉及的实体,这些实体之间沟通的协议,以及在协议上运行的算法。
[0022]本发明定义了三种实体:基站(BS),发送方和接收方。基站(BS)用于生成密钥并将共享密钥分别传送给发送方和接收方。发送方得到来自基站的密钥和初值后,需要对待发送的数据元素使用签名算法生成签名和消息验证码(MAC),并将其发送给接收方。接收方需要首先检查消息来源是否为发送方,并确定该消息是否应当由自己处理。然后使用签名算法验证消息,从而得到数据元素。
[0023]本发明方法的设计基础是:散射函数的输入长度独立于数据流的长度以及蒙哥马利模乘(MM)。散射函数的输入长度独立于数据流的长度是指不管对于多长的数据流,该方法所用的散射函数的输入长度是一个定值,会有效地降低计算成本。此外,蒙哥马利模乘(MM)比散射函数高效的多,使用蒙哥马利模乘(MM)对冗长的数据流进行操作也会显著降低长数据流的计算成本。
[0024]总体来说,本发明提供的无线传感器网络中长数据流的完整性保护方法,该方法是一种能有效降低完整性保护协议的通信成本的实用方法,因为它采用了现有方案所没有采用的蒙哥马利模乘(MM),并限定了散射函数的输入长度,从而显著降低了长数据流的计算成本,满足了数据完整性保护机制新的安全和高效特点。
[0025]具体分述如下:
[0026](I)预先配置方法,包括:
[0027]预先配置方法实现了密钥材料的生成及其从基站到发送方和接收方的分发。基站按产生随机数的方法构造密钥生成函数,然后根据该函数生成共享密钥并通过完整/机密/抗重放保护的密钥分发渠道分配给发送方和接收方这两个实体。
[0028]预先配置方法使得发送方和接收方拥有共享的密钥材料。确保在通信前后发送方和接收方能使用正确的密钥进行签名算法和验证。
[0029](2)新的签名方法,包括:
[0030]签名方法实现了发送方能够就数据元素和签名问题与接收方进行通信。当发送方使用签名算法Gensig对数据元素进行签名后,将生成的签名和消息验证码(MAC)再发送给接收方。
[0031]签名方法使得发送方在敌对的网络中将正确的签名和消息验证码(MAC)发送给接收方,避免重放攻击和顺序错误等。
[0032](3)新的验证方法,包括:
[0033]验证方法实现了接收方对接收到的签名和消息验证码的验证。接收方首先通过共享密钥对消息验证码进行验证确保消息来源为发送方并且消息没有被干扰篡改,然后使用签名算法对签名进行验证从而得到数据元素。
[0034]验证方法在预先配置和签名的基础上完成验证过程,从而实现了将预先配置阶段生成的密钥材料应用到签名阶段产生的消息验证码和签名上。
[0035]通过上述验证过程,从而判断接收到的消息中绝大多数块是否被正确地传送。
[0036]由上述本发明的实施例提供的技术方案可以看出,此发明是一种能有效降低完整性保护协议的通信成本的实用方法,因为它采用了现有方案所没有采用的蒙哥马利模乘(MM),并限定了散射函数的输入长度,具体体现在如下做法:首先,将散射函数的输入数据填补到一个长度1,其中I满足I % 512 = 448。然后,进一步将输入数据填补到多个512位的块。最后,它在每个块上进行80个置换操作,输出一个160位的字符串。如果数据元素的长度超过512位,散射函数将会将它分成多个512位的块。另外,在签名和验证阶段,每个数据元素都只使用一个蒙哥马利模乘,从而显著降低了长数据流的计算成本,满足了数据完整性保护机制新的安全和高效特点。
[0037]本发明的实施例包含三大部分内容:(1)预先配置阶段;(2)签名阶段;(3)验证阶段。
[0038]在预先配置阶段,基站通过密钥生成算法生成一组共享密钥并将其发送给发送方和接收方两个实体。基站是一个受信任的实体,它分别与发送方和接收方建立信任关系,它们之间的密钥分发渠道应该提供完整/机密/抗重放保护,以确保发送方和接收方可以得到正确的密钥。
[0039]签名阶段,实现了发送方能够就数据元素和签名问题与接收方进行通信。
[0040]验证阶段,实现了接收方对接收到的签名和消息验证码的验证。
[0041]上述三大部分内容首先由基站生成并分配密钥给发送方和接收方两个实体,接下完成签名阶段,最后实现验证阶段。
[0042]为便于对本发明实施例的理解,下面将对本发明的实施例进行说明(下面的实施例都是对单数据元素场景下的具体说明)。
[0043]实施例一
[0044]本实施例设计完成预先配置。预先配置的目的是:生成密钥材料并给发送方和接收方分配共享的密钥材料。包括但不限于以下步骤:
[0045]步骤100,基站构造一个密钥生成函数,并由此函数生成密钥材料;
[0046]步骤102,基站建立和发送方和接收方之间受信赖的分发渠道,将密钥分别分配给发送方和接收方。
[0047]如图2所示,步骤说明如下:
[0048]步骤100:基站首先构造一个密钥生成函数Genkey。基站再由此函数进行操作:sk —Genkey(Ix),它将安全参数λ作为输入并且将sk作为输出,其中,sk包括一个随机的初值P和给发送方和接收方的两个随机生成的共享密钥{β。,PJ。在该算法中,λ的长度决定IPLDS中的安全等级,λ越大,密钥空间就越大,越难以破解(通常情况下,为了避免穷举法破解,信息安全领域中公认的λ应当至少达到80位从而实现主要的安全级别)。此外,P的长度应当超过λ位。
[0049]步骤102:生成密钥材料之后,基站通过提供完整/机密/抗重放保护的密钥分发渠道将共享密钥分别发送给发送方和接收方,发送方和接收方将分别持有sk ={β0, βι,Ρ?进行接下来的签名和验证,这两点将在下面的步骤中具体说明(对于多数据元素场景,基站为发送者和接收者生成的一组密钥是Sk= {β0, ……,β3,ρ})。
[0050]签名阶段的目的是:发送方对数据元素块进行签名,并将签名和消息验证码发送给接收方。包括但不限于以下步骤:
[0051]步骤104:发送方使用签名算法对数据元素进行签名。
[0052]步骤106:发送方将身份信息和签名在敌对的网络中发送给接收方。
[0053]如图3所示,具体说明如下:
[0054]步骤104:在这个阶段,发送方使用签名算法Gensig对数据元素d e Zp (Zp是小于P的自然数集)进行签名。考虑到数据元素d和Sk= {β0, P1 e Ζρ},发送方将数据元素d分成前后两个相同长度的df和屯,Gensig算法将d和sk作为输入,进行如下对数据元素d的签名计算:τ = SHAl (β 0| sID | rID | df) + β Amod P,其中sID是发送方的身份,rID是接收方的身份,由于散射函数的输入长度为448位,则Ptl I IsIDl |rID I df的长度应当等于448位(而对于多元素数据场景,发送方将数据元素分成s个数据(d”……ds e Zp),并为多数据元素生成一个签名为'r = S題(βθ Il slD Il riD)+ Σ β,?.ηΛο?ρ ),



/=1
[0055]步骤106:发送发进行签名算法之后,再将签名及消息验证码在敌对网络中将(sID,rID,d, τ )发送给接收方。
[0056]验证阶段的目的是:实现接收方对接受到的签名的验证。包括但不限于以下步骤:
[0057]步骤108:发送方接收到消息后,先检查来源方是否为发送方,是否该由自己处理。
[0058]步骤110:确认消息可靠性后,使用签名算法进行验证。
[0059]如图4所示,验证阶段具体说明如下:
[0060]步骤108: —旦从发送方接收到(sID, rID, d, τ ),接收方(rID)首先检查(sID,rID)来确定这个数据是由发送方(sID)发送的并且应该由自己处理(在配置阶段,发送方和接收方互相都知道对方的身份信息,可以用于接下来的身份验证)。
[0061]步骤110:确认过消息来源后,接收方继续采用Gensig算法验证(d, τ ),验证公式如下:τ = SHAl ( β ο sID rID df) + β Amod ρ,比较计算得到的和接收到的是否一致,若一致,则认为得到正确的数据元素。Gensig算法同签名阶段中的相同(多数据元素场景下的算法也与签名阶段中的对应算法相同)。
【权利要求】
1.一种无线传感器网络中长数据流的完整性保护方法,其特征在于,包括: (1)预先配置方法 预先配置方法实现了密钥材料的生成及其从基站到发送方和接收方的分发;基站按产生随机数的方法构造密钥生成函数,然后根据该函数生成共享密钥并通过完整/机密/抗重放保护的密钥分发渠道分配给发送方和接收方这两个实体; (2)签名方法 签名方法实现了发送方能够就数据元素和签名问题与接收方进行通信;当发送方使用签名算法对数据元素进行签名后,将生成的签名和消息验证码再发送给接收方; (3)验证方法 验证方法实现了接收方对接收到的签名和消息验证码的验证;接收方首先通过共享密钥对消息验证码进行验证确保消息来源为发送方并且消息没有被干扰篡改,然后使用签名算法对签名进行验证从而得到数据元素。
2.如权利要求1所述的无线传感器网络中长数据流的完整性保护方法,其特征在于,预先配置方法包括如下步骤: 步骤100:基站首先构造一个密钥生成函数Genkey ;基站再由此函数进行操作:sk —Genkey(Ix),它将安全参数λ作为输入并且将一个随机的初值ρ和给发送方和接收方的两个随机的共享密钥{βο,βι?作为输出;在该算法中,入是决定IPLDS安全等级的{β。,的长度,此外,P的长度应当超过λ位; 步骤102:生成密钥材料之后,基站通过提供完整/机密/抗重放保护的密钥分发渠道将共享密钥分别发送给发送方和接收方,发送方和接收方将分别持有Sk= {β0, β1)Ρ}进行签名和验证,对于多数据元素场景,基站为发送者和接收者生成的一组密钥是sk ={ β 0.β I,......,β s, ρ} °
3.如权利要求1所述的无线传感器网络中长数据流的完整性保护方法,其特征在于,签名方法包括如下步骤: 步骤104:发送方使用签名算法Gensig对数据元素d e Zp进行签名;考虑到数据元素d和sk = P1 e Ζρ},发送方将数据元素d分成前后两个相同长度的df和dl,并且计算数据元素d的签名为τ = SHA1(PQ| |sID| |rID| |df) + @ Amodp,其中sID是发送方的身份,rID是接收方的身份,而^ I IsIDl IrIDl I df的长度应当是448位,而对于多元素数据场景,发送方将数据元素分成s个数据(d”……ds e Zp),并为多数据元素生成一个签名为τ = SllA I (/? () 11 siD 11 rID) + Y βμ!? mod ρ:


/ = 1 步骤106:发送发进行签名算法之后,再将签名及消息验证码在敌对网络中将(sID,rID,d, τ )发送给接收方。
4.如权利要求1所述的无线传感器网络中长数据流的完整性保护方法,其特征在于,验证方法包括如下步骤: 步骤108:—旦从发送方接收到(sID,rID, d,τ ),接收方(rID)首先检查(sID,rID)来确定这个数据是由发送方(sID)发送的并且应该由自己处理; 步骤110:确认过消息来源后,接收方继续采用Gensig算法验证(d, τ ),从而进一步得到数据元素,Gensig算法同签名方法中的相同,多数据元素场景下的算法也与签名方法中的对应算法相同。
【文档编号】H04W84/18GK104320778SQ201410589669
【公开日】2015年1月28日 申请日期:2014年10月28日 优先权日:2014年10月28日
【发明者】万长胜, 刘军 申请人:东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1