【技术实现步骤摘要】
一种基于证书的广义签密方法
[0001]本专利技术属于信息安全
,具体涉及一种基于证书的广义签密方法。
技术介绍
[0002]公钥密码体制的每个用户有一对密钥,而传统公钥密码体制是先确定用户的私钥再计算用户的公钥,因而公钥是一串无意义的二进制串,与用户的身份没联系,所以需要一个可信第三方
‑‑
认证中心(Certificate Authority,以下简称CA)颁发一个证书来把用户的公钥与其身份信息进行绑定。证书在从产生到销毁的整个生命周期内,其管理费用非常昂贵,这阻碍了传统公钥密码体制的广泛使用。
[0003]为了降低高昂的证书管理费用,Shamir于1984年在CRYPTO
’
84中提出基于身份的密码体制。基于身份的密码体制是先确定用户的公钥,再计算相应的私钥。因而公钥可以取为用户的身份信息,从而省去了公钥证书,降低了公钥管理的费用。但基于身份的密码体制的私钥必须由一个可信第三方—私钥生成中心(Private Key Generator,以下简称PKG)产生,不可避免地引起密钥托管问题,即PKG知道所有用户的私钥。
[0004]基于证书的的密码体制既可降低公钥的管理费用又可解决密钥托管问题,它是Gentry于2003年在EUROCRYPT
’
2003中提出的概念。在基于证书的的密码体制中,与传统公钥密码体制一样,也是先产生私钥再产生公钥,因而公钥也是一串无意义的二进制串,也需要CA发行一个证书来把公钥与用户的身份信息进行绑定。与传统公钥密码 ...
【技术保护点】
【技术特征摘要】
1.一种基于证书的广义签密方法,其特征在于,发送者只需使用一个算法和保存一对密钥就可实现加密、签名和签密三项功能,具体包括下列步骤:步骤1:系统初始化:设定系统参数,安全参数k为正整数;认证中心选择两个素数p和q满足q互质于p
‑
1,和一个安全椭圆曲线E(F
p
),其中Fp表示阶为p的有限域;设G是E(F
p
)上的一个阶为q的循环群,P是G的一个生成元;认证中心随机选择作为主私钥,计算P
pub
=sP作为主公钥;认证中心定义五个散列函数H1,H2,H3,H4:和H5:{0,1}
*
→
{0,1}
m
,其中{0,1}
*
表示任意比特长的二进制序列组成的集合,{0,1}
m
表示比特长为m的二进制序列组成的集合,m为预设参数,表示消息的比特长度,是由所有大于等于1且小于q的正整数组成的有限域;认证中心定义一个特殊函数f(ID
i
),其中ID
i
∈{0,1}
*
为用户身份;如果用户身份为空,令f(ID
i
)=0,否则令f(ID
i
)=1;公开系统参数为{p,q,E(Fp),G,P,P
pub
,m,H1,H2,H3,H4,H5,f(ID
i
)},认证中心保密主私钥s;步骤2:用户密钥生成:身份为ID
i
的用户随机选取作为他的私钥,并计算他的公钥为X
i
=x
i
P;则身份为ID
a
的发送者的私钥为x
a
,公钥为X
a
,身份为ID
b
的接收者的私钥为x
b
,公钥为X
b
;步骤3:证书产生:给定用户身份ID
i
和他的公钥X
i
,认证中心随机选取计算Y
i
=y
i
P和z
i
=y
i
+sH1(ID
i
,X
i
,Y
i
,P
pub
)mod q;认证中心把Y
i
和z
i
从公开信道传递给身份为ID
i
的用户;身份为ID
i
的用户通过验证等式z
i
P=Y
i
+H1(ID
i
,X
i
,Y
i
,P
pub
)P
pub
来验证证书z
i
的正确性;如果不正确,则要求认证中心重新生成证书;则身份为ID
a
的发送者的证书为z
a
,公开参数为Y
a
,身份为ID
b
的接收者的证书为z
b
,公开参数为Y
b
;步骤4:广义签密:设发送者身份为ID
a
,接收者身份为ID
b
,消息为m∈{0,1}
*
,标签tag∈{0,1};身份为ID
a
的发送者首先计算f(ID
a
)和f(ID
b
);然后他随机选择r1,计算Q1=r1P,Q2=r2P,h1=H1(ID
b
,X
b
,Y
b
,P
pub
),U1=r1X
b
,U2=r1(Y
b
+h1P
pub
),c=f(ID
b
)H5(Q1,Q2,U1,U2,ID
a
,X
a
,Y
a
,ID
b
,X
b
,Y
b
)
⊕
m,h2=H2(...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。