[发明专利]真实匿名的无证书多消息多接收者签密方法有效
| 申请号: | 201710815077.8 | 申请日: | 2017-09-12 |
| 公开(公告)号: | CN107682145B | 公开(公告)日: | 2019-09-03 |
| 发明(设计)人: | 庞辽军;许婷婷;贾生盼;魏萌萌;李慧贤 | 申请(专利权)人: | 西安电子科技大学 |
| 主分类号: | H04L9/08 | 分类号: | H04L9/08;H04L9/30;H04L9/32 |
| 代理公司: | 西北工业大学专利中心 61204 | 代理人: | 王鲜凯 |
| 地址: | 710071*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 公钥 私钥 密钥生成中心 身份信息 验证 公钥和私钥 安全信道 公钥验证 密文消息 停止操作 整体加密 秘密 解密 合法性 并用 发送 授权 | ||
1.一种真实匿名的无证书多消息多接收者签密方法,其特征在于包括以下步骤:
(1)用户注册:
用户包括接收者和发送者,通过执行下列步骤获取自己的公钥和私钥;
(1a)用户随机选取一个整数严格保密并作为自己的秘密值x;
(1b)按照下式,用户计算验证份额D:
D=xP
其中,D表示用户的验证份额,x表示用户的秘密值,P表示密钥生成中心KGC选取的椭圆曲线E的一个生成元;
(1c)用户将自己的验证份额D和自己的身份信息ID发送给密钥生成中心KGC;
(1d)密钥生成中心KGC收到用户的验证份额D和身份信息ID后,随机选取一个整数r,按照下式计算用户的部分私钥验证参数W:
W=rP
其中,W表示用户的部分私钥验证参数,r表示密钥生成中心KGC随机选取的整数,P表示密钥生成中心KGC选取的椭圆曲线E的一个生成元;
(1e)按照下式,密钥生成中心KGC计算用户的公钥PK:
PK=D+H0(ID,D,W)W
其中,PK表示用户的公钥,D表示用户的验证份额,H0表示密钥生成中心KGC选取的密码单向哈希函数,ID表示用户的身份信息,W表示用户的部分私钥验证参数;
(1f)按照下式,密钥生成中心KGC计算用户的部分私钥y:
y=s+rH0(ID,D,W)
其中,y表示用户的部分私钥,s表示密钥生成中心KGC选取的密码系统主密钥,r表示密钥生成中心KGC随机选取的整数,H0表示密钥生成中心KGC选取的密码单向哈希函数,ID表示用户的身份信息,D表示用户的验证份额,W表示用户的部分私钥验证参数;
(1g)密钥生成中心KGC将用户的部分私钥y和部分私钥验证参数W发送给用户;
(1h)按照下式,用户生成自己的私钥SK:
SK=(x,y)
其中,SK表示用户的私钥,x表示用户的秘密值,y表示用户的部分私钥;
(1i)用户判断收到的部分私钥y和部分私钥验证参数W是否满足如下等式,若是,则执行步骤(1j),否则,则执行步骤(1k):
yP=H0(ID,D,W)P+Ppub
其中,y表示用户的部分私钥,P表示密钥生成中心KGC选取的椭圆曲线E的一个生成元,H0表示密钥生成中心KGC选取的密码单向哈希函数,ID表示用户的身份信息,D表示用户的验证份额,W表示用户的部分私钥验证参数,Ppub表示密钥生成中心KGC生成的密码系统公钥;
(1j)密钥生成中心KGC对外公布用户的公钥PK,用户秘密保存自己的私钥SK,之后退出用户注册过程;
(1k)用户向密钥生成中心KGC报错,并退出用户注册过程;
(2)发送者签密:
(2a)发送者S判断自己是否已经执行步骤(1)的用户注册过程,并获取自己的公钥PKS和私钥SKS,若是,则执行步骤(2b),否则,发送者S执行步骤(1)获取自己的公钥PKS和私钥SKS后,执行步骤(2b);
(2b)发送者S在已注册的用户中随机选取n个作为接收者R1,R2,…,Rn,其中,n表示大于0的整数;
(2c)发送者S随机选取整数t,按照下式,发送者S计算每一个接收者Ri的公钥隐藏信息Ki:
Ki=t(PKi+Ppub)
其中,Ki表示第i个接收者Ri的公钥隐藏信息,i=1,2,…,n,n表示发送者S在已注册的用户中随机选取的接收者的数目,t表示发送者随机选取的整数,PKi表示第i个接收者Ri的公钥,Ppub表示密钥生成中心KGC生成的密码系统公钥;
(2d)按照下式,发送者S计算发送者的签密验证份额T:
T=tP
其中,T表示发送者的签密验证份额,t表示发送者随机选取的整数,P表示密钥生成中心KGC选取的椭圆曲线E的一个生成元;
(2e)按照下式,发送者S计算每一个接收者Ri的伪身份值αi:
αi=H1(IDi,Ki,T)
其中,αi表示第i个接收者Ri的伪身份值,i=1,2,…,n,n表示发送者S在已注册的用户中随机选取的接收者的数目,H1表示密钥生成中心KGC选取的密码单向哈希函数,IDi表示第i个接收者Ri的身份信息,Ki表示第i个接收者Ri的公钥隐藏信息,T表示发送者的签密验证份额;
(2f)发送者S随机选取整数θ作为伪密钥后,按照下式,发送者S构造接收者身份信息混合值f(u):
其中,f(u)表示接收者身份信息混合值,u表示自变量,Π表示连乘操作,n表示发送者S在已注册的用户中随机选取的接收者的数目,i表示计数游标,αi表示第i个接收者Ri的伪身份值,θ表示发送者S随机选取的伪密钥,mod表示求模操作,q表示密钥生成中心KGC选取的大素数,c0,c1,…,cn-1表示接收者身份信息混合值f(u)的系数;
(2g)按照下式,发送者S计算明文混合值M:
其中,M表示明文混合值,H2表示密钥生成中心KGC选取的密码单向哈希函数,αi表示第i个接收者Ri的伪身份值,i=1,2,…,n,n表示发送者S在已注册的用户中随机选取的接收者的数目,T表示发送者S的签密验证份额,||表示链接操作,H3表示密钥生成中心KGC选取的密码单向哈希函数,表示逐位异或操作,mi表示要发送给第i个接收者Ri的明文,i=1,2,…,n;
(2h)按照下式,发送者S计算加密消息密文V:
其中,V表示加密消息密文,Ek表示密钥生成中心KGC选取的对称加密算法,k表示对称密钥,k=H4(θ);H4表示密钥生成中心KGC选取的密码单向哈希函数,θ表示发送者S随机选取的伪密钥,M表示明文混合值;
(2i)按照下式,发送者S计算发送者的身份隐藏参数h:
h=H5(T,IDs,M)
其中,h表示发送者S的身份隐藏参数,H5表示密钥生成中心KGC选取的密码单向哈希函数,T表示发送者S的签密验证份额,IDs表示发送者S的身份信息,M表示明文混合值;
(2j)按照下式,发送者S计算发送者的身份验证参数k:
k=H6(c0,c1,...,cn-1,T,V)
其中,k表示发送者S的身份验证参数,H6表示密钥生成中心KGC选取的密码单向哈希函数,c0,c1,…,cn-1表示接收者身份信息混合值f(u)的系数,T表示发送者S的签密验证份额,V表示加密消息密文;
(2k)按照下式,发送者S计算发送者的伪私钥w:
其中,w表示发送者S的伪私钥,k表示发送者S的身份验证参数,t表示发送者S随机选取的整数,xS表示发送者S的秘密值,yS表示发送者的部分私钥,h表示发送者S的身份隐藏参数;
(2l)按照下式,发送者S计算发送者的公钥隐藏参数U:
U=w(PKS+Ppub+hP)+Ppub
其中,U表示发送者S的公钥隐藏参数,w表示发送者S的伪私钥,PKS表示发送者S的公钥,Ppub表示密钥生成中心KGC生成的系统公钥,h表示发送者S的身份隐藏参数,P表示密钥生成中心KGC选取的椭圆曲线E的一个生成元;
(2m)按照下式,发送者S计算密文有效性参数Λ:
Λ=H7(M,θ,c0,c1,...,cn-1,V,T,U)
其中,Λ表示密文有效性参数,H7表示密钥生成中心KGC选取的密码单向哈希函数,M表示明文混合值,θ表示发送者S随机选取的伪密钥,c0,c1,…,cn-1表示接收者的身份信息混合值f(u)的系数,V表示加密消息密文,T表示发送者S的签密验证份额,U表示发送者S的公钥隐藏参数;
(2n)发送者S将接收者的身份信息混合值f(u)的系数c0,c1,…,cn-1、发送者的签密验证份额T、加密消息密文V、发送者的公钥隐藏参数U和密文有效性参数Λ构成签密密文C,并对签密密文C进行广播;
(3)接收者解签密:
每个接收者Ri通过以下步骤进行解签密,其中i=1,2,…,n:
(3a)接收者Ri计算发送者S的身份验证参数k:
k=H6(c0,c1,...,cn-1,T,V)
其中,k表示发送者S的身份验证参数,H6表示密钥生成中心KGC选取的密码单向哈希函数,c0,c1,…,cn-1表示接收者身份信息混合值f(u)的系数,T表示发送者S的签密验证份额,V表示加密消息密文;
(3b)接收者Ri验证下式是否相等,如果相等则执行(3c),否则退出解签密过程:
U=kT+Ppub
其中,U表示发送者S的公钥隐藏参数,k表示发送者S的身份验证参数,T表示发送者S的签密验证份额,Ppub表示密钥生成中心KGC生成的密码系统公钥;
(3c)按照下式,接收者Ri计算公钥隐藏信息Ki:
Ki=(xi+yi)T
其中,Ki表示第i个接收者Ri的公钥隐藏信息,xi表示第i个接收者Ri的秘密值,yi表示第i个接收者Ri的部分私钥,T表示发送者S的签密验证份额;
(3d)按照下式,接收者Ri计算伪身份值αi:
αi=H1(IDi,Ki,T)
其中,αi表示第i个接收者Ri的伪身份值,H1表示密钥生成中心KGC选取的密码单向哈希函数,IDi表示第i个接收者Ri的身份信息,Ki表示第i个接收者Ri的公钥隐藏信息,T表示发送者S的签密验证份额;
(3e)按照下式,接收者Ri计算发送者S随机选取的伪密钥θ:
θ=f(αi)
其中,θ表示发送者S随机选取的伪密钥,f(u)表示接收者的身份信息混合值,u表示自变量,αi表示第i个接收者Ri的伪身份值;
(3f)按照下式,接收者Ri计算明文混合值M:
其中,M表示明文混合值,Dk表示密钥生成中心KGC选取的对称解密算法,k表示对称密钥,k=H4(θ);H4表示密钥生成中心KGC选取的密码单向哈希函数,θ表示发送者S随机选取的伪密钥,V表示加密消息密文;
(3g)按照下式,接收者Ri计算权限参数Λ′:
Λ′=H7(M,θ,c0,c1,...,cn-1,V,T,U)
其中,Λ′表示权限参数,H7表示密钥生成中心KGC选取的密码单向哈希函数,M表示明文混合值,θ表示发送者S随机选取的伪密钥,c0,c1,…,cn-1表示接收者身份信息混合值f(u)的系数,V表示加密消息密文,T表示发送者S的签密验证份额,U表示发送者S的公钥隐藏参数;
(3h)接收者判断权限参数Λ′与密文有效性参数Λ是否相等;若是,则执行步骤(3i),否则,解密失败,退出解签密过程;
(3i)接收者计算H2(αi,T)和H3(αi),根据H2(αi,T)找出明文混合值M中对应的计算并退出接收者解签密过程;
其中,H2表示密钥生成中心KGC选取的密码单向哈希函数,αi表示第i个接收者Ri的伪身份值,T表示发送者S的签密验证份额,H3表示密钥生成中心KGC选取的密码单向哈希函数,M表示明文混合值,||表示链接操作,表示逐位异或操作,mi表示要发送给第i个接收者的明文。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710815077.8/1.html,转载请声明来源钻瓜专利网。





