CN101378316A - 基于身份的代理盲签名系统及方法 - Google Patents

基于身份的代理盲签名系统及方法 Download PDF

Info

Publication number
CN101378316A
CN101378316A CNA2007101485480A CN200710148548A CN101378316A CN 101378316 A CN101378316 A CN 101378316A CN A2007101485480 A CNA2007101485480 A CN A2007101485480A CN 200710148548 A CN200710148548 A CN 200710148548A CN 101378316 A CN101378316 A CN 101378316A
Authority
CN
China
Prior art keywords
proxy
mrow
signature
key
certificate
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.)
Pending
Application number
CNA2007101485480A
Other languages
English (en)
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.)
Sony China Ltd
Original Assignee
Sony China 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 Sony China Ltd filed Critical Sony China Ltd
Priority to CNA2007101485480A priority Critical patent/CN101378316A/zh
Publication of CN101378316A publication Critical patent/CN101378316A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

提供无可信私钥产生器的、基于身份的代理盲签名系统和方法。该系统包括:私钥产生器,用于根据所接收到的密钥数据计算私钥,以便使用该私钥在消息m上签名来证明该信息m的可靠性;代理证书产生部分,用于根据签名人的私密数据生成用于该签名人的密钥数据并将其发送到私钥产生器来计算签名人的私钥SA,构造证书mω并在该证书mω上以私钥SA进行签名,以便得到代理证书WA→B;以及代理签名部分,用于选取代理私密数据,生成相应密钥数据,将其发送到私钥产生器来计算代理私钥SB,依据代理私钥SB以及代理公钥IDB获得代理签名密钥,并根据该代理签名密钥以及代理证书WA→B构造承诺,以便代理证书产生部分向用户部分代理盲签名。从而使该签名算法满足不可伪造、不可抵赖的性质。

Description

基于身份的代理盲签名系统及方法
技术领域
总的来说,本发明涉及代理盲签名的系统和方法及其计算机产品,尤其涉及用于在无可信私钥产生器的、基于身份的代理盲签名系统中进行代理盲签名的系统和方法及其计算机产品。
背景技术
随着计算机技术和Internet技术的不断进步,全球经济发展进入了全新的信息时代。而在信息时代中,信息数据的保密问题也就显得越来越重要了,无论是个人信息通信还是电子商务发展,都迫切需要保证Internet网上信息传输的安全,也就是要保证信息安全。信息安全技术涉及信息论、计算机科学和密码学等多方面知识,其主要功能是保证计算机系统和通信网络内信息能够可靠、保密、真实和完整地传输。在信息安全技术中,核心技术是密码技术。密码技术能够保证机密性信息的加密,以及数字签名、身份验证、系统安全等功能。
在传统意义上来说,密码学技术是研究如何把信息转换成隐蔽数据以阻止他人非法得到。密码体制从原理上大概分为两类,即单钥密码体制和公钥密码体制。单钥密码体制的加密密钥和解密密钥相同,系统的保密性主要取决于密钥的安全性。如何产生满足保密要求的密钥使这类体制设计和实现的主要课题,另一个重要问题是如何将密钥安全可靠地分配给对方通信对方。后者在网络通信条件下更为复杂,包括密钥的产生、分配、存储和销毁等多方面的问题,统称为密钥管理。单钥加密的古典算法有简单变换、多表代换、同态代换、多码代换和乘积密码等多种。
公钥密码体制采用公钥密码体制的每个用户都有一对选定的密钥,一个是可以公开的公钥,另一个是必须保密的私钥。加密时用公钥加密,用私钥解密。签名时用私钥加密,用公钥解密。其典型的代表算法有RSA算法等。
基于身份的密码系统属于公钥密码系统领域。基于身份的密码技术的基本概念最初是Sharmir于1984年提出的,目的是简化基于证书的公钥密码系统中的密钥管理问题。基于身份的密码系统的基本思想是把用户部分的身份作为其公钥,而一个私钥产生器(PKG,Private Key Generator)计算每个签名人的私钥。PKG根据系统中的每个签名人的身份,为签名人产生私钥。签名人使用他的私钥在消息上签名,以证明信息的可靠性。
目前,基于身份的代理盲签名算法都是假定PKG是无条件可信任的,PKG知道每个签名人的私钥。然而,这是一个严重的缺陷,原因是PKG知道每个签名人的私钥,于是PKG可以伪造任何签名人的签名而不被察觉。这与签名所要求的不可伪造不可抵赖的性质是相矛盾的。
因此,有必要开发针对无可信私钥产生器的基于身份的代理盲签名系统和方法。
发明内容
针对现有技术的上述缺陷,本发明的目的是提供针对PKG不再被假定是无条件可信任的情况下,基于身份的代理盲系统及其方法。在这样的代理盲系统,如果PKG模仿某个诚实签名人的代理盲签名,该签名人可以提供证据来证明该签名是PKG伪造的,从而使该签名算法满足不可伪造、不可抵赖的性质。
为了实现本发明的上述和其他目的,根据本发明的一方面,提供基于身份的代理盲签名系统,包括:私钥产生器,用于根据所接收到的密钥数据计算私钥,以便使用该私钥在消息m上签名来证明该信息m的可靠性;代理证书产生部分,用于根据签名人的私密数据生成用于该签名人的密钥数据并将其发送到私钥产生器来计算签名人的私钥SA,构造证书mω并在该证书mω上以私钥产生器计算出的该签名人的私钥SA进行签名,以便得到代理证书WA→B;以及代理签名部分,用于选取代理私密数据,生成相应密钥数据,将其发送到私钥产生器来计算代理私钥SB,依据代理私钥SB以及代理公钥IDB获得代理签名密钥,并根据该代理签名密钥以及代理证书WA→B构造承诺,以便代理证书产生部分向用户部分代理盲签名。
根据本发明的一种实施方式,该代理签名部分还验证所接收到的代理证书WA→B是否正确。
根据本发明的一种实施方式,该代理证书产生部分包括:第一私密数据选取装置,用于由签名人从
Figure A200710148548D00101
中选取私密数据rA,并将该签名人的公钥IDA选择为该签名人的身份标识,第一密钥数据产生装置,用于进行离散对数运算rAP得到该签名人的密钥数据,P为有限循环群的生成元,代理证书生成装置,用于通过选择随机数v∈zq并计算散列函数
Uω=vQA,hω=H4(mω,Uω),Vω=(v+hω)SA和Tω=rAH3(mω)
来构成代理证书 W A → B = Δ { U ω , V ω , T ω , m ω , r A P } , 其中
H4:{0,1}*×G1→G1
H3:{0,1}*→G1为密码Hash函数;
以及该代理签名部分包括:第二私密数据选取装置,用于从中选取私密数据rB,并将该代理公钥IDB选择为该代理签名部分的身份标识,第二密钥数据产生装置,用于进行离散对数运算rBP以产生该代理签名部分的密钥数据,代理证书验证装置,用于通过计算散列函数
hω=H4(mω,Uω),
并且验证以下两个等式
e(Vω,P)=e(Uω+hωQA,Ppub),
e(Tω,P)=e(H3(mω),rAP),
来确定该代理证书WA→B是否正确,其中Ppub=sP,e:G1×G1→G2是双线性映射,而G2是生成元为P、阶为素数q的有限循环群,代理签名密钥生成装置,用于通过计算
SP=hωSB+Vω和rP=Tω+rBH3(mω)
获得代理盲签名密钥,承诺构造装置,用于通过随机选择t,t′∈zq并计算
U=t(hω(QA+QB)+Uω),以及X=t′H3(mω)
来产生承诺X和U,以及代理盲签名装置,用于接收用户部分所发送的经盲化的消息h和k,通过随机选择t,t′∈Zq而在经盲化的h和k上签名以得到V=(t+h)SP,Y=(t′+k)rP,其中h和k是用户部分根据承诺X和U以及代理证书WA→B中的rAP,rBP,mω,Uω和hω,通过随机选择盲因子 α , β , ξ , η ∈ Z q * 并计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η
来盲化消息m而得到,其中,QA=sH2(IDA;rAP)和SA=sQA,SB=sH2(rBP,IDB),而H1:{0,1}*×G1→Zq为密码散列函数, s ∈ Z q * 是该代理盲签名系统的主密钥,由该私钥产生器随机选择,G1是生成元为P、阶为素数q的有限循环群,而代理证书产生部分和代理签名部分的私钥SA和SB由该私钥产生器通过散列函数H2:{0,1}*×G1→G1计算如下:
QA=sH2(IDA;rAP)和SA=sQA
SB=sH2(rBP,IDB)。
根据本发明的一种实施方式,该用户部分包括:盲化装置,用于接收承诺X和U以及代理证书WA→B中的rAP,rBP,mω,Uω和hω,通过随机选择盲因子 α , β , ξ , η ∈ Z q * 并计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η,H1:{0,1}*×G1→Zq为密码散列函数来盲化消息m以得到h和k;以及解盲装置,用于根据随机选择的盲因子 α , ξ ∈ Z q * 计算
S=αV,D=ξY,
从而得到在消息m上的代理盲签名{mω,Uω,R,S,C,D,rAP,rBP},式中V和Y是该代理盲签名装置通过随机选择 α , β , ξ , η ∈ Z q * 而在经盲化的h和k上签名而得到的,V=(t+h)SP,Y=(t′+k)rP
根据本发明的一种实施方式,该代理盲签名系统还包括代理盲签名真实性验证部分,用于通过计算
hω=H4(mω,Uω),
并验证以下两个等式成立
e(S,P)=e(R+H1(m,R)(hω(QA+QB)+Uω),Ppub),
e(D,P)=e(C+H1(m,C)H3(mω),rAP+rBP),
来验证代理签名部分在消息m上的代理盲签名的真实性。
根据本发明的一种实施方式,该代理盲签名系统还包括仲裁部分,用于通过验证
e ( S A , αP ) = e ( H 2 ( ID A , r A ′ P ) , P pub ) α e ( S B , αP ) = e ( H 2 ( ID B , r B ′ P ) , P pub ) α
是否成立来鉴别私钥产生器是否诚实,其中
Figure A200710148548D00126
Figure A200710148548D00127
为私钥产生器计算出来的、分别针对签名人和代理盲签名部分的离散对数值。
根据本发明的另一方面,提供在基于身份的代理盲签名系统中进行代理盲签名的方法,该代理盲签名系统包括私钥产生器,用于根据所接收到的密钥数据计算私钥,以便使用该私钥在消息m上签名来证明该信息m的可靠性;代理证书产生部分,用于根据签名人的私密数据生成用于该签名人的密钥数据并将其发送到私钥产生器来计算签名人的私钥SA,构造证书mω并在该证书mω上以私钥产生器计算出的该签名人的私钥SA进行签名,以便得到代理证书WA→B;以及代理签名部分,用于选取代理私密数据,生成相应密钥数据,将其发送到私钥产生器来计算代理私钥SB,依据代理私钥SB以及代理公钥IDB获得代理签名密钥,并根据该代理签名密钥以及代理证书WA→B构造承诺,以便代理证书产生部分向用户部分代理盲签名,该方法包括步骤:1)由代理证书产生部分根据签名人选取的私密数据生成密钥数据;2)由私钥产生器根据所生成的密钥数据计算签名人的私钥SA,以便使用所计算出来的私钥在该消息上签名来证明该信息的可靠性;3)由代理证书产生部分构造证书mω,并在该证书mω上以该签名人的私钥进行签名,以便得到代理证书WA→B;4)由代理签名部分选取代理私密数据并生成用于该代理签名部分的密钥数据;5)由该私钥产生器根据该代理签名部分的密钥数据计算该代理签名部分的代理私钥SB;6)由代理签名部分依据私钥产生器计算出来的该代理签名部分的代理私钥SB以及代理公钥IDB获得代理签名密钥;以及7)根据该代理签名密钥构造承诺,以便替代理证书产生部分向用户部分承诺代理盲签名。
根据本发明的一种实施方式,上述步骤4)包括子步骤:由代理签名部分验证所接收到的代理证书WA→B是否正确。
根据本发明的一种实施方式,在步骤1)中,由签名人从
Figure A200710148548D00131
中选取私密数据rA,将该签名人的公钥IDA选择为该签名人的身份标识,并进行离散对数运算rAP以产生该签名人的密钥数据;在步骤2)中,由该私钥产生器通过散列函数H2:{0,1}*×G1→G1计算签名人的私钥SA如下:
QA=sH2(IDA;rAP)和SA=sQA
在步骤3)中,通过选择随机数v∈Zq并计算散列函数
Uω=vQA,hω=H4(mω,Uω),Vω=(v+hω)SA和Tω=rAH3(mω)
来构成代理证书 W A → B = Δ { U ω , V ω , T ω , m ω , r A P } , 在步骤4)中,代理签名部分从
Figure A200710148548D00133
中选取私密数据rB,将该代理公钥IDB选择为该代理签名部分的身份标识,并进行离散对数运算rBP以产生该代理签名部分的密钥数据;在步骤5中,通过散列函数H2:{0,1}*×G1→G1计算代理签名部分的私钥SB如下:
SB=sH2(rBP,IDB);
在步骤6)中,通过计算
SP=hωSB+Vω和rP=Tω+rBH3(mω)
获得代理盲签名密钥;以及在步骤7)中,通过随机选择t,t′∈zq并计算
U=t(hω(QA+QB)+Uω),以及X=t′H3(mω)
来产生承诺X和U,由用户部分根据承诺X和U以及代理证书WA→B中的rAP,rBP,mω,Uω和hω,通过随机选择盲因子 α , β , ξ , η ∈ Z q * 并计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η,
来盲化消息m以得到h和k,通过随机选择t,t′∈Zq而在经盲化的h和k上签名以得到V=(t+h)SP,Y=(t′+k)rP,其中h和k是用户部分根据承诺X和U以及代理证书WA→B中的rAP,rBP,mω,Uω和hω,通过随机选择盲因子 α , β , ξ , η ∈ Z q * 并计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η
来盲化消息m而得到的,其中, s ∈ Z q * 是该代理盲签名系统的主密钥,由该私钥产生器随机选择,G1是生成元为P、阶为素数q的有限循环群,H1:{0,1}*×G1→Zq,H2:{0,1}*×G1→G1,H3:{0,1}*→G1和H4:{0,1}*×G1→G1为密码Hash函数。
根据本发明的一种实施方式,在步骤4)的子步骤中,通过计算散列函数
hω=H4(mω,Uω),
并且验证以下两个等式
e(Vω,P)=e(Uω+hωQA,Ppub),
e(Tω,P)=e(H3(mω),rAP),
来确定该代理证书WA→B是否正确,其中Ppub=sP,e:G1×G1→G2是双线性映射,而G2是生成元为P、阶为素数q的有限循环群。
根据本发明的一种实施方式,步骤7)还包括子步骤:
由用户部分根据随机选择的盲因子 α , ξ ∈ Z q * 计算
S=αV,D=ξY,
从而得到在消息m上的代理盲签名{mω,Uω,R,S,C,D,rAP,rBP},式中V和Y是该代理盲签名装置通过随机选择t,t′∈zq而在经盲化的h和k上签名而得到的,V=(t+h)SP,Y=(t′+k)rP
根据本发明的一种实施方式,该代理盲签名方法还包括步骤8):通过计算
hω=H4(mω,Uω),
并验证以下两个等式成立
e(S,P)=e(R+H1(m,R)(hω(QA+QB)+Uω),Ppub),
e(D,P)=e(C+H1(m,C)H3(mω),rAP+rBP),
来验证代理签名部分在消息m上的代理盲签名的真实性。
根据本发明的一种实施方式,该代理盲签名方法还包括步骤9):通过验证
e ( S A , αP ) = e ( H 2 ( ID A , r A ′ P ) , P pub ) α e ( S B , αP ) = e ( H 2 ( ID B , r B ′ P ) , P pub ) α
是否成立来鉴别私钥产生器是否诚实,其中
Figure A200710148548D00153
Figure A200710148548D00154
为私钥产生器计算出来的、分别针对签名人和代理盲签名部分的离散对数值。
根据本分发明的再一方面,提供计算机产品,其上实施有实现在基于身份的代理盲签名系统中进行代理盲签名的方法的程序,该代理盲签名系统包括私钥产生器,用于根据所接收到的密钥数据计算私钥,以便使用该私钥在消息m上签名来证明该信息m的可靠性;代理证书产生部分,用于根据签名人的私密数据生成用于该签名人的密钥数据并将其发送到私钥产生器来计算签名人的私钥SA,构造证书mω并在该证书mω上以私钥产生器计算出的该签名人的私钥SA进行签名,以便得到代理证书WA→B;以及代理签名部分,用于选取代理私密数据,生成相应密钥数据,将其发送到私钥产生器来计算代理私钥SB,依据代理私钥SB以及代理公钥IDB获得代理签名密钥,并根据该代理签名密钥以及代理证书WA→B构造承诺,以便代理证书产生部分向用户部分代理盲签名,该方法包括步骤:1)由代理证书产生部分根据签名人选取的私密数据生成密钥数据;2)由私钥产生器根据所生成的密钥数据计算签名人的私钥SA,以便使用所计算出来的私钥在该消息上签名来证明该信息的可靠性;3)由代理证书产生部分构造证书mω,并在该证书mω上以该签名人的私钥进行签名,以便得到代理证书WA→B;4)由代理签名部分选取代理私密数据并生成用于该代理签名部分的密钥数据;5)由该私钥产生器根据该代理签名部分的密钥数据计算该代理签名部分的代理私钥SB;6)由代理签名部分依据私钥产生器计算出来的该代理签名部分的代理私钥SB以及代理公钥IDB获得代理签名密钥;以及7)根据该代理签名密钥构造承诺,以便替代理证书产生部分向用户部分承诺代理盲签名。
本发明基于身份的代理盲签名方案不再假定PKG是无条件可信任的。每个用户部分除了拥有来自于PKG分配的密钥S以外,还具有PKG未知的秘密信息r。如果PKG模仿某个诚实签名人的签名,该签名人可以利用秘密信息r,提供证据来证明该签名是PKG伪造的。除此之外,本专利中申请的基于身份的代理盲签名方案还同时满足代理和盲的性质,以及不可伪造不可抵赖的性质。
附图说明
通过结合附图参照下面的详细描述,本发明的上述和其它目的、特征和优点将变得更加清楚,其中:
图1示出根据本发明的、无可信私钥产生器(PKG)的、基于身份的代理盲签名系统的方框图;
图2是示出图1所示的代理盲签名系统代理证书产生部分的结构的方框图;
图3是示出代理签名部分的结构的方框图;
图4示出根据本发明的、无可信私钥产生器的、基于身份的代理盲签名的方法的流程图;
图5示出在根据本发明的、无可信私钥产生器(PKG)的、基于身份的代理盲签名系统中的产生代理证书WA→B的方法的流程图;
图6示出验证代理证书WA→B是否正确的流程图;
图7示出鉴别PKG器是否伪造代理证书产生部分签名的流程图;以及
图8图示鉴别PKG器是否伪造代理签名部分签名的流程图。
在所有附图中,相同的附图参考标记指示相同的元件、特点和结构。
具体实施方式
下面将参照示出本发明的优选实施方式的附图来更加全面地描述本发明。应该理解,本发明可以用其他不同的形式来实现,而且不应当限于这里所描述的实施方式。事实上,提供下述实施方式只是为了全面和完整地将本发明的范围传达给本领域的普通技术人员。
现在参照附图描述根据本发明的、无可信私钥产生器(PKG)的、基于身份的代理盲签名系统和方法。在以下的描述中,将省略在这里结合的公知功能和配置的详细描述,因为它可能混淆本发明。
首先参照图1,图1示出了根据本发明的、无可信私钥产生器的、基于身份的代理盲签名系统的方框图。在图1所示的代理盲签名系统中,包括代理证书产生部分110、PKG器130、代理签名部分140以及用户部分150。
代理证书产生部分110按照通用的方法构造证书mω,然后在mω上以PKG器130根据签名人的私密数据和公钥产生的签名人自己的私钥进行签名,以得到代理证书WA→B并将该代理证书WA→B发送给代理签名部分140。
下面详细描述代理证书产生部分110的结构。图2是示出代理证书产生部分110的结构的方框图。如图2所示,代理证书产生部分110包括私密数据选取装置210、签名人密钥数据产生装置220和代理证书生成装置230。
为了产生代理证书WA→B,代理证书产生部分110首先通过私密数据选取装置210由签名人选择私密数据 r A ∈ Z q * 以及公钥IDA,其中,公钥IDA可以是签名人的身份标识,然后将所选择的私密数据 r A ∈ Z q * 和作为有限循环群(GDP)G1和G2的共同生成元P通过签名人密钥数据产生装置220计算rAP作为签名人的密钥数据,并将计算结果传递给PKG器130。
在上述算法中,rAP表示rA和P之间的离散对数运算。关于离散对数运算的问题,可以做如下说明。若G是某个有限循环群(此处设G是乘法群),其阶为q,g是G的一个生成元,即
G=<g>={gi|i=0,…,q-1}。
对于群G,给定g和i,计算gi是容易的。但是给定a∈G,如果想要找到某个x∈{0,…,q-1},使得gx=a成立,是困难的。
如果G是加法群时,离散对数问题可以表示为:给定a∈G,要找到x∈{0,…,q-1},使得xg=a是困难的,其中xg表示群G中的x个g相加:xg=g+g+…+g(共x个)。
离散对数问题的例子很多,比如基于椭圆曲线的离散对数问题,基于有限域Fp上的离散对数问题,等等。
上述图1所示的系统中,在代理证书产生部分110将其自身身份标识IDA和离散对数计算结果rAP发送给PKG后,PKG器130根据所接收到的代理证书产生部分110的IDA和代理证书产生部分110计算所得的离散对数计算结果rAP计算散列函数值
QA=sH2(IDA;rAP)和SA=sQA
其中 s &Element; Z q * 是系统的主密钥,其由PKG器130随机地选择而来并由PKG器130进行保密,IDA是签名人的身份标识。
然后,代理证书产生部分110利用代理证书生成装置230,根据来自PKG器130的散列函数值QA=sH2(IDA;rAP)和SA=sQA,通过选择一个随机数v∈Zq,计算另外一组散列函数值
Uω=vQA,hω=H4(mω,Uω),Vω=(v+hω)SA和Tω=rAH5(mω)。
然后,代理证书产生部分110根据以上过程所计算出来的各个散列函数值Uω,Vω,Tω,mω和rAP,构成代理证书 W A &RightArrow; B = &Delta; { U &omega; , V &omega; , T &omega; , m &omega; , r A P } 以传递给代理签名部分140。在这里和以下定义了四个密码Hash函数
H1:{0,1}*×G1→Zq
H2:{0,1}*×G1→G1
H3:{0,1}*→G1,和
H4:{0,1}*×G1→Zq
这里和以下还假定G1,G2是两个阶为素数q的GDP群,P是它的一个生成元。而且PKG器130公开系统参数
{G1,G2,e,q,P,Ppub,H1,H2,H3,H4},
其中Ppub=sP,而e:G1×G1→G2是双线性映射。
值得注意,上述算法中所用到的Hash函数可以按照通用Hash函数的定义方法进行定义。例如,D.Boneh和M.Franklin在其文章“Identity-basedEncryption from the Weil pairing”(SIAM J.of Computing,32(3):586-615,2003.Extended abstract in Advances in Crptology-Crypto′01,LNCS 2139,pp.213-229,Springer-Verlag,2001)中定义了h:{0,1}*→G*的例子,而D.Bonech,B.Lynn和H.Shacham在文献“Short Signatures from the Weil Pairing”(ASIACRYPT 2001,LNCS 2248,pp.514-532,2001)中也定义了h:{0,1}*→G*的例子。
另外,关于算法中用到的双线性映射(Pairing map)e:G1×G1→G2的例子,可以从D.Boneh和M.Franklin的文章“Identity-based Encryption from the Weilpairing”(SIAM J.of Computing,32(3):586-615,2003.Extended abstract inAdvances in Crptology-Crypto′01,LNCS 2139,pp.213-229,Springer-Verlag,2001)中找到具有密码意义的椭圆曲线上和Abel代数族上的Weil双线性映射。文献[3]的附录部分有关于Tate pairing的定义。此外,F.Hess在文献“Efficient Identitv Based Signature Schemes Based on Pairings”(SAC 2002,LNCS 2595,pp.310-324,Springer-Verlag,2002)中给出了一个被称为Tate双线性映射的具有密码意义的椭圆曲线上和Abel代数族上的双线性映射。
再回到图1,在代理证书产生部分110产生代理证书 W A &RightArrow; B = &Delta; { U &omega; , V &omega; , T &omega; , m &omega; , r A P } 之后,根据本发明的代理盲签名系统将该代理证书WA→B发送给代理签名部分140。代理签名部分140验证所接收到的代理证书WA→B是否正确,如果代理签名部分140通过验证知道代理证书WA→B正确,则依据其私密数据rB和私钥SB以及公钥IDB获得代理签名密钥SP和rP,并根据代理签名密钥SP和rP构造承诺U和X,以将U和X以及其他相关数据发送给用户部分150。
以下参照图3来详细描述代理签名部分140的结构。图3是示出代理签名部分140的结构的方框图。如图3所示代理签名部分140包括私密数据选取装置310、代理签名密钥数据产生装置320、代理证书验证装置330、代理签名密钥生成装置340、承诺构造装置350和代理盲签名装置360。
私密数据选取装置310随机选择私密数据 r B &Element; Z q * 以及公钥IDB,其中,公钥IDB可以是代理签名部分140的身份标识,然后将所选择的私密数据 r B &Element; Z q * 和作为有限循环群(GDP)G1和G2的共同生成元P通过代理签名密钥数据产生装置320计算rBP,并将计算结果传递给PKG器130。
然后PKG器130根据从代理签名部分140接收到的密钥数据来计算代理签名部分140的私钥
SB=sH2(rBP,IDB)。
而代理证书验证装置330通过计算散列函数值
hω=H4(mω,Uω),
并且验证以下两个等式
e(Vω,P)=e(Uω+hωQA,Ppub),
e(Tω,P)=e(H3(mω),rAP),
是否成立,来确定代理证书WA→B是否正确。如果以上两式成立,则认为代理证书WA→B正确,否则认为代理证书WA→B不正确,因此拒绝进行代理。
在判定代理证书WA→B正确的情况下,为了进行代理签名操作,代理签名部分140通过代理签名密钥生成装置340继续获得代理签名密钥
SP=hωSB+Vω和rP=Tω+rBH3(mω)。
假定m是用于签名的消息,承诺构造装置350随机选择t,t′∈zq,然后计算所要的承诺
U=t(hω(QA+QB)+Uω),以及X=t′H5(mω)。
代理签名部分140将承诺X和U连同代理证书中的rAP,rBP,mω,Uω和hω一起传递给用户部分150。
用户部分150响应所接收到的数据,将消息m盲化,得到h和k,并将h和k发送给代理签名部分140。具体地说,用户部分150包括两个部分:盲化装置152和解盲化装置154(如图1所示)。用户部分150在接收到X和U以及代理证书中的rAP,rBP,mω,Uω和hω后,其盲化装置152随机选择盲因子 &alpha; , &beta; , &xi; , &eta; &Element; Z q * , 计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β,以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η,
从而产生用于盲化消息m的h和k,并将其传送给代理签名部分140。
代理盲签名装置360在盲化的h和k上签名,得到V和Y,并将V和Y发送给用户部分150。具体地说,代理盲签名装置360利用从用户部分150处所接收到的h和k以及承诺构造装置350随机选择的t,t′∈Zq,计算
V=(t+h)SP,Y=(t′+k)rP
将所得到的V和Y传递给用户部分150。
而用户部分150的解盲化装置154根据V和Y解盲消息m,得到代理盲签名S和D。具体来说,用户部分150根据从代理签名部分140接收到的V和Y,以及用户部分150随机选择的盲因子 &alpha; , &xi; &Element; Z q * 计算
S=αV,D=ξY。
从而得到{mω,Uω,R,S,C,D,rAP,rBP},即代理签名部分140在消息m上的代理盲签名。
根据本发明的一个优选实施方式,图1所示的无可信私钥产生器的基于身份的代理盲签名系统还可以包括用于验证消息m上的代理盲签名的真实性的代理盲签名真实性验证部分160。在要验证消息m上的代理盲签名的真实性时,代理盲签名真实性验证部分160首先计算散列函数
hω=H4(mω,Uω),
然后根据所计算出来的散列函数值,结合代理盲签名{mω,Uω,R,S,C,D,rAP,rBP},验证以下两个等式是否成立
e(S,P)=e(R+H1(m,R)(hω(QA+QB)+Uω),Ppub),
e(D,P)=e(C+H1(m,C)H3(mω),rAP+rBP).
如果这两个等式成立,则确定代理签名部分140在消息m上的代理盲签名可以接受,从而获得所要求的代理盲签名{mω,Uω,R,S,C,D,rAP,rBP}。
根据本发明的一个优选实施方式,图1所示的无可信私钥产生器的基于身份的代理盲签名系统还可以包括仲裁部分120,用于协助鉴别PKG器130是否诚实。如果PKG器130想要伪造代理证书产生部分110的代理签名证书,由于PKG器130不知道代理证书产生部分110的私密数据rA,于是PKG器130随机选择 r A &prime; &Element; Z q * 作为代理证书产生部分110的私密数据,来计算
S B = s H 2 ( ID B , r A &prime; P ) .
然后,PKG器130按照本发明的无可信私钥产生器的基于身份的代理盲签名系统和方法在证书mω上签名获得代理签名证书WA→B。然后PKG器130把该代理签名证书WA→B发送给代理签名部分140。在用户部分150与代理签名部分140之间也根据本发明的无可信私钥产生器的基于身份的代理盲签名系统和方法进行签名,从而得到在消息m上的代理盲签名
{ m &omega; , R &prime; , S &prime; , C &prime; , D &prime; , r A &prime; P , r B P } .
容易验证,该代理签名满足上面的两个验证方程
e(S′,P)=e(R′+H1(m,R′)(hω(QA+QB)+Uω),Ppub),
e ( D &prime; , P ) = e ( C &prime; + H 1 ( m , C &prime; ) H 3 ( m &omega; ) , r A &prime; P + r B P ) .
所以 { m &omega; , R &prime; , S &prime; , C &prime; , D &prime; , r A &prime; P , r B P } 是有效的代理盲签名。
然而,不管PKG器130伪造代理证书产生部分110还是代理签名部分140的签名,仲裁部分120都可以利用“零知识证明”的方法来识别PKG器130伪造了签名。下面说明仲裁部分120识别PKG器130伪造了签名的原理。
首先描述仲裁部分120利用“零知识证明”的方法来识别PKG器130伪造的代理证书产生部分110的签名。为此,仲裁部分120从代理证书产生部分110接收rAP,并响应从代理证书产生部分110接收到的rAP,随机选择某个随机数α∈zq,计算αP,并将αP发送给代理证书产生部分110。然后,代理证书产生部分110根据所接收到的αP计算e(SA,αP),然后再将该所计算出的结果e(SA,αP)发送给仲裁部分120。仲裁部分120根据代理证书产生部分110发送来的数据验证方程
e(SA,αP)=e(H2(IDA,rAP),Ppub)α
是否成立。如果验证结果表明该方程成立,则说明代理证书产生部分110知道与其自己的身份IDA相对应的私钥SA,因此rAP和r′P都与IDA对应。这说明PKG器130是不诚实的,因为只有PKG器130知道主密钥,所以只有PKG器130能够伪造签名人的签名。
接着描述通过仲裁部分120鉴别PKG器130伪造了代理签名部分140的签名。为此,仲裁部分120从代理签名部分140接收并响应从代理签名部分140接收到的
Figure A200710148548D00222
随机选择某个随机数α∈Zq,将αP发送给代理签名部分140,代理签名部分140利用所接收到的αP计算e(SB,αP),并将所计算出来的值发送给仲裁部分120。然后,仲裁部分120验证方程
e ( S B , &alpha;P ) = e ( H 2 ( ID A , r B &prime; P ) , P pub ) &alpha;
是否成立,由此判断PKG器130是否诚实。如果该方程成立,说明代理签名部分140知道与其自身的身份IDB相对应的私钥SB,于是rBP和
Figure A200710148548D00224
都与IDB对应。这说明PKG器130是不诚实的,因为只有PKG器130知道主密钥,所以只有PKG器130能够伪造签名人的签名。
根据本发明的另一方面,本发明提供无可信私钥产生器(PKG)130的、基于身份的代理盲签名方法。图4示出了根据本发明的、无可信私钥产生器130的、基于身份的代理盲签名的方法的流程图。在图4中,在步骤S410,代理证书产生部分110按照通用的方法构造一个证书mω,然后在mω上签名,以得到代理证书WA→B。在得到代理证书WA→B后,步骤S410还将代理证书WA→B发送给代理签名部分140。
具体地说,图5示出了步骤S410的产生代理证书WA→B的方法的详细流程图。在步骤310中,签名人通过代理证书产生部分110随机选择私密数据 r A &Element; Z q * 以及公钥IDA,其中,公钥IDA可以是签名人的身份标识。
然后,在步骤S520中,代理证书产生部分110利用所选择的私密数据 r A &Element; Z q * 和作为有限循环群(GDP)G1和G2的共同生成元P计算rAP,并将计算结果传递给PKG器130。这里,rAP表示rA和P之间的离散对数运算。
下面接着描述产生代理证书WA→B的详细流程。在图5所示的步骤S530中,PKG器130根据所接收到的rAP和代理证书产生部分110的公钥IDA计算散列函数值
QA=sH2(IDA;rAP)和SA=sQA
其中 s &Element; Z q * 是系统的主密钥,其由PKG器130随机地选择而来并由PKG器130进行保密,IDA是签名人的身份标识。
接着,在步骤S540中,代理证书产生部分110选择一个随机数v∈Zq,计算另外一组散列函数值
Uω=vQA,hω=H4(mω,Uω),Vω=(v+hω)SA和Tω=rAH5(mω)。
最后,在步骤S550,根据以上过程所计算出来的各个散列函数值Uω,Vω,Tω,mω和rAP,构成代理证书 W A &RightArrow; B = &Delta; { U &omega; , V &omega; , T &omega; , m &omega; , r A P } 以传递给代理签名部分140。
在这里,定义了四个密码Hash函数
H1:{0,1}*×G1→Zq
H2:{0,1}*×G1→G1
H3:{0,1}*→G1,和
H4:{0,1}*×G1→Zq
其中假定G1,G2是两个阶为素数q的GDP群,P是它的一个生成元。而且PKG器130公开系统参数
{G1,G2,e,q,P,Ppub,H1,H2,H3,H4},
其中Ppub=sP,而e:G1×G1→G2是双线性映射。值得注意,算法中用到的Hash函数可以按照通用Hash函数的定义方法进行定义。例如,D.Boneh和M.Franklin在其文章“Identity-based Encryption from the Weil pairing”(SIAM J.ofComputing,32(3):586-615,2003.Extended abstract in Advances inCrptology-Crypto′01,LNCS 2139,pp.213-229,Springer-Verlag,2001)中定义了h:{0,1}*→G*的例子,而D.Bonech,B.Lynn和H.Shacham在文献“ShortSignatures from the Weil Pairing”(ASIACRYPT 2001,LNCS 2248,pp.514-532,2001)中也定义了h:{0,1}*→G*的例子。
另外,关于算法中用到的双线性映射(Pairing map)e:G1×G1→G2的例子,可以从D.Boneh和M.Franklin的文章“Identity-based Encryption from the Weilpairing”(SIAM J.of Computing,32(3):586-615,2003.Extended abstract inAdvances in Crptology-Crypto′01,LNCS 2139,pp.213-229,Springer-Verlag,2001)中找到具有密码意义的椭圆曲线上和Abel代数族上的Weil双线性映射。文献[3]的附录部分有关于Tate pairing的定义。此外,F.Hess在文献“Efficient Identity Based Signature Schemes Based on Pairings”(SAC 2002,LNCS 2595,pp.310-324,Springer-Verlag,2002)中给出了一个被称为Tate双线性映射的具有密码意义的椭圆曲线上和Abel代数族上的双线性映射。
再回来参考图4,在代理证书产生部分110产生代理证书 W A &RightArrow; B = &Delta; { U &omega; , V &omega; , T &omega; , m &omega; , r A P } 之后,根据本发明的系统将代理证书WA→B发送给代理签名部分140。在步骤S420,代理签名部分140验证WA→B是否正确,如果代理签名部分140通过验证知道代理证书WA→B正确,则依据其私密数据rB和私钥SB以及公钥IDB获得代理签名密钥SP和rP,并根据代理签名密钥SP和rP构造承诺U和X,以将U和X以及其他相关数据发送给用户部分150。
图6示出了在图4的步骤S420的详细流程。参考图6,在步骤S610,代理签名部分140计算散列函数值
hω=H4(mω,Uω)。
接下来,在步骤S620,验证以下两个等式
e(Vω,P)=e(Uω+hωQA,Ppub),
e(Tω,P)=e(H3(mω),rAP),
是否成立。如果以上两式成立,则在步骤S630中获得代理签名密钥
SP=hωSB+Vω和rP=Tω+rBH3(mω)。
其中私钥
SB=sH2(rBP,IDB)。
然后,在步骤S640,代理签名部分140产生代理盲签名。具体地说,假定m是用于签名的消息,则代理签名部分140随机选择t,t′∈Zq,然后计算
U=t(hω(QA+QB)+Uω),以及X=t′H5(mω),
并将X和U连同rAP,rBP,mω,Uω和hω一起传递给用户部分150。
接下来,在回到图4,在步骤S430,用户部分150将消息m盲化,得到h和k,并将h和k发送给代理签名部分140。具体地说,用户部分150随机选择盲因子 &alpha; , &beta; , &xi; , &eta; &Element; Z q * , 计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β,以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η,
然后将h和k传送给代理签名部分140。
接下来,在步骤S440,代理签名部分140在盲化的h和k上签名,得到V和Y,并将V和Y发送给用户部分150。具体地说,代理签名部分140利用从用户部分150处所接收到的h和k以及代理签名部分140自己随机选择t,t′∈Zq,计算
V=(t+h)SP,Y=(t′+k)rP
将所得到的V和Y传递给用户部分150。
在图4中的步骤150中,用户部分150根据V和Y解盲,得到代理盲签名S和D。具体来说,用户部分150根据从代理签名部分140接收到的V和Y,以及用户部分150随机选择的盲因子 &alpha; , &xi; &Element; Z q * 计算
S=αV,D=ξY。
从而得到{mω,Uω,R,S,C,D,rAP,rBP},即代理签名部分140在消息m上的代理盲签名。
要验证代理签名部分140在消息m上的代理盲签名的真实性,验证者可以通过计算
hω=H4(mω,Uω),
如果以下两个等式成立
e(S,P)=e(R+H1(m,R)(hω(QA+QB)+Uω),Ppub),
e(D,P)=e(C+H1(m,C)H3(mω),rAP+rBP).
则代理签名部分140在消息m上的代理盲签名可以接受,从而获得所要求的代理盲签名。
可以验证,根据本发明的无可信私钥产生器的基于身份的代理盲签名系统和方法获得了所要求的代理盲签名能够有助于鉴别PKG器130是否诚实。
事实上,在根据本发明的无可信私钥产生器的基于身份的代理盲签名系统和方法获得了所要求的代理盲签名的情况下,如果PKG器130想要伪造代理证书产生部分110的代理签名证书,由于PKG器130不知道代理证书产生部分110的私密数据rA,于是PKG器130随机选择作为代理证书产生部分110的私密数据,来计算
S B = s H 2 ( ID B , r A &prime; P ) .
然后,PKG器130按照本发明的无可信私钥产生器的基于身份的代理盲签名系统和方法在证书mω上签名获得代理签名证书WA→B。然后PKG器130把该代理签名证书WA→B发送给代理签名部分140。在用户部分150与代理签名部分140之间也根据本发明的无可信私钥产生器的基于身份的代理盲签名系统和方法进行签名,从而得到在消息m上的代理盲签名
{ m &omega; , R &prime; , S &prime; , C &prime; , D &prime; , r A &prime; P , r B P } .
容易验证,该代理签名满足上面的两个验证方程
e(S′,P)=e(R′+H1(m,R′)(hω(QA+QB)+Uω),Ppub),
e ( D &prime; , P ) = e ( C &prime; + H 1 ( m , C &prime; ) H 5 ( m &omega; ) , r A &prime; P + r B P ) .
所以 { m &omega; , R &prime; , S &prime; , C &prime; , D &prime; , r A &prime; P , r B P } 是有效的代理盲签名。
可以证明,代理证书产生部分110和代理签名部分140都可以利用“零知识证明”的方法来识别PKG器130伪造自己的代理盲签名。下面结合图7和图8详细描述代理证书产生部分110和代理签名部分140利用“零知识证明”的方法来识别PKG器130伪造的代理盲签名的流程。图7示出了具体地识别PKG器130伪造代理证书产生部分110的代理盲签名的流程图。在该图中,在步骤S710,代理证书产生部分110将rAP发送给一个仲裁部分120,以便在仲裁部分120的协助下进行该验证。
在步骤S720中,仲裁部分120响应代理证书产生部分110发送来的rAP,随机选择某个随机数α∈Zq,计算αP,并将αP发送给代理证书产生部分110。
接下来,在步骤S730,代理证书产生部分110根据所接收到的αP计算e(SA,αP),然后再将该所计算出的结果e(SA,αP)发送给仲裁部分120。
在步骤S740,仲裁部分120根据代理证书产生部分110发送来的数据验证方程
e ( S A , &alpha;P ) = e ( H 2 ( ID A , r A &prime; P ) , P pub ) &alpha;
是否成立。如果在步骤S740中的验证结果表明该方程成立,则说明代理证书产生部分110知道与其自己的身份IDA相对应的私钥SA,因此rAP和
Figure A200710148548D00262
都与IDA对应。这说明PKG器130是不诚实的,因为只有PKG器130知道主密钥,所以只有PKG器130能够伪造签名人的签名。所以,在这种情况下,仲裁部分120在步骤S750中得出PKG器130不诚实的结论。而如果在步骤S740中的验证结果表明该方程不成立,则仲裁部分120在步骤S760中得出PKG器130诚实的结论。
另一方面,如果PKG器130想要伪造代理签名部分140的代理盲签名,由于他不知道代理人签名人的私密数据rB,于是他随机选择 r B &prime; &Element; Z q * , 计算
S B = s H 2 ( ID B , r B &prime; P ) .
然后,PKG器130按照上面的协议在消息m上签名。最后,用户部分150得到PKG器130在消息m的盲签名 { m &omega; , R &prime; , S &prime; , C &prime; , D &prime; , r A P , r B &prime; P } 容易验证, { m &omega; , R &prime; , S &prime; , C &prime; , D &prime; , r A P , r B &prime; P } 满足上面的两个验证方程,所以 { m &omega; , R &prime; , S &prime; , C &prime; , D &prime; , r A P , r B &prime; P } 是与代理签名部分140的身份IDB相对应的有效的代理盲签名。
图8图示了验证代理盲签名是PKG器130伪造代理签名部分140的签名的流程图。在图8所示的流程图中,在步骤S810,代理签名部分140将
Figure A200710148548D00268
发送给一个仲裁部分120以请求该仲裁部分120协助验证该签名是否是PKG器130伪造的。
然后,在步骤S820中,仲裁部分120响应代理签名部分140发送来的
Figure A200710148548D00269
随机选择某个随机数α∈Zq,将αP发送给代理签名部分140。
接下来,在步骤S830,代理签名部分140利用所接收到的aP计算e(SB,aP),并将所计算出来的值发送给仲裁部分120。
最后,在步骤S840,仲裁部分120验证方程
e ( S B , &alpha;P ) = e ( H 2 ( ID B , r B &prime; P ) , P pub ) &alpha;
是否成立,由此判断PKG器130是否诚实。如果该方程成立,说明代理签名部分140知道与其自身的身份IDB相对应的私钥SB,于是rBP和
Figure A200710148548D00272
都与IDB对应。这说明PKG器130是不诚实的,因为只有PKG器130知道主密钥,所以只有PKG器130能够伪造签名人的签名。所以,在这种情况下,仲裁部分120在步骤S850中得出PKG器130不诚实的结论。而如果在步骤S840中的验证结果表明该方程不成立,则仲裁部分120在步骤S860中得出PKG器130诚实的结论。
因此,这样获得的代理盲签名具有代理和盲的性质,该代理盲签名满足不可伪造不可抵赖的性质,并且根据本发明的上述签名方法不用假定私钥产生器是无条件可信的,克服了传统的基于身份的代理盲签名算法的一个严重缺陷。如果PKG器130模仿某个诚实签名人的代理盲签名,该签名人可以提供证据来证明该签名是PKG器130伪造的。因此,与已知的基于身份的代理盲签名算法相比,根据本发明的无可信私钥产生器的基于身份的代理盲签名方案具有更高实际应用价值。
在上面的说明中,根据本发明的优选实施方式描述了代理盲签名系统及其方法。本领域技术人员将理解,该系统和方法都可以实现为记录在计算机可读记录介质上的计算机可读代码。该计算机可读记录介质可以是存储可由计算机系统读取的数据的任何数据存储设备。计算机可读记录介质的示例包括只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘、光数据存储装置和载波(诸如通过因特网的数据发送)。计算机可读记录介质还可以分布在联网的计算机系统中,以便以分布的方式存储并执行计算机可读代码。
尽管上述是参照示例性实施方式来描述本发明,但本领域技术人员将理解,在不背离由所附权利要求书限定的本发明宗旨和范围的前提下,可以对本发明进行各种形式和细节上的修改。优选实施方式应该仅认为是说明性的,而不是限制性的。因此,本发明的详细描述不限定本发明的范围,本发明的范围应该由所附权利要求限定,并且本发明的范围内的所有区别技术特征应理解为包含在本发明中。

Claims (14)

1、一种基于身份的代理盲签名系统,包括:
私钥产生器,用于根据所接收到的密钥数据计算私钥,以便使用该私钥在消息m上签名来证明该信息m的可靠性;
代理证书产生部分,用于根据签名人的私密数据生成用于该签名人的密钥数据并将其发送到私钥产生器来计算签名人的私钥SA,构造证书mω并在该证书mω上以私钥产生器计算出的该签名人的私钥SA进行签名,以便得到代理证书WA→B;以及
代理签名部分,用于选取代理私密数据,生成相应密钥数据,将其发送到私钥产生器来计算代理私钥SB,依据代理私钥SB以及代理公钥IDB获得代理签名密钥,并根据该代理签名密钥以及代理证书WA→B构造承诺,以便代理证书产生部分向用户部分代理盲签名。
2、如权利要求1所述的代理盲签名系统,其中,该代理签名部分还验证所接收到的代理证书WA→B是否正确。
3、如权利要求1或2所述的代理盲签名系统,其中,
该代理证书产生部分包括:
第一私密数据选取装置,用于由签名人从
Figure A200710148548C0002113835QIETU
中选取私密数据rA,并将该签名人的公钥IDA选择为该签名人的身份标识,
第一密钥数据产生装置,用于进行离散对数运算rAP得到该签名人的密钥数据,P为有限循环群的生成元,
代理证书生成装置,用于通过选择随机数ν∈Zq并计算散列函数Uω=νQA,hω=H4(mω,Uω),Vω=(ν+hω)SA和Tω=rAH3(mω)
来构成代理证书其中
H4:{0,1}*×G1→G1
H3:{0,1}*→G1为密码Hash函数;以及
该代理签名部分包括:
第二私密数据选取装置,用于从
Figure A200710148548C00022
中选取私密数据rB,并将该代理公钥IDB选择为该代理签名部分的身份标识,
第二密钥数据产生装置,用于进行离散对数运算rBP以产生该代理签名部分的密钥数据,
代理证书验证装置,用于通过计算散列函数
hω=H4(mω,Uω),
并且验证以下两个等式
e(Vω,P)=e(Uω+hωQA,Ppub),
e(Tω,P)=e(H3(mω),rAP),
来确定该代理证书WA→B是否正确,其中Ppub=sP,e:G1×G1→G2是双线性映射,而G2是生成元为P、阶为素数q的有限循环群,
代理签名密钥生成装置,用于通过计算
SP=hωSB+Vω和rP=Tω+rBH3(mω)
获得代理盲签名密钥,
承诺构造装置,用于通过随机选择t,t′∈Zq并计算
U=t(hω(QA+QB)+Uω),以及X=t′H3(mω)
来产生承诺X和U,以及
代理盲签名装置,用于接收用户部分所发送的经盲化的消息h和k,通过随机选择t,t′∈Zq而在经盲化的h和k上签名以得到V=(t+h)SP,Y=(t′+k)rP,其中h和k是用户部分根据承诺X和U以及代理证书WA→B中的rAP,rBP,mω,Uω和hω,通过随机选择盲因子 &alpha; , &beta; , &xi; , &eta; &Element; Z q * 并计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η
来盲化消息m而得到,
其中,QA=sH2(IDA;rAP)和SA=sQA,SB=sH2(rBP,IDB),而H1:{0,1}*×G1→Zq为密码散列函数, s &Element; Z q * 是该代理盲签名系统的主密钥,由该私钥产生器随机选择,G1是生成元为P、阶为素数q的有限循环群,而代理证书产生部分和代理签名部分的私钥SA和SB由该私钥产生器通过散列函数H2:{0,1}*×G1→G1计算如下:
QA=sH2(IDA;rAP)和SA=sQA
SB=sH2(rBP,IDB)。
4、如权利要求3所述的代理盲签名系统,其中,该用户部分包括:
盲化装置,用于接收承诺X和U以及代理证书WA→B中的rAP,rBP,mω,Uω和hω,通过随机选择盲因子 &alpha; , &beta; , &xi; , &eta; &Element; Z q * 并计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η,H1:{0,1}*×G1→Zq为密码散列函数来盲化消息m以得到h和k;以及
解盲装置,用于根据随机选择的盲因子 &alpha; , &xi; &Element; Z q * 计算
S=αV,D=ξY,
从而得到在消息m上的代理盲签名{mω,Uω,R,S,C,D,rAP,rBP},式中V和Y是该代理盲签名装置通过随机选择 &alpha; , &beta; , &xi; , &eta; &Element; Z q * 而在经盲化的h和k上签名而得到的,V=(t+h)SP,Y=(t′+k)rP
5、如权利要求4所述的代理盲签名系统,还包括代理盲签名真实性验证部分,用于通过计算
hω=H4(mω,Uω),
并验证以下两个等式成立
e(S,P)=e(R+H1(m,R)(hω(QA+QB)+Uω),Ppub),
e(D,P)=e(C+H1(m,C)H3(mω),rAP+rBP),
来验证代理签名部分在消息m上的代理盲签名的真实性。
6、如权利要求4所述的代理盲签名系统,还包括仲裁部分,用于通过验证
e ( S A , &alpha;P ) = e ( H 2 ( ID A , r A &prime; P ) , P pub ) &alpha; e ( S B , &alpha;P ) = e ( H 2 ( ID B , r B &prime; P ) , P pub ) &alpha;
是否成立来鉴别私钥产生器是否诚实,其中
Figure A200710148548C00046
为私钥产生器计算出来的、分别针对签名人和代理盲签名部分的离散对数值。
7、一种在基于身份的代理盲签名系统中进行代理盲签名的方法,该代理盲签名系统包括私钥产生器,用于根据所接收到的密钥数据计算私钥,以便使用该私钥在消息m上签名来证明该信息m的可靠性;代理证书产生部分,用于根据签名人的私密数据生成用于该签名人的密钥数据并将其发送到私钥产生器来计算签名人的私钥SA,构造证书mω并在该证书mω上以私钥产生器计算出的该签名人的私钥SA进行签名,以便得到代理证书WA→B;以及代理签名部分,用于选取代理私密数据,生成相应密钥数据,将其发送到私钥产生器来计算代理私钥SB,依据代理私钥SB以及代理公钥IDB获得代理签名密钥,并根据该代理签名密钥以及代理证书WA→B构造承诺,以便代理证书产生部分向用户部分代理盲签名,该方法包括步骤:
1)由代理证书产生部分根据签名人选取的私密数据生成密钥数据;
2)由私钥产生器根据所生成的密钥数据计算签名人的私钥SA,以便使用所计算出来的私钥在该消息上签名来证明该信息的可靠性;
3)由代理证书产生部分构造证书mω,并在该证书mω上以该签名人的私钥进行签名,以便得到代理证书WA→B
4)由代理签名部分选取代理私密数据并生成用于该代理签名部分的密钥数据;
5)由该私钥产生器根据该代理签名部分的密钥数据计算该代理签名部分的代理私钥SB
6)由代理签名部分依据私钥产生器计算出来的该代理签名部分的代理私钥SB以及代理公钥IDB获得代理签名密钥;以及
7)根据该代理签名密钥构造承诺,以便替代理证书产生部分向用户部分承诺代理盲签名。
8、如权利要求7所述的代理盲签名方法,其中,
步骤4)包括子步骤:
由代理签名部分验证所接收到的代理证书WA→B是否正确。
9、如权利要求7或8所述的代理盲签名方法,其中,
在步骤1)中,由签名人从
Figure A200710148548C0005114615QIETU
中选取私密数据rA,将该签名人的公钥IDA选择为该签名人的身份标识,并进行离散对数运算rAP以产生该签名人的密钥数据;
在步骤2)中,由该私钥产生器通过散列函数H2:{0,1}*×G1→G1计算签名人的私钥SA如下:
QA=sH2(IDA;rAP)和SA=sQA
在步骤3)中,通过选择随机数v∈Zq并计算散列函数
Uω=νQA,hω=H4(mω,Uω),Vω=(ν+hω)SA和Tω=rAH3(mω)
来构成代理证书
Figure A200710148548C00051
在步骤4)中,代理签名部分从中选取私密数据rB,将该代理公钥IDB选择为该代理签名部分的身份标识,并进行离散对数运算rBP以产生该代理签名部分的密钥数据;
在步骤5中,通过散列函数H2:{0,1}*×G1→G1计算代理签名部分的私钥SB如下:
SB=sH2(rBP,IDB);
在步骤6)中,通过计算
SP=hωSB+Vω和rP=Tω+rBH3(mω)
获得代理盲签名密钥;以及
在步骤7)中,通过随机选择t,t′∈Zq并计算
U=t(hω(QA+QB)+Uω),以及X=t′H3(mω)
来产生承诺X和U,由用户部分根据承诺X和U以及代理证书WA→B中的rAP,rBP,mω,Uω和hω,通过随机选择盲因子 &alpha; , &beta; , &xi; , &eta; &Element; Z q * 并计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η,
来盲化消息m以得到h和k,通过随机选择t,t′∈Zq而在经盲化的h和k上签名以得到V=(t+h)SP,Y=(t′+k)rP,其中h和k是用户部分根据承诺X和U以及代理证书WA→B中的rAP,rBP,mω,Uω和hω,通过随机选择盲因子 &alpha; , &beta; , &xi; , &eta; &Element; Z q * 并计算
R=αU+αβ(hω(QA+QB)+Uω)和h=α-1H1(m,R)+β以及
C=ξX+ξηH3(mω)和k=ξ-1H1(m,C)+η
来盲化消息m而得到的,
其中, s &Element; Z q * 是该代理盲签名系统的主密钥,由该私钥产生器随机选择,G1是生成元为P、阶为素数q的有限循环群,H1:{0,1}*×G1→Zq,H2:{0,1}*×G1→G1,H3:{0,1}*→G1和H4:{0,1}*×G1→G1为密码Hash函数。
10、如权利要求9所述的代理盲签名方法,其中,在步骤4)的子步骤中,通过计算散列函数
hω=H4(mω,Uω),
并且验证以下两个等式
e(Vω,P)=e(Uω+hωQA,Ppub),
e(Tω,P)=e(H3(mω),rAP),
来确定该代理证书WA→B是否正确,其中Ppub=sP,e:G1×G1→G2是双线性映射,而G2是生成元为P、阶为素数q的有限循环群。
11、如权利要求10所述的代理盲签名方法,其中,步骤7)还包括子步骤:由用户部分根据随机选择的盲因子 &alpha; , &xi; &Element; Z q * 计算
S=αV,D=ξY,
从而得到在消息m上的代理盲签名{mω,Uω,R,S,C,D,rAP,rBP},式中V和Y是该代理盲签名装置通过随机选择t,t′∈Zq而在经盲化的h和k上签名而得到的,V=(t+h)SP,Y=(t′+k)rP
12、如权利要求10所述的代理盲签名方法,还包括步骤8):通过计算
hω=H4(mω,Uω),
并验证以下两个等式成立
e(S,P)=e(R+H1(m,R)(hω(QA+QB)+Uω),Ppub),
e(D,P)=e(C+H1(m,C)H3(mω),rAP+rBP),
来验证代理签名部分在消息m上的代理盲签名的真实性。
13、如权利要求10所述的代理盲签名方法,还包括步骤9):通过验证
e ( S A , &alpha;P ) = e ( H 2 ( ID A , r A &prime; P ) , P pub ) &alpha; e ( S B , &alpha;P ) = e ( H 2 ( ID B , r B &prime; P ) , P pub ) &alpha;
是否成立来鉴别私钥产生器是否诚实,其中
Figure A200710148548C00073
Figure A200710148548C00074
为私钥产生器计算出来的、分别针对签名人和代理盲签名部分的离散对数值。
14、一种计算机产品,其上实施有实现在基于身份的代理盲签名系统中进行代理盲签名的方法的程序,该代理盲签名系统包括私钥产生器,用于根据所接收到的密钥数据计算私钥,以便使用该私钥在消息m上签名来证明该信息m的可靠性;代理证书产生部分,用于根据签名人的私密数据生成用于该签名人的密钥数据并将其发送到私钥产生器来计算签名人的私钥SA,构造证书mω并在该证书mω上以私钥产生器计算出的该签名人的私钥SA进行签名,以便得到代理证书WA→B;以及代理签名部分,用于选取代理私密数据,生成相应密钥数据,将其发送到私钥产生器来计算代理私钥SB,依据代理私钥SB以及代理公钥IDB获得代理签名密钥,并根据该代理签名密钥以及代理证书WA→B构造承诺,以便代理证书产生部分向用户部分代理盲签名,该方法包括步骤:
1)由代理证书产生部分根据签名人选取的私密数据生成密钥数据;
2)由私钥产生器根据所生成的密钥数据计算签名人的私钥SA,以便使用所计算出来的私钥在该消息上签名来证明该信息的可靠性;
3)由代理证书产生部分构造证书mω,并在该证书mω上以该签名人的私钥进行签名,以便得到代理证书WA→B
4)由代理签名部分选取代理私密数据并生成用于该代理签名部分的密钥数据;
5)由该私钥产生器根据该代理签名部分的密钥数据计算该代理签名部分的代理私钥SB
6)由代理签名部分依据私钥产生器计算出来的该代理签名部分的代理私钥SB以及代理公钥IDB获得代理签名密钥;以及
7)根据该代理签名密钥构造承诺,以便替代理证书产生部分向用户部分承诺代理盲签名。
CNA2007101485480A 2007-08-29 2007-08-29 基于身份的代理盲签名系统及方法 Pending CN101378316A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2007101485480A CN101378316A (zh) 2007-08-29 2007-08-29 基于身份的代理盲签名系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2007101485480A CN101378316A (zh) 2007-08-29 2007-08-29 基于身份的代理盲签名系统及方法

Publications (1)

Publication Number Publication Date
CN101378316A true CN101378316A (zh) 2009-03-04

Family

ID=40421677

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2007101485480A Pending CN101378316A (zh) 2007-08-29 2007-08-29 基于身份的代理盲签名系统及方法

Country Status (1)

Country Link
CN (1) CN101378316A (zh)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101877638A (zh) * 2009-04-30 2010-11-03 北京邮电大学 一种基于三次剩余的身份签名体制
CN102387019A (zh) * 2011-10-19 2012-03-21 西安电子科技大学 无证书部分盲签名方法
CN103634788A (zh) * 2013-12-16 2014-03-12 重庆邮电大学 前向安全的无证书多代理签密方法
CN103647642A (zh) * 2013-11-15 2014-03-19 河海大学 一种基于证书代理重加密方法及系统
CN103780386A (zh) * 2012-10-23 2014-05-07 航天信息股份有限公司 基于身份的盲签名方法和装置
CN104079412A (zh) * 2014-07-08 2014-10-01 甘肃省电力设计院 基于智能电网身份安全的无可信pkg的门限代理签名方法
WO2015035861A1 (zh) * 2013-09-16 2015-03-19 华为终端有限公司 无证书多重代理签名的方法和装置
CN105721430A (zh) * 2016-01-15 2016-06-29 上海第二工业大学 基于身份的代理密码方法中通用的代理键产生方法
CN105743647A (zh) * 2016-03-17 2016-07-06 西安电子科技大学 空间信息网跨域的广播认证方法
CN106851635A (zh) * 2016-12-15 2017-06-13 北京三未信安科技发展有限公司 一种基于身份的分布式签名方法及系统
CN106982113A (zh) * 2017-05-02 2017-07-25 北京邮电大学 基于非交换单群的公钥全同态数据处理方法及装置
CN107172172A (zh) * 2017-05-31 2017-09-15 郑州云海信息技术有限公司 一种IaaS系统中的通信方法及其系统
CN109286485A (zh) * 2018-10-17 2019-01-29 西安邮电大学 通用可复合的身份代理签密方法
CN110535655A (zh) * 2019-07-24 2019-12-03 曲阜师范大学 一种新的rsa盲签名方法
CN113497712A (zh) * 2020-04-04 2021-10-12 重庆傲雄在线信息技术有限公司 一种kgc数据处理系统
CN115733651A (zh) * 2022-08-29 2023-03-03 景德镇陶瓷大学 交易隐私保护方法和装置、电子设备和存储介质

Cited By (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101877638A (zh) * 2009-04-30 2010-11-03 北京邮电大学 一种基于三次剩余的身份签名体制
CN101877638B (zh) * 2009-04-30 2014-05-14 北京邮电大学 一种基于三次剩余的身份签名体制
CN102387019B (zh) * 2011-10-19 2014-03-12 西安电子科技大学 无证书部分盲签名方法
CN102387019A (zh) * 2011-10-19 2012-03-21 西安电子科技大学 无证书部分盲签名方法
CN103780386A (zh) * 2012-10-23 2014-05-07 航天信息股份有限公司 基于身份的盲签名方法和装置
CN103780386B (zh) * 2012-10-23 2017-02-15 航天信息股份有限公司 基于身份的盲签名方法和装置
WO2015035861A1 (zh) * 2013-09-16 2015-03-19 华为终端有限公司 无证书多重代理签名的方法和装置
CN104468476A (zh) * 2013-09-16 2015-03-25 华为终端有限公司 无证书多重代理签名的方法和装置
CN104468476B (zh) * 2013-09-16 2017-12-05 华为终端(东莞)有限公司 无证书多重代理签名的方法和装置
US9641340B2 (en) 2013-09-16 2017-05-02 Huawei Device Co., Ltd. Certificateless multi-proxy signature method and apparatus
CN103647642A (zh) * 2013-11-15 2014-03-19 河海大学 一种基于证书代理重加密方法及系统
CN103647642B (zh) * 2013-11-15 2016-07-06 河海大学 一种基于证书代理重加密方法及系统
CN103634788A (zh) * 2013-12-16 2014-03-12 重庆邮电大学 前向安全的无证书多代理签密方法
CN104079412A (zh) * 2014-07-08 2014-10-01 甘肃省电力设计院 基于智能电网身份安全的无可信pkg的门限代理签名方法
CN104079412B (zh) * 2014-07-08 2018-01-02 中国能源建设集团甘肃省电力设计院有限公司 基于智能电网身份安全的无可信pkg的门限代理签名方法
CN105721430A (zh) * 2016-01-15 2016-06-29 上海第二工业大学 基于身份的代理密码方法中通用的代理键产生方法
CN105721430B (zh) * 2016-01-15 2019-03-05 上海第二工业大学 基于身份的代理密码方法中通用的代理键产生方法
CN105743647A (zh) * 2016-03-17 2016-07-06 西安电子科技大学 空间信息网跨域的广播认证方法
CN105743647B (zh) * 2016-03-17 2019-01-08 西安电子科技大学 空间信息网跨域的广播认证方法
CN106851635A (zh) * 2016-12-15 2017-06-13 北京三未信安科技发展有限公司 一种基于身份的分布式签名方法及系统
CN106851635B (zh) * 2016-12-15 2019-10-29 北京三未信安科技发展有限公司 一种基于身份的分布式签名方法及系统
CN106982113A (zh) * 2017-05-02 2017-07-25 北京邮电大学 基于非交换单群的公钥全同态数据处理方法及装置
CN106982113B (zh) * 2017-05-02 2018-06-29 北京邮电大学 基于非交换单群的公钥全同态数据处理方法及装置
CN107172172A (zh) * 2017-05-31 2017-09-15 郑州云海信息技术有限公司 一种IaaS系统中的通信方法及其系统
CN107172172B (zh) * 2017-05-31 2020-03-06 郑州云海信息技术有限公司 一种IaaS系统中的通信方法及其系统
CN109286485A (zh) * 2018-10-17 2019-01-29 西安邮电大学 通用可复合的身份代理签密方法
CN109286485B (zh) * 2018-10-17 2019-10-25 西安邮电大学 通用可复合的身份代理签密方法
CN110535655A (zh) * 2019-07-24 2019-12-03 曲阜师范大学 一种新的rsa盲签名方法
CN110535655B (zh) * 2019-07-24 2022-04-22 曲阜师范大学 一种新的rsa盲签名方法
CN113497712A (zh) * 2020-04-04 2021-10-12 重庆傲雄在线信息技术有限公司 一种kgc数据处理系统
CN115733651A (zh) * 2022-08-29 2023-03-03 景德镇陶瓷大学 交易隐私保护方法和装置、电子设备和存储介质
CN115733651B (zh) * 2022-08-29 2024-08-23 景德镇陶瓷大学 交易隐私保护方法和装置、电子设备和存储介质

Similar Documents

Publication Publication Date Title
CN101378316A (zh) 基于身份的代理盲签名系统及方法
US8712042B2 (en) Implicit certificate scheme
WO2018119670A1 (zh) 一种无证书部分盲签名方法和装置
Zhou et al. ExpSOS: Secure and verifiable outsourcing of exponentiation operations for mobile cloud computing
EP1378821A2 (en) Authentication method and apparatus using pairing functions for the elliptic curves based cryptosystems
US20110060903A1 (en) Group signature system, apparatus and storage medium
JP4872908B2 (ja) メンバー証明書獲得装置、メンバー証明書発行装置、グループ署名装置、グループ署名検証装置
KR100581440B1 (ko) 겹선형쌍을 이용한 개인식별정보 기반의 대리서명 장치 및방법
JP5593850B2 (ja) 認証装置、認証方法、プログラム、及び署名生成装置
CN106789019B (zh) 一种无证书部分盲签名方法和装置
JP2004208263A (ja) バイリニアペアリングを用いた個人識別情報に基づくブラインド署名装置及び方法
JP2004208262A (ja) バイリニアペアリングを用いたidに基づくリング署名装置及び方法
KR20030062401A (ko) 겹선형쌍을 이용한 개인식별정보 기반의 은닉서명 장치 및방법
Tahat et al. An efficient self-certified multi-proxy signature scheme based on elliptic curve discrete logarithm problem
GB2421408A (en) Generating an Identifier-Based Public / Private Key Pair from a Multi-Component Signature
Loh et al. A Tightly Secure ID-Based Signature Scheme Under DL Assumption in AGM
US20050135610A1 (en) Identifier-based signcryption
Kwak et al. Efficient distributed signcryption scheme as group signcryption
Tso A new way to generate a ring: Universal ring signature
Zhang et al. A robust verifiably encrypted signature scheme
Tso et al. Certificateless proxy signature and its extension to blind signature
CN113761592B (zh) 一种云存储中基于模糊身份的数据完整性检测方法
Islam et al. Design of an efficient ID-based short designated verifier proxy signature scheme
Wu et al. Efficient self-certified proxy CAE scheme and its variants
Mohamad et al. A threshold authenticated encryption scheme using hybrid problems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20090304