一种边计算环境下轻量级的可搜索公钥加密方法技术

技术编号:20874954 阅读:22 留言:0更新日期:2019-04-17 11:14
本发明专利技术公开了一种边计算环境下轻量级的可搜索公钥加密方法,包括:生成用户公私钥对和系统的公共参数;IoT设备根据用户的公钥、系统的公共参数和关键字,生成初步加密的公钥可搜索密文CPE;边服务器根据系统的公共参数,对CPE双线性映射加密生成关键字的PEKS密文;云服务器存储各边服务器上传的PEKS密文;用户端根据用户私钥、系统的公共参数和需要搜索的关键字,生成关键字的PEKS陷门;云服务器根据系统的公共参数,通过PEKS陷门搜索云服务器中存储的PEKS密文,并将搜索结果转发给用户端。本发明专利技术通过拆分PEKS加密算法,在IoT设备上生成初步加密的PEKS密文,将双线性映射操作外包给边服务器,在不损失安全性的情况下提高了生成PEKS密文的效率、降低了IoT设备的计算开销。

【技术实现步骤摘要】
一种边计算环境下轻量级的可搜索公钥加密方法
本专利技术属于密码学和边缘计算领域,更具体地,涉及一种边计算环境下轻量级的可搜索公钥加密方法。
技术介绍
随着物联网技术的高速发展,物联网设备大量增加,每秒钟产生的数据量越来越大,这给目前的云计算技术中的网络带宽和系统处理能力带来了很大挑战。为了应对这一点,边计算出现了。边计算的概念就是在物联网设备和云服务器中间设置一个边服务器,边服务器的作用是对物联网设备上传的数据保存、处理并为相关物联网设备提供反馈。由于边服务器距离物联网设备更近,并且相比传统的云服务器中心模型,服务的物联网设备更少,因此,边计算技术大大降低了与物联网设备通信时的网络延迟以及对数据的处理时延,提高了响应速度。同时由于边服务器计算资源丰富,它可以通过运行一些更加安全但是因为功耗与性能原因无法在物联网设备上运行的加密算法,在本地对物联网设备上传的数据进行加密保护,这也提高了数据的安全性。加密技术在提高数据安全性的同时也给用户带来了麻烦,如果一个用户想要在大量的密文中搜索某个密文,他就必须将所有的密文全部解密再进行搜索,这大大降低了效率,因此可搜索加密被提出。这其中,可搜索公钥加密(PEKS,Public-keyEncryptionwithKeywordSearch)相比可搜索对称加密(SSE)无需共享通用的密钥,在通信过程中具有更好的安全性,适用于多个发送者向一个接受者发送加密文件的场景。但是在IoT(Internetofthings,物联网)设备使用可搜索公钥加密的过程中仍然存在一些问题:1.传统的可搜索公钥加密是在客户端与服务器之间使用的,但是在边计算环境下,如果PEKS密文全部由IoT设备生成,因为IoT设备的计算资源有限,而生成PEKS密文的计算开销较大,所以需要消耗大量的时间,并且增加IoT设备的功耗,因此传统的可搜索公钥加密方案在边计算环境下不具有实用性;2.如果IoT设备将所有数据都发送给边服务器,通过边服务器生成PEKS密文,这样既无法保证所传输数据的安全性,又没能充分利用IoT设备的计算能力,加重了边服务器的负担。因此,如何在大量边服务器存在的IoT场景下构造安全高效的轻量级可搜索公钥加密方案就成了一个亟待解决的问题。
技术实现思路
针对现有技术的缺陷,本专利技术的目的就是解决现有技术中仅使用IOT设备生成PEKS密文时间开销大、仅使用边服务器生成PEKS密文安全性无保证的技术问题。本专利技术通过IoT设备在本地生成初步加密的PEKS密文,再将双线性映射外包给边服务器,在不损失安全性的情况下提高了生成PEKS密文的效率。为实现上述目的,第一方面,本专利技术实施例提供了一种边计算环境下轻量级的可搜索公钥加密方法,所述可搜索公钥加密方法包括以下步骤:S1.生成用户公私钥对和系统的公共参数,将用户公钥发送给IoT设备,将用户私钥发送给用户,将系统的公共参数发送给IoT设备、用户端、边服务器和云服务器;S2.IoT设备根据用户的公钥PK、系统的公共参数和数据关键字W′,生成初步加密的关键字的公钥可搜索密文CPE,并将其发送给边服务器;S3.边服务器根据系统的公共参数,对CPE双线性映射加密生成关键字的PEKS密文CPEKS,并将其上传到云服务器;S4.云服务器存储各边服务器上传的PEKS密文;S5.用户端根据用户私钥SK、系统的公共参数和搜索关键字W,生成搜索关键字W的PEKS陷门TW,将其发送给云服务器;S6.云服务器根据系统的公共参数,通过PEKS陷门搜索云服务器中存储的PEKS密文,并将搜索结果转发给用户端。具体地,步骤S1中,根据系统预设的安全参数k,构建双线性映射生成用户公私钥对(PK,SK)和系统的公共参数P。具体地,步骤S1中,根据预设的安全参数k,构建双线性映射e:G1×G1→G2,随机选取一个和一个生成元g∈G1,生成用户公钥PK=gs和用户私钥SK=s,其中,G1、G2都是阶为p的循环群,p是素数;同时选择哈希函数H:{0,1}*→G1,生成系统的公共参数P=(e,g,H)。具体地,步骤S2中,IoT设备随机选取生成初步加密的关键字的公钥可搜索密文其中,r=r1*r2。具体地,步骤S3中,各个边服务器接收IoT设备的密文进行双线性映射处理,生成PEKS密文具体地,步骤S5中,用户使用私钥SK=s和搜索关键字W,生成PEKS陷门TW=(H(W)s)。具体地,步骤S6中,云服务器根据用户端的PEKS陷门TW=(H(W)s),依次检测其存储的所有PEKS密文通过比较e(TW,gr)与是否相等,来判断PEKS密文CPEKS是否包含搜索关键字W,若相等,则PEKS密文CPEKS包含关键字W,否则,不包含。具体地,步骤S6中,搜索结果为包含搜索关键字W的零个或多个PEKS密文的集合SW。第二方面,本专利技术实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述第一方面所述的可搜索公钥加密方法。总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,具有以下有益效果:本专利技术通过拆分PEKS加密算法,在IoT设备上生成初步加密的PEKS密文,将计算开销大的双线性映射操作外包给边服务器,充分考虑了IoT设备计算资源受限问题,利用了IoT设备和边服务器间网络延迟小、带宽高的特点,在不损失安全性的情况下提高了生成PEKS密文的效率、降低了IoT设备的计算开销。附图说明图1为本专利技术实施例提供的一种边计算环境下轻量级的可搜索公钥加密方法流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。首先,对本专利技术中用到的一些术语进行解释。密钥生成中心:具有生成系统公共参数和用户公私钥对的功能。IoT设备:具有生成初步加密的关键字的公钥可搜索密文并传递给边服务器的功能。边服务器:具有接收IoT设备生成的初步加密的公钥可搜索密文和生成PEKS密文并传递给云服务器的功能。云服务器:具有接收边服务器生成的PEKS密文、存储PEKS密文、接收用户生成的PEKS陷门和执行PEKS搜索并将搜索结果转发给用户的功能。用户端:具有生成关键字的PEKS陷门并上传给云服务器、接收云服务器搜索结果的功能。上述设备相互协调、共同实现了边计算环境下轻量级的可搜索公钥加密。PEKS的英文全称是Public-keyEncryptionwithKeywordSearch,中文名称是关键字可搜索公钥加密,其算法机制如下:1.(PK,SK)←Setup(k):输入安全参数k,输出公钥PK和私钥SK;2.CPEKS←PEKS(PK,W):输入公钥PK和关键字W,输出关键字W对应的公钥可搜索密文CPEKS;3.TW←Trapdoor(SK,W):输入私钥SK和关键字W,输出关键字W对应的搜索陷门TW;4.SW←Search(TW,SC):输入搜索陷门TW与包含全部可搜索密文CPEKS的集合SC,输出包含关键字W的公钥可搜索密文集合SW。如图1所示,一种边计算环境下轻量级的可搜索公钥加密方法,该方法包括以下步骤:S1.生成用户公私钥对和系统的公共参数,将用户公钥本文档来自技高网
...

【技术保护点】
1.一种边计算环境下轻量级的可搜索公钥加密方法,其特征在于,所述可搜索公钥加密方法包括以下步骤:S1.生成用户公私钥对和系统的公共参数,将用户公钥发送给IoT设备,将用户私钥发送给用户,将系统的公共参数发送给IoT设备、用户端、边服务器和云服务器;S2.IoT设备根据用户的公钥PK、系统的公共参数和数据关键字W′,生成初步加密的关键字的公钥可搜索密文CPE,并将其发送给边服务器;S3.边服务器根据系统的公共参数,对CPE双线性映射加密生成关键字的PEKS密文CPEKS,并将其上传到云服务器;S4.云服务器存储各边服务器上传的PEKS密文;S5.用户端根据用户私钥SK、系统的公共参数和搜索关键字W,生成搜索关键字W的PEKS陷门TW,将其发送给云服务器;S6.云服务器根据系统的公共参数,通过PEKS陷门搜索云服务器中存储的PEKS密文,并将搜索结果转发给用户端。

【技术特征摘要】
1.一种边计算环境下轻量级的可搜索公钥加密方法,其特征在于,所述可搜索公钥加密方法包括以下步骤:S1.生成用户公私钥对和系统的公共参数,将用户公钥发送给IoT设备,将用户私钥发送给用户,将系统的公共参数发送给IoT设备、用户端、边服务器和云服务器;S2.IoT设备根据用户的公钥PK、系统的公共参数和数据关键字W′,生成初步加密的关键字的公钥可搜索密文CPE,并将其发送给边服务器;S3.边服务器根据系统的公共参数,对CPE双线性映射加密生成关键字的PEKS密文CPEKS,并将其上传到云服务器;S4.云服务器存储各边服务器上传的PEKS密文;S5.用户端根据用户私钥SK、系统的公共参数和搜索关键字W,生成搜索关键字W的PEKS陷门TW,将其发送给云服务器;S6.云服务器根据系统的公共参数,通过PEKS陷门搜索云服务器中存储的PEKS密文,并将搜索结果转发给用户端。2.如权利要求1所述的可搜索公钥加密方法,其特征在于,步骤S1中,根据系统预设的安全参数k,构建双线性映射生成用户公私钥对(PK,SK)和系统的公共参数P。3.如权利要求2所述的可搜索公钥加密方法,其特征在于,步骤S1中,根据预设的安全参数k,构建双线性映射e:G1×G1→G2,随机选取一个和一个生成元g∈G1,生成用户公钥PK=gs和用户私钥SK=s,其中...

【专利技术属性】
技术研发人员:金海徐鹏陶冶陈天阳
申请(专利权)人:华中科技大学深圳华中科技大学研究院
类型:发明
国别省市:湖北,42

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

1