基于身份的代理密码方法中通用的代理键产生方法

文档序号:9931297阅读:545来源:国知局
基于身份的代理密码方法中通用的代理键产生方法
【技术领域】
[0001] 本发明涉及信息安全技术领域,尤其涉及一种基于身份的代理密码方法中通用的 代理键产生方法。
【背景技术】
[0002] 无论是在现实环境还是网络环境,人们经常需要将自己的某些权利委托给可靠的 代理人,让代理人代表自己去行使这些权利。比如一个公司的经理或者一个单位的领导出 差了,为了不影响公司或者单位的正常运作,他可以委托他的秘书或者助手在他出差期间 代表他在一些重要的文件上签名;又比如一个网络销售公司,由于交易的用户很多导致主 服务器服务质量下降,网络延迟加长,严重影响了用户的体验。此时公司可以委托一些二级 服务商,让他们代替主服务器行使用户验证的权利以此缓解主服务器的负担等。以上这些 在现实社会中或网络环境中很常见的委托问题,可以用代理的方法有效的解决。然而随着 信息技术的快速发展,信息安全问题频繁的发生,使得网络环境的代理远远比现实环境中 的代理要复杂的多。
[0003] 密码技术作为信息安全领域的核心技术之一,是最常用来解决网络安全问题的技 术。因此,各种各样的基于密码技术的代理方案被大量的提出,以用于解决网络环境下的安 全代理问题。其中,基于身份的代理密码方案由于不需要传统的公钥基础设施(PKI)、能节 省公钥管理和维护的成本而成为研究的热点,被广泛的应用于电子商务、移动代理、分布式 网络环境中。然而,目前提出的基于身份的代理密码方案普遍存在以下的一些缺点:
[0004] 1、代理公钥键构造复杂、计算量大。大部分基于身份的代理密码方案中,代理私钥 键由以下几个部分构成:原始操作人用自己的私钥在授权证书上的签名+代理操作人的私 钥,代理操作人再由这个代理私钥键产生代理公钥键。由此可以看到,产生的代理公钥键由 原始操作人的公钥、代理操作人的公钥、授权证书以及其它一些辅助参数组成。由于方案在 验证过程中需要使用代理公钥键,这使得最后产生的方案需要花费大量的时间来重构代理 公钥键,计算复杂且效率低下。
[0005] 2、代理键的产生方式单一,没有通用性。目前大部分的基于身份的代理键(包括代 理公钥键、代理私钥键)产生都是基于某种特殊的应用背景,比如:适合签名环境的(基于身 份的代理签名键),适合加密环境的(基于身份的代理重加密键)等等。更重要的是,这些代 理键产生方法只能用于这个作者提出的这个方案,不能用于其他作者提出的方案。由于每 次都需要重新建立代理键的产生方法,使得设计成本和时间开销大大增加。
[0006] 3、代理键的传递需要秘密信道,降低了安全性。大部分基于身份的代理密码方案 在代理键产生过程中需要秘密的信道传递产生的参数,如果不用秘密信道,这些参数就会 暴露,敌手能轻而易举的获取这些参数,一旦敌手获得了这些参数,它们就能进行攻击、搞 各种破坏,这无疑大大降低了方案的安全性。

【发明内容】

[0007] 本发明提供一种基于身份的代理密码方法中通用的代理键产生方法,直接使用授 权证书作为代理公钥键,采用哈希函数对中间参数进行加密,使用本方法建立的各种高效 的基于身份的代理密码方法,可广泛应用于电子商务、移动代理、分布式网络等,可大大提 高它们的运行效率和安全性。
[0008] 为了达到上述目的,本发明提供一种基于身份的代理密码方法中通用的代理键产 生方法,该通用的代理键产生方法可应用到任意一种已知的基于身份的密码方法中,该通 用的代理键产生方法包含以下步骤:
[0009] 步骤S101、原始操作人0建立授权证书Warrant,直接将授权证书Warrant作为代理 公钥;
[0010] 步骤S102、原始操作人0利用原始操作人的私钥d。对授权证书Warrant进行加密, 获得第一加密参数〇i,将该第一加密参数〇i通过公开信道发给代理操作人P;
[0011]步骤S103、如果代理操作人P接受原始操作人0的委托,则利用代理操作人的私钥 dp对第一加密参数〇1进行加密,获得第二加密参数〇2,将该第二加密参数〇2通过公开信道发 给 PKG;
[0012] 步骤S104、PKG对第二加密参数〇2进行验证,如果通过验证,则利用系统主密钥s产 生授权证书Warrant对应的代理私钥dw,利用代理操作人的私钥心对代理私钥dw进行加密, 产生第三加密参数〇3,并将该第三加密参数〇3通过公开信道发给代理操作人P ;
[0013] 步骤S105、代理操作人P利用代理操作人的私钥^从第三加密参数〇3中提取代理私 钥 skw〇
[0014]所述的授权证书Warrant包含原始操作人0的身份信息、代理操作人P的身份信息、 代理授权的内容、日期范围。
[0015]所述的第一加密参数~是由原始操作人的私钥d。、授权证书Warrant和当前的时间 戳Stamp经过哈希函数Hi计算产生,即〇i = Hi(d。| | Warrant | | Stamp),其中,哈希函数Hi是PKG (私钥生成器,Private Key Generator)建立的,哈希函数Hi: {0,1}*4ZP%如果原始操作人 的私钥d。包含一个以上的参数,则需要将所有的参数串联输入哈希函数出中。
[0016] 所述的第二加密参数〇2是由授权证书Warrant、当前的时间戳Stamp和秘密值R经 过哈希函数Hi计算产生,即〇2 = Hi(R| | Warrant | | Stamp),其中R=〇i XdP;如果代理操作人的 私钥dP包含一个以上的参数,则需要将所有的参数分别与第一加密参数〇i相乘,然后串联输 入哈希函数Hi中。
[0017] 所述的对第二加密参数〇2进行验证包含:验证等式ti = Hi((1。| | Warrant | | Stamp) 和t3 = Hi(t2| |Warrant| |5七311^)是否成立,其中42 = 1:1\(11),如果两个等式成立,贝1|通过验 证;如果原始操作人的私钥d。和代理操作人的私钥心由多个参数组成,那么(1。= ^ |(1。2 ......,t2 = tiXdPi | | tiXdP21 ......。
[0018] 所述的利用系统主密钥S产生授权证书Warrant对应的代理私钥dw包含:PKG运行 IDC. Extract,输入系统公共参数params、系统主密钥s和授权证书Warrant,输出代理私钥 如,即10(^11^(31^3瓜1118,8,1)4(11,其中,10(^11^(31:是任意一种已知的基于身份的密 码方法IDC中的私钥抽取阶段,系统公共参数params和系统主密钥s是PKG根据安全参数k运 行IDC. Setup得到的,IDC. Setup是任意一种已知的基于身份的密码方法IDC中的系统初始 化阶段。
[0019] 所述的第三加密参数〇3是由代理操作人的私钥^、授权证书Warrant和当前的时间 戳Stamp经过哈希函数Hi的计算后再加上代理私钥dw产生,即〇3 = dw+Hi(dP | | Warrant | Stamp) XdP;如果代理私钥dw包含一个以上的参数,则需要将所有的参数分别和出^ | Warrant | | Stamp) X cU目加,然后将这些相加结果一起作为第三加密参数〇3。
[0020] 所述的代理私钥skw是由第三加密参数〇3减去哈希函数Hi对代理操作人的私钥dP、 授权证书Warrant和当前的时间戳Stamp的哈希值产生,即skw = 〇3_Hi(dP | | Warrant | Stamp) XdP = dw;如果第三加密参数〇3包含一个以上的参数,则需要对每个参数分别减去Hi (dP | |Warrant | | Stamp) XdP,得到的所有相减结果就是提取的完整代理私钥skw。
[0021 ]本发明还提供一种基于身份的代理密码方法,包含以下步骤:
[0022]步骤S1、系统初始化:PKG建立哈希函数Hi,并根据安全参数k建立系统参数params 和系统主密钥s,PKG公布系统参数params和哈希函数Hi,秘密保存系统主密钥s;
[0023]步骤S2、抽取私钥:PKG根据原始操作人0提交的身份信息ID。,用系统主密钥s产生 原始操作人的私钥d。,公钥直接采用原始操作人0的身份信息ID。,通过秘密信道将原始操作 人的私钥d。发送给原始操作人0,PKG根据代理操作人P提交的身份信息ID P,用系统主密钥s 产生代理操作人的私钥4,公钥直接采用代理操作人的身份信息IDP,通过秘密信道将代理 操作人的私钥d P发送给代理操作人P;
[0024]步骤S3、利用所述的基于身份的代理密码方法中通用的代理键产生方法来产生代 理键;
[0025] 步骤S4、产生代理签名:代理操作人P使用系统参数params和步骤S3
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1