可授权的基于身份的带关键词搜索加密方法技术

技术编号:20843492 阅读:22 留言:0更新日期:2019-04-13 08:50
本发明专利技术公开了一种可授权的基于身份的带关键词搜索加密方法,包括:系统初始化步骤;用户私钥生成步骤;授权凭证签发步骤;可授权加密的公私钥生成步骤;带关键词搜索的加密步骤;搜索陷门生成步骤;云服务器搜索测试步骤。本发明专利技术的方法具备可授权功能,具有较强的应用灵活性,不仅可以解决可搜索加密文件的代理上传问题,支持原始数据拥有者授权给代理者帮助其上传明文信息的密文及关键词的密文到云服务器,而且提供了抗关键词猜测的特性,服务器无法猜测用户正在查询的关键词,有效地保障了云端数据的信息安全。

【技术实现步骤摘要】
可授权的基于身份的带关键词搜索加密方法
本专利技术涉及网络空间安全
,特别是涉及一种可授权的基于身份的带关键词搜索加密方法。
技术介绍
随着云计算的快速发展,大量企业、机构和组织选择将数据加密后存储在云端,并在需要时取回这些数据。在这种模型下,云服务器上存储的始终是加密的文件,云端的管理员无法看到明文的数据内容,因此无法精确地返回期望的数据。在查找符合指定关键词的数据时,传统的做法是,取回云端所有可能包含此关键词的数据,进行解密,并从解密的数据中找出需要的内容。随着存在云端的数据量的增加,取回数据是一种越来越繁重的任务,同时也对用户的网络接入带宽等提出了严峻的考验;当数据量太大时,取回所有数据进行逐一解密查找的做法通常是不可行的。由于在传统的模型下,云服务器无法看到数据明文,无法对加密数据进行任何形式的、有利于确定数据取回集合范围的处理,不能充分利用服务器上的计算资源。因此,亟需一种对加密文件进行检索的方法。在2004年,DanBoneh等人提出一种基于公钥密码体制的可搜索加密方法。此方法的出现解决了基本的加密数据检索的问题,但随后的研究表明,此方法存在关键词猜测攻击风险:恶意的服务器可以根据自己“感兴趣”的关键词提前生成公钥加密可搜索关键词对(PEKS),并和用户在进行搜索时传来的搜索陷门(Tw)进行逐一验证,一旦验证成功即可获知用户正在检索的关键词。除了安全性方面的问题以外,此方法也不具有可代理的特性,这限制了此方法的具体应用环境。考虑如下情况:为了节约经营成本,某企业经理将自己每天的大量生产数据加密后上传到云端;其多个合作部门每天会对数据进行检索,以获取必要的工作资料。同时,企业希望保护自身的商业信息的安全性,不希望云服务器猜测出查询的关键词。由于出差或者接受调查等原因,该经理无法接触到生产数据,但是企业每天产生的大量生产数据需要及时的上传,并且交由其他合作部门检索。这种情况下,为了减少企业无法及时上传数据带来的额外损失,可以采用代理授权机制,原始数据拥有者通过代理机制指定一个代理对文件进行处理并且上传,在授权的情况下,代理上传的数据等同于原始数据拥有者本身上传的数据。目前,虽然出现了一些数据的可搜索方法,但是这些方法几乎不具备同时抗内部关键词猜测攻击和可代理的特性。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种可授权的基于身份的带关键词搜索加密方法。本专利技术的目的是通过以下技术方案来实现的:可授权的基于身份的带关键词搜索加密方法,包括:系统初始化步骤:设置并公开全局参数,所述全局参数包括超奇异椭圆曲线的参数、哈希函数和双线性对映射函数;密钥生成中心选取自身的私钥;用户私钥生成步骤:密钥生成中心利用用户的身份、密钥生成中心自身的私钥以及全局参数生成用户身份对应的用户私钥,并将该用户私钥发送给用户,所述用户包括原始数据拥有者、代理者和数据接收者;用户在收到用户私钥后对其进行有效性验证,若验证未通过,则用户向密钥生成中心请求再次颁发用户私钥;授权凭证签发步骤:原始数据拥有者创造一个授权凭证,并利用自身的用户私钥产生授权凭证的数字签名,并将授权凭证发送给代理者,所述授权凭证的内容包括代理者的身份、授权内容、授权权限以及授权有效期;代理者在收到授权凭证后对其进行有效性验证,若验证未通过,则代理者拒绝该授权凭证的授权内容;可授权加密的公私钥生成步骤:代理者利用自身的用户私钥和授权凭证生成可授权加密的公私钥对;带关键词搜索的加密步骤:代理者提取明文信息的关键词,并利用公钥加密算法将明文信息进行加密,同时利用可授权加密的私钥以及数据接收者的公钥产生明文信息对应的关键词的密文,然后将明文信息的密文以及关键词的密文上传云服务器;搜索陷门生成步骤:数据接收者选取关键词,并利用自身的用户私钥计算关键词的搜索陷门,并将搜索陷门发送到云服务器;云服务器搜索测试步骤:云服务器接收到搜索陷门后逐一对存储的明文信息的密文和关键词的密文进行测试匹配,当匹配成功时,云服务器向数据接收者返回对应的明文信息的密文。优选的,所述系统初始化步骤包括:密钥生成中心选取模q上的剩余类环Zq上的椭圆曲线E,P是椭圆曲线上阶为q的点,且P还是加法循环群G1=<P>的生成元;密钥生成中心随机选取并计算Ppub=sP,其中,Ppub是密钥生成中心的公钥,s是密钥生成中心的私钥;选取抗碰撞哈希函数H1:{0,1}*→Zq、哈希函数H2:{0,1}*→Zq、哈希函数H3:{0,1}*×G1→Zq和哈希函数H4:{0,1}*→G1;设置双线性对映射e:G1×G1→G2,其中G2是q阶乘法循环群;密钥生成中心公开全局参数Para=(q,E,P,Ppub,H1,H2,H3,H4,e)。优选的,所述用户私钥生成步骤包括:对于用户ID,所述用户ID包括原始数据拥有者IDo、代理者IDp和数据接收者IDr,密钥生成中心随机选取计算随机变量RID=rIDP和用户私钥skID=sH1(ID)+rID,然后将二元组(RID,skID)发送给用户ID;用户ID收到二元组(RID,skID)后,计算用户ID的公钥QID=skIDP,并验证方程e(H1(ID)Ppub,P)e(RID,P)=e(QID,P)是否成立,若该方程不成立,则验证未通过,用户向密钥生成中心请求再次颁发用户私钥。优选的,所述授权凭证签发步骤包括:原始数据拥有者IDo选取随机数并计算以及随机变量X=xP,其中cert为授权凭证,然后将三元组(y,X,cert)发送给代理者IDp;代理者IDp收到三元组(y,X,cert)后,首先判断授权凭证cert所述的代理关系是否正确,然后计算公开常量Y=yP,验证方程是否成立,若代理关系正确且方程成立,则验证通过,否则验证未通过,验证未通过时代理者IDp拒绝该授权凭证cert的授权内容。优选的,所述可授权加密的公私钥生成步骤包括:代理者IDp随机选取随机数并利用代理者IDp对应的用户私钥计算作为可授权加密的私钥,并计算对应的可授权加密的公钥优选的,所述带关键词搜索的加密步骤包括:代理者IDp提取明文信息的关键词kw,选取随机数并利用可授权加密的私钥计算关键词kw的密文C=(C1,C2),其中,密文分量一C1=skproH4(kw)+αP,密文分量二为数据接收者IDr对应的公钥;代理者IDp利用公钥加密算法产生明文信息的密文ξ,并将密文ξ和对应的关键词的密文C=(C1,C2)上传云服务器。优选的,所述搜索陷门生成步骤包括:数据接收者IDr选取关键词kw',并计算作为搜索陷门,然后将搜索陷门发送给云服务器。优选的,所述云服务器搜索测试步骤包括:云服务器接收到搜索陷门后逐一对存储明文信息的密文ξ和关键词的密文C=(C1,C2)进行搜索测试,若测试方程成立,则表明关键词kw和关键词kw'相等,此时匹配成功,并将对应的密文ξ发送给数据接收者IDr。优选的,用户向密钥生成中心请求再次颁发用户私钥的同时向密钥生成中心返回错误信息。优选的,数据接收者在收到云服务器返回的明文信息的密文后,利用自身的用户私钥解密该密文得到相应关键词对应的明文信息。本专利技术的有益效果是:(1)本专利技术的方法具备可授权功能,具有较强的应用灵活性,不仅可以解决可搜索加密文件的代理上传问题,而本文档来自技高网
...

【技术保护点】
1.可授权的基于身份的带关键词搜索加密方法,其特征在于,包括:系统初始化步骤:设置并公开全局参数,所述全局参数包括超奇异椭圆曲线的参数、哈希函数和双线性对映射函数;密钥生成中心选取自身的私钥;用户私钥生成步骤:密钥生成中心利用用户的身份、密钥生成中心自身的私钥以及全局参数生成用户身份对应的用户私钥,并将该用户私钥发送给用户,所述用户包括原始数据拥有者、代理者和数据接收者;用户在收到用户私钥后对其进行有效性验证,若验证未通过,则用户向密钥生成中心请求再次颁发用户私钥;授权凭证签发步骤:原始数据拥有者创造一个授权凭证,并利用自身的用户私钥产生授权凭证的数字签名,并将授权凭证发送给代理者,所述授权凭证的内容包括代理者的身份、授权内容、授权权限以及授权有效期;代理者在收到授权凭证后对其进行有效性验证,若验证未通过,则代理者拒绝该授权凭证的授权内容;可授权加密的公私钥生成步骤:代理者利用自身的用户私钥和授权凭证生成可授权加密的公私钥对;带关键词搜索的加密步骤:代理者提取明文信息的关键词,并利用公钥加密算法将明文信息进行加密,同时利用可授权加密的私钥以及数据接收者的公钥产生明文信息对应的关键词的密文,然后将明文信息的密文以及关键词的密文上传云服务器;搜索陷门生成步骤:数据接收者选取关键词,并利用自身的用户私钥计算关键词的搜索陷门,并将搜索陷门发送到云服务器;云服务器搜索测试步骤:云服务器接收到搜索陷门后逐一对存储的明文信息的密文和关键词的密文进行测试匹配,当匹配成功时,云服务器向数据接收者返回对应的明文信息的密文。...

【技术特征摘要】
1.可授权的基于身份的带关键词搜索加密方法,其特征在于,包括:系统初始化步骤:设置并公开全局参数,所述全局参数包括超奇异椭圆曲线的参数、哈希函数和双线性对映射函数;密钥生成中心选取自身的私钥;用户私钥生成步骤:密钥生成中心利用用户的身份、密钥生成中心自身的私钥以及全局参数生成用户身份对应的用户私钥,并将该用户私钥发送给用户,所述用户包括原始数据拥有者、代理者和数据接收者;用户在收到用户私钥后对其进行有效性验证,若验证未通过,则用户向密钥生成中心请求再次颁发用户私钥;授权凭证签发步骤:原始数据拥有者创造一个授权凭证,并利用自身的用户私钥产生授权凭证的数字签名,并将授权凭证发送给代理者,所述授权凭证的内容包括代理者的身份、授权内容、授权权限以及授权有效期;代理者在收到授权凭证后对其进行有效性验证,若验证未通过,则代理者拒绝该授权凭证的授权内容;可授权加密的公私钥生成步骤:代理者利用自身的用户私钥和授权凭证生成可授权加密的公私钥对;带关键词搜索的加密步骤:代理者提取明文信息的关键词,并利用公钥加密算法将明文信息进行加密,同时利用可授权加密的私钥以及数据接收者的公钥产生明文信息对应的关键词的密文,然后将明文信息的密文以及关键词的密文上传云服务器;搜索陷门生成步骤:数据接收者选取关键词,并利用自身的用户私钥计算关键词的搜索陷门,并将搜索陷门发送到云服务器;云服务器搜索测试步骤:云服务器接收到搜索陷门后逐一对存储的明文信息的密文和关键词的密文进行测试匹配,当匹配成功时,云服务器向数据接收者返回对应的明文信息的密文。2.根据权利要求1所述的可授权的基于身份的带关键词搜索加密方法,其特征在于,所述系统初始化步骤包括:密钥生成中心选取模q上的剩余类环Zq上的椭圆曲线E,P是椭圆曲线上阶为q的点,且P还是加法循环群G1=<P>的生成元;密钥生成中心随机选取并计算Ppub=sP,其中,Ppub是密钥生成中心的公钥,s是密钥生成中心的私钥;选取抗碰撞哈希函数H1:{0,1}*→Zq、哈希函数H2:{0,1}*→Zq、哈希函数H3:{0,1}*×G1→Zq和哈希函数H4:{0,1}*→G1;设置双线性对映射e:G1×G1→G2,其中G2是q阶乘法循环群;密钥生成中心公开全局参数Para=(q,E,P,Ppub,H1,H2,H3,H4,e)。3.根据权利要求2所述的可授权的基于身份的带关键词搜索加密方法,其特征在于,所述用户私钥生成步骤包括:对于用户ID,所述用户ID包括原始数据拥有者IDo、代理者IDp和数据接收者IDr,密钥生成中心随机选取计算随机变量RID=rIDP和用户私钥skID=sH1(ID)+rID,然后将...

【专利技术属性】
技术研发人员:张晓均唐尧黄超赵芥周子玉廖文才付红
申请(专利权)人:西南石油大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1