一种基于身份的抗弹性泄漏加密方法和系统的制作方法
【专利摘要】本发明公开了一种基于身份的抗弹性泄漏加密方法和系统,属于数据加密领域。一种基于身份的抗弹性泄漏加密方法和系统,包括可信第三方私钥生成中心模块和用户模块两个模块,其中可信第三方私钥生成中心模块包括在线任务分配器和密钥生成器,在线任务分配器与密钥生成器之间通过的安全信道双向连接;用户模块为用户终端,包括密文验证器、加密器、解密器;采用系统设置,加密步骤,解密步骤对用户资料进行加密和解密操作,本发明从而能极大的降低加密方程的计算代价,提高整个系统的运行效率,且具有更短的密钥长度和更高的相对密钥泄漏比。
【专利说明】一种基于身份的抗弹性泄漏加密方法和系统
【技术领域】
[0001] 本发明涉及数据加密领域,更具体地说,涉及一种基于身份的抗弹性泄漏加密方 法和系统。
【背景技术】
[0002] 在传统的公钥密码系统中,主要采用公钥证书基础设施PKI (Public Key Infrastructure)来验证公钥和用户身份的相关性。用户身份和公钥之间的关联通过证书 机构(Certification Authority :CA)发放的公钥证书实现。这种方式的证书管理过程需要 很高的计算开销和存储开销。
[0003] 基于身份的密码体制的思想由Shamir在1984年首先提出。在该体制中,公钥就 是用户的身份信息(或者是直接由用户的身份信息导出),比如网络内某主机的IP地址或 某用户的Email地址。PKG根据用户的公钥由身份信息直接计算得出,所以在使用公钥的 过程中就不需要存放或证书的目录,也不需要第三方(CA)提供服务,只需要维护一个PKG 产生的认证的公开系统参数目录,这个开销远低于维护一个所有用户的公钥目录所需的开 销。因此,基于身份的密码体制的优势就在于它简化了传统基于证书的公钥体制下负担最 重的密钥管理过程。
[0004] 传统密码学安全模型都是基于这样的假设:只有用户知道密码学算法在计算过程 中产生的随机秘密信息,而攻击者是完全不知道的,攻击者只能够对算法进行输入输出,却 不能访问内部的用户程序和具体算法。但是,最近几十年出现的各种各样的边信道攻击可 以证明在现实中,这样的假设是不存在的。这些攻击相当于提供给了攻击者一些攻击能力, 即由于计算过程中的物理泄漏,攻击者可以看到算法执行部分的内部秘密状态。传统模型 中可证安全的方案在很多有独创性的边信道攻击下是不安全的。现存的边信道攻击主要包 括时序攻击、电磁辐射、能量功耗、冷启动攻击以及故障检测等。因此,密钥的泄漏问题已经 成为密码体制安全的最大威胁。目前已出现一些解决方法,例如,具有前向安全的密码系 统,秘密分享,密钥隔离,入侵弹性和代理重加密等,但上述方法不能完全解决或只能部分 解决密钥泄漏问题,最近提出用泄漏函数定义抗密钥泄漏密码学(即弹性泄漏密码学)是 解决密钥泄漏问题的最有力工具之一,因此,对弹性泄漏密码学的课题研究具有重要意义。
[0005] 相对于仅利用密码设备合法的输入或者输出进行攻击,即主信道攻击行为,边信 道攻击(或泄漏攻击)已严重威胁到传统已证安全的密码系统的安全性,成为目前密码 系统设计及其安全性分析所面临的一个重大挑战。在现实世界中,不可能人为地预测出密 码系统在物理实现过程中可能遇到的所有泄漏攻击,所以,一个可行的方法是:构建抗密 钥泄漏密码系统,使其在密码原型遭遇泄漏攻击的环境下是可证安全的。基本思路是:首 先提出形式化的泄漏模型来刻画攻击者的泄漏攻击能力和手段,即在泄漏攻击过程中攻 击者能够获得哪些信息;然后在不同的泄漏模型下提出可证安全的密码方案,即抗泄漏密 码算法。目前主要存在的泄漏模型以及在这些模型下构建的密码方案有:计算泄漏(only computation leaks information,简称0CLI),相对泄漏模型(relative-leakage model), 有界恢复模型(bounded-retrieval model,简称 BRM),持续泄漏模型(continual leakage model,简称 CLM),事后泄漏(After-the-Fact Leakage)。
[0006] 1984年,Shamir首先提出了基于身份的公钥密码系统,试图通过使用用户的身份 (如名称或电子邮件/IP地址)作为公钥来减少对基础设施的需求。第一个真正实用的安 全IBE方案是由Boneh和Franklin在2001年提出的,他们的系统使用了双线性映射,且在 随机预言模型中证明了安全性。Canetti等人提出了一个可以在标准模型中证明安全性的 基于身份加密系统,但是是在一个更弱的"选择身份"安全模型中,该模型要求攻击者必须 在攻击之前公布要挑战的目标身份。2004年,Boneh和Boyen提出了一个在选择身份模型中 更加实用的基于身份加密系统。不久之后,Boneh和Boyen提出了一个标准模型中完全安全 的基于身份加密方案,即攻击者可以自适应的选择要挑战的目标身份。2005年,Waters简 化了 Boneh和Boyen提出的的方案,充分提高了方案的效率。Gentry也提出了一个标准模 型中完全安全的基于身份加密系统,且与在他之前已提出的基于身份加密系统相比较,有 三大优点:更高的计算效率,更短的公开参数和"紧"安全性。然而,以上的基于身份加密方 案都没有考虑信息泄漏,由于边信道攻击的存在,这些方案可能在现实世界中是不安全的。 因此,如何在基于身份加密方案中实现弹性泄漏是一个有趣且富有挑战性的课题。
[0007] 为了解决上述问题,Alwen等人提出了一个基于身份的哈希证明系统(IB-HPS)的 思想,他们将Cramer和Shoup的哈希证明系统的概念推广到了基于身份的环境里。此外, 他们还在有界恢复模型下提出了三个弹性泄漏基于身份加密方案,分别基于格、二次剩余 (QR)和截断增强的双线性Diffie-Hellman指数(q-TABDHE)假设证明了方案的安全性。Chow 等人基于Boneh-Boyen方案,Waters方案以及Lewko-Waters方案,分别提出了三个新的相 对泄漏模型下弹性泄漏基于身份加密方案,三个方案都是在标准模型中安全的。但上述方 案的加密方程的计算代价很大,运行效率低、指数操作多、密钥公钥和私钥长、相对密钥泄 漏比低。
【发明内容】
[0008] 1?要解决的技术问题
[0009] 针对现有技术中存在的,加密步骤的计算代价很大,运行效率低、指数操作多、密 钥公钥和私钥长、相对密钥泄漏比低的问题,本发明提供了一种基于身份的抗弹性泄漏加 密系统和方法。它可以实现更低的计算代价,更短的密钥公钥和私钥长度和更高的相对密 钥泄漏比。
[0010] 2?技术方案
[0011] 本发明的目的通过以下技术方案实现。
[0012] 一种基于身份的抗弹性泄漏加密系统,包括可信第三方私钥生成中心模块和用户 模块两个模块,其中可信第三方私钥生成中心模块包括在线任务分配器和密钥生成器,在 线任务分配器分别与密钥生成器之间通过的安全信道双向连接;
[0013] 用户模块为用户终端,包括密文验证器、加密器、解密器;
[0014] 所述的在线任务分配器与密钥生成器双向连接;所述的在线任务分配器与密文验 证器、加密器和解密器连接;加密器分别与在线任务分配器、密钥生成器连接;密文验证器 分别与在线任务分配器、和解密器连接。
[0015] 更进一步的,所述的可信第三方私钥生成中心模块包括有设置好的主公钥和主私 钥。
[0016] 更进一步的,所述的安全信道,通过X. 509证书、对称密码算法、密钥交换协议或 消息摘要安全技术构建。
[0017] 一种基于身份的抗弹性泄漏加密方法,包括如下步骤:
[0018] (a)、系统设置:
[0019] PKG为可信第三方私钥生成中心模块,PKG设置系统参数设置算法如下:
[0020] 令G和&是两个具有相同的阶为p的乘法循环群(其中p是一个大素数),双线 性映射6:6父6 - 6^是6的生成元。?1?随机选择元素§,111,112£6,〇£2 1),以及哈希 函数H,计算giig'最后输出主公钥mpk = 和主私钥msk = a ;
[0021] (b)、加密步骤:
[0022] 步骤1 :在线任务分配器将用户身份比特串id e ZP\{ a }发送给密钥生成器;
[0023] 步骤2 :密钥生成器对得到的用户身份比特串id e Zp\{ a}做处理:随机选择 元素Sp s2 G Zp,计算
【权利要求】
1. 一种基于身份的抗弹性泄漏加密系统,其特征在于:包括可信第三方私钥生成中心 模块和用户模块两个模块,其中可信第三方私钥生成中心模块包括在线任务分配器和密钥 生成器,在线任务分配器与密钥生成器之间通过的安全信道双向连接; 用户模块为用户终端,包括密文验证器、加密器、解密器; 所述的在线任务分配器与密钥生成器双向连接;所述的在线任务分配器与密文验证 器、加密器和解密器连接;加密器分别与在线任务分配器、密钥生成器连接;密文验证器分 别与在线任务分配器、和解密器连接。
2. 根据权利要求1所述的一种基于身份的抗弹性泄漏加密系统,其特征在于:所述的 可信第三方私钥生成中心模块包括有设置好的主公钥和主私钥。
3. 根据权利要求1所述的一种基于身份的抗弹性泄漏加密系统,其特征在于:所述的 安全信道,通过X. 509证书、对称密码算法、密钥交换协议或消息摘要安全技术构建。
4. 一种基于权利要求1的系统处理加密的方法,包括如下步骤: (a) 、系统设置: PKG为可信第三方私钥生成中心模块,PKG设置系统参数设置算法如下: 令G和Gt是两个具有相同的阶为p的乘法循环群(其中p是一个大素数),双线性映 射6:6父6 - 6^是6的生成元。?1?随机选择元素8,111,112£6,〇£2 1),以及哈希函数 H,计算gi=g°,最后输出主公钥mpk= (g,gpIi1,h2,H)和主私钥msk=α; (b) 、加密步骤: 步骤1 :在线任务分配器将用户身份比特串ideZρ\{α}发送给密钥生成器; 步骤2 :密钥生成器对得到的用户身份比特串ideΖρ\{α}做处理:随机选择元 素Sl,S2eZρ,计算 < 二汍g ""和= (/i2g)咖《,后输出用户的私钥skid = (屯,Sl,d2,S2),若id=α,则密钥生成器重新选择随机数aeZp,重新计算用户的私钥后 发送至在线任务分配器; 步骤3:加密器设置泄漏参数入=入〇1),其中11是安全参数4# :&\{0,1:^-{0,1}15 是平均情况(logp-λ,ε)-强提取器,其中λ彡logp-ω(l〇gn)-k,且ε=ε(η)是η的 可忽略函数,加密器选取H:GXGTX{0, 1ΓΧ{0,l}k - 21)单向哈希函数; 步骤4 :在线任务分配器将用户身份比特串发送给加密器; 步骤5 :加密器利用PKG的主公钥mpk= (g,gl,Ii1,h2,H)和得到的用户的身份ideZp, 对消息me{〇,l}k进行加密,加密器独立随机的选择元素reZp,se{〇,Ilt,计算u= &rg-r.ld,V= g)r,u,= ,(甘為)》"v)@Wi,P=H(u,v,s,w), y =e(g,h2)re(g,hi)1·0, 获得消息m的密文是c= (u,v,s,w,y),加密器将消息的密文c发送给在线任务分配器; (c) 、解密步骤: 步骤6 :在线任务分配器把得到的密钥通过安全信道传给用户; 步骤7 :用户将得到的用户密钥Skid发送给解密器和密文验证器; 步骤8 :在线任务分配器将待解密消息密文发送给密文验证器; 步骤9 :密文验证器计算β=H(u,V,s,w),并利用得到的私钥skid = ((I1,S1,d2,s2),对 得到的密文c= (u,V,s,w,y)进行结构合法性验证,等式不成立,执行步 骤?ο;等式y= 成立,执行步骤11; 步骤10 :密文验证器重新向加密器询问密文,加密器重新执行步骤5 ; 步骤11 :密文验证器将验证通过的密文c发送给解密器; 步骤12 :解密器利用得到的私钥skid =(屯,S1,d2,S2),对得到的密文c= (u,V,s,w,y) 进行解密,则解密的消息为《 = ,获得解密消息。
5. 根据专利要求1所述的基于身份的加密方法,其特征在于:在步骤5中,对于w和y 计算值e(g,4),将e(g,Ill)的计算结果保存,后续计算直接进行提取。
6. 根据专利要求1所述的基于身份的加密方法,其特征在于:在步骤5中,对于y计算 值e(g,h2),将e(g,h2)的计算结果保存,后续计算直接进行提取。
【文档编号】H04L9/30GK104320249SQ201410614545
【公开日】2015年1月28日 申请日期:2014年11月4日 优先权日:2014年11月4日
【发明者】李继国, 陈超东, 张乐 申请人:马鞍山城智信息技术有限公司