[发明专利]基于椭圆曲线高效匿名的无证书多接收者签密方法有效
申请号: | 201710332215.7 | 申请日: | 2017-05-12 |
公开(公告)号: | CN106936593B | 公开(公告)日: | 2019-12-17 |
发明(设计)人: | 庞辽军;贾生盼;赵慧洋;李慧贤 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32;H04L9/30 |
代理公司: | 61204 西北工业大学专利中心 | 代理人: | 王鲜凯 |
地址: | 710071*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 椭圆 曲线 高效 匿名 证书 接收者 方法 | ||
1.一种基于椭圆曲线高效匿名的无证书多接收者签密方法,其特征在于包括以下步骤:
步骤一、私钥生成中心PKG选取大素数p,选择阶为大素数p的有限域Fp和安全的椭圆曲线E(Fp)以及加法循环群Gp,选取加法循环群Gp上的生成元P;
其中,Fp表示阶为大素数p的有限域,P表示加法循环群Gp上的生成元;
步骤二、私钥生成中心PKG选取系统主密钥s∈Zp*,计算Ppub=sP作为系统公钥,并将系统主密钥s安全保存;
其中,∈表示限定域符号,Zp*表示基于大素数p构成的非零乘法群,Ppub表示系统公钥;
步骤三、私钥生成中心PKG构造5个抗碰撞的哈希函数,分别记为:H0:H1:其中λ1=|ID|;H2:H3:H4:其中λ2=|m|;
其中,H0,H1,H2,H3,H4表示抗碰撞的哈希函数,A→B表示定义域A到值域B的映射,表示长为λ1的0或1构成的串,λ1=|ID|表示用户的身份信息的长度,表示长为λ2的0或1构成的串,λ2=|m|表示明文消息的长度,×表示笛卡尔乘积;
步骤四、私钥生成中心PKG选取安全的对称加密函数Ek(.)和对称解密函数Dk(.);
其中,k表示对称密钥;
步骤五、私钥生成中心PKG公布阶为大素数p的有限域Fp,加法循环群Gp,加法循环群Gp上的生成元P,安全的椭圆曲线E(Fp),5个抗碰撞的哈希函数H0,H1,H2,H3,H4,对称加密函数Ek(.),对称解密函数Dk(.),系统公钥Ppub,安全保存系统主密钥s;
步骤六、用户注册步骤中的用户包括接收者和发送者,均需通过执行下列步骤获取自己的公钥和私钥;
步骤七、用户随机的选取一个整数v∈Zp*作为秘密值;
其中,v表示用户随机选择的秘密值;
步骤八、按照下式,计算用户的验证份额V:
V=vP
步骤九、用户将自己的验证份额V和自己的身份信息ID发送给私钥生成中心PKG;
步骤十、私钥生成中心PKG收到用户的验证份额V和用户的身份信息ID后,随机选取整数d∈Zp*,按照下式计算用户的公钥PK:
PK=H0(ID,d)P+H1(ID,V)V
其中,d表示私钥生成中心PKG随机选取的整数,H0,H1表示抗碰撞的哈希函数;
步骤十一、按照下式,私钥生成中心PKG计算用户的部分私钥T:
T=H0(ID,d)+s(mod p)
其中,H0表示抗碰撞的哈希函数,mod表示求模操作;
步骤十二、私钥生成中心PKG将用户的部分私钥T和用户的公钥PK发送给用户,其中用户的部分私钥T通过安全信道发送给用户;
步骤十三、用户收到私钥生成中心PKG发送的用户的部分私钥T和用户的公钥PK,按照下式计算用户的私钥SK:
SK=T+H1(ID,V)v(mod p)
步骤十四、用户判断收到的公钥PK和部分私钥T是否满足如下等式,若是,则执行步骤十五,否则,则执行步骤十六:
v(PK+Ppub)=V(T+H1(ID,V)v)
其中,Ppub表示系统公钥,V表示用户的验证份额,T表示用户的部分私钥,H1表示抗碰撞的哈希函数,ID表示用户的身份信息;
步骤十五、用户将公钥PK发送给私钥生成中心PKG,并由私钥生成中心PKG对外公布用户的公钥PK,用户安全保存自己的私钥SK,之后退出用户注册过程;
步骤十六、用户向私钥生成中心PKG报错,并退出用户注册过程;
步骤十七、发送者S判断自己是否已经执行用户注册过程,若是,利用自己的公钥PKS和私钥SKS,执行步骤十八,否则,发送者S执行用户注册过程获取自己的公钥PKS和私钥SKS后,再执行步骤十八;
步骤十八、发送者S随机选取n个接收者L1,L2,...,Ln,其中,n表示大于0的整数;
步骤十九、按照下式,对每一个i=1,2,…,n,发送者S计算第i个接收者Li的伪公钥Qi:
Qi=PKi+Ppub
其中,Qi表示第i个接收者Li的伪公钥,n表示发送者S随机选取的接收者的数目,PKi表示第i个接收者Li的公钥,Ppub表示系统公钥;
步骤二十、发送者S随机选择整数r∈Zp*,按照下式计算发送者S的签密验证份额R:
R=rP
其中,r表示发送者S随机选择的整数,R表示发送者S的签密验证份额;
步骤二十一、按照下式,对每一个i=1,2,…,n,计算第i个接收者Li的签密验证份额Fi:
Fi=rQi
其中,Fi表示第i个接收者Li的签密验证份额,n表示发送者S随机选取的接收者的数目,Qi表示第i个接收者Li的伪公钥;
步骤二十二、按照下式,对每一个i=1,2,…,n,发送者S计算第i个接收者Li的伪身份值αi:
αi=H2(Fi,R)
其中,αi表示第i个接收者Li的伪身份值,H2表示抗碰撞的哈希函数,Fi表示第i个接收者Li的签密验证份额,n表示发送者S随机选取的接收者的数目;
步骤二十三、发送者S随机选择整数δ∈Zp*作为伪密钥后,按照下式,发送者S构造接收者身份信息混合值f(x):
其中,δ表示发送者S随机选取的伪密钥,f(x)表示接收者身份信息混合值,x表示自变量,Π表示连乘操作,n表示发送者S随机选取的接收者的数目,αi表示第i个接收者Li的伪身份值,mod表示求模操作,c0,c1,...,cn-1表示接收者身份信息混合值f(x)各项的系数;
步骤二十四、按照下式,发送者S计算对称密钥k:
k=H3(δ)
其中,H3表示抗碰撞的哈希函数;
步骤二十五、发送者S按照下式计算密文消息J:
J=Ek(m)
其中,Ek(.)表示对称加密函数,m表示明文消息;
步骤二十六、按照下式,发送者S计算密文的有效性参数γ:
γ=H4(m,δ,c0,c1,...,cn-1,J,R)
其中,γ表示密文的有效性参数,H4表示抗碰撞的哈希函数;
步骤二十七、按照下式,发送者S计算验证发送者S身份的有效性参数τ:
τ=H4(J,σ,γ,R)
其中,H4表示抗碰撞的哈希函数,J表示密文消息,σ=(c0,c1,...,cn-1)表示接收者身份信息混合值f(x)各项的系数的集合;
步骤二十八、按照下式,发送者S计算发送者S的伪私钥w:
w=SKS+τr(modp)
其中,SKS表示发送者S的私钥;
步骤二十九、按照下式,发送者S计算发送者S身份的验证份额W:
W=wP-Ppub
其中,w表示发送者S的伪私钥,Ppub表示系统公钥;
步骤三十、发送者S将密文消息J、发送者S的签密验证份额R、接收者身份信息混合值f(x)的系数c0,c1,…,cn-1、密文的有效性参数γ、发送者S身份的验证份额W作为签密密文C,并将签密密文C进行广播给接收者;
步骤三十一、接收者Li判断自己是否已经执行用户注册过程,若是,利用自己的公钥PKi和私钥SKi,执行步骤三十二,否则,接收者Li执行用户注册过程获取自己的公钥PKi和私钥SKi后,再执行步骤三十二;
步骤三十二、按照下式,接收者Li计算自己的签密验证份额Fi:
Fi=SKiR
其中,Fi表示接收者Li的签密验证份额,SKi表示接收者Li的私钥,R表示发送者S的签密验证份额;
步骤三十三、按照下式,接收者Li计算自己的伪身份值αi:
αi=H2(Fi,R)
其中,αi表示接收者Li的伪身份值,H2表示抗碰撞的哈希函数,Fi表示接收者Li的签密验证份额,i=1,2,…,n,n表示发送者S随机选取的接收者的数目,R表示发送者S的签密验证份额;
步骤三十四、按照下式,接收者Li计算接收者身份信息混合值f(x):
f(x)=xn+cn-1xn-1+...+c1x+c0
其中,f(x)表示接收者身份信息混合值,x表示自变量,n表示发送者S随机选取的接收者的数目,c0,c1,...,cn-1表示接收者身份信息混合值f(x)各项的系数;
步骤三十五、按照下式,接收者Li计算发送者S随机选取的伪密钥δ:
δ=f(αi)
其中,δ表示发送者S随机选取的伪密钥,f(x)表示接收者身份信息混合值,x表示自变量,αi表示接收者Li的伪身份值;
步骤三十六、按照下式,接收者Li计算对称密钥k:
k=H3(δ)
其中,k表示对称密钥,H3表示抗碰撞的哈希函数;
步骤三十七、按照下式,接收者Li计算明文消息m:
m=Dk(J)
其中,m表示明文消息,Dk(.)表示对称解密函数,J表示密文消息;
步骤三十八、按照下式,接收者Li计算密文的权限参数γ′:
γ′=H4(m,δ,c0,c1,...,cn-1,J,R)
其中,γ′表示密文的权限参数,H4表示抗碰撞的哈希函数;
步骤三十九、接收者判断密文的权限参数γ′与密文的有效性参数γ是否相等;若是,则执行步骤四十,否则,接收者Li拒绝明文消息m,并退出接收者解密过程;
步骤四十、按照下式,接收者Li计算验证发送者S身份的权限参数τ′:
τ′=H4(J,σ,γ′,R)
其中,τ′表示验证发送者S身份的权限参数,H4表示抗碰撞的哈希函数,J表示密文消息,σ=(c0,c1,...,cn-1)表示接收者身份信息混合值f(x)各项的系数的集合,c0,c1,…,cn-1表示接收者身份信息混合值f(x)各项的系数,γ′表示密文的权限参数,R表示发送者S的签密验证份额;
步骤四十一、按照下式,接收者Li计算发送者S身份的有效性验证份额W':
W′=τ′R+PKS
其中,W'表示发送者S身份的有效性验证份额,τ′表示验证发送者S身份的权限参数,R表示发送者S的签密验证份额,PKs表示发送者S的公钥;
步骤四十二、接收者Li判断发送者S身份的验证份额W与发送者S身份的有效性验证份额W'是否相等,若是,说明发送者S的身份通过验证,接收者Li确定接受发送者S发送的明文消息m,并退出接收者的解密过程,否则,说明发送者S的身份验证不通过,接收者Li拒绝发送者S发送的明文消息m,并退出接收者的解密过程。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710332215.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种变压器引线出线结构
- 下一篇:高频变压器