CN113346993B - 一种基于隐私保护的分层动态群组密钥协商方法 - Google Patents
一种基于隐私保护的分层动态群组密钥协商方法 Download PDFInfo
- Publication number
- CN113346993B CN113346993B CN202110641379.4A CN202110641379A CN113346993B CN 113346993 B CN113346993 B CN 113346993B CN 202110641379 A CN202110641379 A CN 202110641379A CN 113346993 B CN113346993 B CN 113346993B
- Authority
- CN
- China
- Prior art keywords
- terminal member
- attribute
- group
- key
- verification
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 93
- 238000012795 verification Methods 0.000 claims description 118
- 238000004364 calculation method Methods 0.000 claims description 18
- 238000013507 mapping Methods 0.000 claims description 8
- 238000006467 substitution reaction Methods 0.000 claims description 4
- 230000006854 communication Effects 0.000 abstract description 33
- 238000004891 communication Methods 0.000 abstract description 32
- 238000005516 engineering process Methods 0.000 abstract description 11
- 230000008859 change Effects 0.000 abstract description 2
- 230000007246 mechanism Effects 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 27
- 230000008569 process Effects 0.000 description 12
- 101000772194 Homo sapiens Transthyretin Proteins 0.000 description 3
- 102100029290 Transthyretin Human genes 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 101001019450 Haloferax volcanii (strain ATCC 29605 / DSM 3757 / JCM 8879 / NBRC 14742 / NCIMB 2012 / VKM B-1768 / DS2) Isocitrate dehydrogenase [NADP] Proteins 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 101150050759 outI gene Proteins 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000035755 proliferation Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000001568 sexual effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提出了一种基于隐私保护的分层动态群组密钥协商方法,步骤为:对群组密钥协商网络域内的协议参数进行初始化,生成认证中心和终端成员的公/私钥对,终端成员进行隐藏属性的身份认证,认证成功后,终端成员根据自己属性权值计算加密密钥和解密密钥,对密钥的一致性进行验证,终端成员还可以向认证中心申请变更属性以参与高层或者低层的群组密钥协商。本发明采用隐藏属性的身份认证技术,在身份认证的同时能够避免个人隐私信息的泄露,同时根据属性权值设置阈值权限,以不同的保密性参与群组通信,提高了数据通信的可靠性,采用身份认证和属性权值匹配的双认证机制,很大程度上提高了系统的安全性,使得群组密钥协商更加灵活、高效和实用。
Description
技术领域
本发明涉及信息安全的技术领域,尤其涉及一种基于隐私保护的分层动态群组密钥协商方法。
背景技术
随着大数据、人工智能以及物联网等科技技术的不断深入发展,为人们的日常生活提供了便利,为国家和社会的发展提供了动力。这些技术的核心是多方实体间安全的资源共享、信息交换和传输。与之同时,大量数据的交换和处理也带来了一系列的安全隐患,如何在大量数据交换时保证数据不被泄露,如何保证通信实体的身份信息不被泄露,这就给信息安全技术提出了一个巨大的挑战。
互联网作为纽带将各行各业联系到一起,人们足不出户就可以享受购物、视频、会议等体验。随之而来的是分组应用、分组协议的大量增加,例如群组聊天、视频会议、在线文档等等。群组密钥协商使参与通信的成员协商出一个会话密钥,对传输的信息及资源进行加密处理,从而实现安全可靠的通信。
但是现有的群组密钥协商技术通过基于身份的认证容易出现个人身份信息泄露的情况,同时现有的群组密钥协商计算量较大,而且通信消耗过多,对于一些低能量终端节点的应用场景非常不适用。
目前,针对基于隐私保护的分层动态群组密钥协商方法的研究尚未出现,一系列的挑战性问题有待解决,包括通信过程中群组密钥协商策略的设置、身份认证及个人隐私保护问题等方面的工作尚无先例。
发明内容
针对现有群组密钥协商方法进行身份认证过程中,容易暴露个人身份信息,无法灵活地保护敏感数据的技术问题,本发明提出一种基于隐私保护的分层动态群组密钥协商方法,采用隐藏属性的身份认证技术在群组密钥协商的身份认证过程中实现身份认证的同时又能很好的保护个人隐私,同时减少了每个参与者的计算和通信开销,采用身份认证和属性权限参数匹配,避免了不具有权限的终端的合谋攻击。
为了达到上述目的,本发明的技术方案是这样实现的:一种基于隐私保护的分层动态群组密钥协商方法,其步骤为:
步骤一:群组密钥协商网络中域内协议参数的初始化:认证中心CA和各终端成员生成各自的公/私钥对;
步骤二:隐藏属性的身份认证
A)认证中心CA选择一系列两两互素的正整数并将正整数和网络属性集中的属性以及属性序列号广播给域内的所有终端成员;
B)终端成员运用各自的有序的网络属性集中的属性计算认证所需要的中间参数,并将中间参数发送给认证中心CA;
C)认证中心CA接收到各终端成员发送的消息后,为各终端成员选择属性序列号对应的属性并通过中国剩余定理验证各终端成员的身份,如果验证通过,认证中心CA计算出属性权限参数和签名,并将属性权限参数、签名和公钥发送给认证后的终端成员;
D)各个终端成员收到认证中心CA发送的消息后,终端成员计算出属性权值,然后各终端成员验证认证中心CA的身份以及属性权值的正确性,如果验证通过,各终端成员获得与属性相对应的属性权值,各终端成员身份认证成功;
步骤三:群组的密钥协商;
F)每个参与密钥协商的终端成员计算出群组的加密密钥;
G)每个终端成员从认证中心CA获取属性序列号对应的网络属性参数计算解密密钥;
H)参与群组密钥协商的所有终端成员计算得到解密密钥之后,群组中的任意一个终端成员计算验证自身身份和解密密钥所需的中间参数,然后将中间参数和自己的公钥发送给群组的其它终端成员;
I)群组中其它终端成员收到信息后,验证信息发送者的身份,如果验证通过,信息接收者计算验证解密密钥所需的中间参数并对解密密钥是否一致进行验证,如果验证通过,则群组中所有成员的解密密钥是正确的,如果不一致,信息接收者广播错误消息,同时群组中的终端成员重新计算解密密钥。
还包括步骤四:终端成员参与不同层次群组的密钥协商:
(a)参与高层次群组的密钥协商,实现方法为:
J)处于低层次群组的终端成员参与高层次群组的密钥协商时,低层次群组的终端成员从认证中心CA获得高层次群组的属性序列号,然后与自己的属性序列号相交获得不相交的属性序列后,低层次群组的终端成员计算属性权限参数、属性权值、不相交的属性序列、中间变量以及公钥发送给认证中心CA;
K)认证中心CA收到消息后,计算验证终端成员身份所需的中间参数并验证终端成员的身份和属性,如果验证通过,认证中心CA计算新的属性权限参数并将新的属性权限参数和公钥发送给终端成员;
L)终端成员收到来自认证中心CA的消息后,首先验证认证中心CA的身份,如果验证通过,则用新的属性权限参数替换原来的属性权限参数并计算新的属性权值,然后按照步骤三参与群组的密钥协商;
(b)参与低层次群组的密钥协商,实现方法为:
M)当处于高层次群组的终端成员参与低层次群组的密钥协商时,高层次群组的终端成员从认证中心CA获得低层次群组的属性序列号,然后终端成员与自己原有的属性序列号取交集得到不参与低层次群组的密钥协商的属性序列,然后计算验证自己身份所需的中间参数并将不参与较低层次群组的密钥协商的属性序列、中间参数以及公钥发送给认证中心CA;
N)认证中心CA收到终端成员发送的消息后,计算验证终端成员身份所需的中间参数并验证终端成员的身份和属性,如果验证通过,认证中心CA计算属性权限参数,然后认证中心CA将属性权限参数和公钥发送给终端成员;
O)终端成员收到消息后验证认证中心CA的身份,如果验证通过,终端成员用新的属性权限参数替换原有的属性权限参数并计算属性权值,然后按照步骤三参与群组的密钥协商。
所述步骤一中认证中心CA和各终端成员生成各自的公/私钥对的方法为:
其中,g1为加法群G1的生成元,表示阶为q的整数集,q为加法群G1的素数阶,1≤l≤L,1≤i≤n,n为域内终端成员的个数,L为群组密钥协商中群组的个数,为终端成员ul,i的身份标识,是哈希散列函数。
所述步骤二中隐藏属性的身份认证的实现方法为:
A)认证中心CA为域内每一个终端成员随机选择一系列与属性属性集Attr={A1,A2,...,Aν1,...,AR}对应的正整数{p1,p2,...,pv1,...,pR},认证中心CA将信息{(A1,S1,p1),(A2,S2,p2),...,(AR,SR,pR)}在域内广播;其中,任意两个正整数pi,pj互素,Av1为属性属性集中的第v1个网络属性,1≤v1≤R,pv1为网络属性Av1对应的网络属性参数,R∈N*表示网络属性的数量,N*表示正整数,Sv1为网络属性Av1对应的属性序列号;
B)带有有序的网络属性集attrl,i={al,i,1,al,i,2,...,al,i,r}的每一个终端成员ul,i随机选择两个正整数终端成员ul,i计算中间变量οl,i=λl,ig1,θl,i,1=γl,iH1(al,i,1)+οl,i,θl,i,2=γl,iH1(al,i,2)+οl,i,...,θl,i,r=γl,iH1(al,i,r)+οl,i、和hl,i,v=H1(θl,i,v),然后终端成员ul,i将消息{(θl,i,1,hl,i,1,S1),(θl,i,2,hl,i,2,S2),...,(θl,i,r,hl,i,r,Sr),ηl,i}发送给认证中心CA;其中,正整数γl,i,λl,i≠1,中间变量οl,i<H1(al,i,v),1≤v≤r,θl,i,1,θl,i,2,...,θl,i,r、ηl,i、hl,i,v和οl,i表示终端成员ul,i注册所需的中间变量,g1为加法群G1的生成元,属性集r∈N*且属性al,i,r-1<al,i,r,r≤R为终端成员ul,i的属性的个数,al,i,v为终端成员ul,i的第v个属性,表示终端成员ul,i的私钥;H1(·)是哈希散列函数,||是连接符号;
C)认证中心CA接收终端成员ul,i发送的消息{(θl,i,1,hl,i,1,S1),(θl,i,2,hl,i,2,S2),...,(θl,i,r,hl,i,r,Sr),ηl,i}后,认证中心CA从网络属性集{A1,A2,...,AR}中选择与属性序列号{S1,S2,...,Sr}相对应的网络属性{A1,A2,...,Ar},然后认证中心CA通过验证等式和βl,i,1=βl,i,2=...=βl,i,r是否成立验证终端成员ul,i的属性,如果所有的等式相等,则证明中间变量θl,i,v来自终端成员ul,i并且其未被篡改;然后认证中心CA通过验证等式是否相等验证ul,i的属性和身份,如果验证通过,认证中心CA选择一系列与属性集attrl,i={al,i,1,al,i,2,...,al,i,r}对应的随机数并且计算属性权限参数χl,i,ν=ιl,i,νβl,i,ν和签名δl,i=SKCA(H2(ιl,i,1g1||ιl,i,2g1||...||ιl,i,rg1))g1;最后,认证中心CA将消息{PKCA,δl,i,(χl,i,1,χl,i,2,...χl,i,r)}发送给注册的终端成员ul,i;其中,al,i,v为终端成员ul,i的属性,χl,i,v为终端成员ul,i的第v个属性的属性权限参数,1≤v≤r,δl,i是终端成员ul,i注册所需的签名,PKCA为认证中心CA的公钥,SKCA为认证中心CA的私钥,mod为取余函数,e(·)是可计算的双线性映射函数,为终端成员ul,i的公钥,βl,i,ν为验证终端成员ul,i的属性所需的中间变量,H2(·)是哈希散列函数;
D)终端成员ul,i接收认证中心CA发送的信息{PKCA,δl,i,(χl,i,1,χl,i,2,...χl,i,r)}后,终端成员ul,i计算属性权值Tl,i,1=λl,i -1χl,i,1=ιl,i,1g1,Tl,i,2=λl,i -1χl,i,2=ιl,i, 2g1,...,Tl,i,r=λl,i -1χl,i,r=ιl,i,rg1和中间变量μl,i=H2(Tl,i,1||Tl,i,2...||Tl,i,r);然后终端成员ul,i通过验证等式e(δl,i,g1)=e(μl,ig1,PKCA)是否成立验证认证中心CA的身份和属性al,i,v对应的属性权值Tl,i,v的正确性,如果等式成立,终端成员ul,i获得与每一个属性al,i,v相对应的属性权值Tl,i,v,终端成员ul,i注册成功;如果等式不成立,终端成员ul,i注册失败;其中,Tl,i,1,Tl,i,2,...,Tl,i,r表示终端成员ul,i的属性权值,μl,i表示验证认证中心CA身份所需的中间变量。
所述步骤三中群组的密钥协商的方法为:(1)参与群组密钥协商的终端成员u2,i根据属性权值{T2,i,1,T2,i,2,...,T2,i,ν,...,T2,i,r}计算中间变量ρ2,i,1=T2,i,1g1并且终端成员u2,i使用属性权值{T2,i,1,T2,i,2,...,T2,i,r}计算中间变量计算加密密钥其中,g1为加法群G1的生成元,表示终端成员u2,i的私钥;
(2)各终端成员u2,i从认证中心CA中获取用于加/解密所需的网络属性集中的属性所对应的网络属性参数(p1,p2,...,pr)计算出群组解密密钥计算如下:终端成员u2,i通过中国剩余定理计算求解可得到一个唯一的解则群组的解密密钥其中,v=1,2,3,...,r,x2,i表示计算解密密钥所需的中间变量,mod是取余运算;
(3)参与群组密钥协商的所有终端成员计算解密密钥之后,任意终端成员u2,i计算中间变量和然后终端成员u2,i将消息广播给群组内的所有终端成员;其中,π2,i为验证密钥一致性所需的中间变量,μ'2,i表示验证终端成员u2,i身份所需要的中间变量;
(4)群组内的其它终端成员收到终端成员u2,i发送的消息后,群组内任意其它终端成员u2,k计算中间变量并且通过验证等式是否成立验证终端成员u2,i的身份,如果验证通过,终端成员u2,k计算中间变量并且通过验证π2,k=π2,i是否成立验证解密密钥的正确性,如果验证通过,则说明群组内所有终端成员的解密密钥是正确的,如果验证不通过,则重新协商密钥并广播错误报告;其中,k≠i,表示验证终端成员u2,i身份所需要的中间变量,π2,k表示验证密钥正确性所需要的中间变量。
所述步骤四中参与高层次群组的密钥协商的实现方法为:
J)当处于L2层群组且带有属性序列号的终端成员u2,j想要参与L1层群组的群组密钥协商,终端成员u2,j从认证中心CA获得L1层群组的属性序列号然后终端成员u2,j将新获得的属性序列号与原有的属性序列号取交集,交集终端成员u2,j的属性序列号与L1层群组的属性序列号不相交的集合AS1={Sν,S2,ν,S2,ν+1,S2,ν+2},然后终端成员u2,j获得属性权限参数{χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2}并且计算属性权值和中间变量然后将消息发送给认证中心CA;其中,L2层群组为低于L1层群组的层次,表示L1层群组的属性序列号集,χ2,j,ν为终端成员u2,j的第v个属性权限参数,表示终端成员u2,j的私钥,H2(·)是哈希散列函数;
K)认证中心CA收到终端成员u2,j发送的消息后,认证中心CA计算中间变量且通过验证等式是否成立验证终端成员u2,j的身份,如果验证通过,认证中心CA计算中间变量χ'1,i,v=ι1,i,vβ2,j,v(ι1,i,vβ2,j,v=ι1,i,vβ2,j,v+1=ι1,i,vβ2,j,v+2)并且发送消息{χ'1,i,v,χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2,PKCA}给终端成员u2,j;其中,表示验证终端成员u2,j身份所需要的中间变量,PKCA表示认证中心CA的公钥;
L)终端成员u2,j接收到认证中心CA发送的消息{χ'1,i,v,χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2,PKCA}后,终端成员u2,j通过验证等式e(δ2,j,g1)=e(μ2,jg1,PKCA)是否成立验证认证中心CA的身份,如果验证通过,终端成员u2,j用中间变量χ'1,i,v替代{χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2}并且计算属性权值终端成员u2,j获得新的属性权值集合{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r,T'1,i,v},L2层群组的终端成员u2,j的属性序列号与L1层群组的终端成员u1,i属性序列号的交集因此属性权值{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r}与{T1,i,1,...T1,i,v-1,T1,i,v+1,...,T1,i,r}相等,然后按照步骤三进行群组L1的密钥协商。
所述步骤四中参与低层次群组的密钥协商的实现方法为:
M)当处于高层级的L1层群组且带有属性序列号的终端成员u1,i想要参与L2层群组的群组密钥协商,终端成员u1,i从认证中心CA获得L2层群组的属性序列号终端成员u1,i将新获得的属性序列号与原有的属性序列号取交集,交集终端成员u1,i的属性序列号与L2层群组属性序列号不相交的集合AS2={S2,ν,S2,ν+1,S2,ν+2},然后终端成员u1,i计算中间变量然后将消息发送给认证中心CA;其中,L2层群组为低于L1层群组的层次,表示L2层群组的属性序列号,AS0表示L1层群组的属性序列号与L2层的群组属性序列号的交集,表示终端成员u1,i的私钥,H2(·)是哈希散列函数;
N)认证中心CA收到终端成员u1,i发送的消息后,计算中间变量并且通过验证等式是否成立验证终端成员u1,i的身份和属性,如果相等,认证中心CA计算中间变量χ'2,j,v=ι2,j,vβ1,i,v,χ'2,j,v+1=ι2,j,v+1β1,i,v,χ'2,j,v+2=ι2,j,v+2β1,i,v并发送新的属性权限参数{χ1,i,ν,χ'2,j,v,χ'2,j,v+1,χ'2,j,v+2,PKCA}给终端成员u1,i;其中,表示验证终端成员u1,i身份所需的中间变量,χ2,j,ν为终端成员u2,j的第v个属性权限参数;
O)终端成员u1,i收到认证中心CA发送的消息后,通过验证等式e(δ1,i,g1)=e(μ1, ig1,PKCA)是否成立验证认证中心CA的身份,如果验证通过,终端成员u1,i用属性权限参数集合{χ'2,j,v,χ'2,j,v+1,χ'2,j,v+2}替换χ1,i,ν并且计算新的属性权值终端成员u1,i获得新的属性权值集合{T1,i,1,...T1,i,v-1,T1,i,v+1,...T1,i,r,T'2,j,v,T'2,j,v+1,T'2,j,v+2},L2层群组的终端成员u2,j的属性序列号与L1层群组的终端成员u1,i属性序列号的交集属性权值集合{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r}与{T1,i,1,...T1,i,v-1,T1,i,v+1,...,T1,i,r}相等,然后按照步骤三进行L1层群组的密钥协商。
等式e(δl,i,g1)=e(μl,ig1,PKCA)的验证方法为:
等式e(δ2,j,g1)=e(μ2,jg1,PKCA)的验证方法为:
等式e(δ1,i,g1)=e(μ1,ig1,PKCA)的验证方法为:
与现有技术相比,本发明的有益效果:群组内的终端成员在进行群组密钥协商前通过隐藏属性的身份认证技术进行身份认证;确认每个终端成员的身份后,计算属性权值进而计算出群组的加密密钥和解密密钥,然后完成密钥一致性验证,同时,成员可以通过申请参与高层或者低层的群组密钥协商。本发明群组内终端成员采用非对称加密算法协商密钥,然后通过一致性验证来保证密钥的可靠性,最后通过群组密钥对通信数据进行加密和解密,进而实现了群组成员之间安全可靠的通信;采用隐藏属性的身份认证技术在群组密钥协商之前的身份认证过程中实现个人隐私保护及身份认证的效果;在终端成员注册的过程中,除了对终端成员进行身份认证外,每个终端成员还获得相应的属性权重。根据这些属性的权值设置阈值权限,并根据终端成员的阈值权限分成不同的密钥协商群组,以不同的保密性参与群组通信,提高了数据通信的安全性。同时满足一定条件的低层群组的终端成员可以向认证中心申请替换获得高层级属性权值参与高层群组的通信,高层群组的终端成员也可以向认证中心申请替换获得低层级属性权值参与低层群组的通信,既可以保障通信数据的安全性,又可以很好地保护个人隐私,使得各领域中信息资源共享更加灵活、高效和实用,具有重要的领域研究意义和商业应用价值。本发明用一组属性来描述终端成员的身份,认证过程中能够很好的保护终端成员的隐私,且计算量和通信消耗较低能够满足更多的应用场景;采用分层群组密钥协商,能够满足不同保密等级会话的需要。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的流程示意图。
图2为本发明实施例1的分层群组密钥协商示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
针对互联网通信复杂环境下,网络中的各移动终端间在信息安全通信时涉及到数据资源的保密性、完整性和抗泄露性的问题;同时,在互联网中,移动终端可以随时随地的访问互联网造成通信环境人员复杂、随机性等问题,在此背景下,本发明提出一种基于隐私保护的分层动态群组密钥协商方法,如图1所示,实现群组内通信信息的安全共享。首先,群组内的认证中心CA随机选择自己的私钥,并计算对应的公钥,群组内的各终端成员随机选择正整数,然后计算对应的私钥并利用加法群的生成元计算出自己的公钥;其次,认证中心CA为群组内成员的属性选择一系列的正整数并和属性、属性序列号一起广播发送给群组内所有的终端成员;每一个终端成员运用各自的有序的属性集中的属性和随机选择的两个正整数计算终端成员认证所需要的中间参数,然后将这些中间参数发送给认证中心CA,认证中心CA验证各终端成员的身份,然后计算相应的属性权限参数和签名,认证中心CA将签名、属性权限参数和公钥发送给各终端成员,各终端成员接收到消息之后计算出自己的属性所对应的属性权值,然后验证认证中心CA的身份和属性权值的正确性,如果验证通过,各终端成员认证完成。然后,终端成员根据自己获得的属性权值计算加密秘钥和解密密钥,终端成员计算验证密钥正确性所需的中间参数并将这些中间参数广播给群组内的其他终端成员,其他成员收到消息后,计算中间参数并验证消息发送者的身份,如果匹配,且所计算的参数值相等,则所计算的密钥是正确的,如果参数值不相等则广播错误消息并重新协商密钥;终端成员也可以根据自己的实际情况申请加入高层群组或者低层群组参与群组密钥协商。
1.本发明所涉及的理论基础知识和相关定义
1.1双线性映射问题
定义1.双线性映射:设G1为加法群,其生成元为g1,即G1=<g1>,G2为乘法循环群,加法群G1和乘法循环群G2具有共同的大素数阶q,是安全参数,且加法群G1和乘法循环群G2上的离散对数是困难的,加法群G1和乘法循环群G2是一对双线性群,e是可计算的双线性映射,且e:G1×G1→G2,其具有如下性质:
性质1.非退化性:存在生成元ω,ρ∈G1,使得e(ω,ρ)≠1。
性质2.可计算性:存在有效的算法,对于生成元ω,ρ∈G1可计算e(ω,ρ)。
推理1.对所有的生成元ρ1,ρ2,ω∈G1,有e(ρ1+ρ2,ω)=e(ρ1,ω)e(ρ2,ω)。
1.2计算复杂性问题
定义1.离散对数问题(DLP):对于等式Y=aQ,其中,生成元Y,Q∈G1,参数如果参数a和生成元Q已知,很容易计算出生成元Y;但是已知生成元Q和生成元Y,计算出参数a的概率在多项式时间内可以忽略不计;其中,表示阶为q的整数集。
1.3中国剩余定理
假设存在一系列互素正整数序列d1,d2,...,dn,其中,d=d1d2...dn,Di=d1d2...di-1di+1...dn;给定如下方程组则其拥有唯一解其中,yi·Di moddi=1,i=1,2,...,n,li表示第i个正整数,yi表示计算方程组唯一解的中间变量。
实施例1
复杂多方通信情况下,群组内的认证中心CA需要对通信的终端成员进行身份认证,但在提供身份信息时,身份信息容易泄露或者被窃取。出于安全考虑,通信实体多方认证的同时,需要对个人身份隐私进行保护。在信息共享时,还要保障通信信息的保密性、完整性和抗泄露性,要求符合权限策略的成员才能进行通信。针对此应用背景下,本发明一种基于隐私保护的分层动态群组密钥协商方法,如图1所示,其步骤如下:①参与群组密钥协商的终端成员首先进行参数初始化,分别产生各自的公/私钥对;②群组内的终端成员隐藏属性认证:在进行群组密钥协商之前对群组内的终端成员进行隐藏属性的身份认证,并根据终端成员各自的属性集计算出相应的属性权值;③群组密钥协商:各终端成员根据自身的属性权值计算加密密钥和解密密钥,在完成计算之后对密钥的正确性进行验证,如果验证通过则协商完成,如果验证未通过则广播错误信息,重新协商密钥;④终端成员根据自身需求可向认证中心CA请求替换属性以参与高层次或者低层次的群组密钥协商。整个系统的分层群组密钥协商示意图,如图2所示。本发明的具体步骤如下:
步骤一:群组密钥协商网络中域内协议参数的初始化:认证中心CA和各终端成员生成各自的公/私钥对。
假设参加密钥协商的L组n个成员的实体集合表示为S={S1,S2,…,SL},其中,S1={u1,1,u1,2,…,u1,n}、S2={u2,1,u2,2,…,u2,n}、…、SL={uL,1,uL,2,…,uL,n};具有相同属性的n个终端成员组成一个群组密钥协商小群组S1-SL进行群组通信,对应的群组中终端成员的身份集合表示为 参与密钥协商的实体的L组n个终端成员的网络属性序列为ATTR=A1|A2|...|AR,对应的网络属性集为Attr={A1,A2,...,Aν,...,AR},Av表示第v个网络属性,R表示网络属性的个数。每个群组密钥协商小组的n个终端成员具有相同的属性集,其对应的属性排列顺序为 群组的终端成员对应的有序属性集为 其中,属性ai,v<ai,v+1,表示群组U1中终端成员对应的属性集合,属性个数r∈N*,al,r表示群组Ul中终端成员的第r个属性,l=1,2,...,L。
群组密钥协商网络域内的认证中心CA和各终端成员生成各自的公/私钥对的方法为:
域内的认证中心CA运行密钥生成算法KeyGen(1λ)获取公私钥对(SKCA,PKCA),其中,认证中心CA随机选择一个正整数作为系统私钥,并计算公钥PKCA=SKCAg1,认证中心CA将(SKCA,PKCA)作为系统的公/私钥对。域内的每个终端成员ul,i∈U选择一个随机正整数计算是终端成员ul,i的私钥;计算终端成员ul,i的公钥系统参数为params=(PKCA,q,G1,G2,g1,e,H1,H2)。其中,g1为加法群G1的生成元,表示阶为q的整数集,q为加法群G1的素数阶,KeyGen()表示密钥生成算法,λ表示密钥计算所需的中间变量;1≤l≤L,1≤i≤n,n为域内终端成员的个数,L为群组密钥协商中群组的个数,为终端成员ul,i的私钥,为终端成员ul,i的公钥,为终端成员ul,i的身份标识,是两个哈希散列函数,{0,1}*表示由二进制0和1组成的任意长度的数字串集合。
步骤二:隐藏属性的身份认证。
为了防止未授权的终端成员参与群组密钥协商,仅允许拥有权限的终端成员参与信息加密存储和信息资源访问。本发明采用隐藏属性的身份认证方式,在群组密钥协商前先对域内终端成员进行身份认证,避免其它未经授权的用户参与。各终端成员与认证中心CA交互,生成对应于每一个属性的属性权值。
本发明实现了域内群组密钥协商,具有传统身份认证的功能,同时可以保护个人隐私问题,并且根据属性权值进行匹配访问,拥有不同的属性权值的终端成员访问不同敏感程度的数据,避免了敏感信息的泄露。终端成员的匿名属性认证的具体实现方法为:
(1)认证中心CA选择一系列两两互素的正整数,并将这些正整数和网络属性集中的网络属性以及属性序列号广播给域内的所有终端成员:认证中心CA为域内每一个终端成员随机选择一系列与属性{A1,A2,...,Aν,...,AR}对应的正整数{p1,p2,...,pv,...,pR},然后认证中心CA将信息{(A1,S1,p1),(A2,S2,p2),...,(AR,SR,pR)}在域内广播;其中,gcd(pi,pj)=1(i,j=1,2,...R,i≠j)表示任意两个正整数pi,pj互素,gcd()表示求最大公约数的函数,Av(1≤v≤R)为第v个网络属性,pv为网络属性Av对应的网络属性参数,R∈N*表示网络属性的数量,N*表示正整数,Sv为网络属性Av对应的属性序列号。
(2)每一个终端成员运用各自的有序的属性集中的属性计算认证所需要的中间参数,并将中间参数发送给认证中心CA:带有有序网络属性集attrl,i={al,i,1,al,i,2,...,al,i,r}的每一个终端成员ul,i随机选择两个正整数终端成员ul,i计算中间变量οl,i=λl,ig1,θl,i,1=γl,iH1(al,i,1)+οl,i,θl,i,2=γl,iH1(al,i,2)+οl,i,...,θl,i,r=γl,iH1(al,i,r)+οl,i、和hl,i,k=H1(θl,i,k)(1≤k≤r),然后终端成员ul,i将消息{(θl,i,1,hl,i,1,S1),(θl,i,2,hl,i,2,S2),...,(θl,i,r,hl,i,r,Sr),ηl,i}发送给认证中心CA。其中,正整数γl,i,λl,i≠1,中间变量οl,i<H1(al,i,v),1≤k≤r,θl,i,1,θl,i,2,...,θl,i,r、ηl,i、hl,i,k和οl,i表示终端成员ul,i注册所需的中间变量,属性集r∈N*且属性al,i,r-1<al,i,r,r为终端成员ul,i的属性的个数,al,i,k为终端成员ul,i的第k个属性,表示终端成员ul,i的私钥;H1(·)是哈希散列函数,||是连接符号。attrl,i表示终端成员的属性集,表示网络属性集,
(3)认证中心CA接收到各终端成员发送的消息后,为各终端成员选择属性序列号对应的网络属性并验证各终端成员的身份,如果验证通过,认证中心CA为每一个属性选择一个随机数并计算出属性权限参数和签名,并将属性权限参数、签名和公钥发送给认证后的终端成员:认证中心CA接收终端成员ul,i发送的消息{(θl,i,1,hl,i,1,N1),(θl,i,2,hl,i,2,N2),...,(θl,i,r,hl,i,r,Nr),ηl,i}后,认证中心CA从网络属性集{A1,A2,...,AR}中选择与属性序列号{S1,S2,...,Sr}相对应的网络属性{A1,A2,...,Ar}(r≤R),然后认证中心CA通过计算等式和验证终端成员ul,i的属性,如果所有的等式相等并且中间变量βl,i,1=βl,i,2=...=βl,i,r,则证明参数θl,i,v来自终端成员ul,i并且其未被篡改,否则说明参数可能篡改或者终端成员ul,i是非法用户。验证通过后认证中心CA通过验证等式是否相等验证ul,i的属性和身份,如果验证通过,认证中心CA选择一系列与属性集attrl,i={al,i,1,al,i,2,...,al,i,r}对应的数并且计算属性权限参数χl,i,ν=ιl,i,νβl,i,ν和签名δl,i=SKCA(H2(ιl,i,1g1||ιl,i,2g1||...||ιl,i,rg1))g1,如果验证未通过,则将ul,i剔除系统。最后,认证中心CA将消息{PKCA,δl,i,(χl,i,1,χl,i,2,...χl,i,r)}发送给注册的终端成员ul,i。其中,χl,i,v为终端成员ul,i的第v个属性的属性权限参数,1≤v≤r,δl,i是终端成员ul,i注册所需的签名,PKCA为认证中心CA的公钥,SKCA为认证中心CA的私钥。
(4)各个终端成员收到认证中心CA发送的消息后,终端成员计算出属性权值以及认证所需的中间参数,然后各终端成员验证认证中心CA的身份以及属性权值的正确性,如果验证通过,各终端成员获得与属性相对应的属性权值,各终端成员身份认证成功:终端成员ul,i接收到认证中心CA发送的信息{PKCA,δl,i,(χl,i,1,χl,i,2,...χl,i,r)}后,终端成员ul,i计算属性权值Tl,i,1=λl,i -1χl,i,1=ιl,i,1g1,Tl,i,2=λl,i -1χl,i,2=ιl,i,2g1,...,Tl,i,r=λl,i -1χl,i,r=ιl,i,rg1和中间变量μl,i=H2(Tl,i,1||Tl,i,2...||Tl,i,r);然后终端成员ul,i通过验证等式e(δl,i,g1)=e(μl,ig1,PKCA)是否成立验证认证中心CA的身份和属性al,i,v对应的属性权值Tl,i,v的正确性,如果等式成立,终端成员ul,i获得与其每一个属性al,i,v相对应的属性权值Tl,i,v,终端成员ui注册成功。如果等式不成立,终端成员ul,i注册失败;其中,Tl,i,1,Tl,i,2,...,Tl,i,r表示终端成员的属性权值,μl,i表示验证认证中心CA身份所需的中间变量;e(·)是可计算的双线性映射函数;
其中,等式e(δl,i,g1)=e(μl,ig1,PKCA)的验证方法为:
步骤三:群组密钥协商:
群组内的终端成员利用获得的属性权值计算加密密钥和解密密钥。过程如下:
(1)群组加密密钥的计算,每个参与密钥协商的终端成员通过计算中间参数进而计算出群组的加密密钥:参与群组密钥协商的终端成员u2,i根据属性权值{T2,i,1,T2,i,2,...,T2,i,ν,...,T2,i,r}计算中间变量ρ2,i,1=T2,i,1g1并且每个终端成员u2,i使用属性权值{T2,i,1,T2,i,2,...,T2,i,r}计算中间变量然后计算加密密钥其中,g1为加法群G1的生成元,表示终端成员u2,i的私钥。在这里可以任取一个1-r的数字作为随意假定的群组,这里选择终端成员u2,i。
(2)群组解密密钥计算:各终端成员u2,i从认证中心CA中获取用于加/解密所需的网络属性集中的属性所对应的网络属性参数(p1,p2,...,pr)和其它相关参数计算出群组解密密钥 计算如下:终端成员u2,i计算求解可得到一个唯一的解群组的解密密钥为其中,v=1,2,3,...,r,x2,i和π2,i表示计算解密密钥所需的中间变量,mod是取余运算。
(3)参与群组密钥协商的所有终端成员计算解密密钥之后,任意终端成员u2,i计算中间变量和然后终端成员u2,i将消息广播给群组内的所有终端成员;其中,π2,i为验证密钥一致性所需的中间变量,μ'2,i表示验证终端成员u2,i身份所需要的中间变量,H2(·)是哈希散列函数。
(4)群组内的其它终端成员收到终端成员u2,i发送的消息后,群组内任意其它终端成员u2,k(k≠i)计算中间变量并且通过验证等式是否成立验证终端成员u2,i的身份,如果验证通过其余的终端成员u2,k(k≠i)计算中间变量并且通过验证π2,k=π2,i是否成立验证解密密钥的正确性,如果验证通过,则说明群组内所有终端成员的解密密钥是正确的,如果验证不通过,则重新协商密钥并广播错误报告。其中,e(·)是可计算的双线性映射函数,表示验证终端成员u2,i身份所需要的中间变量,π2,k表示验证密钥正确性所需要的中间变量,H2(·)是哈希散列函数,mod是取余运算。
步骤四:参与不同层次的群组密钥协商,其方法为:
(a)参与高层次的群组密钥协商:
具有特定属性集的低层次的终端成员可以通过身份验证向认证中心CA申请替换属性权值,从而参与高层次的群组密钥协商。假设L2层的终端成员u2,j想要参与L1层群组密钥协商,L1层的终端成员的集合为U1={u1,1,u1,2,…,u1,n},对应的属性集合为属性序列号为具体步骤如下:
(1)当处于低层次即L2层群组并且带有属性序列号的终端成员u2,j想要参与更高层级的L1层群组的群组密钥协商,终端成员u2,j首先从认证中心CA获得L1层群组的属性序列号然后终端成员u2,j将新获得的属性序列号与原有的属性序列号取交集,假设交集是终端成员u2,j的属性序列号与L1层群组的属性序列号不相交的是集合AS1={Sν,S2,ν,S2,ν+1,S2,ν+2},然后终端成员u2,j获得属性权限参数{χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2}并且计算属性权值和中间变量然后将消息发送给认证中心CA。其中,表示L1层群组的属性序列号集,χ2,j,ν为终端成员u2,j的第v个属性权限参数,表示终端成员u2,j的私钥,H2(·)是哈希散列函数。
(2)认证中心CA收到终端成员u2,j发送的消息后,认证中心CA计算中间变量并且通过验证等式是否成立验证终端成员u2,j的身份,如果验证通过,认证中心CA计算中间变量χ'1,i,v=ι1,i,vβ2,j,v(ι1,i,vβ2,j,v=ι1,i,vβ2,j,v+1=ι1,i,vβ2,j,v+2)并且发送消息{χ'1,i,v,χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2,PKCA}给终端成员u2,j,其中,表示验证终端成员u2,j身份所需要的中间变量,PKCA表示认证中心CA的公钥;。
(3)终端成员u2,j接收到认证中心CA发送的消息{χ'1,i,v,χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2,PKCA}后,终端成员u2,j通过验证等式e(δ2,j,g1)=e(μ2,jg1,PKCA)是否相等验证认证中心CA的身份,如果验证通过,终端成员u2,j用中间变量χ'1,i,v替代{χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2}并且计算属性权值终端成员u2,j获得新的属性权值集合为{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r,T1',i,v},L2层群组的终端成员u2,j的属性序列号与L1层群组的终端成员u1,i属性序列号的交集是因此属性权值{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r}与{T1,i,1,...T1,i,v-1,T1,i,v+1,...,T1,i,r}相等,也就是说T'1,i,v等于T1,i,v,然后按照步骤三进行群组L1的密钥协商。
其中,等式e(δ2,j,g1)=e(μ2,jg1,PKCA)的验证方法为:
(b)参与低层次的群组密钥协商:
处于高层次群组的终端成员也能够参与低层次群组密钥协商,假设L1层群组的终端成员u1,i想要参与L2层群组的密钥协商,L2层群组的终端成员集合为U2={u2,1,u2,2,…,u2,n},对应的属性集合为属性序列号为具体过程如下:
(1)当处于高层级L1层群组并且带有属性序列号的终端成员u1,i想要参与更低层级L2层群组的群组密钥协商,终端成员u1,i首先从认证中心CA获得L2层群组的属性序列号然后终端成员u1,i将新获得的属性序列号与原有的属性序列号取交集,假设交集是终端实体u1,i的属性序列号与L2层群组属性序列号不相交的是AS2={S2,ν,S2,ν+1,S2,ν+2},然后终端成员u1,i计算然后将消息发送给认证中心CA;其中,表示L2层群组的属性序列号,AS0表示L1层群组的属性序列号与L2层的群组属性序列号的交集,表示终端成员u1,i的私钥,H2(·)是哈希散列函数。
(2)认证中心CA收到终端成员u1,i发送的消息后,计算中间变量并且通过验证等式是否成立验证终端成员u1,i的身份和属性,如果相等,认证中心CA计算中间变量χ'2,j,v=ι2,j,vβ1,i,v,χ'2,j,v+1=ι2,j,v+1β1,i,v,χ'2,j,v+2=ι2,j,v+2β1,i,v并发送新的属性权限参数{χ1,i,ν,χ'2,j,v,χ'2,j,v+1,χ'2,j,v+2,PKCA}给终端成员u1,i;其中,表示验证终端成员u1,i身份所需的中间变量,χ2,j,ν为终端成员u2,j的第v个属性权限参数,H2(·)是哈希散列函数。
(3)终端成员u1,i收到认证中心CA发送的消息后,首先通过验证等式e(δ1,i,g1)=e(μ1,ig1,PKCA)是否成立验证认证中心CA的身份,如果验证通过,终端成员u1,i用属性权限参数集合{χ'2,j,v,χ'2,j,v+1,χ'2,j,v+2}替换χ1,i,ν并且计算新的属性权值终端成员u1,i获得新的属性权值集合{T1,i,1,...T1,i,v-1,T1,i,v+1,...T1,i,r,T'2,j,v,T'2,j,v+1,T'2,j,v+2},L2层群组的终端成员u2,j的属性序列号与L1层群组的终端成员u1,i属性序列号的交集是因此属性权值集合{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r}与{T1,i,1,...T1,i,v-1,T1,i,v+1,...,T1,i,r}相等,也就是说属性权值T'1,i,v等于T1,i,v,然后按照步骤三进行L1层群组的密钥协商。
其中,等式e(δ1,i,g1)=e(μ1,ig1,PKCA)的验证方法为:
实施例2
一种基于隐私保护的分层动态群组密钥协商方法,如图1所示,为了说明本发明的内容及实施方法,给出了一个具体实施例。本实施方式中,为方便实例阐述,设置3层群组进行群组密钥协商,每组有10个成员,这10个成员的实体集合表示为S={S1,S2,…,S10},S1={u1,1,u1,2,…,u1,10},S2={u2,1,u2,2,…,u2,10},S3={u3,1,u3,2,…,u3,10},终端成员的实体集合表示为对应的群组成员的身份集合表示为认证中心CA定义所有终端成员的属性集合为ATTR={A1,A2,A3},群组成员对应的有序属性集为在本实施例中引入细节的目的不是限制权利要求书的范围,而是帮助理解本发明的具体实施方法。本领域的技术人员应理解:在不脱离本发明及其所附权利要求的精神和范围内,对最佳实施例步骤的各种修改、变化或替换都是可能的。因此,本发明不应局限于最佳实施例及附图所公开的内容。
步骤一:群组密钥协商网络初始化协议参数:生成认证中心CA和各终端成员的公/私钥对。
假设参加密钥协商的L组10个成员的实体集合表示为S={S1,S2,…,SL},S1={u1,1,u1,2,...,u1,10},S2={u2,1,u2,2,...,u2,10},…,SL={uL,1,uL,2,...,uL,10},具有相同属性的10个终端成员组成一个群组密钥协商小组进行群组通信,对应的群组成员的身份集合表示为 参与密钥协商的实体的L组10个成员的网络属性序列为ATTR=A1|A2|A3,对应的网络属性集为Attr={A1,A2,A3},每个群组密钥协商小组的10个群组成员具有相同的属性集,其对应的属性排列顺序为 群组成员对应的有序属性集为其中,属性表示群组U1中终端成员对应的属性集合,a1,r表示群组U1中终端成员的第r个属性。
群组密钥协商网络域内的认证中心CA和网络中各终端成员生成各自的公/私钥对的方法为:
域内的认证中心CA运行密钥生成算法KeyGen(1λ)获取公私钥对(SKCA,PKCA),其中,认证中心CA随机选择一个正整数作为系统私钥,并计算公钥PKCA=SKCAg1,认证中心CA将(SKCA,PKCA)作为系统的公/私钥对。域内的每个终端成员ul,i∈U(1≤l≤3,1≤i≤10)选择一个随机正整数计算是终端成员ul,i的私钥;计算终端成员ul,i的公钥系统参数为params=(PKCA,q,G1,G2,g1,e,H1,H2);其中,g1为加法群G1的生成元,表示阶为q的整数集,q为加法群G1的素数阶,KeyGen()表示密钥生成算法,λ表示密钥计算所需的中间变量;1≤i≤10,10为域内终端成员的个数,为终端成员ul,i的私钥,为终端成员ul,i的公钥,为终端成员ul,i的身份标识,是两个哈希散列函数,{0,1}*表示由二进制0和1组成的任意长度的数字串集合。
步骤二:隐藏属性身份认证。
(1)认证中心CA为域内每一个终端成员随机选择一系列与属性{A1,A2,A3}对应的正整数{p1,p2,p3},然后认证中心CA将信息{(A1,S1,p1),(A2,S2,p2),(A3,S3,p3)}在域内广播;其中,gcd(pi,pj)=1(i,j=1,2,...R,i≠j),Av(1≤v≤3)为网络属性,pv为网络属性Av对应的网络属性参数,N*表示正整数,Sv为网络属性Av对应的属性序列号。
(2)带有有序网络属性集attr2,i={a2,i,1,a2,i,2,a2,i,3}的每一个终端成员u2,i(1≤i≤10)随机选择两个正整数u2,i计算中间变量ο2,i=λ2,ig1,θ2,i,1=γ2,iH1(a2,i,1)+ο2,i,θ2,i,2=γ2,iH1(a2,i,2)+ο2,i,...,θ2,i,3=γ2,iH1(a2,i,3)+ο2,i、和h2,i,v=H1(θ2,i,v)(1≤v≤3),然后终端成员u2,i将消息{(θ2,i,1,h2,i,1,S1),(θ2,i,2,h2,i,2,S2),(θ2,i,3,h2,i,3,S3),η2,i}发送给认证中心CA;其中,ο2,i<H1(a2,i,v)(1≤v≤3),θ2,i,1,θ2,i,2,θ2,i,3、η2,i和ο2,i表示终端成员u2,i注册所需的中间变量,属性集属性a2,i,r-1<a2,i,r,r为终端成员u2,i的属性的个数,a2,i,k为终端成员u2,i的第k个属性,表示终端成员u2,i的私钥;H1(·)是哈希散列函数,||是连接符号。
(3)认证中心CA接收终端成员u2,i发送的消息{(θ2,i,1,h2,i,1,N1),(θ2,i,2,h2,i,2,N2),(θ2,i,3,h2,i,3,N3),η2,i}后,认证中心CA从网络属性集{A1,A2,A3}中选择与属性序列号{S1,S2,S3}相对应的网络属性{A1,A2,A3},然后认证中心CA通过验证等式和是否相等验证终端成员u2,i的属性,如果所有的等式相等并且β2,i,1=β2,i,2=β2,i,3,则证明参数θ2,i,v(1≤v≤3)来自终端成员u2,i并且其未被篡改,然后认证中心CA通过计算等式是否相等验证u2,i的属性和身份,如果验证通过,认证中心CA选择一系列与属性集attr2,i={a2,i,1,a2,i,2,a2,i,3}对应的数并且计算属性相关参数χ2,i,ν=ι2,i,νβ2,i,ν和中间变量δ2,i=SKCA(H2(ι2,i,1g1||ι2,i,2g1||ι2,i,3g1))g1,最后认证中心CA将消息{PKCA,δ2,i,(χ2,i,1,χ2,i,2,χ2,i,3)}发送给注册的终端成员u2,i;其中,a2,i,v和a2,j,v分别用户u2,i和u2,j(i≠j)的属性并且ι2,i,v=ι2,j,v,χ2,i,v为终端成员u2,i的第v个属性的中间参数,1≤v≤3,δl,i是终端成员u2,i注册所需的中间参数,PKCA为认证中心CA的公钥,SKCA为认证中心CA的私钥。
(4)终端成员u2,i接收到认证中心CA发送的信息{PKCA,δ2,i,(χ2,i,1,χ2,i,2,χ2,i,3)}后,终端成员u2,i计算属性权值T2,i,1=λ2,i -1χ2,i,1=ι2,i,1g1,T2,i,2=λ2,i -1χ2,i,2=ι2,i, 2g1,...,T2,i,3=λ2,i -1χ2,i,3=ι2,i,3g1和中间变量μ2,i=H2(T2,i,1||T2,i,2||T2,i,3);然后终端成员u2,i通过验证等式e(δ2,i,g1)=e(μ2,ig1,PKCA)是否成立验证认证中心CA的身份和属性a2,i,v(1≤v≤3)对应的属性权值T2,i,v的正确性,如果等式成立,终端成员u2,i获得与其每一个属性a2,i,v(1≤v≤3)相对应的属性权值T2,i,v,终端成员u2,i注册成功;如果等式不成立,终端成员u2,i注册失败。其中,T2,i,1,T2,i,2,T2,i,3表示终端成员的属性权值,μ2,i表示验证认证中心CA身份所需的中间变量;e(·)是可计算的双线性映射函数。
其中,等式e(δ2,i,g1)=e(μ2,ig1,PKCA)的证明方法为:
步骤三:群组密钥协商:
群组内的终端成员利用获得的属性权值计算加密密钥和解密密钥,过程如下:
(1)群组加密密钥计算:参与群组密钥协商的终端成员u2,i根据属性权值{T2,i,1,T2,i,2,T2,i,3}计算中间变量ρ2,i,1=T2,i,1g1并且每个终端成员u2,i使用属性权值{T2,i,1,T2,i,2,T2,i,3}计算中间变量然后通过公式计算得到加密密钥,其中,g1为加法群G1的生成元,表示终端成员的私钥。
(2)群组解密密钥计算,各终端成员u2,i从认证中心CA中获取用于加/解密所需的网络属性集中的属性所对应的网络属性参数(p1,p2,p3)和其它相关参数计算出群组解密密钥计算如下:终端成员u2,i计算求解可得到一个唯一的解然后计算π2,i=T2,i,1x2,i,群组解密密钥为其中,v=1,2,3,,x2,i和π2,i表示计算解密密钥所需的中间变量,mod是取余运算。
在完成计算之后对密钥的正确性进行验证,如果验证通过则协商完成,如果验证未通过则广播错误信息,重新协商密钥,过程如下:
(3)参与群组密钥协商的所有终端成员计算解密密钥之后,任意终端成员u2,i计算中间变量和然后终端成员u2,i将消息{π2,i,μ'2,i,pku2,i}广播给群组内的所有终端成员;其中,π2,i为验证密钥一致性所需的中间变量,μ'2,i表示验证终端成员u2,i身份所需要的中间变量,H2(·)是哈希散列函数。
(4)群组内的其它终端成员收到终端成员u2,i发送的消息后,群组内任意其它终端成员u2,k(k≠i)计算中间变量并且通过验证等式是否成立验证终端成员u2,i的身份,如果验证通过其余的终端成员u2,k(k≠i)计算并且通过验证π2,k=?π2,i是否成立验证解密密钥的正确性,如果验证通过,则说明群组内所有终端成员的解密密钥是正确的,如果验证不通过,则重新协商密钥并广播错误报告。其中,e(·)是可计算的双线性映射函数,表示验证终端成员u2,i身份所需要的中间变量,π2,k表示验证密钥正确性所需要的中间变量,H2(·)是哈希散列函数,mod是取余运算。
步骤四:参与高层或低层群组密钥协商的方法为:
具有特定属性集的低层终端实体可以通过身份验证向认证中心CA申请替换属性权值,从而参与高层群组密钥协商。假设L2层群组的终端成员u2,j想要参与L1层群组的密钥协商,L1层群组的终端成员的集合为U1={u1,1,u1,2,…,u1,10},对应的属性集合为属性序列号为具体步骤如下:
(1)当处于低层级L2层群组并且带有属性序列号的终端成员u2,j想要参与更高层级L1层群组的群组密钥协商,终端成员u2,j首先从认证中心CA获得L1层群组的属性序列号r∈{1,2,3},然后终端成员u2,j将新获得的属性序列号与原有的属性序列号取交集,假设交集是终端成员u2,j的属性序列号与更高层L1层群组的属性序列号不相交的是AS1={Sν},然后终端成员u2,j获得属性权限参数{χ2,j,ν}并且计算属性权值和中间变量然后将发送给认证中心CA。其中,表示L1层群组的属性序列号,χ2,j,ν为终端成员u2,j的第v个属性权限参数,表示终端成员u2,j的私钥,H2(·)是哈希散列函数。
(2)认证中心CA收到终端成员u2,j发送的消息{Sν,μ'2,j,pku2,j}后,认证中心CA计算中间变量并且通过验证等式是否成立验证终端成员u2,j的身份,如果验证通过,认证中心CA计算χ'1,i,v=ι1,i,vβ2,j,v(ι1,i,vβ2,j,v=ι1,i,vβ2,j,v+1=ι1,i,vβ2,j,v+2)并且发送消息{χ'1,i,v,χ2,j,ν,PKCA}给终端成员u2,j,其中,表示验证终端成员u2,j身份所需要的中间变量,PKCA表示认证中心CA的公钥。
(3)终端成员u2,j接收到认证中心CA发送的消息{χ'1,i,v,χ2,j,ν,PKCA}后,终端成员u2,j通过验证等式e(δ2,j,g1)=e(μ2,jg1,PKCA)是否相等验证认证中心CA的身份,如果验证通过,终端成员u2,j用χ'1,i,v替代χ2,j,ν并且计算属性权值u2,j获得了新的属性权值集合为{T2,j,1,T'1,i,v},L2层群组的终端成员u2,j的属性序列号与L1层群组的终端成员u1,i属性序列号的交集是因此属性权值{T2,j,1,...,T2,j,v+1}与{T1,i,1,...,T1,i,v+1}相等,也就是说T'1,i,v等于T1,i,v,然后按照步骤三进行群组L1的密钥协商。
其中,等式e(δ2,j,g1)=e(μ2,jg1,PKCA)的验证方法为:
处于高层级群组的终端成员也能够参与低层群组密钥协商,假设L1层群组的终端成员u1,i想要参与L2层群组的密钥协商,L2层群组的终端成员集合为U2={u2,1,u2,2,…,u2,10},对应的属性集合为属性序列号为具体过程如下:
(1)当处于高层级L1层群组并且带有属性序列号的终端成员u1,i想要参与更低层级L2层群组的群组密钥协商,终端成员u1,i首先从认证中心CA获得L2层群组的属性序列号r∈{1,2,3},然后终端成员u1,i将新获得的属性序列号与原有的属性序列号取交集,假设交集是终端成员u1,i的属性序列号与更低层L2层群组属性序列号不相交的是AS2={S2,ν},然后终端成员u1,i计算然后将消息发送给认证中心CA;其中,表示L2层群组的属性序列号,AS0表示L1层群组属性序列号与L2层群组属性序列号的交集,表示终端成员u1,i的私钥,H2(·)是哈希散列函数。
(2)认证中心CA收到终端成员u1,i发送的消息后,计算中间变量并且通过验证等式是否成立验证终端成员u1,i的身份和属性,如果相等,认证中心CA计算χ'2,j,v=ι2,j,vβ1,i,v并发送新的属性权限参数{χ1,i,ν,χ'2,j,v,PKCA}给终端成员u1,i;其中,表示验证终端成员u1,i身份所需的中间变量,χ2,j,ν为终端成员u2,j的第v个属性权限参数,H2(·)是哈希散列函数。
(3)终端成员u1,i收到认证中心CA发送的消息后,首先通过验证等式e(δ1,i,g1)=e(μ1,ig1,PKCA)是否成立验证认证中心CA的身份,如果验证通过,终端成员u1,i用属性权限参数集合{χ'2,j,v}替换χ1,i,ν并且计算终端成员u1,i获得新的属性权值集合{T1,i,1,...T1,i,v-1,T1,i,v+1},L2层群组的终端成员u2,j的属性序列号与L1层群组的终端成员u1,i属性序列号的交集是因此属性权值{T2,j,1,...,T2,j,v+1}与{T1,i,1,...,T1,i,v+1}相等,也就是说T'1,i,v等于T1,i,v,然后按照步骤三进行L1层群组的密钥协商;
其中,等式e(δ1,i,g1)=e(μ1,ig1,PKCA)的验证方法为:
本发明以隐藏属性认证理论为基础,以决策双线性Diffie-Hellman(DBDH)问题为安全假设前提提出,采用隐藏属性的身份认证技术在资源信息共享的身份认证过程中实现个人隐私保护,在终端成员注册的过程中,除了对终端成员进行身份认证外,每个终端成员还获得相应的属性权重。根据这些属性的权值设置阈值权限,对网络域中的终端成员进行相应的分类,拥有不同属性权值的终端成员参与不同的密钥协议组,以不同的保密性参与组通信,提高了数据通信的安全性;同时满足一定条件的低层次的终端成员可以向认证中心申请获得新的属性权值已参与高层次群组通信,高层次终端成员也可以向认证中心申请获得属性权值参与低层群组的通信,既可以保障通信数据的安全性,又可以很好地保护个人隐私,使得各领域中信息资源共享更加灵活、高效和实用,具有重要的领域研究意义和商业应用价值。
本发明对群组密钥协商网络域内的协议参数进行初始化,生成认证中心和终端成员的公/私钥对,终端成员进行隐藏属性的身份认证,利用终端成员的属性参数进行身份认证,既能够完成身份认证,又避免了隐私信息的泄露,可以很好的保护个人隐私;认证成功后,终端成员根据自己属性权值计算加密密钥和解密密钥,对密钥的一致性进行验证,为每个终端成员设置属性权值,对群组设置阈值权限,只有满足阈值权限的终端成员才可以参与通信。同时,终端成员还可以向认证中心申请变更属性以参与高层或者低层的群组密钥协商,具有很高的安全性和灵活性。本发明采用隐藏属性的身份认证技术,在身份认证的同时能够避免个人隐私信息的泄露,同时根据属性权值设置阈值权限,以不同的保密性参与群组通信,提高了数据通信的可靠性,采用身份认证和属性权值匹配的双认证机制,很大程度上提高了系统的安全性,使得群组密钥协商更加灵活、高效和实用。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于隐私保护的分层动态群组密钥协商方法,其特征在于,其步骤为:
步骤一:群组密钥协商网络中域内协议参数的初始化:认证中心CA和各终端成员生成各自的公/私钥对;
步骤二:隐藏属性的身份认证
A)认证中心CA选择一系列两两互素的正整数并将正整数和网络属性集中的属性以及属性序列号广播给域内的所有终端成员;
B)终端成员运用各自的有序的网络属性集中的属性计算认证所需要的中间参数,并将中间参数发送给认证中心CA;
C)认证中心CA接收到各终端成员发送的消息后,为各终端成员选择属性序列号对应的属性并通过中国剩余定理验证各终端成员的身份,如果验证通过,认证中心CA计算出属性权限参数和签名,并将属性权限参数、签名和公钥发送给认证后的终端成员;
D)各个终端成员收到认证中心CA发送的消息后,终端成员计算出属性权值,然后各终端成员验证认证中心CA的身份以及属性权值的正确性,如果验证通过,各终端成员获得与属性相对应的属性权值,各终端成员身份认证成功;
步骤三:群组的密钥协商;
F)每个参与密钥协商的终端成员计算出群组的加密密钥;
G)每个终端成员从认证中心CA获取属性序列号对应的网络属性参数计算解密密钥;
H)参与群组密钥协商的所有终端成员计算得到解密密钥之后,群组中的任意一个终端成员计算验证自身身份和解密密钥所需的中间参数,然后将中间参数和自己的公钥发送给群组的其它终端成员;
I)群组中其它终端成员收到信息后,验证信息发送者的身份,如果验证通过,信息接收者计算验证解密密钥所需的中间参数并对解密密钥是否一致进行验证,如果验证通过,则群组中所有成员的解密密钥是正确的,如果不一致,信息接收者广播错误消息,同时群组中的终端成员重新计算解密密钥;
步骤四:终端成员参与不同层次群组的密钥协商:
(a)参与高层次群组的密钥协商,实现方法为:
J)处于低层次群组的终端成员参与高层次群组的密钥协商时,低层次群组的终端成员从认证中心CA获得高层次群组的属性序列号,然后与自己的属性序列号相交获得不相交的属性序列后,低层次群组的终端成员计算属性权限参数、属性权值、不相交的属性序列、中间变量以及公钥发送给认证中心CA;
K)认证中心CA收到消息后,计算验证终端成员身份所需的中间参数并验证终端成员的身份和属性,如果验证通过,认证中心CA计算新的属性权限参数并将新的属性权限参数和公钥发送给终端成员;
L)终端成员收到来自认证中心CA的消息后,首先验证认证中心CA的身份,如果验证通过,则用新的属性权限参数替换原来的属性权限参数并计算新的属性权值,然后按照步骤三参与群组的密钥协商;
(b)参与低层次群组的密钥协商,实现方法为:
M)当处于高层次群组的终端成员参与低层次群组的密钥协商时,高层次群组的终端成员从认证中心CA获得低层次群组的属性序列号,然后终端成员与自己原有的属性序列号取交集得到不参与低层次群组的密钥协商的属性序列,然后计算验证自己身份所需的中间参数并将不参与较低层次群组的密钥协商的属性序列、中间参数以及公钥发送给认证中心CA;
N)认证中心CA收到终端成员发送的消息后,计算验证终端成员身份所需的中间参数并验证终端成员的身份和属性,如果验证通过,认证中心CA计算属性权限参数,然后认证中心CA将属性权限参数和公钥发送给终端成员;
O)终端成员收到消息后验证认证中心CA的身份,如果验证通过,终端成员用新的属性权限参数替换原有的属性权限参数并计算属性权值,然后按照步骤三参与群组的密钥协商。
3.根据权利要求1或2所述的基于隐私保护的分层动态群组密钥协商方法,其特征在于,所述步骤二中隐藏属性的身份认证的实现方法为:
A)认证中心CA为域内每一个终端成员随机选择一系列与属性属性集Attr={A1,A2,...,Aν1,...,AR}对应的正整数{p1,p2,...,pv1,...,pR},认证中心CA将信息{(A1,S1,p1),(A2,S2,p2),...,(AR,SR,pR)}在域内广播;其中,任意两个正整数pi,pj互素,Av1为网络属性集中的第v1个网络属性,1≤v1≤R,pv1为网络属性Av1对应的网络属性参数,R∈N*表示网络属性的数量,N*表示正整数,Sv1为网络属性Av1对应的属性序列号;
B)带有有序的网络属性集attrl,i={al,i,1,al,i,2,...,al,i,r}的每一个终端成员ul,i随机选择两个正整数终端成员ul,i计算中间变量οl,i=λl,ig1,θl,i,1=γl,iH1(al,i,1)+οl,i,θl,i,2=γl,iH1(al,i,2)+οl,i,...,θl,i,r=γl,iH1(al,i,r)+οl,i、和hl,i,v=H1(θl,i,v),然后终端成员ul,i将消息{(θl,i,1,hl,i,1,S1),(θl,i,2,hl,i,2,S2),...,(θl,i,r,hl,i,r,Sr),ηl,i}发送给认证中心CA;其中,正整数γl,i,λl,i≠1,中间变量οl,i<H1(al,i,v),1≤v≤r,θl,i,1,θl,i,2,...,θl,i,r、ηl,i、hl,i,v和οl,i表示终端成员ul,i注册所需的中间变量,g1为加法群G1的生成元,属性集r∈N*且属性al,i,r-1<al,i,r,r≤R为终端成员ul,i的属性的个数,al,i,v为终端成员ul,i的第v个属性,表示终端成员ul,i的私钥;H1(·)是哈希散列函数,||是连接符号;1≤l≤L,1≤i≤n,n为域内终端成员的个数,L为群组密钥协商中群组的个数;
C)认证中心CA接收终端成员ul,i发送的消息{(θl,i,1,hl,i,1,S1),(θl,i,2,hl,i,2,S2),...,(θl,i,r,hl,i,r,Sr),ηl,i}后,认证中心CA从网络属性集{A1,A2,...,AR}中选择与属性序列号{S1,S2,...,Sr}相对应的网络属性{A1,A2,...,Ar},然后认证中心CA通过验证等式和βl,i,1=βl,i,2=...=βl,i,r是否成立验证终端成员ul,i的属性,如果所有的等式相等,则证明中间变量θl,i,v来自终端成员ul,i并且其未被篡改;然后认证中心CA通过验证等式是否相等验证ul,i的属性和身份,如果验证通过,认证中心CA选择一系列与属性集attrl,i={al,i,1,al,i,2,...,al,i,r}对应的随机数并且计算属性权限参数χl,i,ν=ιl,i,νβl,i,ν和签名δl,i=SKCA(H2(ιl,i,1g1||ιl,i,2g1||...||ιl,i,rg1))g1;最后,认证中心CA将消息{PKCA,δl,i,(χl,i,1,χl,i,2,...χl,i,r)}发送给注册的终端成员ul,i;其中,al,i,v为终端成员ul,i的属性,χl,i,v为终端成员ul,i的第v个属性的属性权限参数,1≤v≤r,δl,i是终端成员ul,i注册所需的签名,PKCA为认证中心CA的公钥,SKCA为认证中心CA的私钥,mod为取余函数,e(·)是可计算的双线性映射函数,为终端成员ul,i的公钥,βl,i,ν为验证终端成员ul,i的属性所需的中间变量,H2(·)是哈希散列函数;
D)终端成员ul,i接收认证中心CA发送的信息{PKCA,δl,i,(χl,i,1,χl,i,2,...χl,i,r)}后,终端成员ul,i计算属性权值Tl,i,1=λl,i -1χl,i,1=ιl,i,1g1,Tl,i,2=λl,i -1χl,i,2=ιl,i,2g1,...,Tl,i,r=λl,i -1χl,i,r=ιl,i,rg1和中间变量μl,i=H2(Tl,i,1||Tl,i,2...||Tl,i,r);然后终端成员ul,i通过验证等式e(δl,i,g1)=e(μl,ig1,PKCA)是否成立验证认证中心CA的身份和属性al,i,v对应的属性权值Tl,i,v的正确性,如果等式成立,终端成员ul,i获得与每一个属性al,i,v相对应的属性权值Tl,i,v,终端成员ul,i注册成功;如果等式不成立,终端成员ul,i注册失败;其中,Tl,i,1,Tl,i,2,...,Tl,i,r表示终端成员ul,i的属性权值,μl,i表示验证认证中心CA身份所需的中间变量。
4.根据权利要求3所述的基于隐私保护的分层动态群组密钥协商方法,其特征在于,所述步骤三中群组的密钥协商的方法为:(1)参与群组密钥协商的终端成员u2,i根据属性权值{T2,i,1,T2,i,2,...,T2,i,ν,...,T2,i,r}计算中间变量ρ2,i,1=T2,i,1g1并且终端成员u2,i使用属性权值{T2,i,1,T2,i,2,...,T2,i,r}计算中间变量计算加密密钥其中,g1为加法群G1的生成元,表示终端成员u2,i的私钥;
(2)各终端成员u2,i从认证中心CA中获取用于加/解密所需的网络属性集中的属性所对应的网络属性参数(p1,p2,...,pr)计算出群组解密密钥计算如下:终端成员u2,i通过中国剩余定理计算求解可得到一个唯一的解则群组的解密密钥其中,v=1,2,3,...,r,x2,i表示计算解密密钥所需的中间变量,mod是取余运算;
(3)参与群组密钥协商的所有终端成员计算解密密钥之后,任意终端成员u2,i计算中间变量和然后终端成员u2,i将消息广播给群组内的所有终端成员;其中,π2,i为验证密钥一致性所需的中间变量,μ'2,i表示验证终端成员u2,i身份所需要的中间变量;
5.根据权利要求4所述的基于隐私保护的分层动态群组密钥协商方法,其特征在于,所述步骤四中参与高层次群组的密钥协商的实现方法为:
J)当处于L2层群组且带有属性序列号的终端成员u2,j想要参与L1层群组的群组密钥协商,终端成员u2,j从认证中心CA获得L1层群组的属性序列号φL1={S1,S2,...,Sν,Sν+1,...,Sr},然后终端成员u2,j将新获得的属性序列号与原有的属性序列号取交集,交集终端成员u2,j的属性序列号与L1层群组的属性序列号不相交的集合AS1={Sν,S2,ν,S2,ν+1,S2,ν+2},然后终端成员u2,j获得属性权限参数{χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2}并且计算属性权值和中间变量然后将消息发送给认证中心CA;其中,L2层群组为低于L1层群组的层次,表示L1层群组的属性序列号集,χ2,j,ν为终端成员u2,j的第v个属性权限参数,表示终端成员u2,j的私钥,H2(·)是哈希散列函数;
K)认证中心CA收到终端成员u2,j发送的消息后,认证中心CA计算中间变量且通过验证等式是否成立验证终端成员u2,j的身份,如果验证通过,认证中心CA计算中间变量χ′1,i,v=ι1,i,vβ2,j,v(ι1,i,vβ2,j,v=ι1,i,vβ2,j,v+1=ι1,i,vβ2,j,v+2)并且发送消息{χ′1,i,v,χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2,PKCA}给终端成员u2,j;其中,表示验证终端成员u2,j身份所需要的中间变量,PKCA表示认证中心CA的公钥;
L)终端成员u2,j接收到认证中心CA发送的消息{χ′1,i,v,χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2,PKCA}后,终端成员u2,j通过验证等式e(δ2,j,g1)=e(μ2,jg1,PKCA)是否成立验证认证中心CA的身份,如果验证通过,终端成员u2,j用中间变量χ′1,i,v替代{χ2,j,ν,χ2,j,ν+1,χ2,j,ν+2}并且计算属性权值终端成员u2,j获得新的属性权值集合{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r,T1',i,v},L2层群组的终端成员u2,j的属性序列号与L1层群组的终端成员u1,i属性序列号的交集因此属性权值{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r}与{T1,i,1,...T1,i,v-1,T1,i,v+1,...,T1,i,r}相等,然后按照步骤三进行群组L1的密钥协商。
6.根据权利要求4或5所述的基于隐私保护的分层动态群组密钥协商方法,其特征在于,所述步骤四中参与低层次群组的密钥协商的实现方法为:
M)当处于高层级的L1层群组且带有属性序列号的终端成员u1,i想要参与L2层群组的群组密钥协商,终端成员u1,i从认证中心CA获得L2层群组的属性序列号终端成员u1,i将新获得的属性序列号与原有的属性序列号取交集,交集终端成员u1,i的属性序列号与L2层群组属性序列号不相交的集合AS2={S2,ν,S2,ν+1,S2,ν+2},然后终端成员u1,i计算中间变量然后将消息发送给认证中心CA;其中,L2层群组为低于L1层群组的层次,表示L2层群组的属性序列号,AS0表示L1层群组的属性序列号与L2层的群组属性序列号的交集,表示终端成员u1,i的私钥,H2(·)是哈希散列函数;
N)认证中心CA收到终端成员u1,i发送的消息后,计算中间变量并且通过验证等式是否成立验证终端成员u1,i的身份和属性,如果相等,认证中心CA计算中间变量χ'2,j,v=ι2,j,vβ1,i,v,χ'2,j,v+1=ι2,j,v+1β1,i,v,χ'2,j,v+2=ι2,j,v+2β1,i,v并发送新的属性权限参数{χ1,i,ν,χ'2,j,v,χ'2,j,v+1,χ'2,j,v+2,PKCA}给终端成员u1,i;其中,表示验证终端成员u1,i身份所需的中间变量,χ2,j,ν为终端成员u2,j的第v个属性权限参数;
O)终端成员u1,i收到认证中心CA发送的消息后,通过验证等式e(δ1,i,g1)=e(μ1,ig1,PKCA)是否成立验证认证中心CA的身份,如果验证通过,终端成员u1,i用属性权限参数集合{χ'2,j,v,χ'2,j,v+1,χ'2,j,v+2}替换χ1,i,ν并且计算新的属性权值终端成员u1,i获得新的属性权值集合{T1,i,1,...T1,i,v-1,T1,i,v+1,...T1,i,r,T′2,j,v,T′2,j,v+1,T′2,j,v+2},L2层群组的终端成员u2,j的属性序列号与L1层群组的终端成员u1,i属性序列号的交集属性权值集合{T2,j,1,...T2,j,v-1,T2,j,v+3,...T2,j,r}与{T1,i,1,...T1,i,v-1,T1,i,v+1,...,T1,i,r}相等,然后按照步骤三进行L1层群组的密钥协商。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110641379.4A CN113346993B (zh) | 2021-06-09 | 2021-06-09 | 一种基于隐私保护的分层动态群组密钥协商方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110641379.4A CN113346993B (zh) | 2021-06-09 | 2021-06-09 | 一种基于隐私保护的分层动态群组密钥协商方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113346993A CN113346993A (zh) | 2021-09-03 |
CN113346993B true CN113346993B (zh) | 2022-07-15 |
Family
ID=77476186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110641379.4A Active CN113346993B (zh) | 2021-06-09 | 2021-06-09 | 一种基于隐私保护的分层动态群组密钥协商方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113346993B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115242388B (zh) * | 2022-07-26 | 2024-06-25 | 郑州轻工业大学 | 一种基于动态属性权限的群组密钥协商方法 |
CN115529128B (zh) * | 2022-09-23 | 2023-09-29 | 中科海川(北京)科技有限公司 | 基于sd-wan的端端协商通信方法、终端设备、服务器 |
CN118381611B (zh) * | 2024-06-25 | 2024-09-24 | 浙江之江数安量子科技有限公司 | 一种群组密钥协商方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ATE378748T1 (de) * | 2002-09-13 | 2007-11-15 | Ericsson Telefon Ab L M | Sicherer broadcast-/multicast-dienst |
KR101572598B1 (ko) * | 2014-07-28 | 2015-12-11 | 순천향대학교 산학협력단 | Sso 인증 시스템 기반 인증 정보 재전송 공격에 안전한 사용자 인증 방법 |
CN110166258B (zh) * | 2019-06-21 | 2022-02-15 | 郑州轻工业学院 | 基于隐私保护和属性认证的群组密钥协商方法 |
CN111049647B (zh) * | 2019-11-21 | 2022-08-02 | 郑州工程技术学院 | 一种基于属性门限的非对称群组密钥协商方法 |
CN112383550B (zh) * | 2020-11-11 | 2022-07-26 | 郑州轻工业大学 | 一种基于隐私保护的动态权限访问控制方法 |
-
2021
- 2021-06-09 CN CN202110641379.4A patent/CN113346993B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113346993A (zh) | 2021-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109257173B (zh) | 基于权限信息交换的非对称群组密钥协商方法 | |
CN110266482B (zh) | 一种基于区块链的非对称群组密钥协商方法 | |
Xu et al. | VerifyNet: Secure and verifiable federated learning | |
Odelu et al. | Provably secure authenticated key agreement scheme for smart grid | |
CN113346993B (zh) | 一种基于隐私保护的分层动态群组密钥协商方法 | |
CN110011795B (zh) | 基于区块链的对称群组密钥协商方法 | |
Zhang et al. | A hierarchical group key agreement protocol using orientable attributes for cloud computing | |
CN106027241B (zh) | 一种弹性非对称群组密钥协商的方法 | |
CN110912897B (zh) | 基于密文属性认证和门限函数的图书资源访问控制方法 | |
CN112165472B (zh) | 一种基于隐私保护的物联网数据安全共享方法 | |
CN112383550B (zh) | 一种基于隐私保护的动态权限访问控制方法 | |
Yeh et al. | A batch-authenticated and key agreement framework for P2P-based online social networks | |
CN111049647B (zh) | 一种基于属性门限的非对称群组密钥协商方法 | |
CN110166258A (zh) | 基于隐私保护和属性认证的群组密钥协商方法 | |
Jan et al. | Mitigating the desynchronisation attack in multiserver environment | |
CN115242388B (zh) | 一种基于动态属性权限的群组密钥协商方法 | |
CN111447058B (zh) | 基于中国剩余定理的图书资源访问控制方法 | |
Tsai et al. | An ECC‐based blind signcryption scheme for multiple digital documents | |
CN115834067A (zh) | 一种边云协同场景中密文数据共享方法 | |
Chait et al. | An enhanced RSA-based aggregate signature scheme to reduce blockchain size | |
Yang et al. | RCME: A Reputation Incentive Committee Consensus-Based for Matchmaking Encryption in IoT Healthcare | |
CN110890961B (zh) | 一种新型安全高效的多授权属性基密钥协商协议 | |
Pal et al. | Diffie-Hellman key exchange protocol with entities authentication | |
Wen et al. | Intersection-policy private mutual authentication from authorized private set intersection | |
Gervais et al. | Certificateless authenticated key agreement for decentralized WBANs |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |