一种无证书数字签名方法技术

技术编号:19751057 阅读:35 留言:0更新日期:2018-12-12 05:43
本发明专利技术公开了一种无证书数字签名方法,属于信息安全技术领域。为了使无证书环境的签名者能够对一个消息进行签名,本发明专利技术的方法包括初始化系统参数后,密钥生成中心生成部分私钥DID并发送给签名端;签名端基于系统参数随机生成一个秘密值xID、联合部分私钥DID设置完全私钥SID和公钥PKID;签名端根据系统参数、身份、完全私钥SID和消息m,生成签名结果σ,并将该签名结果σ、消息m和签名端的身份和公钥发送给验证端进行合法性检查。如果σ是签名端关于m的合法签名,验证端输出“接受”,否则输出“拒绝”。本发明专利技术用于通信网络中的实体认证和消息认证,提供认证性、完整性和不可否认性服务。

【技术实现步骤摘要】
一种无证书数字签名方法
本专利技术属于信息安全
,特别是涉及一种无证书数字签名方法。
技术介绍
数字签名是密码学中的一个基本原语,可以使验证端确认签名端的身份和消息的完整性,是实现完整性(integrity)、认证(authentication)和不可否认性(non-repudiation)的重要方法。这里的完整性是指信息在传输或存储过程中,不能被偶然或蓄意地删除、修改、伪造、重放、插入等破坏和丢失的特性。认证是确保通信方的确是它所声称的那位。确认一个实体的身份称为实体认证,确认一个信息的来源称为消息认证。不可否认性是防止通信方对以前的许诺或者行为的否认。数字签名属于公钥密码技术,每个签名端拥有两个密钥:私钥(secretkey)和公钥(publickey),其中私钥由签名端秘密保存,公钥可以发给验证端用于签名的验证。一种数字签名方法一般包含两个重要阶段,即签名(signature)阶段和验证(verification)阶段。签名阶段的输入是签名端的私钥sk和消息m,输出是对m的签名结果σ。验证阶段输入的是签名者的公钥pk,消息m和签名结果σ,输出“接受”(签名合法)或“拒绝”(签名不合法)。公钥密码技术易受到“公钥替换”攻击,即攻击者用自己选定的假公钥替换一个公钥目录中真实的公钥。当验证端用这个假公钥验证一个签名时,攻击者就可以输出“合法”签名。为了抵抗公钥替换攻击,需要让用户的公钥以一种可验证和可信的方式与用户的身份信息关联起来。目前,认证用户的公钥有三种方法:基于公钥基础设施(publickeyinfrastructure,PKI)的方法、基于身份(identity-based)的方法和无证书(certificateless)方法。(1)基于公钥基础设施的方法:每个签名端的公钥都伴随一个公钥证书,这个公钥证书由证书权威(certificateauthority,CA)签发。公钥证书是一个结构化的数据记录,它包括了用户的身份信息、公钥参数和CA的签名等。验证端可以通过验证证书的合法性(CA的签名)来认证公钥。这种方法有如下两个缺点:①使用任何公钥前都需要先验证公钥证书的合法性,增加了验证端的计算量;②CA需要管理大量的证书,包括证书的颁发、存储、撤销等。(2)基于身份的方法:为了简化密钥管理,Shamir于1984年首次提出了基于身份的密码体制的概念。在基于身份的方法中,签名端的公钥可以根据其身份信息(如姓名、身份证号码、电话号码、E-mail地址等)直接计算出来,签名端的私钥则是由一个称为私钥生成中心(privatekeygenerator,PKG)的可信方生成。基于身份的方法取消了公钥证书,减少了公钥证书的存储和合法性验证。但是,基于身份的方法有一个致命的缺点:所有签名端的私钥都由PKG生成。PKG知道所有签名端的私钥不可避免的引起密钥托管问题。(3)无证书方法:为了克服基于身份的方法中的密钥托管问题,Al-Riyami和Paterson于2003年提出了无证书密码体制(certificatelesscryptography)的概念。在这种方法中,签名端的私钥来自于两部分,一部分是签名端自己选择的秘密值,一部分是由密钥生成中心(keygeneratingcentre,KGC)根据签名端的身份信息计算的部分私钥。公钥通常利用秘密值来生成,但这里的公钥不必有单独认证的公钥证书。也就是说,签名端需要联合KGC生成的部分私钥和自己的秘密值来生成完全私钥。KGC并不知道签名端的完全私钥,从而消除了密钥托管问题。当前,无证书签名方法主要有以下几种:2003年,Al-Riyami和Paterson[S.S.Al-Riyami,K.G.Paterson,Certificatelesspublickeycryptography,AdvancesinCryptology-ASIACRYPT2003,LNCS2894,pp.452-473,2003.]利用双线性对,提出了一种无证书签名方法。该方法在签名阶段不需要双线性对运算,在验证阶段需要4次双线性对运算。他们将敌手分为两种:类型I敌手和类型II敌手。类型I敌手不知道主密钥,但是可以任意替换签名端的公钥。类型II敌手知道主密钥,但是不能替换签名端的公钥。遗憾的是,Huang等[X.Huang,W.Susilo,Y.Mu,etal.OnthesecurityofcertificatelesssignatureschemesfromAsiacrypt2003.CryptologyandNetworkSecurity-CANS2005,LNCS3810,pp.13-25,2005.]显示了该签名方法对于类型I敌手是不安全的,类型I敌手可以伪造一个消息m的签名。主要原因在于不能保证公钥中使用的秘密值与完全私钥中使用的秘密值是同一个值。Huang等也给出了一个改进的签名方法。该方法在签名阶段需要1次双线性对运算,在验证阶段需要5次双线性对运算。2006年,Zhang等[Z.Zhang,D.S.Wong,J.Xu,etal.Certificatelesspublic-keysignature:securitymodelandefficientconstruction.AppliedCryptographyandNetworkSecurity-ACNS2006,LNCS3989,pp.293-308,2006.]提出了一种高效的无证书签名方法,他们将使用了主密钥、随机数和秘密值的三种短签名进行了聚合,获得了无证书签名方法。该方法在签名阶段不需要双线性对运算,在验证阶段需要4次双线性对运算。2007年,Liu等[J.K.Liu,M.H.Au,W.Susilo.Self-generated-certificatepublickeycryptographyandcertificatelesssignature/encryptionschemeinthestandardmodel.ACMSymposiumonInformation,ComputerandCommunicationsSecurity-ASIACCS2007,pp.273-283,2007.]给出了一种标准模型下安全的无证书签名方法。标准模型不依赖随机预言模型,能够取得更强的安全性质,但效率较低。2012年,He等[D.He,J.Chen,R.Zhang.Anefficientandprovably-securecertificatelesssignatureschemewithoutbilinearpairings.InternationalJournalofCommunicationSystems,2012,25(11):1432-1442.]设计了一种基于椭圆曲线离散对数问题的无证书签名方法,该方法没有使用双线性对,在效率方面比使用了双线性对的方法更有优势。2014年,Liu等[J.Liu,Z.Zhang,X.Chen,andK.S.Kwak.Certificatelessremoteanonymousauthenticationschemesforwirelessbodyareanetworks本文档来自技高网...

【技术保护点】
1.一种无证书数字签名方法,其特征在于,包括下列步骤:步骤S1:设定系统参数,包括:选择素数p,设置p阶的循环加法群G1,并选择群G1的一个生成元,记为参数P,以及设置p阶的循环乘法群G2,并基于G1、G2,设置双线性映射

【技术特征摘要】
1.一种无证书数字签名方法,其特征在于,包括下列步骤:步骤S1:设定系统参数,包括:选择素数p,设置p阶的循环加法群G1,并选择群G1的一个生成元,记为参数P,以及设置p阶的循环乘法群G2,并基于G1、G2,设置双线性映射定义三个安全哈希函数H1,H2和H3,其中H1为从{0,1}*映射到H2从G1映射到H3是从{0,1}*×{0,1}*×G1×G2映射到其中{0,1}*表示任意比特长的二进制序列组成的集合,表示有限域去掉元素零所得到的有限域;以及计算系统参数公开系统参数步骤S2:生成密钥:签名端提交身份信息ID给密钥生成中心;密钥生成中心从有限域中随机选择主密钥s,计算公钥Ppub=sP,部分私钥并将公钥Ppub、部分私钥DID发送给签名端;签名端从有限...

【专利技术属性】
技术研发人员:李发根周雨阳李朝琦范泽宇
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1