一种用于雾计算的细粒度可搜索加密方法技术

技术编号:18208442 阅读:88 留言:0更新日期:2018-06-13 08:11
本发明专利技术公开了一种用于雾计算的细粒度可搜索加密方法,利用密文策略的属性加密技术和可搜索加密技术,建立云‑雾‑终端用户体系结构,并利用密文策略的属性加密技术和可搜索加密技术,让雾节点作为代理分担终端用户的计算负担,终端用户可以快速地生成陷门和解密密文,从而实现了轻量级的可搜索加密,同时支持细粒度访问控制,只有合法的数据用户才能进行密文检索,在实际场景中具有广阔的应用前景,实现了细粒度访问控制,只有合法的数据用户才能进行密文检索,在实际场景中具有广阔的前景。

【技术实现步骤摘要】
一种用于雾计算的细粒度可搜索加密方法
本专利技术属于信息安全
,具体涉及密文策略的属性加密技术和可搜索加密技术,可用于在雾计算背景下实现细粒度的可搜索加密。
技术介绍
物联网是一种能将物体连接至互联网使其更加智能的技术,随着联网设备不断的增加,产生的海量数据可以通过云计算进行存储和计算,将终端用户从繁重的设备维护和数据管理中解放出来。然而,传统的云计算存在着网络架构移动性差和时延高等问题,这给物联网的发展带来了很大的挑战。雾计算将云计算扩展到网络的边缘,雾节点作为物联网和云计算的中间媒介,能够解决物联网和云计算结合引起的终端节点请求延时、云服务器存储和计算负担过重、网络传输带宽压力过大等问题。因此,雾计算具有广阔的应用前景。然而,雾计算在带来便利的同时也给数据的安全带来了新的挑战,当敏感数据以明文的形式外包给雾节点和云服务器时,数据脱离了数据拥有者的直接物理控制,可能会遭受到恶意攻击而带来严峻的安全隐患。通常的解决办法是在上传数据前对数据进行加密,进一步地,为实现细粒度的访问控制,数据拥有者希望只有满足条件的终端用户才能解密密文,基于身份的加密技术,密钥策略的属性加密技术以及密文策略的属性加密技术相继被提出。尽管加密一定程度上保证了数据的机密性,却也导致传统的明文检索技术无法应用在密文上。可搜索加密技术提出的让终端用户可以在密文上进行关键字查询,不仅保证了数据的安全,而且可以快速定位到数据用户感兴趣文档。为此,通过结合密文策略的属性加密技术和可搜索加密技术提出的密文策略的可搜索加密技术不仅实现了高效的密文检索,而且支持细粒度的访问控制。现有的密文策略的可搜索加密技术的计算和存储开销与访问策略的复杂度成正比,这给计算资源有限的物联网设备带来了很大的局限性。通过建立云-雾-终端用户体系结构,让雾计算中每个雾节点作为代理分担大量计算,让资源有限的物联网设备可以快速地生成陷门和解密密文。因此,如何在雾计算背景下设计实现轻量级的细粒度可搜索加密方法成为了急需解决的关键问题。
技术实现思路
针对现有技术存在的不足,本专利技术利用密文策略的属性加密技术和可搜索加密技术,提出了一种用于雾计算的细粒度可搜索加密方法。本专利技术建立云-雾-终端用户体系结构,并利用密文策略的属性加密技术和可搜索加密技术,让雾节点作为代理分担终端用户的计算负担,终端用户可以快速地生成陷门和解密密文,从而实现了轻量级的可搜索加密,同时支持细粒度访问控制,只有合法的数据用户才能进行密文检索,在实际场景中具有广阔的应用前景。为了实现上述目的,本专利技术采用的技术方案是,一种用于雾计算的细粒度可搜索加密方法,包括以下步骤:步骤一,系统初始化:密钥生成中心KGC根据安全参数k,生成公共参数pm和主密钥msk;步骤二,密钥生成:密钥生成中心KGC为雾节点生成雾节点公钥PKFN,雾节点数据库相关公钥和授权的终端用户列表UL,当新的终端用户加入终端用户列表UL时,密钥生成中心KGC根据终端用户的身份信息IDEU和终端用户属性集生成终端用户公钥PKEU和终端用户数据库相关公钥并为终端用户和雾节点分成生成终端用户私钥SKEU和雾节点私钥SKFN,并将终端用户私钥SKEU发送给终端用户,将雾节点私钥SKFN发送给雾节点;步骤三,加密阶段:数据拥有者利用对称密钥集{sτ}将明文文档集F={F1,…,Fτ}加密成密文文档集C={C1,…,Cτ},数据拥有者建立访问控制结构P,并将访问控制结构P发送给雾节点,雾节点和终端用户通过交互,将对称密钥集{sτ}进行加密生成密文密钥集数据拥有者利用访问控制结构P和关键字集W生成索引集{Iτ},并将密文密钥集索引集{Iτ}和密文文档集C={C1,…,Cτ}通过雾节点发送给云服务器;步骤四,陷门生成:当终端用户想要查询关键字W'时,雾节点验证终端用户是否在授权用户列表UL中,若不在,终止操作,否则,雾节点和终端用户通过交互生成陷门TW',并将陷门TW'和终端用户属性集S发送给云服务器;步骤五,密文搜索:云服务器首先验证终端用户属性集S是否满足访问控制结构P,如果不满足,终止操作;否则,云服务器将陷门Tw'和索引集{Iτ}进行匹配,将匹配成功的密文集C'={Cπ}和相应的密文密钥集发送给雾节点;步骤六,密文解密:雾节点和终端用户通过交互解密返回的密文密钥集得到明文的对称密钥集{sπ},根据对称密钥集{sπ}解密返回的密文集C'={Cπ}得到明文集F'={Fπ}。进一步的,所述步骤一中,公共参数主密钥msk=(x,y,{ti}i∈[1,n]);其中G是p阶加法循环群,g0,g1是G的两个不同的生成元,GT是p阶乘法循环群,e是双线性映射G×G→GT,H1表示将集合{0,1}*映射到p阶整数环Zp的哈希函数,x表示第一随机数:x∈Zp,y表示第二随机数:y∈Zp,ti表示第三随机数:ti∈Zp,i∈[1,n]表示i的取值范围,系统属性集U={att1,…,attn},attn表示第n个系统属性。进一步的,所述步骤二具体包括以下步骤:第一步,密钥生成中心KGC为雾节点生成雾节点公钥PKFN,雾节点数据库相关公钥和授权的终端用户列表UL,其中雾节点公钥PKFN=e(g0,g0)yr,雾节点数据库相关公钥r表示第四随机数,r∈Zp,s表示系统公共的随机数,s∈Zp;第二步,当新的终端用户加入终端用户列表UL时,密钥生成中心KGC根据终端用户的身份信息IDEU和终端用户属性集生成终端用户公钥PKEU和终端用户数据库相关公钥其中终端用户公钥PKEU=e(g0,g0)yu,终端用户数据库相关公钥u表示第五随机数:u∈Zp,表示数据用户的第j个属性,j∈[1,m]表示j的取值范围;第三步,密钥生成中心KGC为终端用户生成终端用户私钥SKEU,为雾节点生成雾节点私钥SKFN,其中终端用户私钥SKEU=(K0,{Kj,1}j∈[1,m],u),雾节点私钥SKFN=(K1,K2,K3,{Kj,2,Kj,3}j∈[1,m],r),K0表示第一私钥分量:K1表示第二私钥分量:K2表示第三私钥分量:K3表示第四私钥分量:aj表示第六随机数,aj∈Zp,Kj,1表示第五私钥分量:映射ρ1表示将数据用户的属性集S中的属性映射到对应系统属性集U的属性,即Kj,2表示第六私钥分量:Kj,3表示第七私钥分量:bj表示第七随机数,bj∈Zp,v表示第八随机数,v∈Zp;第四步,密钥生成中心KGC将终端用户私钥SKEU发送给终端用户,将雾节点私钥SKFN发送给雾节点。进一步的,所述步骤三具体包括以下步骤:第一步,数据拥有者利用对称密钥集{sτ}将明文文档集F={F1,…,Fτ}加密成密文文档集C={C1,…,Cτ},数据拥有者建立访问控制结构P,并将访问控制结构P发送给某个选定的雾节点;第二步,访问控制结构P是一种树形结构,树中的每个节点包括多项式和门限值,雾节点为根节点r选取多项式qr(v)和门限值kr(v),其中v是自变量,当自变量v=0时,qr(0)=θ,θ表示第九随机数,θ∈Zp,门限值kr(v)的范围1≤kr(v)≤numr,numr表示根节点r子节点个数;第三步,为非叶子节点x选取多项式qx(v)和门限值kx(v),多项式qx(v)满足以下条件:dx(v)=kx(本文档来自技高网
...
一种用于雾计算的细粒度可搜索加密方法

【技术保护点】
一种用于雾计算的细粒度可搜索加密方法,其特征在于,包括以下步骤:步骤一,系统初始化:密钥生成中心KGC根据安全参数k,生成公共参数pm和主密钥msk;步骤二,密钥生成:密钥生成中心KGC为雾节点生成雾节点公钥PKFN,雾节点数据库相关公钥

【技术特征摘要】
1.一种用于雾计算的细粒度可搜索加密方法,其特征在于,包括以下步骤:步骤一,系统初始化:密钥生成中心KGC根据安全参数k,生成公共参数pm和主密钥msk;步骤二,密钥生成:密钥生成中心KGC为雾节点生成雾节点公钥PKFN,雾节点数据库相关公钥和授权的终端用户列表UL,当新的终端用户加入终端用户列表UL时,密钥生成中心KGC根据终端用户的身份信息IDEU和终端用户属性集生成终端用户公钥PKEU和终端用户数据库相关公钥并为终端用户和雾节点分成生成终端用户私钥SKEU和雾节点私钥SKFN,并将终端用户私钥SKEU发送给终端用户,将雾节点私钥SKFN发送给雾节点;步骤三,加密阶段:数据拥有者利用对称密钥集{sτ}将明文文档集F={F1,…,Fτ}加密成密文文档集C={C1,…,Cτ},数据拥有者建立访问控制结构P,并将访问控制结构P发送给雾节点,雾节点和终端用户通过交互,将对称密钥集{sτ}进行加密生成密文密钥集数据拥有者利用访问控制结构P和关键字集W生成索引集{Iτ},并将密文密钥集索引集{Iτ}和密文文档集C={C1,…,Cτ}通过雾节点发送给云服务器;步骤四,陷门生成:当终端用户想要查询关键字W'时,雾节点验证终端用户是否在授权用户列表UL中,若不在,终止操作,否则,雾节点和终端用户通过交互生成陷门TW',并将陷门TW'和终端用户属性集S发送给云服务器;步骤五,密文搜索:云服务器首先验证终端用户属性集S是否满足访问控制结构P,如果不满足,终止操作;否则,云服务器将陷门Tw'和索引集{Iτ}进行匹配,将匹配成功的密文集C'={Cπ}和相应的密文密钥集发送给雾节点;步骤六,密文解密:雾节点和终端用户通过交互解密返回的密文密钥集得到明文的对称密钥集{sπ},根据对称密钥集{sπ}解密返回的密文集C'={Cπ}得到明文集F'={Fπ}。2.根据权利要求1所述的一种用于雾计算的细粒度可搜索加密方法,其特征在于,所述步骤一中,公共参数主密钥msk=(x,y,{ti}i∈[1,n]);其中G是p阶加法循环群,g0,g1是G的两个不同的生成元,GT是p阶乘法循环群,e是双线性映射G×G→GT,H1表示将集合{0,1}*映射到p阶整数环Zp的哈希函数,x表示第一随机数:x∈Zp,y表示第二随机数:y∈Zp,ti表示第三随机数:ti∈Zp,i∈[1,n]表示i的取值范围,系统属性集U={att1,…,attn},attn表示第n个系统属性。3.根据权利要求1所述的一种用于雾计算的细粒度可搜索加密方法,其特征在于,所述步骤二具体包括以下步骤:第一步,密钥生成中心KGC为雾节点生成雾节点公钥PKFN,雾节点数据库相关公钥和授权的终端用户列表UL,其中雾节点公钥PKFN=e(g0,g0)yr,雾节点数据库相关公钥r表示第四随机数,r∈Zp,s表示系统公共的随机数,s∈Zp;第二步,当新的终端用户加入终端用户列表UL时,密钥生成中心KGC根据终端用户的身份信息IDEU和终端用户属性集生成终端用户公钥PKEU和终端用户数据库相关公钥其中终端用户公钥PKEU=e(g0,g0)yu,终端用户数据库相关公钥u表示第五随机数:u∈Zp,表示数据用户的第j个属性,j∈[1,m]表示j的取值范围;第三步,密钥生成中心KGC为终端用户生成终端用户私钥SKEU,为雾节点生成雾节点私钥SKFN,其中终端用户私钥SKEU=(K0,{Kj,1}j∈[1,m],u),雾节点私钥SKFN=(K1,K2,K3,{Kj,2,Kj,3}j∈[1,m],r),K0表示第一私钥分量:K1表示第二私钥分量:K2表示第三私钥分量:K3表示第四私钥分量:aj表示第六随机数,aj∈Zp,Kj,1表示第五私钥分量:映射ρ1表示将数据用户的属性集S中的属性映射到对应系统属性集U的属性,即Kj,2表示第六私钥分量:Kj,3表示第七私钥分量:bj表示第七随机数,bj∈Zp,v表示第八随机数,v∈Zp;第四步,密钥生成中心KGC将终端用户私钥SKEU发送给终端用户,将雾节点私钥SKFN发送给雾节点。4.根据权利要求1所述的一种用于雾计算的细粒度可搜索加密方法,其特征在于,所述步骤三具体包括以下步骤:第一步,数据拥有者利用对称密钥集{sτ}将明文文档集F={F1,…,Fτ}加密成密文文档集C={C1,…,Cτ},数据拥有者建立访问控制结构P,并将访问控制结构P发送给某个选定的雾节点;第二步,访问控制结构P是一种树形结构,树中的每个节点包括多项式和门限值,雾节点为根节点r选取多项式qr(v)和门限值kr(v),其中v是自变量,当自变量v=0时,qr(0)=θ,θ表示第九随机数,θ∈Zp,门限值kr(v)的范围1≤kr(v)≤numr,numr表示根节点r...

【专利技术属性】
技术研发人员:苗银宾马建峰伍祈应王祥宇
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西,61

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

1