首页> 中国专利> 一种异构传感网认证组密钥管理方法

一种异构传感网认证组密钥管理方法

摘要

本发明涉及信息安全技术、网络对称密钥管理技术领域,具体涉及一种应用于传感网中具有身份认证功能的组密钥建立和组密钥管理更新方法。本发明包括:可信机构构建动态累加器函数族,为节点分配全局参数;布撒节点,由组管理员节点通过可信信道向组成员节点发布初始化信息;组成员节点根据初始化信息利用累加器建立初始组密钥;在加入节点和离开组时组管理员节点更新密钥,并根据新密钥构建更新信息,公开发送给组成员节点;组成员节点利用身份信息对更新消息的来源进行认证,若认证成功,则接受该更新消息;否则,组成员放弃本次更新。本发明确保仅有效成员能够正确更新组密钥,提供了更好的前后向安全性,节省了存储空间。

著录项

  • 公开/公告号CN103227987A

    专利类型发明专利

  • 公开/公告日2013-07-31

    原文格式PDF

  • 申请/专利权人 哈尔滨工程大学;

    申请/专利号CN201310119298.3

  • 发明设计人 马春光;钟晓睿;

    申请日2013-04-08

  • 分类号H04W12/04(20090101);

  • 代理机构

  • 代理人

  • 地址 150001 黑龙江省哈尔滨市南岗区南通大街145号哈尔滨工程大学科技处知识产权办公室

  • 入库时间 2024-02-19 19:24:31

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2023-03-17

    未缴年费专利权终止 IPC(主分类):H04W12/04 专利号:ZL2013101192983 申请日:20130408 授权公告日:20160504

    专利权的终止

  • 2016-05-04

    授权

    授权

  • 2013-08-28

    实质审查的生效 IPC(主分类):H04W12/04 申请日:20130408

    实质审查的生效

  • 2013-07-31

    公开

    公开

说明书

技术领域

本发明涉及信息安全技术、网络对称密钥管理技术领域,具体涉及一种应用于传感网中 具有身份认证功能的组密钥建立和组密钥管理更新方法。

背景技术

异构传感网由大量成本低、资源受限的普通节点,和一些成本相对较高,资源相对充裕 的高能节点组成。这些节点以成簇的方式组成网络,相互协作,共同完成信息的收集与传递。 随着异构传感网在军事和日常生活中的应用越来越广、发展越来越快,它已经受到了学术界 和工业界的广泛关注。除了点对点单播通信以外,传感网还经常需要进行多播通信,而多播 通信具有信道开放的特点,较单播通信更容易遭受窃听攻击、重放攻击和伪造攻击等恶意攻 击。安全多播问题已经成为了制约传感网发展的关键问题之一。异构传感网安全多播主要依 靠密码学方法实现,即由组密钥为参与多播的成员提供统一的信息解读权,所有合法组成员 共享一个组密钥来实现消息的加解密,以满足消息完整性,保密性等需求,实现安全通信。 因此,如何安全高效的建立组密钥并恰当更新是解决传感网安全多播通信的第一步。虽然目 前关于传感网组密钥管理的相关研究已经在一定程度上实现了安全多播通信,但它们或者没 有考虑会话期间网络拓扑结构的动态变化,使得方案对成员关系变动带来的组密钥更新的代 价十分巨大,甚至不可行;或者考虑了动态变化,却没有实现有效的身份认证,容易遭受伪 造攻击;或者实现了成员关系认证,但认证消息的长度随时间推移而增加,网络运行越久, 负担越重。因此如何兼顾性能、有效认证和支持成员关系动态变化,还需要进一步设计一种 新的有效的组密钥管理方法。

发明内容

本发明的目的在于提供一种节省网络的存储空间基于动态累加器的异构传感网认证组密 钥管理方法。

本发明的目的是这样实现的:

本发明包括如下步骤:

(1)在布撒节点前,可信机构构建动态累加器函数族,并为节点分配全局参数;

(2)布撒节点,然后由组管理员节点通过可信信道向组成员节点发布初始化信息;

(3)组成员节点根据初始化信息利用累加器建立初始组密钥;

(4)在加入节点和离开组时组管理员节点更新密钥,并根据新密钥构建更新信息,公开 发送给组成员节点;

(5)组成员节点利用身份信息对更新消息的来源进行认证,若认证成功,则接受该更新 消息;否则,组成员放弃本次更新。

可信机构构建动态累加器函数族的步骤包括:

(1)产生五元组(p,p′,q,q′,x0),其中p,p′=(p-1)/2,q,q′=(q-1)/2均为大素数,x0为 正整数;

(2)计算n=pq;

(3)令af=(x0,p,q)为所构建动态累加器函数的辅助信息,建立动态累加器函数 f:Xk×YA,B→Xk,f(x,y)=xymodn,其中Xk={x∈QRn|x≠1},QRn是模n的二次剩余,YA,B是[A,B] 上的大素数集,累加项y∈YA,B,y≠p′,q′,A为大素数,B<A2

(4)重复步骤(1)至(3),将产生的动态累加器函数,构成动态累加器函数族Fk

可信机构为节点分配的全局参数包括累加器f,辅助信息af和累加项y,分配全局参数的 步骤包括:

(1)构建从小于n的正整数集合Zn到YA,B的映射函数LG:Zn→YA,B

(2)为每个节点分配唯一标识si∈Zn,并计算累加项yi=LG(si);

(3)为第q个组的组管理员选择一个动态累加器f∈Fk,将密钥材料(af,f,ych)加载到

(4)将累加项yi加载到普通节点si

组成员节点初始化信息包括:消息体Ech,i(M),消息M由组管理员与成员节点si间配对 密钥加密后的形式;累加器f,组管理员持有的动态累加器;节点si的初始证人信息wi_1, wi_1=f(x0,Y-{yi}),Y为当前组所有成员节点持有的累加项的集合;消息验证码MAC1, MAC1=MAC{f,wi_1};

初始化信息构成为Ech,i{f,wi_1}||MAC1,组管理员节点发送初始化信息的步骤包括:

(1)收集成员列表Y={LG(s1),...,LG(sm)}={y1,...,ym};

(2)计算当前组初始累加值v1=f(x,Y)=f(f(...f(x0,y1),...),ym);

(3)计算组成员si的累加项yi的证人wi_1=f(x,Y-{yi})。

组成员节点根据初始化信息利用累加器建立初始组密钥的步骤包括:

(1)组成员si与组管理员之间密钥解密初始化消息,得到f和wi_1

(2)组成员si计算消息验证码MAC′=MAC{f,wi_1};

(3)组成员验证MAC′与MAC1是否相同;

(4)若MAC′与MAC1相同,组成员si计算组密钥v1=f(wi_1,yi);

(5)若MAC′与MAC1不同,组成员si丢弃该初始化信息。

组管理员节点更新密钥包括:

(1)当组管理员收到新成员入组请求时,组管理员根据新累加值构建更新信息的步骤包 括:

1)从YA,B中选择大素数r,计算r与新成员累加项ya的乘积y*=yar;

2)计算临时新累加值vk+1=f(vk,yar)和临时新证人wch_k+1=f(wch_k,yar);

3)产生整数c,计算C=f(wch_k+1,c);

4)计算消息验证码MAC2,MAC2=MAC{y*,C,c};

5)构建更新信息Ba,Ba={y*,C,c}||MAC2

(2)累加项为ych的组管理员检测到累加项为yd的组成员离开当前组时,组管理员根 据新累加值构建更新信息的步骤包括:

1)选择两个整数r和c;

2)计算新累加值vk+1=vkyd-1mod(p-1)(q-1)modn;

3)计算满足αych+βyd=1的数对(α,β);

4)计算新证人wch_k+1=wch_+kβvk+1α;

5)计算C=f(wch_k+1,c),e=f(r,y*),q=f(r,-1);

6)构建函数p(β)=eβqmodn和g(x,β)=xp(β)modn;

7)计算消息验证码MAC3,MAC3=MAC{yd,C,c,vk+1r,g(x,y,z)};

8)构建更新信息Bd={yd,C,c,vk+1r,g(x,y,z)}||MAC3

当组管理员收到新成员入组请求时,各成员节点利用身份信息对更新消息的来源进行认 证的步骤包括:

(1)验证消息认证码;

(2)若消息认证码验证成功,计算临时累加值临时累加值与随机数c累 加的结果以及C与组管理员累加项ych的累加结果f(C,ych);

(3)如果f(C,ych)与相同,则认证成功;否则认证失败;

(4)若消息认证码验证失败,则认证失败;

当累加项为ych的组管理员检测到累加项为yd的组成员离开当前组时,各成员节点利用 身份信息对更新消息的来源进行认证的步骤包括:

(1)验证消息认证码;

(2)若消息认证码验证成功,计算满足αych+βyd=1的数对(α,β);

(3)若能找到(α,β),计算临时累加值临时累加值 与随机数c累加的结果以及C与组管理员累加项ych的累加结果f(C,ych);

(4)如果f(C,ych)与相同,则认证成功;否则认证失败;

(5)若不能找到(α,β),则认证失败;

(6)若消息认证码验证失败,则认证失败;

身份信息包括:身份标识si,节点的全局唯一标识;累加项yi,节点标识的编码yi=LG(si); 证人wi_k,第k个会话期下yi的证人,满足第k个会话期的组密钥vk=f(wi_k,yi)。

验证消息认证码的步骤包括:

(1)计算MAC′2,MAC′2=MAC{y*,C,c};

(2)验证MAC′2与MAC2是否相同;

(3)如果MAC′2与MAC2相同,则验证成功;

(4)如果MAC′2与MAC2不同,则验证失败。

当组管理员收到新成员入组请求时,接受更新消息的步骤包括:

(1)接受临时累加值v′k+1为第k+1个会话期的新组密钥vk+1

(2)计算节点si在vk+1下累加项yi的新证人wi_k+1=f(wi_k,y*);

当累加项为ych的组管理员检测到累加项为yd的组成员离开当前组时,接受更新消息的 步骤包括:

(1)接受临时累加值v′k+1为第k+1个会话期的新组密钥vk+1

(2)计算节点si在vk+1下累加项yi的新证人

本发明的有益效果在于:

本发明提供的方法密钥材料一次加载,持续使用,无需全网密钥重启;基于RSA假设, 大整数分解困难等密码学知识来保障信息秘密性,能够防止节点在加入和离开所属组时,复 制其他节点的身份信息,从而增加伪造攻击抵抗性;由于每次更新消息都携带了新的正确累 加值vk+1,使得节点能够通过独立计算新累加值vk+1来判定更新消息是否为重放消息,从而抵 抗重放攻击;通过对辅助信息保密,使得多个共谋的普通节点即使能够相互分享各自的身份 信息,作为一个整体,获得当前组的更新消息,也无法计算辅助信息,从而无法避开身份认 证直接计算新密钥,更无法攻破网络,即能够抵抗共谋攻击;利用累加器证人来确定成员身 份,确保仅有效成员能够正确更新组密钥,提供了更好的前后向安全性;节点只需存储自己 的累加项和身份信息,密钥可在需要时动态生成,节省了存储空间;

附图说明

图1为异构传感网分簇示意图;

图2为初始密钥建立的流程图;

图3为新节点加入并更新的流程图;

图4为旧节点离开并更新的流程图。

具体实施方式

下面结合附图对本发明做更详细的描述:

以高安全性高能量的节点为组管理员,普通节点为组成员,可以组成一个分簇异构传感 网,图1给出了这种网络的一个直观示意图。在这样的网络拓扑结构下,本发明所描述的一 种基于动态累加器的异构传感网密钥管理方法,主要由如下几个步骤实现,其中(A)表示主体 A执行计算,A→B表示主体A向主体B单播消息,A→*表示主体A在全组范围内广播消息, Ek{M}和Dk{M}分别表示用密钥k对M加密和解密:

1、初始化及初始密钥建立

假设每个组中同时在线的成员数远小于n,LG:Zn→YA,B是一个将小于n的正整数集Zn中 的元素唯一映射到[A,B]间的大素数域YA,B中的抗碰撞函数,在实际应用中,可取做hash函数。 称y=LG(s)为s的编码。初始化过程如下:

(1)基站选定安全参数k,随机产生五元组(p,p′,q,q′,x0),其中p,p′=(p-1)/2,q, q′=(q-1)/2均为大素数;计算n=pq;运行算法G随机产生若干组辅助参数af=(x0,p,q),并 随机从中选取一组构建第q个组的累加器为每个节点分配唯一标识si∈Zn并 计算编码yi=LG(si)。令表示第q个组的组管理员节点标识。将密钥材料(af,f,ych)加载到将编码yi加载到普通节点si。密钥材料加载完成后将节点布撒到网络。即:

(Base):{af,f}←G(k),f∈Fk

Baseschq:(af,f,ych)

Base→si:(yi)

(2)经邻居发现收集成员列表Y={LG(s1),...,LG(sm)}={y1,...,ym},计算初始累加值 v1=f(x,Y),以及累加项yi的证人wi_1=f(x,Y-{yi}).由于与成员节点之间已建立配对密钥, 故可借由配对密钥加密的安全信道为成员节点发送初始信息。即:

(schq):Y={yi|1im,yi=LG(si)}

v1=f(x0,Y)

wi_1=f(x0,Y-{yi})

schqsi:Ech,i{f,wi_1}||MAC{f,wi_1}

(3)成员节点si解密消息并验证其完整性,如果验证失败,则丢弃该消息;否则保留wi_1作 为初始证人,计算累加值v1并将其作为第一个会话期的组密钥。即:

(si):Dch,i{f,wi_1},

check(MAC)?v1=f(wi_1,yi):drop

2、新节点加入并更新

当节点处于会话期k时,只要有新节点加入,则更新会话进入到第k+1个会话期。对新 节点sa来说,LG(sa)=ya,sa首先向发送入簇申请,获得初始化信息和第k+1个会话期的组 密钥vk+1,并由发布更新信息Ba,接收到的成员节点计算vk+1,并用它来验证消息是否来自 簇头节点,如果是则接受vk+1为新密钥,并计算新证人wi_k+1;否则丢弃vk+1,继续保留原密钥 vk

SaSchq:Ech,a{new,ya}

(schq):cRand,rYA,B,

y*=yar

vk+1=f(vk,yar),wch_k+1=f(wch_k,yar)

C=f(wch_k+1,c)

wa_k+1=f(vk,r),

schqsa:Ech,α{f,wa_k+1}||MAC{f,wa_k+1}

schq*:Ba={y*,C,c}||MAC{y*,C,c}

(si):check(MAC)?(1):drop

(1):v′k+1=f(vk,y*)

check{f(C,ych)==f(v′k+1,c)}

?wi_k+1=f(wi_k,y*),vk+1=v′k+1

:drop

3、旧节点删除并更新

当在第k个会话期要删除节点sd时,计算随机参数构造密钥隐藏式g(x,y,z)并发动更 新,广播被删除节点信息。各成员节点首先验证更新消息来源,若来自簇头节点,则进一步 计算各自新证人wi_k+1和证人参数(α,β),从密钥隐藏式中恢复第k+1个会话期组密钥vk+1;否 则丢弃该更新信息,保持原有密钥和证人。详细过程如下:

(schq):r,cRand

vk+1=vkyd-1mod(p-1)(q-1)modn

(α,β)←A(ych,yd)

wch_k+1=wch_kβvk+1α

C=f(wch_k+1,c)

e=f(r,y*),q=f(r,-1)

p(β)=eβqmodn

g(x,β)=xp(β)modn

schq*:Bd={yd,C,c,vk+1r,g(x,y,z)}||MAC{yd,C,c,vk+1r,g(x,y,z)}

(si):check(MAC)?(1):drop

(1):(α,β)←eGCD(yi,yd)

xi=wi_kβ(vk+1r)α

vk+1=g(xi,β)

check{f(C,ych)==f(vk+1,c)}

?wi_k+1=wi_kβvk+1α,vk+1=vk+1

:drop

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号