CN103702326B - 一种基于移动Ad Hoc网络的无证书密钥协商方法 - Google Patents

一种基于移动Ad Hoc网络的无证书密钥协商方法 Download PDF

Info

Publication number
CN103702326B
CN103702326B CN201310718403.5A CN201310718403A CN103702326B CN 103702326 B CN103702326 B CN 103702326B CN 201310718403 A CN201310718403 A CN 201310718403A CN 103702326 B CN103702326 B CN 103702326B
Authority
CN
China
Prior art keywords
node
network
key
private key
pki
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201310718403.5A
Other languages
English (en)
Other versions
CN103702326A (zh
Inventor
郑军
徐三春
郭先臣
王殿欣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201310718403.5A priority Critical patent/CN103702326B/zh
Publication of CN103702326A publication Critical patent/CN103702326A/zh
Application granted granted Critical
Publication of CN103702326B publication Critical patent/CN103702326B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及一种基于移动Ad Hoc网络的无证书密钥协商方法,包括以下步骤:一、系统网络的初始化;二、构建网络主私钥:每个节点选取t‑1次多项式交换必要信息,任意t或者多于t个节点相互合作得到网络主私钥,同时获得网络公钥;三、利用网络中的主私钥为节点生成密钥对;四、利用生成的密钥对来进行节点间的秘密通信,实现加解密过程。本发明在实现密钥协商的同时,不存在证书校验和密钥托管问题,同时能够检测出危险节点,而且推荐的加密方案能够保证安全性的前提下具有较少的加密项,减少了计算量和通信量,因此具有较好的实用性和安全性。

Description

一种基于移动Ad Hoc网络的无证书密钥协商方法
技术领域
本发明涉及一种移动Ad Hoc网络中的密钥管理方法,尤其涉及移动节点之间的密钥协商问题,属于网络通讯安全领域。
背景技术
移动Ad Hoc网络(MANET)是一种不依赖于任何固定基础设施或特殊节点的自组织的新型网络结构。网络中各个节点都是可移动的,并且资源受限。整个网络是通过移动节点之间的动态互联连接而成,形成了一种动态的网络拓扑结构。由于移动Ad Hoc网路的这种自组织特征,并支持移动节点之间的动态拓扑连接和多跳通信,该网络具有很强的自组性、鲁棒性和易构建性。由于移动Ad Hoc网络的这些特点,该类型网络近来得到越来越多的青睐,被广泛的运用于特殊领域,如军事领域。然而由于移动Ad Hoc网络的移动性和有限的物理安全,该网络很容易遭受攻击。由于其不依赖于任何固定的基础设施,传统的安全解决方案不能有效地解决移动Ad Hoc网络中存在的安全问题。而密钥管理是保证网络安全的基础,在不依赖于基础设施的前提之下,如何在这种对等的移动网络节点之间安全高效的协商密钥是当今的研究热点。
近年来,有关移动Ad Hoc网络中的密钥管理问题的研究得到了广泛的关注和发展。目前,主要的密钥管理策略有两大类:一类是基于公钥密码体制(PKI)的采用证书的密钥管理方案,另一类是基于身份的公钥加密方法(ID-PKC)。在传统的PKI体制中,存在单个或者分布式的证书管理中心(CA)来为每个节点分发证书,每个节点的证书都被嵌入了他们对应的公钥。为保证通信的安全性和真实性,节点之间的通信需要验证各自的身份。在PKI体制中,这种保证是通过各个节点的证书校验来完成的,这会引起很大的计算量。而对于移动Ad Hoc网络中资源受限和低处理能力的网络节点来说,过量的计算是不可取的。除此之外,采用证书的密钥管理体制也会带来其他的证书相关的问题,譬如证书产生、证书存储和证书分发等等,这些对资源受限的节点来说都是巨大的挑战。因此,PKI不是一个很有效的适用于Ad Hoc网络的密钥管理方案。而利用ID-PKC的密钥管理方案很好的解决了上述PKI方案中的证书引入的问题ID-PKC方案采用了基于身份的认证体制,私钥生成中心(private key generation,PKG)利 用每个节点唯一的身份标识ID来产生密钥对。需要通信的节点直接可以从对方的身份标识ID中获取对方的公钥,这样就避免了PKI方案中的证书校验以及证书存储相关的问题。然而,由于ID-PKC方案引入了PKG,PKG知道所有节点的私钥,这就导致了密钥托管和单点失败的问题。一旦PKG节点被捕获,节点身份的真实性和私钥的机密性都得不到保证,整个网络就会失效。
随着移动Ad Hoc网络的发展和推广,为了保证在该网络下的安全通信,我们迫切需要一种新的高效安全的密钥协商方案。
发明内容
本发明的目的是针对现有技术的缺点,提供一种移动Ad Hoc网络中的密钥协商管理方案,保证密钥协商的高效性和安全性。
本发明提出了一种新的移动Ad Hoc网络中的密钥协商管理方案,该方法采用了类似ID-PKC方案中的身份标识机制,这样能有效的解决PKI方案中的证书问题,不同于ID-PKC的是,该方案中的密钥生成中心(key generation center,KGC)利用各个节点的身份标识ID为他们产生相应的部分私钥,这样就解决了ID-PKC中的密钥托管问题。在该方案中采用了(t,n)门限密钥共享方案将KGC的职能赋给网络中的所有节点,这样就能解决单点失败的问题,同时也有利于网络节点申请密钥对服务。同时,本方案采用某些验证机制能够识别出网络中的危险节点(危险节点是指那些不能够正常工作的节点,或者是被恶意入侵的节点,该节点不再具有安全性,一旦这些节点数目超过t,则整个网络都将可能失效,因此有必要识别出这些危险节点)。
本发明的方法是基于双线性群理论和门限密钥共享方案提出来的,对本发明的理论基础概述如下:
一.双线性群:
群G1是一个加法循环群,群G2是一个乘法循环群,他们具有相同的阶数q。G是群G1的生成元。双线性映射G1×G1→G2满足以下性质:
性质1:双线性:
e ^ ( aP , bQ ) = e ^ ( P , Q ) ab , ∀ P , Q ∈ G 1 , ∀ a , b ∈ Z q * ,
性质2:非退化性:
∃ P , Q ∈ G 1 , e ^ ( P , Q ) ≠ 1 . P,Q不是群G1的单位元。
性质3:可计算性:
∀ P , Q ∈ G 1 , e ^ ( P , Q ) 可以很有效地计算出来。
下面有关双线性映射群的问题组成了本发明的安全基础。
1.双线性离散对数问题(BDLP):存在椭圆曲线G,给定其上的两个点P和Q,找到一个整数使得Q=nP成立。
2.计算Diffie-Hellman问题(CDH):a,给定P,aP,bP∈G1,计算abP。
3.双线性Diffie-Hellman问题(BDH):任意a,b,给定P,aP,bP,cP∈G1,计算
二.门限密钥共享方案
门限密钥共享方案的目的是在于若干用户共享一份秘密消息。在(t,n)门限密钥共享方案中,秘密由n个用户共享。任何t或者多于t个的用户可以重构这份秘密,少于t个用户则不能恢复消息。采用这种体制,可以有效地解决单点失败问题。
基于以上理论基础,本发明提出了一种无证书的具有检测危险节点功能的密钥协商方案。
在本发明的方案体制中,存在一个可靠第三方(TTP)来决定节点是否可以加入网络以及分发必要的系统构建参数。该TTP不同于传统的TTP,它不需要负责产生网络主私钥。在本发明系统中,产生网络主私钥的职责是由网络中的所有节点共同实现的,这样能够实现一个完全自组织的网络并且可以很容易的为网络节点提供密钥对申请服务。
本发明提出了一种无证书的移动Ad Hoc网络中的密钥协商方法,包括以下步骤:
一.进行系统网络的初始化:
由一个可靠第三方TTP产生网络中必要的参数并通知给网络中的所有节点,网络初始化包括5个步骤:
1)TTP选择一个循环加法群G1和一个循环乘法群G2,他们拥有相同的素数阶q,通过G1和G2,构建一个双线性映射:G1×G1→G2;
2)TTP任意选择群G1的一个生成元G;
3)TTP选择门限密钥共享方案中的阈值t,t为一个小于网络中总节点数的正整数;
4)TTP为网络中的每个节点初始化一个唯一的数值作为身份标识,将节点Ui的标识记做IDi
5)TTP将参数(G1,G2,G,t,IDi)通知给网络中的所有节点;
二.构建网络主私钥
假设初始化时网络中有n个节点,构建主私钥的过程如下所示:
1)每一个节点Ui随机选取一个t-1次多项式:fi(x)=ai0+ai1x+…+ai,t-1xt-1;节点Ui秘密保存多项式系数aik,其中k=(0,1,…,t-1),该节点计算aikG,并将计算结果通知网络中所有节点;
2)对网络中的其他节点Uj,节点Ui计算ssij=fi(IDj),将计算结果作为节点Uj的密钥子份额并发送给节点Uj;当节点Uj收到ssij时,它需要验证这个消息是否确实由节点Ui发送并未被修改,这一过程通过如下的等式进行验证:
e ^ ( ss ij G , ID j G ) = e ^ ( Σ k = 0 t - 1 a ik ID j k + 1 G , G )
若上述等式成立,则表明ssij=fi(IDj)是正确的,节点Uj可以接收该结果,否则则拒绝接收;当接收到所有其他节点的密钥子份额之后,节点Uj将收到的结果进行求和,获得其有关网络主私钥的份额,如下式所示:
ss j = Σ i = 1 n ss ij = Σ i = 1 n f i ( ID j )
每个节点Uj秘密的拥有该份额ssj,并且利用群G1的生成元G生成pj=ssjG,在本方案中我们称之为节点的校验公钥;每个节点公布自己的校验公钥,该校验公钥用来找出网络中的危险节点;
3)当所有节点都知道他们自己所拥有的网络主私钥的份额之后,t或者多于t个节点利用拉格朗日插值构建出整个网络的t-1次多项式,如下所示:
f ( x ) = Σ i = 1 n f i ( x ) = ( Σ i = 1 t ss i L i ) ( mod q )
其中, L i = Π j = 1 , j ≠ i t x - ID j ID i - ID j
利用上面等式,计算出主私钥S如下所示:
S = f ( 0 ) = Σ i = 1 t ss i ( Π j = 1 , j ≠ i t - ID j ID i - ID j ) ( mod q )
4)由于所有的节点在步骤1)中都公布了aikG,因此很容易获得网络中的公 钥P如下所示:
P = Σ i = 1 n a i 0 G mod q
通过以上4个步骤得到了网络中的主私钥和公钥。
三.利用网络中的主私钥S为节点生成密钥对
该步骤利用KGC生成节点的部分私钥,以此解决ID-PKC中的密钥托管问题,其过程如下所示:
1)节点Ui秘密选取一个随机数并向其邻居节点发送生成密钥对请求,若没有t个邻居节点,那么移动Ui;所有接收到该生成密钥对服务请求的节点开始计算其对节点Ui所产生的部分私钥:
PS ki = ss k ( Π j = 1 , j ≠ k t - ID j ID k - ID j ) H ( ID i )
其中,H是一个hash函数,它将数值映射到群G1中的非零元素;
当发出请求的节点接收到所有部分私钥PSki,该节点Ui将他们与秘密数xi整合在一起:
SK i = x i SH ( ID i ) = x i Σ k = 1 t PS ki = x i Σ k = 1 t ss k ( Π j = 1 , j ≠ k t - ID j ID k - ID j ) H ( ID i )
然后节点Ui通过以下等式验证私钥SKi是否有效:
e ^ ( SK i , G ) = e ^ ( x i H ( ID i ) , P )
若等式成立,节点Ui接收SKi作为其私钥,如果不成立,那么肯定存在一个或多个危险节点,节点Ui通过以下方程来找出其中的危险节点:
e ^ ( p k , Π j = 1 , j ≠ k t - ID j ID k - ID j H ( ID i ) ) = e ^ ( G , PS ki )
如果上式成立,则表明Uk是可信节点,否则表明Uk是危险节点,需要通知网络中所有节点并将其剔除出整个网络。
2)产生用户Ui的公钥:PKi=(xiP,xiG)
通过以上两个步骤为节点Ui生成了公私钥对;
四.执行加解密操作
假设节点A需要秘密向节点B发送消息M,节点A和B的身份标识为IDA和IDB,加密过程如下:
1)验证节点B的公钥是否正确
节点A得到节点B的公钥PKB=(xBP,xBG)后利用下列等式验证B的公钥正确性:
e ^ ( x B P , G ) = e ^ ( P , x B G )
若以上等式成立,则进行下一步;若不成立,则不执行加密操作并输出信息提示B的公钥不可靠。
2)设置r=H1(M),其中H1是一个hash函数,它将一个字符串映射到一个小于q的正整数;
3)计算密文如下所示:
其中H2是一个hash函数,它将群G2中的元素映射成一个字符串,然后节点A发送密文C至B;
解密过程:当节点B接收到A发送过来的密文C之后,B开始用自己的私钥SKB=xBSH(IDB)进行解密,解密过程如下:
1)计算
M , = Y ⊕ H 2 ( e ^ ( x B SH ( ID B ) , rG ) ) = Y ⊕ H 2 ( e ^ ( SK B , X ) )
2)计算r'=H1(M'),然后验证等式r'G=X是否成立,如果不成立,该系统输出错误信息并拒绝接收该密文,若成立,节点B将解密得到的M’当做A发送的消息,这样就能实现A和B之间的秘密通信。
有益效果
本发明的密钥协商方案,不必进行如PKI一样的证书校验,避免了复杂的计算,同时由于KGC只生成节点的部分私钥,这样就解决了ID-PKC的密钥托管问题。此外,该方案能够有效地找出危险节点,增加了网络的安全性。最后,在给出的加解密方案中生成的密文仅仅只有两个部分,相比已有的方案,本方案减少了计算量和通信量。
对本发明的正确性和安全性分析如下:
1.正确性
(1)如果节点Ui发送给节点Uj的密钥子份额ssij是有效的,就意味着下面的等式成立:
e ^ ( ss ij G , ID j G ) = e ^ ( Σ k = 0 t - 1 a ik ID j k + 1 G , G )
证明:由于利用双线性映射的性质,可以得到:
e ^ ( ss ij G , ID j G ) = e ^ ( f i ( ID j ) G , ID j G ) = e ^ ( Σ k = 0 t - 1 a ik ID j k G , ID j G ) = e ^ ( Σ k = 0 t - 1 a ik ID j k + 1 G , G )
(2)如果节点Ui的私钥SKi是正确的,就意味着下面的等式成立:
e ^ ( SK i , G ) = e ^ ( x i H ( ID i ) , P )
证明:由于SKi=xiSH(IDi),P=SG,利用双线性映射的性质,可以得到:
e ^ ( SK i , G ) = e ^ ( x i SH ( ID i ) , G ) = e ^ ( x i H ( ID i ) , SG ) = e ^ ( x i H ( ID i ) , P )
(3)如果由节点Uk所产生的节点Ui的部分私钥PSki是正确的,意味着下列等式成立:
e ^ ( p k , Π j = 1 , j ≠ k t - ID j ID k - ID j H ( ID i ) ) = e ^ ( G , PS ki ) PS ki = ss k ( Π j = 1 , j ≠ k t - ID j ID k - ID j ) H ( ID i )
证明:由于pk=sskG,
利用双线性映射的性质可以得到:
e ^ ( p k , Π j = 1 , j ≠ k t - ID j ID k - ID j H ( ID i ) ) = e ^ ( ss k G , Π j = 1 , j ≠ k t - ID j ID k - ID j H ( ID i ) ) = e ^ ( G , ss k Π j = 1 , j ≠ k t - ID j ID k - ID j H ( ID i ) ) = e ^ ( G , PS ki ) )
2.安全性
本发明中的方案能有效的解决PKI中的证书相关问题,减少开销,同时也能减少ID-PKC中的密钥托管问题,此外还能够识别出网络中的危险节点,提高网络安全性。
(1)在BDLP假设下,本发明中所提到的方案能够抵抗假冒攻击,实现身份认证。
证明:本方案能够通过下列等式验证某节点公钥的真实性:
e ^ ( G , x i SH ( ID i ) ) = e ^ ( x i G , SH ( ID i ) )
如果上式成立,意味着节点的公私钥对是匹配的。如果一个攻击者想伪造成网络中的正常节点,它必须获取到一个不同的x,使得 e ^ ( G , x i SH ( ID i ) ) = e ^ ( x i G , SH ( ID i ) ) 成立。这在BDLP假设下是不可能的。
(2)在BDLP假设之下,攻击者不能够通过网络公钥P=SG计算出网络的主私钥,同时攻击者也不能够通过节点的公钥PKi.计算出节点的私钥SKi
证明:在BDLP假设之下,P和G是公开的,从P=SG获取S是困难的。同理,通过PKi.计算出x是很困难的,这样就不能计算出私钥SKi
(3)本方案能够提供已知密钥安全性,也即先前网络主私钥的知识不能够推理出后续网络主私钥。
证明:由于主私钥是由网络中的所有节点生成,每个节点随机选取多项式,这就意味着每次产生的主私钥都是独立不相关的。因此过去网络主私钥的信息不能够推理出后续的网络主私钥。
(4)本方案能够实现前向安全性和后向安全性。
证明:当一个节点加入网络中时,整个网络需要更新它的主私钥。这 样,所有节点的密钥对都得到更新。因此,新加入的节点不能够利用现有节点的公钥解密之前传输的消息。同理,也不能够利用过去的密钥对来解密现在传输的消息。
经过以上的分析,该方案是正确的,有较好的安全性。可以较好的适用于移动Ad Hoc网络。
附图说明
图1移动Ad Hoc网络组织图;
图2为本发明的系统层次结构图;
图3为实施例中节点通信过程的示意图。
具体实施方式
下面结合附图,具体说明本发明的优选实施方式。
本实施方式中,系统是由一个TTP和多个可移动的自由节点组成,如图1所示。TTP负责必要参数的产生和分发,并且决定是否允许某节点加入该网络。
如图2所示,本实施方式按照以下步骤实现密钥协商:
一.进行系统网络的初始化:
由一个可靠第三方TTP产生网络中必要的参数并通知给网络中的所有节点,网络初始化包括5个步骤:
1)TTP选择一个循环加法群G1和一个循环乘法群G2,他们拥有相同的素数阶q,通过G1和G2,构建一个双线性映射::G1×G1→G2;
2)TTP任意选择群G1的一个生成元G;
3)TTP选择门限密钥共享方案中的阈值t,t为一个小于网络中总节点数的正整数;
4)TTP为网络中的每个节点初始化一个唯一的数值作为身份标识,将节点Ui的标识记做IDi
5)TTP将参数(G1,G2,G,t,IDi)通知给网络中的所有节点;
二.构建网络主私钥
假设初始化时网络中有n个节点,构建主私钥的过程如下所示:
1)每一个节点Ui随机选取一个t-1次多项式:fi(x)=ai0+ai1x+…+ai,t-1xt-1;节点Ui秘密保存多项式系数aik,其中k∈(0,1,…,t-1),该节点计算aikG,并将计算结果通知网络中所有节点;
2)对网络中的其他节点Uj,节点Ui计算ssij=fi(IDj),将计算结果作为他们的密钥子份额并发送给节点Uj;当节点Uj收到ssij时,它需要验证这个消息是否确实由节点Ui发送并未被修改,这一过程通过如下的等式进行验证:
e ^ ( ss ij G , ID j G ) = e ^ ( Σ k = 0 t - 1 a ik ID j k + 1 G , G )
若上述等式成立,则表明ssij=fi(IDj)是正确的,节点Uj可以接收该结果,否则则拒绝接收;当接收到所有其他节点的密钥子份额之后,节点Uj将收到的结果进行求和,获得其有关网络主私钥的份额,如下式所示:
ss j = Σ i = 1 n ss ij = Σ i = 1 n f i ( ID j )
每个节点Uj秘密的拥有该份额ssj,并且利用群G1的生成元G生成pj=ssjG,在本方案中我们称之为节点的校验公钥;每个节点公布自己的校验公钥,该校验公钥用来找出网络中的危险节点;
3)当所有节点都知道他们自己所拥有的网络主私钥的份额之后,t或者多于t个节点利用拉格朗日插值构建出整个网络的t-1次多项式,如下所示:
f ( x ) = Σ i = 1 n f i ( x ) = ( Σ i = 1 t ss i L i ) ( mod q )
其中, L i = Π j = 1 , j ≠ i t x - ID j ID i - ID j
利用上面等式,计算出主私钥如下所示:
S = f ( 0 ) = Σ i = 1 t ss i ( Π j = 1 , j ≠ i t - ID j ID i - ID j ) ( mod q )
4)由于所有的节点在步骤1)中都公布了aikG,因此很容易获得网络中的公钥如下所示:
P = Σ i = 1 n a i 0 G mod q
通过以上4个步骤得到了网络中的主私钥和公钥。
三.利用网络中的主私钥为节点生成密钥对
该步骤利用KGC生成节点的部分私钥,解决ID-PKC中的密钥托管问题,其过程如下所示:
1)节点Ui秘密选取一个随机数并向其邻居节点发送生成密钥对请求,若没有t个邻居节点,那么移动Ui。所有接收到该生成密钥对服务请求的节点开始计算其对节点Ui所产生的部分私钥:
PS ki = ss k ( Π j = 1 , j ≠ k t - ID j ID k - ID j ) H ( ID i )
其中,H是一个hash函数,它将数值映射到群G1中的非零元素。
当发出请求的节点接收到所有部分私钥PSki,该节点Ui将他们与秘密数xi整合在一起:
SK i = x i SH ( ID i ) = x i Σ k = 1 t PS ki = x i Σ k = 1 t ss k ( Π j = 1 , j ≠ k t - ID j ID k - ID j ) H ( ID i )
然后节点Ui通过以下等式验证私钥SKi是否有效:
e ^ ( SK i , G ) = e ^ ( x i H ( ID i ) , P )
若等式成立,节点Ui接收SKi作为其私钥,如果不成立,那么肯定存在一个或多个危险节点,节点Ui通过以下方程来找出其中的危险节点:
e ^ ( p k , Π j = 1 , j ≠ k t - ID j ID k - ID j H ( ID i ) ) = e ^ ( G , PS ki )
如果上式成立,则表明Uk是可信节点,否则表明Uk是危险节点,需要通知网络中所有节点并将其剔除出整个网络;
2)产生用户Ui的公钥:PKi=(xiP,xiG).
通过以上两个步骤为节点Ui生成了公私钥对。
四.执行加解密操作,如附图3所示;
假设节点A需要秘密向节点B发送消息M,节点A和B的身份标识为IDA和IDB,加密过程如下:
4)验证节点B的公钥是否正确
节点A得到节点B的公钥PKB=(xBP,xBG)后利用下列等式验证B的公钥正确性:
e ^ ( x B P , G ) = e ^ ( x B G , P )
若以上等式成立,则进行下一步;若不成立,则不执行加密操作并输出信息提示B的公钥不可靠;
5)设置r=H1(M),其中H1是一个hash函数,它将一个字符串映射到一个小于q的正整数。
6)计算密文如下所示:
其中H2是一个hash函数,它将群G2中的元素映射成一个字符串。然后节点A发送密文C至B;
解密过程:当节点B接收到A发送过来的密文C之后,B开始用自己的私钥SKB=xBSH(IDB)进行解密,解密过程如下:
3)计算
M , = Y ⊕ H 2 ( e ^ ( x B SH ( ID B ) , rG ) ) = Y ⊕ H 2 ( e ^ ( SK B , X ) )
计算r'=H1(M'),然后验证等式r'G=X是否成立,如果不成立,该系统输出错误信息并拒绝接收该密文,若成立,节点B将解密得到的M‘当做A发送的消息,这样就能实现A和B之间的秘密通信。
为了说明本发明的内容及实施方法,给出了一个具体实施例。在实施例中引入细节的目的不是限制权利要求书的范围,而是帮助理解本发明所述方法。本领域的技术人员应理解:在不脱离本发明及其所附权利要求的精神和范围内,对最佳实施例步骤的各种修改、变化或替换都是可能的。因此,本发明不应局限于最佳实施例及附图所公开的内容。

Claims (1)

1.一种基于移动Ad Hoc网络的无证书密钥协商方法,包括以下步骤:
一.进行系统网络的初始化:
由一个可靠第三方TTP产生网络中必要的参数并通知给网络中的所有节点,网络初始化包括5个步骤:
1)TTP选择一个循环加法群G1和一个循环乘法群G2,G1和G2拥有相同的素数阶q,通过G1和G2,构建一个双线性映射:G1×G1→G2;
2)TTP任意选择循环加法群G1的一个生成元G;
3)TTP选择门限密钥共享方案中的阈值t,t为一个小于网络中总节点数的正整数;
4)TTP为网络中的每个节点初始化一个唯一的数值作为身份标识,将节点Ui的标识记做IDi
5)TTP将参数(G1,G2,G,t,IDi)通知给网络中的所有节点;
二.构建网络主私钥
假设初始化时网络中有n个节点,构建主私钥的过程如下:
1)每一个节点Ui随机选取一个t-1次多项式:fi(x)=ai0+ai1x+…+ai,t-1xt-1;节点Ui秘密保存多项式系数aik,其中k=(0,1,…,t-1),该节点计算aikG,并将计算结果通知网络中所有节点;
2)对网络中的其他节点Uj,节点Ui计算ssij=fi(IDj),将计算结果作为节点Uj的密钥子份额并发送给节点Uj;当节点Uj收到ssij时,它需要验证这个消息是否确实由节点Ui发送并未被修改,这一过程通过如下的等式进行验证:
e ^ ( ss i j G , ID j G ) = e ^ ( Σ k = 0 t - 1 a i k ID j k + 1 G , G )
若上述等式成立,则表明ssij=fi(IDj)是正确的,节点Uj可以接收该结果,否则则拒绝接收;当接收到所有其他节点的密钥子份额之后,节点Uj将收到的结果进行求和,获得其有关网络主私钥的份额,如下式所示:
ss j = Σ i = 1 n ss i j = Σ i = 1 n f i ( ID j )
每个节点Uj秘密的拥有该份额ssj,并且利用循环加法群G1的生成元G生成pj=ssjG,其中pj为节点的校验公钥;每个节点公布自己的校验公钥,该校验公钥用来找出网络中的危险节点;
3)当所有节点都知道他们自己所拥有的网络主私钥的份额之后,t或者多于t个节点利用拉格朗日插值构建出整个网络的t-1次多项式,如下所示:
f ( x ) = Σ i = 1 n f i ( x ) = ( Σ i = 1 t ss i L i ) ( mod q )
其中,
利用上面等式,计算出主私钥S如下所示:
S = f ( 0 ) = Σ i = 1 t ss i ( Π j = 1 , j ≠ i t - ID j ID i - ID j ) ( mod q )
4)所有的节点在步骤1)中都公布了aikG,从而网络中的公钥P如下:
P = Σ i = 1 n a i 0 G mod q
通过以上4个步骤得到了网络中的主私钥和公钥;
三.利用网络中的主私钥S为节点生成密钥对
该步骤利用KGC生成节点的部分私钥,以此解决ID-PKC中的密钥托管问题,其过程如下所示:
1)节点Ui秘密选取一个随机数并向其邻居节点发送生成密钥对请求,若没有t个邻居节点,那么移动Ui;所有接收到该生成密钥对请求的节点开始计算其对节点Ui所产生的部分私钥:
PS k i = ss k ( Π j = 1 j ≠ k t - ID j ID k - ID j ) H ( ID i )
其中,H是一个hash函数,它将数值映射到循环加法群G1中的非零元素;
当发出请求的节点接收到所有部分私钥PSki,该节点Ui将他们与秘密数xi整合在一起:
SK i = x i S H ( ID i ) = x i Σ k = 1 t PS k i = x i Σ k = 1 t ss k ( Π j = 1 , j ≠ k t - ID j ID k - ID j ) H ( ID i )
然后节点Ui通过以下等式验证私钥SKi是否有效:
e ^ ( SK i , G ) = e ^ ( x i H ( ID i ) , P )
若等式成立,节点Ui接收SKi作为其私钥,如果不成立,那么肯定存在一个或多个危险节点,节点Ui通过以下方程来找出其中的危险节点:
e ^ ( p k , Π j = 1 , j ≠ k t - ID j ID k - ID j H ( ID i ) ) = e ^ ( G , PS k i )
如果上式成立,则表明Uk是可信节点,否则表明Uk是危险节点,需要通知网络中所有节点并将其剔除出整个网络;
2)产生用户Ui的公钥:PKi=(xiP,xiG)
通过以上两个步骤为节点Ui生成了公私钥对;
四.执行加解密操作
假设节点A需要秘密向节点B发送消息M,节点A和B的身份标识为IDA和IDB,加密过程如下:
1)验证节点B的公钥是否正确
节点A得到节点B的公钥PKB=(xBP,xBG)后利用下列等式验证B的公钥正确性:
e ^ ( x B P , G ) = e ^ ( P , x B G )
若以上等式成立,则进行下一步;若不成立,则不执行加密操作并输出信息提示B的公钥不可靠;
2)设置r=H1(M),其中H1是一个hash函数,它将一个字符串映射到一个小于q的正整数;
3)计算密文如下所示:
C = < X Y > = < r G , M &CirclePlus; H 2 ( e ^ ( H ( ID B ) , x B P ) r ) >
其中H2是一个hash函数,它将群G2中的元素映射成一个字符串,然后节点A发送密文C至B;
解密过程:当节点B接收到A发送过来的密文C之后,B开始用自己的私钥SKB=xBSH(IDB)进行解密,解密过程如下:
1)计算
M , = Y &CirclePlus; H 2 ( e ^ ( x B S H ( ID B ) , r G ) ) = Y &CirclePlus; H 2 ( e ^ ( SK B , X ) )
2)计算r'=H1(M'),然后验证等式r'G=X是否成立,如果不成立,该系统输出错误信息并拒绝接收该密文,若成立,节点B将解密得到的M’当做A发送的消息,这样就能实现A和B之间的秘密通信。
CN201310718403.5A 2013-12-02 2013-12-23 一种基于移动Ad Hoc网络的无证书密钥协商方法 Active CN103702326B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310718403.5A CN103702326B (zh) 2013-12-02 2013-12-23 一种基于移动Ad Hoc网络的无证书密钥协商方法

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN201310634826.9 2013-12-02
CN2013106348269 2013-12-02
CN201310634826 2013-12-02
CN201310718403.5A CN103702326B (zh) 2013-12-02 2013-12-23 一种基于移动Ad Hoc网络的无证书密钥协商方法

Publications (2)

Publication Number Publication Date
CN103702326A CN103702326A (zh) 2014-04-02
CN103702326B true CN103702326B (zh) 2016-09-28

Family

ID=50363700

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310718403.5A Active CN103702326B (zh) 2013-12-02 2013-12-23 一种基于移动Ad Hoc网络的无证书密钥协商方法

Country Status (1)

Country Link
CN (1) CN103702326B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105187425B (zh) * 2015-09-02 2018-01-30 南京理工大学紫金学院 面向云计算通信系统安全的无证书门限解密方法
CN106713326A (zh) * 2016-12-28 2017-05-24 上海电机学院 一种车载网消息认证协议
CN106789033B (zh) * 2017-01-17 2020-06-19 江苏慧世联网络科技有限公司 一种基于无证书签密的电子合同签署方法
CN106992855B (zh) * 2017-03-15 2019-08-13 西安电子科技大学 基于离散轨迹的密钥交换方法
CN110709874A (zh) * 2017-06-07 2020-01-17 区块链控股有限公司 用于区块链网络的凭证生成与分发方法和系统
CN109218018B (zh) * 2018-09-14 2021-08-10 西安电子科技大学 一种基于身份的无人机密钥管理与组网认证系统及方法
CN109257181B (zh) * 2018-10-17 2019-10-29 西安邮电大学 无证书环境下椭圆曲线盲签密方法
CN110266482B (zh) * 2019-06-21 2021-10-12 郑州轻工业学院 一种基于区块链的非对称群组密钥协商方法
CN111444521B (zh) * 2020-02-21 2023-09-01 成都信息工程大学 一种基于门限增加的图像秘密共享方法及数字签名系统
CN111865988B (zh) * 2020-07-22 2022-10-18 山东华普信息科技有限公司 一种基于区块链的无证书密钥管理方法、系统及终端
CN112260834B (zh) * 2020-10-12 2023-01-20 南京邮电大学 Ad Hoc网络中基于区块链的密钥生成和管理方法
CN113301520B (zh) * 2021-05-21 2023-02-28 国网四川省电力公司电力科学研究院 一种无线传感器网络安全通信的方法
CN115695509B (zh) * 2022-09-29 2023-04-18 北京宜通华瑞科技有限公司 一种基于物联网通信协议的智能缝制系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101494862A (zh) * 2008-12-05 2009-07-29 北京工业大学 无线网状网络接入认证方法
CN102594569A (zh) * 2012-03-24 2012-07-18 成都大学 一种建立Tor匿名通道时所采用的无证书密钥协商方法
CN103024743A (zh) * 2012-12-17 2013-04-03 北京航空航天大学 一种无线局域网可信安全接入方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103546567B (zh) * 2013-10-28 2016-12-07 中国航天科工集团第二研究院七〇六所 一种可信云计算环境中无证书跨域认证方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101494862A (zh) * 2008-12-05 2009-07-29 北京工业大学 无线网状网络接入认证方法
CN102594569A (zh) * 2012-03-24 2012-07-18 成都大学 一种建立Tor匿名通道时所采用的无证书密钥协商方法
CN103024743A (zh) * 2012-12-17 2013-04-03 北京航空航天大学 一种无线局域网可信安全接入方法

Also Published As

Publication number Publication date
CN103702326A (zh) 2014-04-02

Similar Documents

Publication Publication Date Title
CN103702326B (zh) 一种基于移动Ad Hoc网络的无证书密钥协商方法
Chatterjee et al. An effective ECC‐based user access control scheme with attribute‐based encryption for wireless sensor networks
Saxena et al. Integrated distributed authentication protocol for smart grid communications
CN104270249A (zh) 一种从无证书环境到基于身份环境的签密方法
Yang Broadcast encryption based non-interactive key distribution in MANETs
CN104052608A (zh) 云应用中基于第三方的无证书远程匿名认证方法
Gokhale et al. Distributed authentication for peer-to-peer networks
Braeken Pairing free asymmetric group key agreement protocol
Li et al. A certificateless key management scheme in mobile ad hoc networks
Ammayappan et al. An ECC-Based Two-Party Authenticated Key Agreement Protocol for Mobile Ad Hoc Networks.
Seo et al. POSTER: A pairing-free certificateless hybrid sign-cryption scheme for advanced metering infrastructures
Sujatha et al. Optimal adaptive genetic algorithm based hybrid signcryption algorithm for information security
De Ree et al. DECENT: decentralized and efficient key management to secure communication in dense and dynamic environments
Khatoon et al. Certificate less key management scheme in manet using threshold cryptography
Lin Secure cloud Internet of vehicles based on blockchain and data transmission scheme of map/reduce
CN107733649B (zh) 一种基于身份标识的层级化公钥信任模型构建方法
Zhang et al. A novel group key agreement protocol for wireless sensor networks
Alomari Fully distributed certificate authority based on polynomial over elliptic curve for MANET
Li et al. Key management using certificateless public key cryptography in ad hoc networks
Chatterjee et al. An efficient fine-grained access control scheme for hierarchical wireless sensor networks
Yao et al. Key agreement and identity authentication protocols for ad hoc networks
Wang et al. Pseudonym-based cryptography and its application in vehicular ad hoc networks
Zheng et al. A novel detective and self-organized certificateless key management scheme in mobile ad hoc networks
Xie A Cluster-Based Key Management Scheme for MANET
Shim Security analysis of various authentication schemes based on three types of digital signature schemes

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant