法律状态公告日
法律状态信息
法律状态
2019-11-12
授权
授权
2017-05-03
实质审查的生效 IPC(主分类):H04W12/02 申请日:20160503
实质审查的生效
2017-04-05
公开
公开
技术领域
本发明涉及无线传感网技术领域和信息安全领域,特别涉及一种基于混沌神经网络公钥加密算法的异构传感网加密协议。
背景技术
无线传感网络是当前关注度高、涉及交叉领域广、知识集成度高的前沿热点研究领域。它是物联网信息感知体系的核心技术,在军用和民用领域都得到广泛应用,是我国推进物联网应用的首要着力点,而数据的安全性是传感网安全运行的重要标准。
用于传感器网络的加密协议不单要考虑其密钥管理、加密技术、对抗攻击和安全路由等方面安全,还需要考虑无线传感网具有异构性,具有传感器节点能量存储量不同、数据存储空间不同、计算能力不同等特点的问题。
目前在传感网中运用最多的传统的AES对称加密算法,在异构传感网中无论各个子网络运算能力、存储空间以及安全需求是什么情况,只能单一的使用固定大小密钥空间的密钥进行加密运算。因此,对于部分子网可能出现加密功耗及负荷过大的情况,对于另一些子网又出现安全性不够高的情况。
混沌神经网络在人工智能、信号处理、深度学习,特别是在保密通信等领域具有广泛的研究价值和应用前景。公钥加密算法相对于对称加密算法来说更加安全。但是,早期研究者普遍认为,计算复杂度高的公钥密码运算不适用于传感网。使得公钥密码体制这一可以很好解决传感网密钥分发等问题的技术迟迟没有得到研究者的重视。
发明内容
本发明的目的在于克服现有技术的不足,提出一种基于混沌神经网络公钥加密算法的异构传感网加密协议,将公钥密码体制灵活运用到传感网中,并解决异构传感网中在传感节点存储空间以及计算能力不同的情况下,只能固定使用同一密钥空间大小的密钥对数据加密的缺陷。
本发明解决其技术问题所采用的技术方案是:
一种基于混沌神经网络公钥加密算法的异构传感网加密协议,应用于由基站层、簇头层和感知层组成的异构传感网;所述基站层包括基站,所述簇头层包括若干簇头节点,所述感知层分为若干子网络,每个子网络包括多个感知节点;所述基站连接若干个簇头节点,每个簇头节点连接一个子网络;加密协议包括:
基站层与簇头层保密通信网的建立:每个簇头节点初始化一个私钥并发送给基站;基站初始化一个联接突触矩阵和一个私钥并公开联接突触矩阵,根据簇头节点的私钥、基站的联接突触矩阵和基站的私钥计算出公共密钥
簇头层与感知层保密通信网的建立:同一子网络中的每个感知节点初始化一个私钥并发送给对应的簇头节点;簇头节点根据子网的安全级,将自己初始化的私钥裁剪成与感知节点私钥阶数相同的方阵,同时在初始联接突触矩阵池中选择与感知节点私钥阶数相同的联接突触矩阵并公开,根据感知节点的私钥、初始联接突触矩阵池中选择的联接突触矩阵和簇头节点裁剪后的私钥计算出公共密钥
簇头层密钥更新:基站为每个簇头节点生成新的私钥并对新私钥加密后发送到对应的簇头节点;簇头节点解密后获得新私钥;基站根据簇头节点的新私钥、基站的联接突触矩阵和基站的私钥计算出新的公共密钥
感知层密钥更新:基站向需要进行密钥更新的子网络对应的簇头节点传输密钥更新指令;对应的簇头节点为子网络内每个传感节点生成新的私钥并对新私钥加密后发送到对应的传感节点;传感节点解密后得到新私钥;簇头节点根据感知节点的新私钥、初始联接突触矩阵池中选择的联接突触矩阵和簇头节点裁剪后的私钥计算出新的公共密钥
簇头节点的退出:基站删除保存的该簇头节点的私钥,并进行簇头层密钥更新,密钥更新之后,请求退出的簇头节点获取不到新的保密通信网的密钥;
感知节点的退出:基站向有感知节点退出的子网络对应的簇头节点发送退出指令;有感知节点退出的子网络对应的簇头节点收到指令后,删除请求退出的传感节点的私钥,并进行感知层密钥更新,密钥更新之后,请求退出的感知节点获取不到新的保密通信网的密钥。
新簇头节点的加入:请求加入的新簇头节点与基站握手并协商密钥,建立一条安全通信线路,新簇头节点将私钥发送给基站;基站根据簇头节点的私钥、基站的联接突触矩阵和基站的私钥计算出新的公共密钥
新感知层节点的加入:有新感知节点加入的子网络对应的簇头节点退出保密通信网;有新感知节点加入的子网络对应的簇头节点与新感知节点重新组网;有新感知节点加入的子网络对应的簇头节点加入保密通信网。
所述异构传感网还包括云服务器;所述基站将
优选的,所述簇头节点对自己私钥的裁剪是自适应的,所述簇头节点识别子网络的安全级别,裁剪出安全级对应阶数的私钥。
优选的,所述子网络的安全级别根据子网络的运算能力、数据存储能力以及保密需求来划分。
优选的,所述簇头层包括基站层信号覆盖范围内的簇头节点和基站层信号覆盖范围外的簇头节点;所述基站层信号覆盖范围内的簇头节点直接与基站建立保密通信网;所述基站层信号覆盖范围外的簇头节点通过使用基站层信号覆盖范围内的与自己信号强度最大的簇头节点作为路由节点与基站层建立保密通信网。
本发明提供的技术方案带来的有益效果是:一种基于混沌神经网络公钥加密算法的异构传感网加密协议,将公钥密码体制灵活运用到传感网中,并解决异构传感网中在传感节点存储空间以及计算能力不同的情况下,只能固定使用同一密钥空间大小的密钥对数据加密的缺陷,提高了网络的安全性和加密灵活性。
以下结合附图及实施例对本发明作进一步详细说明,但本发明的一种基于混沌神经网络公钥加密算法的异构传感网加密协议不局限于实施例。
附图说明
图1为本发明实例中混沌神经网络公钥加密算法原理图;
图2为本发明的异构传感网的通用模型;
图3为本发明的基站与簇头节点建立保密通信网流程;
图4为本发明的安全级划分、矩阵裁剪以及联接突触矩阵T选取的对应关系图;
图5为本发明的簇头节点与感知层节点建立保密通信网的流程;
图6为本发明的簇头层密钥更新的流程;
图7为本发明的感知层密钥更新的流程;
图8为本发明的新簇头节点的加入流程。
具体实施方式
一种基于混沌神经网络公钥加密算法的异构传感网加密协议,将基于混沌神经网络的公钥加密算法应用在异构传感网中。所述混沌神经网络公钥加密技术是指将混沌学理论引入到神经网络中,使人工神经网络具有丰富的非线性动力特性和高度计算复杂特性,例如改进后具有混沌特性的离散Hopfield神经网络。所述混沌神经网络公钥加密算法是将并行的线性反馈移位寄存器的输出作为神经网络模型的输入,利用神经网络的非线性动力特性和混沌特征特性,对线性反馈移位寄存器的产生的伪随机序列进行随机选择,如图1所示。
如图2所示,为本发明的异构传感网的通用模型,具体的包括基站层、簇头层和感知层。所述基站层包括基站,所述簇头层包括若干簇头节点,所述感知层分为若干子网络,每个子网络包括多个感知节点;所述基站连接若干个簇头节点,每个簇头节点连接一个子网络。所述协议中基站在传感网络加密协议中作为一个最终管理者,他被视做一个绝对安全的平台。
具体的,加密协议包括:
1、保密通信网的建立
1)基站层与簇头层网络的建立
在保密通信网建立时,将每个簇头节点初始化一个私钥Hn并告诉基站。基站初始化一个联接突触矩阵T和一个私钥H,向所有簇头节点公开联接突触矩阵T,计算公共密钥
...
所述
所有簇头节点计算出公共密钥
对于基站信号外的子网络,簇头节点与基站的密钥协商就需要基站信号覆盖范围内的靠近基站方向,并且与该簇头节点信号强度最强的另一个簇头节点作为路由节点,传递簇头节点n对应的密钥协商联接突触矩阵
簇头节点拿到自己对应
这样,基站层与其信号覆盖范围外的簇头节点也建立了保密通信网,流程如图3所示。
2)簇头层与感知层网络的建立
感知层内的传感节点被划分为若干个子网络,由于传感网络的异构性,每个子网络的节点的运算能力以及保密需求不一样,所以在网络感知层节点初始化时,根据不同子网络的运算能力以及保密需求,给不同子网络初始化不同密钥空间大小的私钥Hn(4*4/8*8/16*16),并传输给传感节点所对应的唯一的簇头节点。簇头节点首先将根据子网的安全级,将自己原有的私钥Hn(16*16)进行裁剪得到Hn(4*4/8*8/16*16),同时在初始联接突触矩阵池中选择相对应阶的联接突触矩阵T并公开,如图4所示。计算出公共密钥
...
所述
所有感知节点计算出公共密钥
2、密钥的更新
1)簇头层密钥更新
基站生成n个新的簇头节点私钥Ha,Hb,...,Hn,并用密钥
基站用新的簇头节点私钥重新计算公共密钥
...
然后,基站向信号覆盖内的簇头节点传输其节点n对应的
所有簇头节点计算出更新后的公共密钥
2)感知层密钥更新
感知层的各个子网可以根据异构传感网的需求进行密钥更新。基站向需要进行密钥更新的子网的簇头节点传输密钥更新指令,对应的簇头节点生成n个新的传感节点私钥H(a)1,H(a)2,...,H(a)n,并用原感知层密钥分别对H(a)1,H(a)2,...,H(a)n加密,传输给对应的传感节点,传感节点解密后得到新的私钥H(a)n。
簇头节点用感知节点新的私钥重新计算更新后的公共密钥
...
然后,向其子网络内的传感节点传输节点n对应的
所有感知节点计算出公共密钥
3、新节点的退出和加入
1)簇头节点的退出
在原有异构传感网络中,簇头节点的退出意味着对应的整个子网络的退出,基站将删除基站内保存的该子网络的唯一簇头节点的私钥Hn,并进行一次簇头层密钥更新,密钥更新之后,请求退出的子网络的簇头节点将得不到新的簇头层保密通信的密钥。
2)感知节点的退出
在原有异构传感网络中,如果子网络中的感知节点要退出保密通信网,基站将向对应子网络的簇头节点发送退出指令。簇头节点收到指令后,删除请求退出的传感节点的私钥,并进行一次密钥更新。密钥更新之后,请求退出的感知节点将得不到所在子网络的保密通信的密钥。
3)新簇头节点的加入
a)新簇头节点与基站握手并协商密钥
在原有网络的基础上加入新的子网络,首先要求子网络的簇头层与基站层握手,并与基站协商密钥。基站将联接突触矩阵T与自己的私钥H运算得到T(a)addS=H*T*H',将T和T(a)addS公布,请求加入的簇头节点计算T(a)addR=Ha*T*Ha'和
b)新的簇头节点加入保密通信网络
基站重新计算公共密钥
...
基站存储
所有簇头节点计算出更新后的公共密钥
对于基站信号覆盖范围外的子网络的加入,簇头节点与基站的密钥协商就需要基站信号覆盖范围内的靠近基站方向,并且与该簇头节点信号强度最强的另一个簇头节点作为路由节点,其他过程与基站信号覆盖范围内新簇头节点的加入一样。新簇头节点加入流程如图8所示。
4)新感知层节点的加入
感知层每一个子网络都涉及非常多数量的传感节点,新的传感节点的加入往往数量较多,如果每一个节点都与对应的簇头节点进行密钥协商,将会耗费大量的资源,根据传感网的特性,本协议在新的感知层节点加入网络时,将需要加入感知节点的子网络作为一个新的子网络加入原有的保密通信网。首先,有新感知节点加入的子网络的唯一簇头节点向基站发送簇头节点退出请求,具体过程如“簇头节点的退出”所述;然后该子网的簇头节点与感知节点重新组网,具体过程如“基站层与簇头层网络的建立”所述;最后将该子网络作为新子网加入保密通信网,具体过程如“新簇头节点的加入”所述。
具体的,上述内容中公钥加密算法所涉及的联接突触矩阵
具体的,异构传感网中的各个子网根据感知节点的运算能力、数据存储能力以及安全需求,在初始化时被划分成若干个相同或不同的安全级,簇头节点在对私钥H裁剪之前,将识别子网络的安全级,以确定裁剪几维的新矩阵H作为与感知节点进行密钥交换的私钥。
具体的,对于私钥H的裁剪方法如下:簇头节点截取N阶轮换矩阵H的第一行的m个元素,组成一个新的轮换矩阵。对联接突触矩阵T的裁剪同对于私钥H的裁剪。
具体的,所述初始联接突触矩阵池指的是在簇头节点中存储的、具有多个不同的按照矩阵的阶从小到大排列的联接突触矩阵T的一个集合(4*4,8*8,16*16,、、、。)。根据安全级,确定好剪裁的私钥以后,再进入到这个初始联接突触矩阵池里面选取一个和私钥阶相同的联接突触矩阵T。
具体的,在云服务器中计算混沌吸引子的方法如下:
(1)云服务器在收到
其中,Tij表示神经元联接突触矩阵,表示神经元i的阈值,σ(x)表示符号函数,随机输入一行N列的数Sj(t)作为初始值,将前一个状态的输出作为下一个状态的输入,进行迭代计算,直到收敛到一个稳定点(吸引子)Si(t+1)=Si(t)。
(2)随机输入一行N列的数Sj(t)作为新的初始值,计算下一个混沌吸引子。
(3)重复操作2,直到计算出所有的2N个不同的吸引子为止。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
机译: 基于数字有线电视系统的基于公钥加密算法的服务订阅和加密密钥分配方法
机译: 数字有线电视系统中基于公钥加密算法的服务预订和分发密钥的方法
机译: 电子元器件中基于椭圆曲线公钥执行加密算法的对策