一种基于身份的抗事后持续辅助输入泄漏加密系统及方法与流程

文档序号:11147415阅读:339来源:国知局
一种基于身份的抗事后持续辅助输入泄漏加密系统及方法与制造工艺

本发明涉及数据加密领域,特别是一种基于身份的抗事后持续辅助输入泄漏加密系统及方法。



背景技术:

随着信息技术的发展,用户的隐私和敏感数据的安全受到人们的广泛关注,信息安全技术研究也应运而生。基于身份的加密(IBE)系统具有非常广泛的应用,并受到了越来越多的关注。基于身份的加密方法在1984年由Shamir首次提出,是为了解决公钥加密系统中存在的证书管理问题。基于身份的加密系统中公钥可以是一个任意的字符串,这个串与用户的身份信息相关,如:用户的身份证号、学号、邮箱地址等。一个可信的私钥生成中心在获取用户公钥后,结合自己拥有的主私钥生成用户的私钥。由于该系统中的公钥是用户公开的身份信息,私钥生成中心分发给用户的私钥是由主私钥和用户公钥产生的,这个私钥可以看作是私钥生成中心对用户身份的认证,基于身份的加密系统不需要像公钥加密系统一样对用户公钥进行有效性验证,也不需要另外生成公钥证书,因此该系统更加灵活。

一般基于身份加密系统的安全性是基于理想环境下考虑的,敌手仅仅关注方案的输入输出,不能获得内部秘密状态。但是,在现实环境下,敌手可以通过密钥泄漏攻击获得秘密状态的部分信息。密钥泄漏攻击包括很多种方式:(1)边信道攻击:敌手通过密码学算法在运行中泄漏的信息,如计算时间、功率消耗、声音、热、辐射等获取相关秘密信息;(2)冷启动攻击:敌手可以获得机器内存中的一些不完整的数据来获得信息,甚至机器关机时也可以从内存里获得信息;(3)恶意软件攻击:远程敌手可以通过恶意软件下载攻击目标用户的大量秘密信息。遗憾的是,之前存在的诸多基于身份的加密系统假设私钥是保密的,但在现实世界中,私钥可能被泄漏。在理想环境下构造的安全系统,若敌手获得少量的私钥信息,都可能对系统造成毁灭性的攻击。一般来说,泄漏攻击的形式化模型分为以下几种类型:(1)仅计算泄漏模型;(2)相对泄漏模型;(3)有界恢复模型;(4)辅助输入模型;(5)持续泄漏模型;(6)事后泄漏模型等。



技术实现要素:

本发明所要解决的技术问题是克服现有技术的不足,而提供一种基于身份的抗事后持续辅助输入泄漏加密系统及方法,在敌手通过边信道攻击持续地获得私钥的部分信息,并且能在看到挑战密文后继续询问更多的秘密信息的情况下,保证数据的安全性,能够抵抗密钥泄漏攻击。

本发明为解决上述技术问题采用以下技术方案:

根据本发明提出的一种基于身份的抗事后持续辅助输入泄漏加密方法,包括以下步骤:

步骤A、设定系统公开参数params和一个主私钥msk;

步骤B、根据params、msk和用户身份ID生成用户的私钥skID

步骤C、根据params、ID对消息M进行加密得到对应的密文c;

步骤D、根据skID、params和c解密出M;

步骤E、根据skID产生一个新的私钥其中,|*|表示尺寸。

作为本发明所述的一种基于身份的抗事后持续辅助输入泄漏加密方法进一步优化方案,所述步骤A具体包括:

步骤A1、选取两个阶为N=p1p2p3的循环群和其中,p1、p2、p3是三个不同的素数;

步骤A2、选取长度为λ的安全参数1λ,选取一个双线性映射和强提取器其中,→表示输出,l,均表示比特串的长度,N是整数集合,l,都是整数;

步骤A3、选取x∈{0,1}l,系统公开参数主私钥为msk={αi}i∈[1,n];其中,αi是整数,下标n∈N,u,h是群中的元素,x是长度为l的0,1比特串,e表示双线性映射,表示e(g1,g1)的αi次幂,e(g1,g1)表示g1和g1的配对运算,是中阶为p1的子群,g1和g3分别是和的生成元,为中阶为p3的子群,i为整数且i∈[1,n]。

作为本发明所述的一种基于身份的抗事后持续辅助输入泄漏加密方法进一步优化方案,所述步骤B具体包括:

B1:私钥生成中心随机选择计算私钥skID={sk1,i,sk2,i}i∈[1,n],将skID通过安全信道发送给用户;其中,si是中的元素且是一个整数,v3,i3,i是中的元素。

作为本发明所述的一种基于身份的抗事后持续辅助输入泄漏加密方法进一步优化方案,所述步骤C具体包括:

C1:随机选择并计算δi=Ext(x,ri);ri是长度为的0,1比特串,δi是一个长度为的比特串,Ext(x,ri)是x,ri在提取器Ext作用下得到的值;

C2:对消息M进行加密,计算密文c={c1,c2,i,c3,i}i∈[1,n],其中

作为本发明所述的一种基于身份的抗事后持续辅助输入泄漏加密方法进一步优化方案,所述步骤D具体包括:

计算其中,e(sk1,i,c2,i)、e(sk2,i,c3,i)均表示双线性映射的值。

作为本发明所述的一种基于身份的抗事后持续辅助输入泄漏加密方法进一步优化方案,所述步骤E具体包括:

随机选择以及计算新的私钥其中,si是中的元素且是一个整数,均是中的元素。

一种基于身份的抗事后持续辅助输入泄漏加密系统,包括系统参数设置模块、私钥生成模块、加密模块、解密模块和私钥更新模块;其中,

系统参数设置模块,用于生成一个系统公开参数和一个主私钥,将系统公开参数发送给私钥生成模块、加密模块和解密模块,主私钥发送给私钥生成模块;

私钥生成模块,用于根据系统公开参数、主私钥和用户身份ID,生成各个用户的私钥,并将私钥发送给解密模块;

加密模块,用于根据系统公开参数对消息进行加密,并将产生的密文发送给解密模块;

解密模块,用于根据私钥、系统公开参数和密文解密出消息;

私钥更新模块,用于根据私钥产生一个新的私钥。

本发明采用以上技术方案与现有技术相比,具有以下技术效果:

(1)本发明方法用于解决由边信道攻击产生密钥泄漏的安全问题;

(2)本发明考虑了事后泄漏、持续泄漏和辅助输入这三种泄漏情况,本发明在敌手通过边信道攻击持续地获得私钥的部分信息,并且能在看到挑战密文后继续询问更多的秘密信息的情况下,保证数据的安全性。

附图说明

图1为本发明加密系统的工作示意图。

图2为本发明加密方法的流程图。

具体实施方式

下面结合附图,对本发明提出的一种基于身份的抗事后持续辅助输入泄漏加密系统及方法进行详细说明。

本发明所用的数学理论说明:

1、双线性映射

令和为两个具有相同素数阶p的乘法循环群。g是的生成元。若映射满足下面三个性质,则被为双线性映射:

-双线性性:e(ga,gb)=e(g,g)ab,其中

-非退化性:

-可计算性:e是高效可计算的。

2、强提取器

一个函数其中如果给定任意值且满足SD((Ext(X,S),S,I),(Uk,S,I))≤εExt,其中εExt∈R+,Uk和S是两个分别在{0,1}m,{0,1}μ上均匀分布的随机变量,则称此函数为平均情况(k,εExt)-强提取器。

3、合数阶双线性群

输入安全参数一个群生成算法产生一个元组其中p1,p2,p3是三个不同的素数,令和为两个阶为N的循环群,是一个双线性映射。令是阶分别为p1,p2,p3的的子群。和的正交性:为中单位元,其中即:令g是中生成元,由生成,由生成,由生成。对于其中则有

4、合数阶双线性群上的三个困难假设

假设1:令为阶是p1p2的中子群。给定其中算法A区分T0和T1的优势是:

对于任意概率多项式时间(PPT)算法A,若是可忽略的,则称假设1成立。

假设2:令为阶是p1p3的中子群。给定和其中算法A区分T0和T1的优势是:

对于任意PPT算法A,若是可忽略的,则称假设2成立。

假设3:给定以及其中算法A区分T0和T1的优势是:

对于任意PPT算法A,若是可忽略的,则称假设3成立。

一、本发明的实现过程

下面将结合附图说明本发明的具体过程。

如图1所示,本发明提供的基于身份的抗事后持续辅助输入泄漏加密系统包括如下五个模块:

1、系统参数设置模块Setup(1λ):输入安全参数生成一个系统公开参数params和一个主私钥msk。

2、私钥生成模块KeyGen(params,msk,ID):输入params,msk和用户身份ID,返回用户的私钥skID

3、加密模块Enc(params,ID,M):输入params,ID和一个消息M,返回消息对应的密文c。

4、解密模块Dec(skID,c):输入skID和c,输出M或者输出无效标志符⊥。

5、私钥更新模块UpdateSK(skID,params):输入skID和params,输出一个新的私钥其中

下面将结合基于身份的抗事后持续辅助输入泄漏加密系统及方法的流程图对该加密系统的各个模块进行具体说明。

如图2所示,本发明提供的加密方法执行流程具体如下:

步骤A,系统参数生成:

选取两个阶为N=p1p2p3的循环群和其中p1,p2,p3是三个不同的素数。为中阶分别为p1,p2,p3的子群。g1和g3分别是和的生成元。指定一个安全参数1λ,令0<ε<1,选取一个双线性映射x∈{0,1}l和-强提取器其中假设ε2,是可忽略的值。令msk={αi}i∈[1,n]

步骤B,根据系统公开参数产生用户的私钥:

PKG随机选择其中i∈[1,n],并返回私钥skID={sk1,i,sk2,i}i∈[1,n],其中PKG通过安全信道将skID发送给用户。

步骤C,对消息M进行加密:

发送方随机选择其中i∈[1,n],并计算δi=Ext(x,ri)和密文c={c1,c2,i,c3,i}i∈[1,n],其中

步骤D,对密文c进行解密获得消息:

接收方获得密文c={c1,c2,i,c3,i}i∈[1,n]后,根据私钥skID={sk1,i,sk2,i}i∈[1,n]做下面计算:

步骤E,对私钥进行更新:

接收方根据skID={sk1,i,sk2,i}i∈[1,n],随机选择以及其中i∈[1,n]。接着输出一个新的私钥其中

下面将对以上所述的基于身份的抗事后持续辅助输入泄漏加密系统应用于电子邮件系统中的情形进行说明。

当用户A想发送一封邮件给用户B,B的邮件地址为B@XX.com.cn,A直接使用B的邮件地址作为公钥进行加密。按照本发明的步骤,具体过程如下:A发送邮件给B,用B的邮件地址作为公钥对内容进行加密,并把密文发送给B;B收到邮件后,与可信第三方PKG联系,PKG验证了B的合法身份后,将B的私钥通过安全信道发送给B;B用该私钥解密A发来的密文。

本发明带来的有益效果是:以用户邮件地址标识用户身份,该身份是公开的,不需要证书和相关操作,简化了公钥证书的的使用与管理。系统构成较简单,仅需设立可信机构对用户身份进行认证以及生成私钥,使用也较方便。该系统在边信道攻击情况下也能保证用户的信息安全。

本发明提出了一种基于身份的抗事后持续辅助输入泄漏加密系统及方法,所述系统包括系统参数设置模块、私钥生成模块、加密模块、解密模块和私钥更新模块。系统参数设置模块产生系统公开参数,并公开给其他模块,把主私钥发送给私钥生成模块。私钥生成模块产生用户的私钥,并发送私钥给解密模块和私钥更新模块。加密模块用于加密消息。解密模块用于消息的解密。私钥更新模块用于更新用户的私钥。本发明方法用于解决由边信道攻击产生密钥泄漏的安全问题。

本领域普通技术人员应该了解,本发明不受上述实例限制,上述实例的描述只是为说明本发明的基本原理与特点,在上述实例的基础上可以很容易的联想到其他的优点和变形。在不背离本发明宗旨的范围内,本领域普通技术人员可以根据上述具体实施例通过各种等同替换所得到的技术方案,但是这些技术方案均应该包含在本发明的权利要求的范围及其等同的范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1