CN102970679B - 基于身份的安全签名方法 - Google Patents

基于身份的安全签名方法 Download PDF

Info

Publication number
CN102970679B
CN102970679B CN201210477199.8A CN201210477199A CN102970679B CN 102970679 B CN102970679 B CN 102970679B CN 201210477199 A CN201210477199 A CN 201210477199A CN 102970679 B CN102970679 B CN 102970679B
Authority
CN
China
Prior art keywords
node
signature
key
identity
information
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
CN201210477199.8A
Other languages
English (en)
Other versions
CN102970679A (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.)
Yueliang Chuanqi Technology Co Ltd
Original Assignee
Yueliang Chuanqi Technology Co Ltd
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 Yueliang Chuanqi Technology Co Ltd filed Critical Yueliang Chuanqi Technology Co Ltd
Priority to CN201210477199.8A priority Critical patent/CN102970679B/zh
Publication of CN102970679A publication Critical patent/CN102970679A/zh
Application granted granted Critical
Publication of CN102970679B publication Critical patent/CN102970679B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)

Abstract

本发明涉及一种基于身份的安全签名方法,包括离线分配密钥步骤、在线签名步骤和设置密钥使用期限来实现通信组密钥的更新,使用传感器节点的唯一标识作为它的身份信息,即该节点的公钥。使用系统的公开参数和系统的主密钥,通过每个节点的身份信息计算出该节点的私钥。当无线传感器网络在布置完成以后,每个节点内都存储了系统参数和自己的私钥,两个或多个节点间需要进行身份认证时,发送方可以使用自己的私钥对事先约定的认证数进行签名。接收方用发送方的身份信息作为公钥,按照签名方案中的签名验证算法,对接收到的信息进行验证,从而确定发送方的身份。本发明的安全签名方法中的存储空间为常量,因此更适合在无线传感器中使用。

Description

基于身份的安全签名方法
技术领域
本发明涉及计算机通讯机电子商务应用领域,尤其涉及一种在无线传感器网络中基于身份的签名方法。
背景技术
使用数据安全与认证技术,对物联网传输信息进行安全管理服务,可有效增强安全机制。而联网前端数据采集及传输节点的计算、存储和通信能力都十分有限,通常被认为不适合使用公钥密码学技术。近年来的许多研究成果表明,一些经过优化的公钥方法是可以为无线传感器网络提供更加有力的安全保障。无线传感器网络是由大量具有无线通讯、传感、数据处理能力的传感器节点以自组织方式组成的无线网络,其目的是整个网络节点协作地感知、采集和处理网络覆盖的地理区域中感知对象的信息,并发布给客户端。在无线传感器网络中节点是安全通行方法,采用基于椭圆曲线(ECC)的分散信任安全体系,其比较适合应用于资源受限的无线传感器网络中。但是通常无线传感器网络中通常出现电源功率有限、计算能力不足、存储空间狭小、网络拓扑动态变化、带宽不足等一些情况的约束,使得目前通行网络中使用数据安全与认证技术通常很难适合于无线传感器网络中的使用。
发明内容
综上所述,本发明有必要提供一种适合与无线传感器网中使用的基于身份安全认证的方法。
一种基于身份的安全签名方法,包括如下步骤:
离线密钥分配,生成系统参数和主密钥:运行系统中的节点,生成参数为k,计算椭圆曲线E(Fp),E(Fp)表示定义在Fp上的一个椭圆曲线,Fp表示p个元素的有限域,(Fp:素域,p表示素数)。计算输出的是{q,G1,G2,e,g,g1,h,α},其中q为一个质数,输入k生成大素数Q,建立两个阶为Q的群分别为:加法循环群G1和乘法循环群G2,使得CDH问题是困难的问题,建立一个双线性映射e:G1×G1→G2,任意选择一个生成元素p∈G1;通过系统中的节点共举产生系统的主密钥系统公开参数g,h∈G1,g1=gα∈G2以及主密钥对(α,Ppub);
在线签名:通过系统中的节点共举产生系统的主密钥,假设存在节点i以及需要与其相互认证的一个邻居节点j,节点i向节点j发出一个签名请求,节点i使用自己的私钥对事先约定的认证数据按照签名方案中的签名算法进行签名,节点j用节点i的身份信息作为公钥,按照签名方案中的签名验证算法,对接收到的信息进行验证,验证合格则确定节点i与节点j的身份,否则拒绝签名;
设置密钥使用期限来实现通信组密钥的更新:
将系统生存期按长度t划分为若干个时间段,定义节点i在时间段t开始时拥有的系统秘密份额为经过更新后拥有的系统秘密份额为
进一步地,所述在线签名的具体步骤为:
初始化节点:假设存在节点i以及需要与其相互认证的一个邻居节点j,则初始化阶段中可信第三方向节点i内部下载有关节点j的认证信息三元组<IDj,Qj,H(Pj(Ci))>,向节点j内部下载有关节点i的认证信息三元组<IDi,Qi,H(Pi(Cj))>;同时将公钥签名算法S、单向哈希函数H、节点的身份标识及其挑战下载到节点i当中;
节点i广播认证请求:节点i首先在网络中广播[IDiCiNi]信息为认证请求分组报文来完成邻居节点j发现;
其中IDi字段:表示节点i的身份标识;Ci字段:表示节点i发出的挑战;Ni字段:表示节点i选取的一次性随机数;
节点j认证对节点i请求:当邻居节点j接收到节点i的认证请求分组后,判断节点i的信息中的IDi是否合法,若否则放弃认证,若是则节点j发送认证响应分组为节点i;
节点i对节点j进行认证:当节点i接收到节点j的响应分组后,首先根据IDj查找自身存储的三元组,如果不存在IDj的信息则认为IDj非法,放弃认证过程;如果存在IDj的信息,则对该节点的身份进行认证;
节点向i发送分组给节点j:当节点i确认节点j身份合法后,在提取节点j认证响应中的信息后,发送作为认证分组给节点j;
其中IDi字段:表示节点i的身份标识;S(Ki,M′)字段:表示节点i利用自身私钥Ki对消息M′做出的签名,其中M′=H(IDi||Ci||H(Pi(Cj))||Ni⊕Nj),这里pi(Cj)为节点i在(Cj)为挑战时其PUF的响应,其中H(Pi(Cj))是pi(Cj)做单向哈希运算得到的值;
完成认证:当节点j接收到节点i的认证分组后,采取与节点i对节点j进行认证步骤相同的方法对i的认证分组进行认证,如果认证不成功,则说明i是非法的,终止认证过程;如果认证成功,则说明i是合法的,整个认证过程结束。
进一步地,其中初始化阶段具体步骤如下:
可信第三方为网络中的每个节点随机生成一个挑战;
可信第三方选择一个单向哈希函数H和一种公钥签名算法S,并为网络中每个节点选根据权利要求1所述的基于身份的安全签名方法,
择基于该公钥算法的一个公私钥对(Qi,Ki),其中公钥Qi公开,私钥Ki只有节点i自己知道;
可信第三方将每个节点的挑战输入到所有其他节点当中,并利用哈希函数H对获得的其他节点的PUF响应进行哈希操作;
可信第三方将以下数据下载到每个节点当中:该节点的身份标识,该节点的挑战,该节点的公私钥对,哈希函数H及公钥签名算法的相关实现程序,同时可信第三方为每个节点下载存储有其他节点相关信息的三元组表。
进一步地,所述节点j认证对节点i请求的具体步骤为:
节点j认证对节点i请求:当邻居节点j接收到节点i的认证请求分组后,节点j根据IDi查找自身是否存储有节点i的三元组信息,如果不存节点i的信息则认为IDi非法,放弃认证过程,如果存在IDi的信息,则发送为认证响应分组给节点i;
其中IDj字段:表示节点j的身份标识;Cj字段:表示节点j发出的挑战;Nj字段:表示节点j选取的一次性随机数;S(Kj,M)字段:表示节点j利用自身私钥Kj对消息M做出的签名,其中M=H(IDj||Cj||H(Pj(Ci))||Ni⊕Nj),这里Pj(Ci)为节点j在Ci为挑战时其PUF的响应;H(Pj(Ci))是Pj(Ci)做单向哈希运算得到的值;P(C)表示PUF在挑战C激励下的输出,||表示连接符。
进一步地,所述节点i对节点j进行认证步骤,还包括:如果存在IDj的信息,根据接收到的认证响应和存储在自身三元组中的信息重组消息M,并利用节点j的公钥Qj对签名S(Kj,M)进行验证,如果验证结果正确则说明节点j是合法的,否则节点i终止认证。
进一步地,所述离线密钥分配,生成系统参数和主密钥步骤还包括:
节点共举产生系统的主密钥及主密钥对(α,Ppub)身份标识为IDi的节点i,随机选择αi作为主密钥α的秘密份额和系数ai,j(j∈1,2,...,k-1),以建立(n,k)门限多项式fi(x):
fi(x)=αi+ai,1x+ai,2x2+…+ai,k-1x(k-1)modp
节点i计算V0=αiP及Vi=αi.jP(j∈1,2,...,k-1)传送给节点j,节点j收到fi(x)、V0和Vi后,验证如果该公式成立则验证通过,消息为节点i所发,否则断定消息并非节点i发送,节点j收到来自网络中的n个节点所发送的门限多项式,计算fj(j),共举得出网络的主密钥α:
f1(j)+f2(j)+…+fn(j)=α1+a1,1x+a1,2x2+…+a1,k-1xk-12+a2,1x+a2,2x2+…+a2,k-1xk-1+…+αn+an,1x+an,2x2+…+an,k-1xk-1
=(α1,12,1+…+αn,1)x+(α1,22,2+…+αn,2)x2+…+(α1,k-12,k-1+…+αn,k-1)xk-1
=α+a1x+a2x2+…+ak-1xk-1modp=f(x)
计算Ppub=αP,由此,得出系统的密钥对(α,Ppub)。
进一步地,所述的设置密钥使用期限来实现更换通信组密钥的更新,其更新步骤如下:
将系统生存期按长度t划分为若干个时间段,在每一个时间段,节点i建立(n,k′)门限多项式:
fi′(x)=bi,1x+bi,2x2+…+bi,k′-1x(k′-1)
节点i计算fi′(j)(j=1,2,...,k’-1)作为其他节点的密钥份额的更新量,并广播bi,jP(j=1,2,...,k’-1);
节点i生成签名σ,并把密钥份额更新量和签名(fi′(j),σ)加密传送给相应的节点;
节点j验证节点i的身份签名,如果e(P,P)=e(H2(IDj)P+tjP,σ,则节点j接受节点i的签名,否则拒绝其签名,节点j得到来自节点i的密钥份额更新后,计算与fi′(j)P是否相等,确认fi′(j)的有效性;
节点j收到系统中n个节点发送的密钥份额更新量后,计算出节点j新的秘密份额: &alpha; j t = &alpha; j t + &Sigma; i = 1 n f i ( j ) .
进一步地,所述节点i生成签名σ的具体步骤为:
请求加密密钥的节点i随机选择作为私钥,并计算Qi=riP作为相应的公钥发送给节点j;
节点j接收到节点i的请求后,验证节点i的身份,节点j是合法的节点,该节点拥有加密密钥对αKj,PKk,随机选择信息m,发送r=(m,PKj)给节点i,等待节点i的签名;
节点i收到签名要求后,随机选择作为私钥,其对应的公钥为ui=tiH2(IDi),计算身份签名σ=H2(IDi+ti)-1P,把身份签名σ传送给节点j。
本发明中所用到的名称及符号说明:
IDi 节点i的身份标识
Qi 节点i的公钥
Ci 节点i的挑战
Pj(Ci) 在挑战Ci的激励下,节点i的PUF的输出
α(Ki,m) 节点i利用其公钥Ki对消息m进行签名操作
H(m) 对消息m做哈希运算
|| 连接操作
异或操作
所述的挑战的信息为可被使用者识别的代表具体含义的信息,以便适用于者进行确认操作是否需要真正执行,如用户名等。
本发明涉及一种基于身份的安全签名方法中离线分配密钥步骤、线签名步骤,使用传感器节点的唯一标识作为它的身份信息,即该节点的公钥。使用系统的公开参数和系统的主密钥,通过每个节点的身份信息计算出该节点的私钥。当无线传感器网络在布置完成以后,每个节点内都存储了系统参数和自己的私钥,两个或多个节点间需要进行身份认证时,发送方可以使用自己的私钥对事先约定的认证数进行签名。接收方用发送方的身份信息作为公钥,按照签名方案中的签名验证算法,对接收到的信息进行验证,从而确定发送方的身份。本发明的安全签名方法中的存储空间为常量,因此更适合在无线传感器中使用。
附图说明
图1为本发明的一种基于身份的安全签名方法较佳实施例中发送认证应答1的流程图;
图2为本发明的一种基于身份的安全签名方法较佳实施例中验证认证应答1的流程图。
具体实施方式
结合以下具体实施方式对本发明作进一步的描述。具体实施例为进一步详细说明本发明,非限定本发明的保护范围。
一种基于身份的安全签名方法,包括如下步骤:
(1)离线密钥分配,生成系统参数和主密钥:运行系统中的节点,生成参数为k,计算椭圆曲线E(Fp),计算输出的是{q,G1,G2,e,g,g1,h,α},其中q为一个质数,输入k生成大素数Q,建立两个阶为Q的群为:加法循环群G1,和乘法循环群G2使得CDH问题是困难的问题,建立一个双线性映射e:G1×G1→G2,任意选择一个生成元素p∈G1;然后通过系统中的节点共举产生系统的主密钥系统公开参数g,h∈G1,g1=gα∈G2以及主密钥对(α,Ppub);
假设存在节点i,节点共举产生系统的主密钥及主密钥对(α,Ppub)身份标识为IDi的节点i,随机选择αi作为主密钥α的秘密份额和系数ai,j(j∈1,2,...,k-1),以建立(n,k)门限多项式fi(x):
fi(x)=αi+ai,1x+ai,2x2+…+ai,k-1x(k-1)modp(1)
节点i计算V0=αiP及Vi=αi.jP(j∈1,2,...,k-1)传送给节点j,节点j收到fi(x)、V0和Vi后,验证如果该公式成立则验证通过,消息为节点i所发,否则断定消息并非节点i发送,节点j收到来自网络中的n个节点所发送的门限多项式,计算fj(j),共举得出网络的主密钥α:
f1(j)+f2(j)+...+fn(j)=α1+a1,1x+a1,2x2+…+a1,k-1xk-12+a2,1x+a2,2x2+…+a2,k-1xk-1+…+αn+an,1x+an,2x2+…+an,k-1xk-1
=(α1,12,1+…+αn,1)x+(α1,22,2+…+αn,2)x2+…+(α1,k-12,k-1+…+αn,k-1)xk-1
=α+a1x+a2x2+…+ak-1xk-1modp=f(x)
计算Ppub=αP,由此,得出系统的密钥对(α,Ppub)。
(2)在线签名:通过系统中的节点共举产生系统的主密钥,假设存在节点i以及需要与其相互认证的一个邻居节点j,节点i像节点j发声一个签名请求,节点i使用自己的私钥对事先约定的认证数据按照签名方案中的签名算法进行签名,节点j用节点i的身份信息作为公钥,按照签名方案中的签名验证算法,对接收到的信息进行验证,验证合格则确定节点i与节点j的身份,否则拒绝签名;
所述在线签名的具体步骤为:
(2-1)初始化节点
初始化端需要在可信第三方辅助下完成,假设传感器中有n个节点,节点编号后1至n,身份标识分别为ID1,ID2,ID3...IDn,可信第三方为网络中每个节点随机生成一个挑战,如节点i的挑战为Ci。然后可信第三方选择一个单向哈希函数H(SHA1)和一种公钥签名算法S(椭圆曲线签名算法),并为网络中的每个节点选择基于该公钥算法的一个私钥对(Q,K),如为节点i选择的公钥对为(Qi,Ki),其中公钥Qi可以公开,私钥Ki只有节点i自己知道。然后可信第三方将每个节点的挑战输入到所以其他节点当中,并利用哈希函数H对获得的其他节点的PUF响应进行哈希操作,如可信第三方将节点i的挑战Ci输入到其他节点的PUF中,对响应的结果进行哈希操作后获得H(P1(Ci)),H(P2(Ci)),H(P3(Ci)),…,H(Pn(Ci))等值。再次,可信第三方将节点的身份标识,节点的挑战,节点公钥对、哈希函数H及公钥签名算法的相关实现程序下载到网络中每个节点当中,同时可信第三方为每个节点下载存储有其他节点相关信息的三元组表。如节点i的内部存储有哈希函数H和公钥签名算法S实现程序,以及内部三元组表(如表一所示)。
表一接点i内部的三元组表
第1项 ID1 Q1 H(P1(Ci))
第2项 ID2 Q2 H(P2(Ci))
第i项 IDi Qi H(Pi(Ci))
第i+1项 IDi+1 Qi+1 H(Pi+1(Ci))
第n项 IDn Qn H(Pn(Ci))
(2)认证阶段
发送广播认证请求分组,无线网络中节点进行相互通信之前,需要先广播认证请求分组进行邻居发现,发送认证请求分组的目的是激活整个认证过程。广播认证请求分组内容主要包括请求分组发送节点标识身份、节点的挑战以及节点生成的一次性随机数。为了防止重复攻击,节点每次广播认证请求分组时,随机数都是变化的,如节点i发生广播认证请求分组格式为:
其中IDj字段:表示节点i的身份标识;Ci字段:表示节点i发出的挑战;Ni字段:表示节点i在本次广播中随机选取的一次性随机数,在认证过程结束前,该随机数暂时存在节点i内。
请参阅图1,发送第一认证应答:当传感器网络中的某个节点,如节点j,接收到广播请求认证分组后,如果希望与该发送节点i建立链接,则进行如下操作,
步骤2.1,首先查看节点j短时间内是否接收过相同的请求认证分组,若接到过说明存在重复攻击,所以放弃认证过程,否则执行步骤2.2;
步骤2.2节点j在自身三元组表中查找请求认证节点i的身份标识,若其三元组表中没有节点i的身份标识及其表项,说明系统初始化时并没节点i,则放弃认证过程,否则进行步骤2.3;
步骤2.3,节点j提取请求认证分组中的节点i的挑战Ci和随机数Ni,将挑战Ci输入到自身的PUF中,取得响应Pj(Ci),节点j利用哈希函数H对响应Pj(Ci)做哈希操作得到H(Pj(Ci)),同时节点j生成一次性随机数Nj。为了防止PUF的响应被窃取,节点此时删除响应Pj(Ci)。在认证过程未结束之前随机数Ni、Nj及挑战Ci暂时存在节点j内。
步骤2.4,节点j利用自身是私钥Ki和公钥签名算法对消息M=H(IDj||Cj||H(Pj(Ci))||Ni⊕Nj)进行签名得S(Kj,M),同时发送如下消息作为第一认证应答给节点i:
其中IDj字段:表示节点j的身份标识;Cj字段:表示节点j发出的挑战;Nj字段:表示节点j在本次广播中生成的一次性随机数,在认证结束之前,该随机数暂时存在节点j内;S(Kj,M)字段:表示节点j利用自身私钥Kj对消息M做出的签名,其中M=H(IDj||Cj||H(Pj(Ci))||Ni⊕Nj),这里Pj(Ci)为节点j在Ci为挑战时其PUF的响应;H(Pj(Ci))是Pj(Ci)做单向哈希运算得到的值;P(C)表示PUF在挑战C激励下的输出,||表示连接符。
验证第一认证应答:请参阅图2,具体步骤如下:
步骤3.1,节点i提取第一认证应答分组中节点j的身份标识IDj、挑战(Cj)以及随机数Nj,节点i在自身三元组表中查找节点j的身份标识IDj,如果三元组表中没节点j的身份标识,则放弃认证,否则执行步骤3.2。
步骤3.2,节点i利用提取的IDj,Cj,Nj、自身存储的H(Pj(Ci))以及Ni等信息重新构建消息M=H(IDj||Cj||H(Pj(Ci))||Ni⊕Nj),并利用存储节点j的公钥Qj对签名S(Kj,M)进行行验证,如验证不成功说明节点j为非法节点,则放弃认证过程。否则继续执行发送第二认证应答(在认证过程未结束之前随机数Nj暂存在节点i内)。
发送第二认证应答:当节点i经过验证确定节点j合法后,为了能够使得节点j对自己的身份进行验证,则将发送第二认证应答给节点j,其具体步骤为:
4.1、节点i将节点j的的挑战(Cj)输入到自身的PUF中,取得响应Pi(Cj),节点j利用哈希函数H对响应Pi(Cj)做哈希操作得到H(Pi(Cj)),并将Pi(Cj)删除,乙方攻击者窃取PUF的响应;
4.2节点i利用自身是私钥Kj和公钥签名算法对消息M′=H(IDi||Ci||H(Pi(Cj))||Ni⊕Nj)进行签名得到S(Ki,M′),同时删除认证过程中暂存的随机数Ni,Nj以及Cj,并发送如下消息作为第二认证应答为节点j:
其中IDi字段:表示节点i的身份标识;S(Ki,M′)字段:表示节点i利用自身私钥Ki对消息M′做出的签名,其中M′=H(IDi||Ci||H(Pi(Cj))||Ni⊕Nj),这里pi(Cj)为节点i在(Cj)为挑战时其PUF的响应,其中H(Pi(Cj))是pi(Cj)做单向哈希运算得到的值;
验证第二认证应答,即完成认证:当节点j接收到节点i的第二认证应答后,需要对节点j的合法性进行验证,其步骤为:
节点j提取第二认证应答分组中节点i的身份标识IDj以及自身存储的Ci,Ni,Nj和H(Pi(Cj))等信息重新构建消息M H(IDi||Ci||H(Pi(Cj))||Ni⊕Nj),并利用在节点i的公钥Qi对签名S(Ki,M′)进行验证。如果验证不通过说明节点i非法,放弃认证过程。否则说明节点i合法,此时在线签名认证结束,节点j删除认证过程中暂时存储的Ci,Ni,Nj等信息。
设置密钥使用期限来实现通信组密钥的更新:
将系统生存期按长度t划分为若干个时间短,定义节点i在时间段t开始时,拥有的系统秘密份额为经过更新后拥有的系统秘密份额为
所述的设置密钥使用期限来实现更换通信组密钥的更新,其更新步骤如下:
将系统生存期按长度t划分为若干个时间段,在每一个时间段,节点i建立(n,k′)门限多项式:
fi′(x)=bi,1x+bi,2x2+…+bi,k′-1x(k′-1)
节点i计算fi′(j)(j=1,2,...,k’-1)作为其他节点的密钥份额的更新量,并广播bi,jP(j=1,2,...,k’-1);
节点i生成签名σ,请求加密密钥的节点i随机选择作为私钥,并计算Qi=riP作为相应的公钥发送给节点j;
节点j接收到节点i的请求后,验证节点i的身份,节点j是合法的节点,该节点拥有加密密钥对αKj,PKk,随机选择信息m,发送r=(m,PKj)给节点i,等待节点i的签名;
节点i收到签名要求后,随机选择作为私钥,其对应的公钥为ui=tiH2(IDi),计算身份签名σ=H2(IDi+ti)-1P,把身份签名(ui,σ)传送给节点j。并把密钥份额更新量和签名(fi′(j),σ)加密传送给相应的节点;
节点j验证节点i的身份签名,如果e(P,P)=e(H2(IDj)P+tjP,σ,则节点j接受节点i的签名,否则拒绝其签名,节点j得到来自节点i的密钥份额更新后,计算与fi′(j)P是否相等,确认fi′(j)的有效性;
节点j收到系统中n个节点发送的密钥份额更新量后,计算出节点j新的秘密份额: &alpha; j t = &alpha; j t + &Sigma; i = 1 n f i ( j ) .
在无线传感器网络中,用户的ID使用时间具有实现性,通过在身份标识或者E-mail后添加时间信息,构成系统的识别ID,作为节点的公钥,按照用户的需求与使用时间,周期性地更新公钥,即可达到密钥撤销的目的。
相较于现有技术,本发明的基于身份的安全签名方法中的存储空间为常量,因此更适合在无线传感器中使用。本发明的基于身份的安全签名方法的离线分配密钥步骤,使用传感器节点的一个唯一标识作为它的身份信息,这个唯一标识可能是节点的一个唯一的名称,或者网络地址,或者硬件地址等,这个身份信息就是该节点的公钥。使用系统的公开参数和系统的主密钥,对每个节点的身份信息按照签名方案中的用户密钥生成算法计算出每个节点的私钥。
然后将系统的公开参数和每个节点的私钥都存储在对应的节点中,在无基站的无线传感器网络中这一过程可以在节点制造过程中完成。
本发明的基于身份的安全签名方法还包括在线签名步骤,当无线传感器网络在布置完成以后,每个节点内都存储了系统参数和自己的私钥,两个或多个节点间需要进行身份认证时,发送方可以使用自己的私钥对事先约定的认证数据按照签名方案中的消息签名算法进行签名。接收方用发送方的身份信息作为公钥,按照签名方案中的签名验证算法,对接收到的信息进行验证,从而确定发送方的身份。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (7)

1.一种基于身份的安全签名方法,其特征在于,包括如下步骤:
离线密钥分配,生成系统参数和主密钥:
运行系统中的节点,生成参数为k,计算椭圆曲线E(Fp),其中p为大于3的素数或2m,计算输出的是{q,G1,G2,e,g,g1,h,α},其中q为一个质数,
输入k生成大素数Q,建立两个阶为Q的群分别为:加法循环群G1和乘法循环群G2,建立一个双线性映射e:G1×G1→G2,任意选择一个生成元素p∈G1
通过系统中的节点共举产生系统的主密钥系统公开参数g,h∈G1,g1=gα∈G2以及主密钥对(α,Ppub);
在线签名:通过系统中的节点共举产生系统的主密钥,假设存在节点i以及需要与其相互认证的一个邻居节点j,节点i向节点j发出一个签名请求,节点i使用自己的私钥对事先约定的认证数据按照签名方案中的签名算法进行签名,节点j用节点i的身份信息作为公钥,按照签名方案中的签名验证算法,对接收到的信息进行验证,验证合格则确定节点i与节点j的身份,否则拒绝签名;
设置密钥使用期限来实现通信组密钥的更新:
将系统生存期按长度t划分为若干个时间段,定义节点i在时间段t开始时拥有的系统秘密份额为t’表示更新前的系统生存期,经过更新后拥有的系统秘密份额为
2.根据权利要求1所述基于身份的安全签名方法,其特征在于:所述在线签名的具体步骤为:
初始化节点:假设存在节点i以及需要与其相互认证的一个邻居节点j,则初始化阶段中可信第三方向节点i内部下载有关节点j的认证信息三元组<IDj,Qj,H(Pj(Ci))>,向节点j内部下载有关节点i的认证信息三元组<IDi,Qi,H(Pi(Cj))>,同时将公钥签名算法S、单向哈希函数H、节点的身份标识及其挑战下载到节点i当中;
节点i广播认证请求:节点i首先在网络中广播[IDiCiNi]信息为认证请求分组报文来完成邻居节点j发现,其中,IDi字段:表示节点i的身份标识、Ci字段:表示节点i发出的挑战、Ni字段:表示节点i选取的一次性随机数;
节点j认证接收节点i的请求:当邻居节点j接收到节点i的认证请求分组后,判断节点i的信息中的IDi是否合法,若否,则放弃认证,若是,则节点j发送认证响应分组给节点i;
节点i对节点j进行认证:当节点i接收到节点j的响应分组后,首先根据IDi查找自身存储的三元组,如果不存在IDj的信息则认为IDj非法,放弃认证过程;如果存在IDj的信息,则对该节点的身份进行认证;
节点i发送分组给节点j:当节点i确认节点j身份合法后,在提取节点j认证响应中的信息后,发送作为认证分组给节点j;
其中IDi字段:表示节点i的身份标识;S(Ki,M′)字段:表示节点i利用自身私钥Ki对消息M′做出的签名,其中M′=H(IDi‖Ci‖H(Pi(Cj))‖Ni⊕Nj),这里pi(Cj)为节点i在(Cj)为挑战时其PUF的响应,其中H(Pi(Cj))是pi(Cj)做单向哈希运算得到的值;
完成认证:当节点j接收到节点i的认证分组后,采取与节点i对节点j进行认证步骤相同的方法对i的认证分组进行认证,如果认证不成功,则说明节点i是非法的,终止认证过程;如果认证成功,则说明节点i是合法的,整个认证过程结束。
3.根据权利要求2所述的基于身份的安全签名方法,其特征在于:其中初始化节点具体步骤如下:
可信第三方为网络中的每个节点随机生成一个挑战;
可信第三方选择一个单向哈希函数H和一种公钥签名算法S,并为网络中每个节点选择相应的安全签名方法,
则基于该公钥算法S的一个公私钥对(Qi,Ki),其中公钥Qi公开,私钥Ki只有节点i自己知道;
可信第三方将每个节点的挑战输入到所有其他节点当中,并利用哈希函数H对获得的其他节点的PUF响应进行哈希操作;
可信第三方将以下数据下载到每个节点当中:该节点的身份标识、该节点的挑战、该节点的公私钥对、哈希函数H及公钥签名算法的相关实现程序,同时可信第三方为每个节点下载存储有其他节点相关信息的三元组表。
4.根据权利要求2所述的基于身份的安全签名方法,其特征在于:
所述节点j认证对节点i请求的具体步骤为:
当邻居节点j接收到节点i的认证请求分组后,节点j根据IDi查找自身是否存储有节点i的三元组信息,如果不存在节点i的信息则认为IDi非法,放弃认证过程,如果存在IDi的信息,则发送为认证响应分组给节点i,
其中IDj字段:表示节点j的身份标识;Cj字段:表示节点j发出的挑战;Nj字段:表示节点j选取的一次性随机数;S(Kj,M)字段:表示节点j利用自身私钥Kj对消息M做出的签名,其中M=H(IDj‖Cj‖H(Pj(Ci))‖Ni⊕Nj),这里Pj(Ci)为节点j在Ci为挑战时其PUF的响应;H(Pj(Ci))是Pj(Ci)做单向哈希运算得到的值;P(C)表示PUF在挑战C激励下的输出,‖表示连接符。
5.根据权利要求2所述的基于身份的安全签名方法,其特征在于:
所述节点i对节点j进行认证步骤,还包括:如果存在IDj的信息,根据接收到的认证响应和存储在自身三元组中的信息重组消息M,并利用节点j的公钥Qj对签名S(Kj,M)进行验证,如果验证结果正确,则说明节点j是合法的,否则节点i终止认证。
6.根据权利要求1所述的基于身份的安全签名方法,其特征在于:所述设置密钥使用期限来实现通信组密钥的更新,其更新步骤具体如下:
将系统生存期按长度t划分为若干个时间段,在每一个时间段,节点i建立(n,k′)门限多项式:
f′i(x)=bi,1x+bi,2x2+…+bi,k′-1x(k′-1)
节点i计算f′i(j),其中j=1,2,...,k’‐1作为其他节点的密钥份额的更新量,并广播bi,jP,其中j=1,2,...,k’‐1;
节点i生成签名σ,并把密钥份额更新量和签名(f′i(j),σ)加密传送给相应的节点;
节点j验证节点i的身份签名,如果e(P,P)=e(H2(IDj)P+tjP,σ,则节点j接受节点i的签名,否则拒绝其签名,节点j得到来自节点i的密钥份额更新后,计算与f′i(j)P是否相等,确认f′i(j)的有效性;
节点j收到系统中n个节点发送的密钥份额更新量后,计算出节点j新的秘密份额: &alpha; j t = &alpha; j t + &Sigma; i = 1 n f i ( j ) .
7.根据权利要求6所述的基于身份的安全签名方法,其特征在于:所述节点i生成签名σ的具体步骤为:
请求加密密钥的节点i随机选择作为私钥,并计算Qi=riP作为相应的公钥发送给节点j;
节点j接收到节点i的请求后,验证节点i的身份,节点j是合法的节点,该节点拥有加密密钥对αKj,PKk,随机选择信息m,发送r=(m,PKj)给节点i,等待节点i的签名;
节点i收到签名要求后,随机选择作为私钥,其对应的公钥为ui=tiH2(IDi),计算身份签名σ=H2(IDi+ti)-1P,把身份签名σ传送给节点j。
CN201210477199.8A 2012-11-21 2012-11-21 基于身份的安全签名方法 Active CN102970679B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210477199.8A CN102970679B (zh) 2012-11-21 2012-11-21 基于身份的安全签名方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210477199.8A CN102970679B (zh) 2012-11-21 2012-11-21 基于身份的安全签名方法

Publications (2)

Publication Number Publication Date
CN102970679A CN102970679A (zh) 2013-03-13
CN102970679B true CN102970679B (zh) 2015-12-09

Family

ID=47800479

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210477199.8A Active CN102970679B (zh) 2012-11-21 2012-11-21 基于身份的安全签名方法

Country Status (1)

Country Link
CN (1) CN102970679B (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103731819B (zh) * 2013-12-11 2016-10-26 中国电子科技集团公司第三十研究所 一种无线传感器网络节点的认证方法
CN103701700B (zh) * 2013-12-24 2017-01-04 中国科学院信息工程研究所 一种通信网络中的节点发现方法及系统
CN103825742A (zh) * 2014-02-13 2014-05-28 南京邮电大学 一种适用于大规模传感器网络的认证密钥协商方法
CN105100031B (zh) * 2014-05-23 2019-05-17 北京奇虎科技有限公司 一种批量添加信任的方法、装置和系统
CN105142140B (zh) * 2015-06-25 2018-07-06 东南大学 基于复式验证的安全最值数据融合方法
CN105450394B (zh) * 2015-12-30 2018-12-28 中国农业大学 一种基于门限秘密共享的份额更新方法及装置
CN105740441A (zh) * 2016-02-01 2016-07-06 上海凭安网络科技有限公司 一种不泄露隐私的信息发布方法
CN105743647B (zh) * 2016-03-17 2019-01-08 西安电子科技大学 空间信息网跨域的广播认证方法
CN105978869B (zh) * 2016-05-06 2018-11-30 西安电子科技大学 一种空间信息网络中可跨域的基于身份广播加密方法
CN107493572B (zh) * 2016-06-13 2021-04-02 上海复旦微电子集团股份有限公司 一种无线射频设备、认证服务器及认证方法
EP3979553B1 (en) * 2017-06-07 2024-06-19 nChain Licensing AG Credential generation and distribution method and system for a blockchain network
CN107733655B (zh) * 2017-10-13 2020-10-09 东南大学 一种基于多项式重构的apuf安全认证方法
CN107920352A (zh) * 2017-12-11 2018-04-17 广西师范大学 一种基于混沌的无线传感器网络广播身份认证方法
CN110035037B (zh) * 2018-01-11 2021-09-17 华为技术有限公司 安全认证方法、相关设备及系统
CN108173882B (zh) * 2018-03-01 2020-07-31 北京科技大学 基于aes算法的边缘计算节点身份认证方法
GB201809887D0 (en) * 2018-06-15 2018-08-01 Iothic Ltd Decentralised authentication
CN108449756B (zh) * 2018-06-29 2020-06-05 北京邮电大学 一种网络密钥更新的系统、方法及装置
CN109245882A (zh) * 2018-09-08 2019-01-18 华东交通大学 一种适用于电力无线传感器网络的sm2签名方法
CN109639409B (zh) * 2018-09-20 2021-05-04 创新先进技术有限公司 密钥初始化方法、装置、电子设备及计算机可读存储介质
CN109412790B (zh) * 2018-10-26 2021-11-16 重庆邮电大学 一种面向物联网的用户认证与密钥协商系统及方法
CN109379194A (zh) * 2018-12-11 2019-02-22 西安慧博习兆信息技术有限公司 用标识密钥安全加解密、签署、传递文件的网络系统
CN109639688B (zh) * 2018-12-18 2021-03-19 清创网御(合肥)科技有限公司 一种物联网安全防护系统及其防护方法
US11963003B2 (en) * 2019-01-10 2024-04-16 Stefan Meyer Network-connectable sensing device
CN109462484B (zh) * 2019-01-16 2019-08-09 中国人民解放军国防科技大学 一种结合广播优势的身份基安全互认证方法
CN110049002B (zh) * 2019-03-01 2021-07-27 中国电子科技集团公司第三十研究所 一种基于PUF的IPSec认证方法
CN111163470B (zh) * 2019-12-31 2021-06-08 联想(北京)有限公司 核心网网元通信方法、装置、计算机存储介质和电子设备
CN112187468B (zh) * 2020-09-21 2022-04-01 北京航空航天大学 一种基于身份标识的can网络数据源身份认证方法
CN112787796B (zh) * 2021-01-06 2023-04-28 南京邮电大学 一种边缘计算中检测虚假数据注入的聚合方法及装置
CN112733065B (zh) * 2021-01-15 2022-10-04 海南金垦赛博信息科技有限公司 一种热带农业专家信息管理方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101711027A (zh) * 2009-12-22 2010-05-19 上海大学 一种无线传感器网络中基于身份的分散密钥管理方法
CN102325131A (zh) * 2011-07-20 2012-01-18 北京邮电大学 无线传感器网络节点双向身份认证方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7484090B2 (en) * 2003-10-10 2009-01-27 Panasonic Corporation Encryption apparatus, decryption apparatus, secret key generation apparatus, and copyright protection system
KR101366243B1 (ko) * 2006-12-04 2014-02-20 삼성전자주식회사 인증을 통한 데이터 전송 방법 및 그 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101711027A (zh) * 2009-12-22 2010-05-19 上海大学 一种无线传感器网络中基于身份的分散密钥管理方法
CN102325131A (zh) * 2011-07-20 2012-01-18 北京邮电大学 无线传感器网络节点双向身份认证方法

Also Published As

Publication number Publication date
CN102970679A (zh) 2013-03-13

Similar Documents

Publication Publication Date Title
CN102970679B (zh) 基于身份的安全签名方法
CN101711027B (zh) 一种无线传感器网络中基于身份的分散密钥管理方法
EP3017562B1 (en) A method and apparatus for anonymous authentication on trust in social networking
CN100563150C (zh) 一种分布式的身份证书签发方法
CN107707360A (zh) 物联网环境下的异构聚合签密方法
Li et al. Identity-based deniable authentication for ad hoc networks
Manvi et al. Message authentication in vehicular ad hoc networks: Ecdsa based approach
JPH08328472A (ja) 認証交換方法、復元型電子署名方法、付加型電子署名方法、鍵交換方法、復元型公衆電子署名方法、付加型公衆電子署名方法およびブラインド電子署名方法
Li et al. Cryptanalysis and improvement for certificateless aggregate signature
CN108574699B (zh) 一种通信连接方法、系统及物联网设备系统和存储介质
CN103095697A (zh) 一种多重签名生成与验证系统及其方法
CN103634788A (zh) 前向安全的无证书多代理签密方法
Kim et al. Device authentication protocol for smart grid systems using homomorphic hash
CN108337092A (zh) 用于在通信网络中执行集体认证的方法和系统
Elkhalil et al. An efficient heterogeneous blockchain-based online/offline signcryption systems for internet of vehicles
Luo et al. A security communication model based on certificateless online/offline signcryption for Internet of Things
Mishra et al. SFVCC: chaotic map‐based security framework for vehicular cloud computing
Pang et al. Efficient and secure certificateless signature scheme in the standard model
CN104618090A (zh) 一种适用于异构传感器网络的组密钥管理方法
CN103414731A (zh) 一种并行密钥隔离的基于身份的聚合签名方法
Ogundoyin An Efficient, Secure and Conditional Privacy-Preserving Authentication Scheme for Vehicular Ad-hoc Networks.
CN111669275B (zh) 一种无线网络环境下可选择从节点的主从协作签名方法
Tseng et al. A robust user authentication scheme with self‐certificates for wireless sensor networks
CN114362958B (zh) 一种基于区块链的智能家居数据安全存储审计方法及系统
Prakasha et al. Efficient digital certificate verification in wireless public key infrastructure using enhanced certificate revocation list

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 510898, No. 307-308 Tianhe North Road, 898, Guangzhou, Guangdong

Applicant after: YUELIANG CHUANQI TECHNOLOGY CO., LTD.

Address before: 510898, No. 307-308 Tianhe North Road, 898, Guangzhou, Guangdong

Applicant before: Lenovo Chinaweal System & Service Co., Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: LENOVO CHINAWEAL SYSTEM + SERVICE CO., LTD. TO: YUELIANG CHUANQI TECHNOLOGY CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant