一种物联网传感系统的密钥管理方法

文档序号:7781763阅读:251来源:国知局
一种物联网传感系统的密钥管理方法
【专利摘要】本发明公开一种物联网传感系统的密钥管理方法,包括如下步骤:A、运行感知节点注册和网关对感知节点的认证。B、启动密钥管理模块,利用感知节点和网关中的预置秘密信息,根据数据包的不同安全需求,对感知节点与网关间的对密钥和网关网络密钥进行生成以及周期性的更新。本发明支持不同密钥不同有效期的更新,为网关及网关以下的传感网络通信提供有效的密钥安全保护。
【专利说明】一种物联网传感系统的密钥管理方法
【技术领域】
[0001]本发明涉及物联网安全【技术领域】,尤其涉及一种物联网传感系统的密钥管理方法。
【背景技术】
[0002]城市公共安全、家居智能安防领域普遍应用传感器网络。不同的传感器网络汇聚来自各种类型的传感器(红外传感器、门磁传感器、可燃气传感器、烟感传感器等)信息,并利用互联网综合资源、提供实现监控和安全管理的服务。在严峻城市公共安全的现实需求下,建立一套高效的传感器安全机制,不仅能够解决凸显的现实问题,而且是促进物联网发
展的重要保障。
[0003]当前较成熟的ZigBee安全机制由安全服务提供层提供。采用了分享安全密钥。安全组件(SSP)是通过ZigBee设备对象(ZigBee Device Object,ZD0)进行初始化和配置的,要求实现高级加密标准(AES)。ZigBee规范定义了信任中心的用途。其中,信任中心是在网络中分配安全密钥的一种令人信任的设备。
[0004]但是,在上述安全机制中更深层次的安全和系统性能问题并没有得到充分的考虑,缺乏相应的密钥管理体制。加密密钥无限期使用存在如下问题:一、密钥使用时间越长,它泄露的机会就越大;二、如果密钥已泄露,那么密钥使用越久,损失就越大;三、密钥使用越久,人们花费精力破译它的诱惑力就越大;四、对用同一密钥加密的多个密文进行密码分析时一般比较容易。不同密钥应有不同有效期。数据密钥的有效期主要依赖数据的价值和给定时间里加密数据的数量。价值与数据传送率越大所用的密钥更换越频繁。用来加密保存数据的加密密钥不能经常地变换。通常是每个数据段用唯一的密钥加密,然后再用密钥加密密钥把所有密钥加密,密钥加密密钥要么被记忆下来,要么保存在一个安全地点。

【发明内容】

[0005]本发明的目的在于通过一种物联网传感系统的密钥管理方法,来解决以上【背景技术】部分提到的问题。
[0006]为达此目的,本发明采用以下技术方案:
[0007]一种物联网传感系统的密钥管理方法,其包括如下步骤:
[0008]A、运行感知节点注册和网关对感知节点的认证;
[0009]B、启动密钥管理模块,利用感知节点和网关中的预置秘密信息,根据数据包的不同安全需求,对感知节点与网关间的对密钥和网关网络密钥进行生成以及周期性的更新。
[0010]特别地,所述步骤B还包括在感知节点和网关中预置秘密信息,具体如下:
[0011]网关生成的所部署网络中所有感知节点的ID号及与其ID号一一对应的随机数标识符N(SB);网关与所部署的所有感知节点都预置一个单向散列函数MD5 ;每个感知节点预置与自己的ID号相对应的随机数标识符Ni (i=l, 2,3,...n);新部署的合法新感知节点要预置当前的网络密钥。[0012]特别地,所述步骤B中对感知节点与网关间的对密钥进行生成以及周期性更新,具体包括:
[0013]对感知节点与网关间的对密钥进行生成以及周期性更新的方法相同,其过程如下:在网络部署完成之后,网关向所管辖的网络下发首次生成或更新密钥命令数据包,该数据包包含一个新的随机数Nupdate(SB),收到该命令数据包的所有感知节点将网关下发的所述新的随机数Nupdate(SB)和其自身预置的与自己的ID号相对应的随机数Ni(SB)进行异或运算后,利用单向散列函数MD5生成感知节点和网关之间的对密钥Ki_updat6,即
K1-update _MD5 (Ni?U。
[0014]特别地,所述步骤B中对网关网络密钥进行生成以及周期性更新,具体过程如下:
[0015]对网关网络密钥进行生成:
[0016]网络部署前,通过人工生成并预置在网关和所有感知节点中带物理保护的存储区中,其中,全网密钥GK (16B)预置到感知节点中;
[0017]对网关网络密钥进行周期性更新:
[0018]当检测出网络中有异常或感知节点被攻破后,网关随机生成密钥更新数据Nonce (8B),由GK’ =MD5 (Nonce)得到新的网络密钥GK’ (16B);网关使用感知节点与网关间的对密钥PKi加密密钥更新数据Nonce (8B)后,将其下发给每个感知节点i(i=l,2,…,N,N为全网合法感知节点总数);感知节点收到网关下发的密文后,利用自己与网关间的对密钥解密该密文,得到密钥更新数据Nonce (8B),由GK’ =MD5 (Nonce)得到新的网络密钥GK,(16B),并更新保存。
[0019]特别地,所述步骤B还包括:
[0020]在所有新旧密钥交替的过渡期内,凡是涉及到使用新密钥来生成和验证数据完整性的数据包,网关先用新密钥来验证MAC ;如果MAC验证不成功,则利用旧密钥来验证MAC ;若旧密钥验证MAC不通过,则判定数据包遭到过篡改。
[0021 ] 特别地,所述步骤B进一步包括:
[0022]当新的感知节点加入当前网络时,分两种情况:一、若所述新的感知节点加入时,网络还没有进行过全网密钥更新,则由于已部署感知节点的全网密钥GKO是预置的16B,因此在所述新的感知节点部署前,离线服务器生成NonceO (SB),用它来生成全网密钥GK0=MD5 (NonceO);网关侧,缓存NonceO ;这时,所述新的感知节点i加入后获得网关与感知节点的对密钥PKi,网关利用PKi加密NonceO,发送给新的感知节点i ;新的感知节点i进行GK0=MD5 (NonceO)的运算,获得网络密钥;二、若所述新的感知节点加入时,网络更新过全网密钥,则网关缓存当前生成全网密钥GKj的密钥更新数据Nonce(8B),所述新的感知节点i加入后获得网关与感知节点的对密钥PKi,网关可由此PKi加密Noncej,发送给新的感知节点i ;新的感知节点i进而得到网络密钥GKj。
[0023]特别地,所述步骤B中对感知节点与网关间的对密钥和网关网络密钥进行生成以及周期性的更新均有感知节点和网关自己计算完成,不做密钥分发。
[0024]本发明提出的物联网传感系统的密钥管理方法支持不同密钥不同有效期的更新,为网关及网关以下的传感网络通信提供有效的密钥安全保护。
【专利附图】

【附图说明】[0025]图1为本发明实施例提供的物联网传感系统的密钥管理方法流程图。
【具体实施方式】
[0026]下面结合附图和实施例对本发明作进一步说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
[0027]请参照图1所示,图1为本发明实施例提供的物联网传感系统的密钥管理方法流程图。
[0028]本实施例中物联网传感系统的密钥管理方法流具体包括如下步骤:
[0029]步骤S101、安全感知节点上电后,首先运行感知节点注册和网关对感知节点的认证。
[0030]步骤S102、启动密钥管理模块,利用感知节点和网关中的预置秘密信息,根据数据包的不同安全需求,对感知节点与网关间的对密钥和网关网络密钥进行生成以及周期性的更新。
[0031]传感系统中的感知节点间交换的数据包,根据不同的标准可以分为几类:按照数据包的作用分为:控制包和数据包;按照数据包的通信方式分为:广播包、单播包、组播包。所有种类的数据包都需要数据完整性认证(数据完整性认证是最基本的安全保护功能),但是只有部分数据包需要机密性。例如,路由控制信息通常不需要机密性,而传感数据、网关命令或请求/响应数据包或者这些数据包中的某些字段则可能需要机密性。因此,本发明的密钥管理方法根据数据包的不同安全需求,建立并维护了两种密钥:感知节点与网关间的对密钥和网关网络密钥。其中,感知节点与网关之间的对密钥是指每个感知节点与网关共享的对密钥。网关网络密钥是指网关网络中的所有感知节点共享的网络密钥。
[0032]在部署前,需要在感知节点和网关中预置秘密信息,具体包括:网关生成的所部署网络中所有感知节点的ID号及与其ID号一一对应的随机数标识符N(8B);网关与所部署的所有感知节点都预置一个单向散列函数MD5 ;每个感知节点预置与自己的ID号相对应的随机数标识符Ni (i=l, 2,3,...n);新部署的合法新感知节点要预置当前的网络密钥。
[0033]下面详细对感知节点与网关间的对密钥和网关网络密钥分别进行说明:
[0034]1、感知节点与网关间的对密钥
[0035]1.1、使用场景
[0036]一、网关可以使用该密钥给某个特定感知节点发送敏感数据(需要机密性保护)。
[0037]二、感知节点向网关上报感知数据(如温度、湿度、光照等数据)。
[0038]1.2、生成和更新
[0039]对感知节点与网关间的对密钥进行生成以及周期性更新的方法相同,其过程如下:在网络部署完成之后,网关向所管辖的网络下发首次生成或更新密钥命令数据包,该数据包包含一个新的随机数Nupdate(SB),收到该命令数据包的所有感知节点将网关下发的所述新的随机数Nupdate(SB)和其自身预置的与自己的ID号相对应的随机数Ni(SB)进行异或运算后,利用单向散列函数MD5生成感知节点和网关之间的对密钥Ki_updat6,即K1-Upfetp=MDS (NieNupdato);网关按照上述方式来批量计算、更新与每个感知节点间的对密钥。[0040]首次对密钥更新(即对密钥生成)结束后,每个感知节点利用更新后的对密钥分别上报温湿度、光照等数据包给网关。具体做法是此数据包利用每个感知节点与网关间的对密钥来加密数据数值字段和整个数据包的MAC认证码。其中,MAC认证码可指示数据段是否被篡改。
[0041]2、网关网络密钥
[0042]2.1、使用场景
[0043]当网关向网络中的所有感知节点下发控制、查询命令等场景下使用此密钥。
[0044]2.2、生成方式
[0045]网络部署前,通过人工生成并预置在网关和所有感知节点中带物理保护的存储区中,其中,全网密钥GK (16B )预置到感知节点中。
[0046]2.3、更新方式
[0047]当检测出网络中有异常或感知节点被攻破后,网关随机生成密钥更新数据Nonce (8B),由GK’ =MD5 (Nonce)得到新的网络密钥GK’ (16B);网关使用感知节点与网关间的对密钥PKi (即之前的IVupdate)加密密钥更新数据Nonce(8B)后,将其下发给每个感知节点i (i=l,2,…,N,N为全网合法感知节点总数);感知节点收到网关下发的密文后,利用自己与网关间的对密钥解密该密文,得到密钥更新数据Nonce (8B),由GK’ =MD5 (Nonce)得到新的网络密钥GK’(16B),并更新保存。
[0048]为了避免因网络丢包导致握手式的交互确认陷入死循环等待,本发明规定一个过渡期内新旧密钥共存的机制。在所有新旧密钥交替的过渡期内,凡是涉及到使用新密钥来生成和验证数据完整性的数据包,网关先用新密钥来验证MAC ;如果MAC验证不成功,则利用旧密钥来验证MAC ;若旧密钥验证MAC不通过,则判定数据包遭到过篡改。
[0049]另外,针对新的感知节点加入的情况,本实施例的处理机制如下:当新的感知节点加入当前网络时,分两种情况:一、若所述新的感知节点加入时,网络还没有进行过全网密钥更新,则由于已部署感知节点的全网密钥GKO是预置的16B,因此在所述新的感知节点部署前,离线服务器生成NonceO (8B),用它来生成全网密钥GK0=MD5 (NonceO);网关侧,缓存NonceO ;这时,所述新的感知节点i加入后获得网关与感知节点的对密钥PKi,网关利用PKi加密NonceO,发送给新的感知节点i ;新的感知节点i进行GK0=MD5 (NonceO)的运算,获得网络密钥;二、若所述新的感知节点加入时,网络更新过全网密钥,则网关缓存当前生成全网密钥GKj的密钥更新数据Nonce (SB),所述新的感知节点i加入后获得网关与感知节点的对密钥PKi,网关可由此PKi加密Noncej,发送给新的感知节点i ;新的感知节点i进而得到网络密钥GKj。
[0050]需要说明的是,本发明为了密钥分发过程中降低单方节点的功耗,感知节点和网关间的密钥生成及更新工作都由感知节点和网关自己计算完成,不做密钥的分发工作。
[0051]本发明的技术方案支持不同密钥不同有效期的更新,为网关及网关以下的传感网络通信提供有效的密钥安全保护。
[0052]注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
【权利要求】
1.一种物联网传感系统的密钥管理方法,其特征在于,包括如下步骤: A、运行感知节点注册和网关对感知节点的认证; B、启动密钥管理模块,利用感知节点和网关中的预置秘密信息,根据数据包的不同安全需求,对感知节点与网关间的对密钥和网关网络密钥进行生成以及周期性的更新。
2.根据权利要求1所述的物联网传感系统的密钥管理方法,其特征在于,所述步骤B还包括在感知节点和网关中预置秘密信息,具体如下: 网关生成的所部署网络中所有感知节点的ID号及与其ID号一一对应的随机数标识符N(SB);网关与所部署的所有感知节点都预置一个单向散列函数MD5 ;每个感知节点预置与自己的ID号相对应的随机数标识符Ni (i=l, 2,3,...n);新部署的合法新感知节点要预置当前的网络密钥。
3.根据权利要求2所述的物联网传感系统的密钥管理方法,其特征在于,所述步骤B中对感知节点与网关间的对密钥进行生成及周期性更新,具体包括: 对感知节点与网关间的对密钥进行生成以及周期性更新的方法相同,其过程如下:在网络部署完成之后,网关向所管辖的网络下发首次生成或更新密钥命令数据包,该数据包包含一个新的随机数Nupdate(SB),收到该命令数据包的所有感知节点将网关下发的所述新的随机数Nupdate(SB)和其自身预置的与自己的ID号相对应的随机数Ni (SB)进行异或运算后,利用单向散列函数MD5生成感知节点和网关之间的对密钥I^updat6,即
4.根据权利要求3所述的物联网传感系统的密钥管理方法,其特征在于,所述步骤B中对网关网络密钥进行生成以及周期性更新,具体过程如下: 对网关网络密钥进行生成: 网络部署前,通过人工生成并预置在网关和所有感知节点中带物理保护的存储区中,其中,全网密钥GK (16B)预置到感知节点中; 对网关网络密钥进行周期性更新: 当检测出网络中有异常或感知节点被攻破后,网关随机生成密钥更新数据Nonce(SB),由GK’=MD5(NonCe)得到新的网络密钥GK’ (16B);网关使用感知节点与网关间的对密钥PKi加密密钥更新数据Nonce (8B)后,将其下发给每个感知节点i (i=l,2,…,N,N为全网合法感知节点总数);感知节点收到网关下发的密文后,利用自己与网关间的对密钥解密该密文,得到密钥更新数据Nonce (8B),由GK’ =MD5 (Nonce)得到新的网络密钥GK’ (16B),并更新保存。
5.根据权利要求4所述的物联网传感系统的密钥管理方法,其特征在于,所述步骤B还包括: 在所有新旧密钥交替的过渡期内,凡是涉及到使用新密钥来生成和验证数据完整性的数据包,网关先用新密钥来验证MAC ;如果MAC验证不成功,则利用旧密钥来验证MAC ;若旧密钥验证MAC不通过,则判定数据包遭到过篡改。
6.根据权利要求5所述的物联网传感系统的密钥管理方法,其特征在于,所述步骤B进一步包括: 当新的感知节点加入当前网络时,分两种情况:一、若所述新的感知节点加入时,网络还没有进行过全网密钥更新,则由于已部署感知节点的全网密钥GKO是预置的16B,因此在所述新的感知节点部署前,离线服务器生成NonceO (SB),用它来生成全网密钥GK0=MD5 (NonceO);网关侧,缓存NonceO ;这时,所述新的感知节点i加入后获得网关与感知节点的对密钥PKi,网关利用PKi加密NonceO,发送给新的感知节点i ;新的感知节点i进行GK0=MD5 (NonceO)的运算,获得网络密钥;二、若所述新的感知节点加入时,网络更新过全网密钥,则网关缓存当前生成全网密钥GKj的密钥更新数据Nonce(8B),所述新的感知节点i加入后获得网关与感知节点的对密钥PKi,网关可由此PKi加密Noncej,发送给新的感知节点i ;新的感知节点i进而得到网络密钥GKj。
7.根据权利要求1至6之一所述的物联网传感系统的密钥管理方法,其特征在于,所述步骤B中对感知节点与网关间的对密钥和网关网络密钥进行生成以及周期性的更新均有感知节点和网关自己计算完成,`不做密钥分发。
【文档编号】H04W84/18GK103686717SQ201310719011
【公开日】2014年3月26日 申请日期:2013年12月23日 优先权日:2013年12月23日
【发明者】姚尧, 吕世超, 潘磊, 芦翔, 周新运, 孙利民 申请人:江苏物联网研究发展中心
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1