首页> 中国专利> 网络环境中进行用户身份认证的无证书签名方法

网络环境中进行用户身份认证的无证书签名方法

摘要

本发明公开了一种高效的无证书签名算法,该算法消除了传统公钥密码体制的证书管理问题以及基于身份密码体制中的密钥托管问题,在无证书环境下是安全的;该算法计算过程简单、高效,不需要使用特殊的哈希函数,并且输出的签名长度也很短。该算法具有很高的安全性和执行效率,可有效应用于对安全性要求较高的签名环境中。

著录项

  • 公开/公告号CN102983971A

    专利类型发明专利

  • 公开/公告日2013-03-20

    原文格式PDF

  • 申请/专利权人 中国科学技术大学苏州研究院;

    申请/专利号CN201210381880.2

  • 发明设计人 黄刘生;田苗苗;杨威;张琛;

    申请日2012-10-10

  • 分类号H04L9/32(20060101);H04L9/08(20060101);

  • 代理机构32103 苏州创元专利商标事务所有限公司;

  • 代理人范晴

  • 地址 215123 江苏省苏州市工业园区独墅湖高教区仁爱路166号

  • 入库时间 2024-02-19 18:03:05

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-24

    未缴年费专利权终止 IPC(主分类):H04L9/32 授权公告日:20150715 终止日期:20161010 申请日:20121010

    专利权的终止

  • 2015-07-15

    授权

    授权

  • 2013-04-17

    实质审查的生效 IPC(主分类):H04L9/32 申请日:20121010

    实质审查的生效

  • 2013-03-20

    公开

    公开

说明书

技术领域

本发明属于信息安全技术领域,具体涉及一种网络环境中进行用户身份 认证的无证书签名方法。

背景技术

在网络环境下,我们需要对用户发送数据的完整性以及用户的身份进行 确认,这就需要安全的数字签名算法。数字签名算法是利用公钥密码体制来 实现的。由于传统的公钥密码体制存在证书的管理和验证等问题,基于身份 的公钥密码体制存在密钥托管问题,所以目前很多数字签名方案都是基于无 证书公钥密码体制的。在无证书公钥密码体制中,用户的公钥不需要认证, 其私钥是由密钥生成中心(Key Generation Center,简称KGC)和用户共同决 定的,这样就同时避免了证书管理和密钥托管问题。

一种可以被广泛使用的数字签名算法首先必须是安全的,其次要尽可能 的高效。尽管无证书签名算法比传统的和基于身份的数字签名算法具有更好 的执行效率,然而其面临的安全威胁更多。一般来说,无证书环境下有两类 敌手:一种是恶意的用户,他可以替换用户的公钥;另一种是恶意的KGC, 他知道系统主密钥。目前,大多数无证书签名算法都不能同时抵抗这两类敌 手的攻击。

文献[R.Tso,X.Huang,W.Susilo,“Strongly secure certificateless short  signatures”,2012]提出了一种安全性非常高的无证书签名算法。该算法可以同 时抵抗上述两类敌手的攻击,且其签名长度很短,仅为|G1|(|G1|代表群G1的元 素大小)。然而,该算法的执行效率较低。该算法生成一个签名需要用到非 常复杂的特殊哈希函数,验证一个签名也需要4次复杂的双线性对运算。因 此,该算法并不适合在一些对计算效率有较高要求的环境中使用,例如,该 算法不适合在手持终端设备中使用。本发明因此而来。

发明内容

本发明目的在于提供一种网络环境中进行用户身份认证的无证书签名 方法,该方法解决了现有安全无证书签名算法执行效率低下的问题。

为了解决现有技术中的这些问题,本发明提供的技术方案是:

一种网络环境中进行用户身份认证的无证书签名方法,其特征在于所述 方法包括以下步骤:

(1)密钥生成中心(KGC)生成用户部分私钥D,并将用户部分私钥D 发送给用户;

(2)用户对部分私钥D进行验证;当部分私钥D无效时继续步骤(1), 否则进行步骤(3);

(3)用户设置秘密值X,根据D和X,生成用户的公钥和私钥S;

(4)用户利用私钥S,生成用户对消息的签名,然后输出该无证书签 名。

优选的,所述方法中假设循环群G1和G2的阶均为q,双线性对为 e:G1×G1 →G2,密钥生成中心(KGC)的主密钥为两个安全哈希函数分 别为P为G1的生成元,Q=sP是密钥生成中心(KGC)的公 钥,其中密钥生成中心(KGC)仅公开参数PP=(e,H1,H2,Q,g),g=e(P,P),具 体按照如下步骤进行:

(1)用户输入主密钥以及用户的身份ID∈{0,1}*向密钥生成中心发 送请求;密钥生成中心随机选择计算部分私钥(RID,zID),其中 RID=rIDP,zID=rID+H1(ID,RID)s modq;然后密钥生成中心将部分私钥(RID,zID) 发送给身份为ID的用户;

(2)身份为ID的用户收到部分私钥(RID,zID)后,验证 zIDP=RID+H1(ID,RID)Q是否成立;如果等式成立,则用户接受部分私钥 (RID,zID)并进入步骤(3),否则用户继续请求密钥生成中心发送一个新的部 分私钥;

(3)身份为ID的用户随机选择一个秘密值根据其秘密值 和部分私钥(RID,zID)设置其完全私钥SID=(xID,zID,RID)和公钥pkID=(UID,RID), 其中UID=xIDP;

(4)身份为ID的用户输入参数PP和待签名消息m∈{0,1}*,然后利用其 公钥pkID和私钥SID计算h=H2(PP,m,ID,pkID),并输出签名σ=(hzID+xID)-1P;

(5)密钥生成中心通过参数PP,消息m∈{0,1}*,签名σ,用户身份ID以 及相应的公钥pkID,通过验证e(σ,h(RID+H1(ID,RID)Q)+UID)=g是否成立;如 果成立,则签名有效,否则签名无效。

本发明无证书签名方法安全、高效,可以用于对安全性和效率要求都比 较高的签名环境下。本发明可为网络环境下用户身份和发送数据完整性的验 证提供了一种安全、高效的签名算法。该算法可以同时抵抗无证书环境下两 类敌手的攻击,且易于实现,执行效率高,尤其适合计算能力弱、能量受限 的移动终端设备使用。

相对于现有技术中的方案,本发明的优点是:

本发明的方法不仅具有较高的安全性,而且其计算效率也很高。通过理 论分析和实验验证可知,本算法不需要特殊的哈希函数,计算效率高,签名 长度短。本发明可有效应用于计算能力和能量均受限的移动终端设备中。

附图说明

下面结合附图及实施例对本发明作进一步描述:

图1为本发明高效的无证书签名算法的流程图。

具体实施方式

以下结合具体实施例对上述方案做进一步说明。应理解,这些实施例是 用于说明本发明而不限于限制本发明的范围。实施例中采用的实施条件可以 根据具体厂家的条件做进一步调整,未注明的实施条件通常为常规实验中的 条件。

实施例

本实施例中进行无证书签名方法按照以下步骤进行:

(1)假设两个阶为q的循环群G1和G2,一个双线性对e:G1×G1→G2和密钥 生成中心(KGC)的主密钥以及两个安全哈希函数令 P为G1的生成元,Q=sP是KGC的公钥,g=e(P,p),则密钥生成中心(KGC) 公开参数PP=(e,H1,H2,Q,g);本实施例选择美国国家标准技术局推荐的P-192 椭圆曲线,相应的双线性对e和生成元P都由其确定。哈希函数H1,H2选择 SHA-2,主密钥s选择中一个的随机数。

(2)用户输入主密钥以及用户的身份ID∈{0,1}*,KGC随机选择 并计算RID=rIDP和zID=rID+H1(ID,RID)smod;最后,KGC将(RID,zID) 发送给身份为ID的用户;ID∈{0,1}*表示用户的身份ID是任意长度0,1比特字 符串.RID=rIDP是G1的一个元素,zID=rID+H1(ID,RID)smodq是模q的一个数。 (下同)

(3)身份为ID的用户收到(RID,zID)后,验证zIDP=RID+H1(ID,RID)Q是否成 立;如果等式成立,则用户接受(RID,zID)并进入下一步,否则用户要求KGC 发送一个新的部分私钥。

(4)身份为ID的用户随机选择一个秘密值

(5)身份为ID的用户根据其秘密值和部分私钥(RID,zID)设置其完 全私钥SID=(xID,zID,RID);

(6)身份为ID的用户根据其秘密值和部分私钥(RID,zID),设置其公 钥为pkID=(UID,RID),其中UID=xIDP;

(7)根据公开的参数PP和待签名消息m∈{0,1}*,身份为ID的用户利用其 公钥pkID和私钥SID,首先计算h=H2(PP,m,ID,pkID),然后计算并输出签名 σ=(hzID+xID)-1P;m∈{0,1}*含义与ID∈{0,1}*相同。

(8)根据公开的参数PP,消息m∈{0,1}*,签名σ,身份ID以及相应的公 钥pkID,验证者首先计算双线性对e(σ,h(RID+H1(ID,RID)Q)+UID),然后判断 e(σ,h(RID+H1(ID,RID)Q)+UID)=g是否成立;如果成立,则签名有效,否则签 名无效。

本实施例的方法具体以下特点:

1.无证书环境下签名的不可伪造性:每个用户对消息的签名都是唯一 的,没有相应完全私钥的任何其他人即使有部分私钥也不能伪造一个合法的 签名。

2.高效性:为了实现无证书环境下签名的安全性,本发明方法可能会损 失签名算法的部分效率,但是这个损失要尽量小。

在无证书环境下,用户不再需要配置繁复的基础协议,但是这导致网络 中的攻击者能力大大增强。无证书环境下的攻击者分为两大类,第一类攻击 者代表恶意的用户,他可以自由替换其公钥,但是不能得到用户的部分私钥; 第二类攻击者代表恶意的KGC,他可以得到KGC的所有信息,但是不能替 换任何用户的公钥。该算法考虑了在不安全的无证书网络环境下算法安全运 行的方法,使得任何一类攻击者都无法伪造合法签名。

同时,本发明方法也考虑了算法的效率问题,尽量提高其效率。本发明 方法主要从以下几个方面来提高算法效率。首先,使用了普通的哈希函数来 替代特殊的哈希函数。特殊哈希函数需要更多的计算时间,且输出不是确定 性的。其次,在签名的生成过程中一直没有使用双线性配对运算,仅在验证 签名时需要使用一次配对运算。双线性配对运算所消耗的时间远远大于其他 运算所消耗的时间。最后,本发明方法签名是短的,这可以有效降低签名的 存储和传输开销。

具体来说,签名算法主要分为两个阶段。第一个阶段(包括步骤1到步 骤6)是用户的完全私钥和公钥生成阶段。在这一阶段,用户和KGC合作生 成用户的完全私钥和公钥,用来对消息进行签名和验证。首先,KGC选择 两个阶为q的循环群G1和G2,一个双线性对e:G1×G1 →G2和主密钥以 及两个安全的普通哈希函数令P为G1的生成元,计算其公 钥Q=sP,g=e(P,P),则KGC公开系统参数PP=(e,H1,H2,Q,g);接着,输入 系统主密钥以及用户的身份ID∈{0,1}*,KGC随机选择计算 RID=rIDP和zID=rID+H1(ID,RID)s modq,并将(RID,zID)发送给身份该用户;用户 收到(RID,zID)后,验证zIDP=RID+H1(ID,RID)Q是否成立,当且仅当等式成立时, 用户才接受(RID,zID);然后,身份为ID的用户随机选择一个秘密值并根据其秘密值和部分私钥(RID,zID)设置其完全私钥SID=(xID,zID,RID); 最后,身份为ID的用户根据其秘密值和部分私钥(RID,zID),设置其公 钥为pkID=(UID,RID),其中UID=xIDP。

第二个阶段(包括步骤7到步骤8)是签名的生成和验证阶段。在这一阶 段,输入系统公开参数PP和消息m∈{0,1}*,身份为ID的用户利用其公钥pkID和私钥SID,计算h=H2(PP,m,ID,pkID)和签名σ=(hzID+xID)-1P;给定系统公开 参数PP,消息m∈{0,1}*,签名σ,身份ID以及相应的公钥pkID,验证者验证 e(σ,h(RID+H1(ID,RID)Q)+UID)=g是否成立;如果成立,则签名有效,否则签 名无效。

下面是算法的具体执行结果。

设Te表示一次双线性配对运算所花费的时间,Tmul和Tadd分别表示一次点 乘运算和点加运算所花费的时间。由于一次哈希运算以及数的加法和乘法运 算花费时间很少,因此我们将其忽略。通过理论分析可知,算法总的花费时 间是Te+6Tmul+2Tadd,其中在第一阶段花费的时间是4Tmul+Tadd,在第二阶段花 费的时间是Te+2Tmul+Tadd,因此算法是高效的。下面通过具体实例来说明。 实验平台配置为:Intel Pentium IV 3.00GHz CPU和512MB内存。测试的 运行时间(单位毫秒),如下表:

表1

从该表中可以看出,该签名算法运行效率很高。在实际应用中,我们大 多情况下只需要运行算法的第二阶段,因此其计算效率还可以进一步提高。

下面对算法的安全性进行分析。

在第一类和第二类攻击者存在的情况下,该算法都是不可伪造的。首先 我们考虑第一类攻击者存在时的情况。我们知道,第一类攻击者只能替换用 户的公钥却无法获得KGC发送的部分私钥,并且签名σ=(hzID+xID)-1P。如 果第一类敌手能够伪造合法签名,那么他必须通过替换用户公钥来消除 hH1(ID,RID)Q。然而,h=H2(PP,m,ID,pkID)是其公钥的函数,这导致第一类攻 击者不能消除hH1(ID,RID)Q,从而也无法伪造合法签名。下面我们考虑第二 类攻击者存在时的情况。第二类攻击者可以知道KGC拥有的所有秘密但是 不能替换用户的公钥。如果第二类攻击者希望伪造合法签名,则他必须知道 xID的值。然而,由于第二类攻击者无法替换用户的公钥,使得他无法知道xID的值。因此,该算法对第二类攻击者也是安全的。

上述实例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技 术的人是能够了解本发明的内容并据以实施,并不能以此限制本发明的保护 范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的 保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号