一种基于无证书条件代理重加密系统与方法

文档序号:9306728阅读:511来源:国知局
一种基于无证书条件代理重加密系统与方法
【技术领域】
[0001] 本发明涉及一种基于无证书条件代理重加密系统与方法。
【背景技术】
[0002] 申请号为201410614744. 2的中国发明专利公开了一种基于证书条件代理重加密 方法和系统,将基于证书密码体制和代理重加密体制相结合,提供了一种基于证书代理重 加密方法。
[0003] 但在实际应用中,由于证书环境下存在一些不足,比如证书验证成本高、证书管理 复杂、证书状态的第三方询问,故还存在无证书条件代理。
[0004] 无证书公钥密码体制是Al-Riyami和Paterson在2003年亚洲密码学会议上所提 出的一种新型公钥密码体制,该体制有机结合了基于身份密码体制和传统公钥密码体制的 优点,消除了高代价的证书验证过程,并且不存在密钥托管的隐患。无证书公钥密码体制中 不存在证书,也就消除了复杂的证书管理问题和在加密的过程中不存在对证书状态的第三 方询问;同时用户自己选择秘密值和部分公私钥对来共同产生用户的公私钥对,这样也就 不存在密钥分发的问题。因此,无证书公钥密码体制是一个性能优良,便于开放网络环境中 应用的新型公钥密钥体制。

【发明内容】

[0005] 针对上述问题,本发明提供一种基于无证书条件代理重加密系统与方法,将无证 书公钥密码体制和代理重加密体制相结合,不仅消除了证书的管理过程,而且不存在密钥 分发和密钥托管的问题。
[0006]为实现上述技术目的,达到上述技术效果,本发明通过以下技术方案实现:
[0007]-种基于无证书条件代理重加密系统,其特征在于,包括:
[0008]系统参数设置模块:用于生成系统主密钥和系统公开参数,并将系统主密钥发送 给部分密钥生成模块,并将系统公开参数发送给部分密钥生成模块、秘密值生成模块、密钥 生成模块、加密模块、代理重加密密钥生成模块、代理重加密模块和解密模块;
[0009]部分密钥生成模块:用于生成用户的部分公钥和部分私钥,并将部分公钥和部分 私钥发送给密钥生成模块;
[0010] 秘密值生成模块:用于生成用户的秘密值,并将该秘密值发送给密钥生成模块;
[0011] 密钥生成模块:用于生成各个用户的公钥和私钥对,并将用户的公钥发送给加密 模块和代理重加密密钥生成模块,将用户的私钥发送给代理重加密密钥生成模块和解密模 块;
[0012] 加密模块:通过系统参数设置模块发送的系统公开参数,用户密钥产生模块发送 的用户公钥和身份信息以及要发送的明文消息所拥有的条件,对该消息进行加密,生成该 消息的原始密文,并将原始密文发送给代理重加密模块和解密模块;
[0013] 代理重加密密钥生成模块:通过系统参数设置模块发送的系统公开参数,委托方 的身份信息和受理方的身份信息,用户密钥生成模块发送的委托方的私钥和受理方的公钥 以及消息所拥有的条件,生成代理重加密密钥,并将代理重加密密钥发送给代理重加密模 块;
[0014] 代理重加密模块:通过系统参数设置模块发送的系统公开参数,加密模块发送的 原始密文以及代理重加密密钥生成模块发送的代理重加密密钥,生成代理重加密密文,并 将该密文发送给解密模块;
[0015] 解密模块:若密文是加密模块生成的原始密文,通过系统参数设置模块发送的系 统公开参数,用户密钥生成模块生成的接收者的私钥以及加密消息所拥有的条件,恢复明 文消息;若密文是代理重加密模块生成的重加密密文,通过系统参数设置模块发送的系统 公开参数和用户密钥生成模块生成的接收者的私钥,恢复明文消息。
[0016] -种基于无证书条件代理重加密方法,其特征在于,包括以下步骤:
[0017] A.设定系统公开参数params和系统主密钥msk;
[0018] B.根据系统公开参数params和用户的身份Id1,生成用户的部分公钥?1和部分私 钥di;
[0019] C.根据系统公开参数params生成用户秘密值Xi;
[0020] D.根据系统公开参数params、用户的部分公钥Pp部分私钥(Ii和用户秘密值X;, 生成用户的公钥Pk1和用户的私钥sk1;
[0021] E.根据系统公开参数params、加密条件c、用户的身份id;和用户的公钥pk;对消 息m进行加密得到原始密文C1;
[0022] F.根据系统公开参数params、委托者的身份id;和用户公钥pk;、私钥uskp受理 者的身份idj和用户公钥pkj和限制的重加密条件c生成代理重加密密钥rk
[0023] G.根据系统公开参数params、原始密文C1和代理重加密密钥rk生成代理重加 密密文Cj;
[0024] H.判断所接收到的密文是原始密文还是代理重加密密文:
[0025] 若密文为原始密文,根据系统公开参数params、用户私钥Usk1和条件c恢复出相 应的明文消息m;
[0026] 若密文为代理重加密密文,根据系统公开参数params和受理者的私钥Uskj恢复 出相应的明文消息m。
[0027] 在保证系统安全性的前提下,代理重加密密钥生成模块中对代理重加密密钥进行 细粒度的运算,使得原始密文能够被细粒度的进行代理重加密,严格的控制了代理者的权 利。
[0028] 本发明的有益效果是:
[0029] 本发明在保证加密安全的情况下,灵活的进行在线重加密,控制了代理中心的重 加密能力,使得只有符合特定条件的密文可以有效的被重加密,同时使用无证书公钥密码 机制,拥有传统公钥加密和基于身份加密的优势,性能优良,便于开放网络环境中应用,是 一种新的安全高效的加密系统和方法。
【附图说明】
[0030] 图1是本发明一种基于无证书条件代理重加密系统的结构示意图;
[0031] 图2是本发明一种基于无证书条件代理重加密方法的流程图。
【具体实施方式】
[0032] 下面结合附图和具体的实施例对本发明技术方案作进一步的详细描述,以使本领 域的技术人员可以更好的理解本发明并能予以实施,但所举实施例不作为对本发明的限 定。
[0033] 本系统中:
[0034] (1)密钥生成中心:负责系统参数生成,即生成系统主密钥(密钥生成中心的私 钥)和系统公开参数集(包括循环群,生成元、主公钥和哈希函数等信息),以及对系统用户 进行部分公私钥对生成的可信第三方;
[0035] (2)委托方:加密消息的原始接收者,是委托受理方行使解密权的实体;
[0036] (3)受理方:接收委托方的授权,代表委托方行使解密权的实体;
[0037] (4)代理重加密中心:接收委托方的代理重加密委托,行使将委托方的原始密文 转化为重加密密文的半可信第三方;
[0038] (5)发送者:消息的原始发送实体;
[0039] (6)在线任务分配器:算法计算过程进行相关协助操作。
[0040] 一种基于无证书条件代理重加密系统,如图1所示,包括:系统参数设置模块A、部 分密钥生成模块B、秘密值生成模块C、密钥生成模块D、加密模块E、代理重加密密钥生成模 块F、代理重加密模块G和解密模块H,各个模块的具体功能如下:
[0041] 系统参数设置模块A:用于生成系统主密钥msk和系统公开参数params,并将系统 主密钥msk发送给部分密钥生成模块B,并将系统公开参数params发送给部分密钥生成模 块B、秘密值生成模块C、密钥生成模块D、加密模块E、代理重加密密钥生成模块F、代理重加 密模块G、解密模块H;
[0042] 部分密钥生成模块B:通过系统参数设置模块发送的系统公开参数params,用于 生成各个用户的部分公钥P1和部分私钥di,并将用户的部分公钥P1和部分私钥di发送给 密钥生成模块D;
[0043] 秘密值生成模块C:通过系统参数设置模块发送的系统公开参数params,产生用 户秘密值X1,并将用户秘密值X1发送给密钥生成模块D;
[0044] 密钥生成模块D:通过系统参数设置模块发送的系统公开参数params,部分密钥 生成模块B生成的部分公钥P1和部分私钥di
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1