发明名称 基于身份的门限环签名方法
摘要 一种基于身份的门限环签名方法,包括标准模型下的(1)系统建立、(2)私钥提取、(3)签名:(4)验证。本发明的方法是在标准模型下构造的,与随机预言模型下设计的方案相比,安全性更好。
申请公布号 CN102684885B 申请公布日期 2014.09.10
申请号 CN201210165358.0 申请日期 2012.05.25
申请人 孙华;王爱民;梁燕军;郭丽;孙虹 发明人 孙华;王爱民;梁燕军;郭丽;孙虹
分类号 H04L9/32(2006.01)I;H04L9/30(2006.01)I 主分类号 H04L9/32(2006.01)I
代理机构 北京同辉知识产权代理事务所(普通合伙) 11357 代理人 赵慧
主权项 一种基于身份的门限环签名方法,其特征在于:包括以下步骤:(1)系统建立:随机选取参数,生成系统参数以及相应的主密钥,其中系统参数为公开参数,具体步骤为:令G,G<sub>T</sub>是阶为素数p的循环群,e:G×G→G<sub>T</sub>是一个双线性映射,两个无碰撞的哈希函数<img file="FDA0000541406000000011.GIF" wi="370" he="77" />和<img file="FDA0000541406000000012.GIF" wi="364" he="81" />将任意长度的身份ID和消息m分别输出长度为n<sub>u</sub>和n<sub>m</sub>的位串;可信第三方随机选取参数α∈Z<sub>p</sub>,生成元g∈G,计算g<sub>1</sub>=g<sup>a</sup>,随机选取参数g<sub>2</sub>,u',m'∈G,n<sub>u</sub>维向量<img file="FDA0000541406000000013.GIF" wi="200" he="83" />n<sub>m</sub>维向量<img file="FDA0000541406000000014.GIF" wi="221" he="83" />其中u<sub>i</sub>,m<sub>i</sub>∈G,则系统参数为<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>param</mi><mo>=</mo><mrow><mo>(</mo><mi>G</mi><mo>,</mo><msub><mi>G</mi><mi>T</mi></msub><mo>,</mo><mi>e</mi><mo>,</mo><mi>g</mi><mo>,</mo><msub><mi>g</mi><mn>1</mn></msub><mo>,</mo><msub><mi>g</mi><mn>2</mn></msub><mo>,</mo><msup><mi>u</mi><mo>&prime;</mo></msup><mo>,</mo><mover><mi>U</mi><mo>^</mo></mover><mo>,</mo><msup><mi>m</mi><mo>&prime;</mo></msup><mo>,</mo><mover><mi>M</mi><mo>^</mo></mover><mo>,</mo><msub><mi>H</mi><mi>u</mi></msub><mo>,</mo><msub><mi>H</mi><mi>m</mi></msub><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0000541406000000015.GIF" wi="880" he="76" /></maths>主密钥为<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>msk</mi><mo>=</mo><msubsup><mi>g</mi><mn>2</mn><mi>a</mi></msubsup><mo>;</mo></mrow>]]></math><img file="FDA0000541406000000016.GIF" wi="222" he="71" /></maths>(2)私钥提取:输入系统参数、主密钥和用户的身份,获得该用户身份的私钥,具体步骤为:给定用户身份ID,通过哈希函数u=H<sub>u</sub>(ID)计算得到代表用户身份的长度为n<sub>u</sub>的位串,令u[i]表示该位串中的第i位,定义位串中数值为1的序号集合Φ<sub>ID</sub>;随机选取参数r<sub>u</sub>∈Z<sub>p</sub>,计算用户身份为ID的私钥<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>d</mi><mi>ID</mi></msub><mo>=</mo><mrow><mo>(</mo><msub><mi>d</mi><mn>1</mn></msub><mo>,</mo><msub><mi>d</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>=</mo><mrow><mo>(</mo><msubsup><mi>g</mi><mn>2</mn><mi>&alpha;</mi></msubsup><msup><mrow><mo>(</mo><msup><mi>u</mi><mo>&prime;</mo></msup><munder><mi>&Pi;</mi><mrow><mi>i</mi><mo>&Element;</mo><msub><mi>&Phi;</mi><mi>ID</mi></msub></mrow></munder><msub><mi>u</mi><mi>i</mi></msub><mo>)</mo></mrow><msub><mi>r</mi><mi>u</mi></msub></msup><mo>,</mo><msup><mi>g</mi><msub><mi>r</mi><mi>u</mi></msub></msup><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000541406000000017.GIF" wi="694" he="184" /></maths>(3)签名:给定门限环签名中n个成员的集合L={ID<sub>1</sub>,...,ID<sub>n</sub>},设实际进行签名的t个签名者的身份下标为{1,2,...,t},待签名消息为m,签名的具体步骤为:每个签名者ID<sub>i</sub>随机选取s<sub>i</sub>∈Z<sub>p</sub>为其子秘密,构造系数在Z<sub>p</sub>、次数为t‑1的多项式f<sub>i</sub>(x)=a<sub>i,0</sub>+a<sub>i,1</sub>x+...+a<sub>i,t‑1</sub>x<sup>t‑1</sup>,令s<sub>i</sub>=a<sub>i,0</sub>,ID<sub>i</sub>计算公开参数<img file="FDA0000541406000000019.GIF" wi="450" he="65" />并向其它签名者广播,然后计算秘密分享s<sub>i,j</sub>=f<sub>i</sub>(j),并将其发送给其它签名者ID<sub>j</sub>(j=1,2,..,t;j≠i),自己保留s<sub>i,i</sub>=f<sub>i</sub>(i);签名者ID<sub>j</sub>(j≠i)从ID<sub>i</sub>那里得到秘密分享s<sub>i,j</sub>后,通过等式<img file="FDA0000541406000000018.GIF" wi="332" he="143" />验证其有效性;当确认秘密分享有效后,每个签名者ID<sub>i</sub>根据秘密分享计算其私有秘密<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msub><mi>x</mi><mi>i</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>j</mi><mo>=</mo><mn>1</mn></mrow><mi>t</mi></munderover><msub><mi>s</mi><mrow><mi>j</mi><mo>,</mo><mi>i</mi></mrow></msub><mo>;</mo></mrow>]]></math><img file="FDA0000541406000000021.GIF" wi="238" he="136" /></maths>进行下列步骤获得门限环签名:对于i∈{1,2,...,t},每个签名者ID<sub>i</sub>首先通过私钥提取算法获得其私钥d<sub>ID</sub>=(d<sub>1</sub>,d<sub>2</sub>),并通过哈希函数M=H<sub>m</sub>(L,m,t)计算得到代表消息的长度为n<sub>m</sub>的位串,定义位串中数值为1的序号集合为M,然后使用其私钥计算部分门限环签名<img file="FDA0000541406000000022.GIF" wi="717" he="146" />并把部分门限环签名(σ<sub>i1</sub>,σ<sub>i2</sub>,σ<sub>i3</sub>)发送给t个签名者中任一用以产生门限环签名的签名者;门限环签名产生者随机选取参数r<sub>1</sub>,...,r<sub>n</sub>∈Z<sub>p</sub>,计算<img file="FDA0000541406000000023.GIF" wi="432" he="114" />以及门限环签名<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><mi>&sigma;</mi><mo>=</mo><mrow><mo>(</mo><munderover><mi>&Pi;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>t</mi></munderover><msub><mi>&sigma;</mi><mrow><mi>i</mi><mn>1</mn></mrow></msub><mrow><mo>(</mo><munderover><mi>&Pi;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>n</mi></munderover><msup><mrow><mo>(</mo><msub><mi>U</mi><mi>i</mi></msub><mo>)</mo></mrow><msub><mi>r</mi><mi>i</mi></msub></msup><mo>)</mo></mrow><mo>,</mo><msub><mi>&sigma;</mi><mn>12</mn></msub><msup><mi>g</mi><msub><mi>r</mi><mn>1</mn></msub></msup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msub><mi>&sigma;</mi><mrow><mi>t</mi><mn>2</mn></mrow></msub><msup><mi>g</mi><msub><mi>r</mi><mi>t</mi></msub></msup><mo>,</mo><msup><mi>g</mi><msub><mi>r</mi><mrow><mi>t</mi><mo>+</mo><mn>1</mn></mrow></msub></msup><mo>,</mo><mo>.</mo><mo>.</mo><mo>.</mo><mo>,</mo><msup><mi>g</mi><msub><mi>r</mi><mi>n</mi></msub></msup><mo>,</mo><munderover><mi>&Pi;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>t</mi></munderover><msub><mi>&sigma;</mi><mrow><mi>i</mi><mn>3</mn></mrow></msub><mo>,</mo><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>t</mi></munderover><msub><mi>f</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>)</mo></mrow><mo>)</mo></mrow><mo>,</mo></mrow>]]></math><img file="FDA0000541406000000024.GIF" wi="1349" he="161" /></maths>最后获得在消息m和成员集合L下的门限环签名σ=(V,R<sub>1</sub>,...,R<sub>n</sub>,R<sub>m</sub>,f),其中<img file="FDA0000541406000000025.GIF" wi="468" he="145" />R<sub>1</sub>,...,R<sub>n</sub>代表<img file="FDA0000541406000000026.GIF" wi="522" he="72" />R<sub>m</sub>代表<img file="FDA0000541406000000027.GIF" wi="159" he="132" />f为<img file="FDA0000541406000000028.GIF" wi="201" he="137" />(4)验证:当收到门限环签名σ=(V,R<sub>1</sub>,...,R<sub>n</sub>,R<sub>m</sub>,f)后,签名验证者首先检验多项式f的次数是否为t‑1,并计算等式R<sub>m</sub>=g<sup>f(0)</sup>是否成立;验证上述等式成立后,签名验证者对等式<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>e</mi><mrow><mo>(</mo><mi>V</mi><mo>,</mo><mi>g</mi><mo>)</mo></mrow><mo>=</mo><mi>e</mi><msup><mrow><mrow><mo>(</mo><msub><mi>g</mi><mn>1</mn></msub><mo>,</mo><msub><mi>g</mi><mn>2</mn></msub><mo>)</mo></mrow></mrow><mi>t</mi></msup><mi>e</mi><mrow><mo>(</mo><msub><mi>U</mi><mn>1</mn></msub><mo>,</mo><msub><mi>R</mi><mn>1</mn></msub><mo>)</mo></mrow><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mo>&CenterDot;</mo><mi>e</mi><mrow><mo>(</mo><msub><mi>U</mi><mi>n</mi></msub><mo>,</mo><msub><mi>R</mi><mi>n</mi></msub><mo>)</mo></mrow><mi>e</mi><mrow><mo>(</mo><msup><mi>m</mi><mo>&prime;</mo></msup><munder><mi>&Pi;</mi><mrow><mi>l</mi><mo>&Element;</mo><mi>M</mi></mrow></munder><msub><mi>m</mi><mi>l</mi></msub><mo>,</mo><msub><mi>R</mi><mi>m</mi></msub><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000541406000000029.GIF" wi="993" he="132" /></maths>进行验证,若等式成立,则σ是一个有效的门限环签名,否则为无效的门限环签名。
地址 455000 河南省安阳市弦歌大道436号安阳师范学院(计算机与信息工程学院)