CN112543099B - 一种基于边缘计算的无证书可搜索加密方法 - Google Patents

一种基于边缘计算的无证书可搜索加密方法 Download PDF

Info

Publication number
CN112543099B
CN112543099B CN202011338491.2A CN202011338491A CN112543099B CN 112543099 B CN112543099 B CN 112543099B CN 202011338491 A CN202011338491 A CN 202011338491A CN 112543099 B CN112543099 B CN 112543099B
Authority
CN
China
Prior art keywords
key
cloud server
edge node
file
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011338491.2A
Other languages
English (en)
Other versions
CN112543099A (zh
Inventor
黄海平
程伟
吴雨函
陈龙
胡素君
汪文明
许棣华
李欣祥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Posts and Telecommunications
Original Assignee
Nanjing University of Posts and Telecommunications
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Posts and Telecommunications filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202011338491.2A priority Critical patent/CN112543099B/zh
Publication of CN112543099A publication Critical patent/CN112543099A/zh
Application granted granted Critical
Publication of CN112543099B publication Critical patent/CN112543099B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

一种基于边缘计算的无证书可搜索加密方法,首先密钥生成中心为所有系统用户生成部分私钥;接着数据拥有者生成完整私钥并外包加密的数据文件和密文索引给云服务器;边缘节点为获得授权后的数据用户生成完整陷门,并优先在边服务器上检索文件,若不在则发送给云服务器寻找目标文件;云服务器提供存储服务并在收到用户的检索请求后执行检索操作,在紧急检索情况下可优先发送部分文件给用户。本方法中边缘节点负责管理范围内的终端用户并提供访问控制、计算卸载和存储服务,降低了用户的运算量,满足了紧急检索的需求,并实现了轻量级的可搜索加密。此外引入无证书密码体制,有效避免了传统密码体制的证书管理问题和基于身份密码体制的密钥托管难题。

Description

一种基于边缘计算的无证书可搜索加密方法
技术领域
本发明属于云计算、边缘计算和应用密码学的交叉技术领域,具体涉及一种基于边缘计算的无证书可搜索加密方法。
背景技术
近年来,大数据和云计算在工业上迅速发展,不少组织、机构和大公司都提供了对用户的云存储和云计算服务。用户选择将本地数据上传到云计算中心,以节省本地资源并使用其存储和计算能力。然而在5G的快速发展下,万物互联成为可能,传统云计算模式在实时性、隐私保护和能耗等问题上无法满足需求。边缘计算模型充分挖掘网络中边缘终端的计算能力,在边缘终端处执行部分或全部计算、处理隐私数据,具有非常广阔的应用前景。
通常,敏感数据一旦以明文的形式离开其所有者便容易遭受外界的各种攻击,加密处理是经常用来保证数据机密性的手段。基于明文的检索方式不再满足需求,于是基于云存储的可搜索加密技术作为一种密文检索方式应运而生,其通过一种构造的密文匹配方案,让终端用户在密文上进行关键字查询,进而获取相应的密文。
已有的可搜索加密方案都存在着计算开销过大和安全性较低等问题,特别是终端用户在其中承载了大量计算。随着物联网的快速发展,设备终端极有可能是资源受限的,使得不得不考虑将部分计算迁移到更上一层的边缘层。因为传统公钥密码体制的证书管理问题和基于身份密码体制的秘钥托管问题,将无证书密码体制引入到可搜索加密方案中,以防止好奇的密钥生成中心侵犯用户隐私。此外,现有的方案中大都欠缺考虑紧急检索的情况,如电子病历系统应用中医生需紧急获取病人的电子病历,传统可搜索加密模型也未给出快速有效的方案。因此,如何在边缘计算环境下实现无证书和具备紧急检索的可搜索加密成为了一个急需解决的问题。
发明内容
本发明的主要目的在于提供一种基于边缘计算的无证书可搜索加密方法,边缘节点负责管理范围内的终端用户并提供访问控制、计算卸载和存储管理,即验证合法用户、辅助其生成陷门以及存储高频度文件,降低了用户的运算量,从而实现轻量级的可搜索加密。此外考虑紧急检索情况,云服务器优先发送部分文件给紧急检索者,提高检索效率。最后引入无证书密码体制,有效解决了传统密码体制的证书管理问题和基于身份密码体制的密钥托管难题。
为实现以上目的,本发明提供如下技术方案:
一种基于边缘计算的无证书可搜索加密方法,包括如下步骤:
步骤1,系统初始化:密钥生成中心根据安全参数,初始化公共参数和主密钥;
步骤2,密钥生成:在接收到云服务器的身份信息后,密钥生成中心利用主密钥为其生成部分私钥,并通过安全通道发送给云服务器,在接收到部分私钥后,云服务器随机选取一个秘密值当作另外一部分私钥,并由此合成完整私钥和生成公钥;同样的,边缘节点和终端用户根据自己的身份信息从密钥生成中心获得部分私钥,也相应地生成完整私钥和公钥;
步骤3,加密阶段:患者的终端设备先对数据文件进行分块,再对包含敏感信息的数据块进行盲化处理得到数据文件密文;再对数据文件提取关键字并形成关键字索引;最后将文件密文和关键字索引发送给云服务器;
步骤4,授权阶段:在接收到医生的访问请求之后,患者利用自己的私钥和医生的公钥形成授权信息,连同解密密钥集和访问控制结构一起发送给医生所属的边缘节点,边缘节点保存授权信息和密钥集并加入患者的授权列表;
步骤5,生成陷门:医生或医疗服务提供商向边缘节点发送检索请求,边缘节点验证其是否在授权列表,如若已有授权或用户的身份属性集完全满足访问控制结构,则验证成功,边缘节点将根据用户查询的关键字帮助生成陷门,发送给云服务器;否则验证失败,拒绝用户检索;
步骤6,密文检索:边缘节点先执行关键字匹配算法,若检索文件已存储在边缘服务器,则无需上传云服务器,文件访问频度自加;否则,云服务器利用上传的陷门检索关键字索引,如果没有匹配到关键字,则返回FALSE;否则,将匹配到的密文发送给边缘节点,其中边缘节点执行频度优先算法维护一个文件列表存储接收的文件以利于高效检索;
步骤7,密文解密:边缘节点将密文和相应的解密密钥集发送给数据用户,用户解密后得到明文。
进一步地,步骤1具体包括以下步骤:
步骤1-1,根据安全参数λ,密钥生成中心KGC选择两个阶数为素数p的乘法循环群G1和G2,G1的生成元为g,定义一个双线性映射e:G1×G1→G2和一个伪随机函数f:
Figure GDA0004052009890000041
选取两个防碰撞的哈希函数H0
Figure GDA0004052009890000042
和H1
Figure GDA0004052009890000043
并初始化属性空间Ψ={at1,at2,...,atm},其中ati表示第i个系统属性,其中
Figure GDA0004052009890000044
步骤1-2,KGC随机选取
Figure GDA0004052009890000045
保存主密钥Msk=s,计算g’=gs,并发布系统公共参数:pm={g,g’,G1,G2,e,f,p,H0,H1,Ψ}。
进一步地,步骤2具体包括以下步骤:
步骤2-1,云服务器CS将自己的身份idc发送给密钥生成中心KGC,KGC根据主密钥计算生成CS的部分私钥
Figure GDA0004052009890000046
并通过安全通道发送给CS;CS随机选取
Figure GDA0004052009890000047
计算出公钥
Figure GDA0004052009890000048
并将自己的私钥设置为
Figure GDA0004052009890000049
步骤2-2,类似步骤2-1的方法,身份为ide的边缘节点ENi获得部分私钥
Figure GDA00040520098900000410
ENi随机选取
Figure GDA00040520098900000411
计算出公钥
Figure GDA00040520098900000412
并将自己的私钥设置为
Figure GDA00040520098900000413
步骤2-3,类似步骤2-1的方法,身份为idi的用户USERi获得部分私钥
Figure GDA00040520098900000414
USERi随机选取
Figure GDA00040520098900000415
计算出公钥
Figure GDA00040520098900000416
并将自己的私钥设置为
Figure GDA00040520098900000417
进一步地,步骤3具体包括以下步骤:
步骤3-1,患者A的终端设备对原始医疗数据F进行分块,得到(m1,m2,…,mn),其中mi表示文件F的第i块,i∈[1,n];
步骤3-2,选取集合K1、K2,K1表示与数据拥有者DO相关的敏感信息的数据块索引集合,K2表示可直接公开给系统内用户的数据块索引集合,患者A的终端设备随机选取种子密钥k1作为伪随机函数的输入密钥,计算盲化因子
Figure GDA0004052009890000051
其中
Figure GDA0004052009890000052
是随机选取的文件标识符;
步骤3-3,患者A的终端设备计算盲化数据块
Figure GDA0004052009890000053
Figure GDA0004052009890000054
可得到加密敏感信息后的密文C为
Figure GDA0004052009890000055
其中当且仅当i∈[1,n]和
Figure GDA0004052009890000056
否则
Figure GDA0004052009890000057
步骤3-4,患者A的终端设备从数据文件F中提取出关键字ωi(1≤i≤m),然后随机选取索引密钥
Figure GDA0004052009890000058
Figure GDA0004052009890000059
构造关键字密文索引
Figure GDA00040520098900000510
其中
Figure GDA00040520098900000511
Figure GDA00040520098900000512
步骤3-5,患者A的终端设备将密文C和索引Iw发送给所属边缘节点,边缘节点再转发给云服务器CS。
进一步地,步骤4具体包括以下步骤:
步骤4-1,医生B的终端设备对患者A的终端设备发送访问请求,在对B完成身份认证之后,A利用B的公钥
Figure GDA00040520098900000513
和索引秘钥k计算出授权信息
Figure GDA00040520098900000514
并将授权信息、单向访问控制结构Ω以及用B的公钥
Figure GDA00040520098900000515
加密后的盲化密钥集{γ}一同发送给B所属的边缘节点ENi,{γ}包含了种子密钥k1,集合K1和文件标识符name;
步骤4-2,边缘节点ENi保存Δ、Ω和加密的{γ},并将B加入A的授权列表ULA中。
进一步地,步骤5具体包括以下步骤:
步骤5-1,常规检索时,当医生B想要搜索关键字ω’时,先对其所在边缘节点ENi发出检索请求,ENi验证其是否在授权列表ULA中,若在,进行下一步操作;否则返回REFUSE;
步骤5-1’,当患者发生紧急情况例如抢救,发生紧急检索即医生C急需获取患者A文件而未在访问授权列表ULA中,C发送自己的用户属性集给其所属边缘节点ENi,ENi验证用户属性集是否满足访问控制结构Ω,若不满足,返回REFUSE;若满足,则进行下一步操作;
步骤5-2,B随机选取r∈{0,1}*,计算θ=H(r)·ui
Figure GDA0004052009890000061
Figure GDA0004052009890000062
并三元组(θ,T1,T2)发送给ENi
步骤5-3,ENi帮助用户生成搜索陷门
Figure GDA0004052009890000063
其中
Figure GDA0004052009890000064
步骤5-4,ENi将搜索陷门Tw和授权信息Δ一同发送给云服务器CS。
进一步地,步骤6具体包括以下步骤:
步骤6-1,边缘节点ENi执行文件频度优先算法,即将CS返回的文件按照访问频度依次排序并存储在边缘服务器中,当数据用户发送检索请求后,ENi从顶端依次扫描文件列表,若验证成功,则无须云端进行搜索;否则,将搜索陷门Tw和授权信息Δ一同发送给云服务器CS;
步骤6-2,在收到边缘节点ENi的搜索请求后,云服务器CS首先计算
Figure GDA0004052009890000071
Figure GDA0004052009890000072
步骤6-3,再利用密文索引
Figure GDA0004052009890000073
验证
Figure GDA0004052009890000074
Figure GDA0004052009890000075
是否成立,如果等式成立,则说明关键字匹配成功,发生紧急检索时云服务器可优先将
Figure GDA0004052009890000076
通过安全信道发送给医生,使医生先获得部分可公开文件,再将文件C返回给ENi;否则返回FALSE。
进一步地,步骤7具体包括以下步骤:
步骤7-1,边缘节点ENi将收到的密文C与加密的盲化密钥集{γ}一起发给医生B;
步骤7-2,B利用私钥ui解密获得{γ},计算得到盲化因子
Figure GDA0004052009890000077
Figure GDA0004052009890000078
并对密文C进行模加操作即可恢复出初始数据文件F。
与现有的技术相比,本发明具有以下有益的技术效果:边缘节点提供计算卸载,即辅助用户生成陷门,降低了用户的运算量,实现轻量级的可搜索加密;边缘节点管理访问用户授权列表,可灵活实现访问用户的加入与撤销等功能;通过云服务器优先发送部分文件和边缘节点管理返回文件列表,可快速反馈用户检索请求,满足紧急检索的需求;边缘节点采用了无证书密码体制生成关键字陷门,避免了公钥证书的使用和密钥托管问题;在加密阶段没有采用传统的对称加密算法对整个文件进行加密,而是仅对隐私敏感的数据段进行加密,大大降低了终端计算量,适用前景广阔。
附图说明
图1为本发明实施例中所述无证书可搜索加密方法的流程示意图。
图2为本发明实施例中所述无证书可搜索加密的系统示意图;
图3为本发明实施例中所述加密方法中的边缘节点功能示意图。
具体实施方式
下面结合说明书附图对本发明的技术方案做进一步的详细说明。
参阅图1,在本发明实施例中提供了一种基于边缘计算的可搜索加密方法,应用于现在关注的无线医疗传感网,其中患者用户通过穿戴或可移植设备收集身体健康数据,然后经智能终端(智能手表、手机、电脑等)上传用户的医疗数据至云服务器CS,医生用户或医疗服务提供商利用可搜索加密技术在云端以密文方式检索相应病人的医疗数据,中间层的边缘节点对数据使用者进行访问控制和辅助陷门生成,下面为本实例的具体实施过程:
步骤1,系统初始化:密钥生成中心根据安全参数,初始化公共参数和主密钥。具体包括以下步骤:
步骤1-1、根据安全参数λ,密钥生成中心KGC选择两个阶数为素数p的乘法循环群G1和G2,G1的生成元为g,定义一个双线性映射e:G1×G1→G2和一个伪随机函数f:
Figure GDA0004052009890000081
选取两个防碰撞的哈希函数H0
Figure GDA0004052009890000082
和H1
Figure GDA0004052009890000083
并初始化属性空间Ψ={at1,at2,...,atm},其中ati表示第i个系统属性,其中
Figure GDA0004052009890000084
步骤1-2,KGC随机选取
Figure GDA0004052009890000085
保存主密钥Msk=s,计算g’=gs,发布系统公共参数pm={g,g’,G1,G2,e,f,p,H0,H1,Ψ}。
步骤2,密钥生成:在接收到云服务器的身份信息后,密钥生成中心利用主密钥为其生成部分私钥,并通过安全通道发送给云服务器,在接收到部分私钥后,云服务器随机选取一个秘密值当作另外一部分私钥,并由此合成完整私钥和生成公钥;同样的,边缘节点和终端用户根据自己的身份信息从密钥生成中心获得部分私钥,也相应地生成完整私钥和公钥。具体包括以下步骤:
步骤2-1,云服务器CS将自己的身份idc发送给密钥生成中心KGC,KGC根据主密钥计算生成CS的部分私钥
Figure GDA0004052009890000091
并通过安全通道发送给CS;CS随机选取
Figure GDA0004052009890000092
计算出公钥
Figure GDA0004052009890000093
并将自己的私钥设置为
Figure GDA0004052009890000094
步骤2-2,类似的,身份为ide的边缘节点ENi获得部分私钥
Figure GDA0004052009890000095
ENi随机选取
Figure GDA0004052009890000096
计算出公钥
Figure GDA0004052009890000097
并将自己的私钥设置为
Figure GDA0004052009890000098
步骤2-3,类似的,身份为idi的用户USERi获得部分私钥
Figure GDA0004052009890000099
USERi随机选取
Figure GDA00040520098900000910
计算出公钥
Figure GDA00040520098900000911
并将自己的私钥设置为
Figure GDA00040520098900000912
步骤3,加密阶段:患者A(的终端设备)先对医疗数据进行分块,再对包含敏感信息(患者的身份隐私、位置隐私等)的数据块进行盲化处理得到数据文件密文;再对数据文件提取关键字并形成关键字索引;最后将文件密文和关键字索引发送给云服务器。具体包括以下步骤:
步骤3-1,对原始医疗数据F进行分块,得到(m1,m2,…,mn),其中mi表示文件F的第i块,i∈[1,n]。
步骤3-2,选取集合K1、K2,K1表示与数据拥有者DO相关的敏感信息的数据块索引集合,K2表示可直接公开给系统内用户的数据块索引集合,A随机选取种子密钥k1作为伪随机函数的输入密钥,计算盲化因子
Figure GDA0004052009890000101
其中
Figure GDA0004052009890000102
是随机选取的文件标识符。
步骤3-3,A计算盲化数据块
Figure GDA0004052009890000103
可得到加密敏感信息后的密文C为
Figure GDA0004052009890000104
其中当且仅当i∈[1,n]和
Figure GDA0004052009890000105
否则
Figure GDA0004052009890000106
步骤3-4,A从数据文件F中提取出关键字ωi(1≤i≤m),然后随机选取索引密钥
Figure GDA0004052009890000107
Figure GDA0004052009890000108
构造关键字密文索引
Figure GDA0004052009890000109
Figure GDA00040520098900001010
其中
Figure GDA00040520098900001011
Figure GDA00040520098900001012
步骤3-5,A将密文C和索引Iw发送给所属边缘节点,边缘节点再转发给云服务器CS。
步骤4,授权阶段:在接收到医生B的访问请求之后,患者A利用自己的私钥和B的公钥形成授权信息Δ,连同解密密钥集一起发送给B所属的边缘节点,边缘节点保存授权信息和密钥集并加入A的授权列表。具体包括以下步骤:
步骤4-1,医生B对患者A发送访问请求,在对B完成身份认证之后,A利用B的公钥
Figure GDA00040520098900001013
和索引秘钥k计算出授权信息
Figure GDA00040520098900001014
Figure GDA00040520098900001015
并将授权信息、单向访问控制结构Ω以及用B的公钥
Figure GDA00040520098900001016
加密后的盲化密钥集{γ}一同发送给B所属的边缘节点ENi,{γ}包含了种子密钥k1,集合K1和文件标识符name。
步骤4-2,边缘节点ENi保存Δ、Ω和加密的{γ},并将B加入A的授权列表ULA中。
步骤5,生成陷门:当医生或医疗服务提供商向边缘节点发送检索请求,边缘节点验证其是否在授权列表,如若已有授权或用户的身份属性集完全满足访问控制结构,则验证成功,边缘节点将根据用户查询的关键字帮助生成陷门,发送给云服务器;否则验证失败,拒绝用户检索。具体包括以下步骤:
步骤5-1,常规检索时,当医生B想要搜索关键字ω’时,先对其所在边缘节点ENi发出检索请求,ENi验证其是否在授权列表ULA中,若在,进行下一步操作;否则返回REFUSE。
步骤5-1’,当患者发生紧急情况例如抢救,发生紧急检索即医生C急需获取患者A文件而未在访问授权列表ULA中,C发送自己的用户属性集给其所属边缘节点ENi,ENi验证用户属性集是否满足访问控制结构Ω,若不满足,返回REFUSE;若满足,则进行下一步操作。
步骤5-2,B随机选取r∈{0,1}*,计算θ=H(r)·ui
Figure GDA0004052009890000111
Figure GDA0004052009890000112
并三元组(θ,T1,T2)发送给ENi
步骤5-3,ENi帮助用户生成搜索陷门
Figure GDA0004052009890000113
其中
Figure GDA0004052009890000114
步骤5-4,ENi将搜索陷门Tw和授权信息Δ一同发送给云服务器CS。
步骤6,边缘节点先执行关键字匹配算法,若检索文件已存储在边缘服务器,则无需上传云服务器,文件访问频度自加;否则,云服务器利用上传的陷门检索关键字索引,如果没有匹配到关键字,则返回FALSE;否则,将匹配到的密文发送给边缘节点,其中边缘节点执行频度优先算法维护一个文件列表存储接收的文件以利于高效检索。具体包括以下步骤:
步骤6-1,边缘节点ENi执行文件频度优先算法即将CS返回的文件按照访问频度依次排序并存储在边缘服务器中,当数据用户发送检索请求后,ENi从顶端依次扫描文件列表,若验证成功,则无须云端进行搜索;否则,将搜索陷门Tw和授权信息Δ一同发送给云服务器CS。
步骤6-2,在收到边缘节点ENi的搜索请求后,云服务器CS首先计算
Figure GDA0004052009890000121
Figure GDA0004052009890000122
步骤6-3,再利用密文索引
Figure GDA0004052009890000123
验证
Figure GDA0004052009890000124
Figure GDA0004052009890000125
是否成立,如果等式成立,则说明关键字匹配成功,发生紧急检索时(如医生需紧急查看患者的医疗数据)云服务器可优先将
Figure GDA0004052009890000126
通过安全信道发送给医生,使医生先获得部分可公开文件,再将文件C返回给ENi;否则返回FALSE。
步骤7,密文解密:密文解密:边缘节点将密文和相应的解密密钥集发送给数据用户,用户解密后得到明文,具体包括以下步骤:
步骤7-1,边缘节点ENi将收到的密文C与加密的盲化密钥集{γ}一起发给医生B。
步骤7-2,B利用私钥ui解密获得{γ},计算得到盲化因子
Figure GDA0004052009890000127
Figure GDA0004052009890000128
并对密文C进行模加操作即可恢复出初始数据文件F。
以上所述仅为本发明的较佳实施方式,本发明的保护范围并不以上述实施方式为限,但凡本领域普通技术人员根据本发明所揭示内容所作的等效修饰或变化,皆应纳入权利要求书中记载的保护范围内。

Claims (8)

1.一种基于边缘计算的无证书可搜索加密方法,其特征在于:所述方法包括如下步骤:
步骤1,系统初始化:密钥生成中心根据安全参数,初始化公共参数和主密钥;
步骤2,密钥生成:在接收到云服务器的身份信息后,密钥生成中心利用主密钥为其生成部分私钥,并通过安全通道发送给云服务器,在接收到部分私钥后,云服务器随机选取一个秘密值当作另外一部分私钥,并由此合成完整私钥和生成公钥;同样的,边缘节点和终端用户根据自己的身份信息从密钥生成中心获得部分私钥,也相应地生成完整私钥和公钥;
步骤3,加密阶段:患者的终端设备先对数据文件进行分块,再对包含敏感信息的数据块进行盲化处理得到数据文件密文;再对数据文件提取关键字并形成关键字索引;最后将文件密文和关键字索引发送给云服务器;
步骤4,授权阶段:在接收到医生的访问请求之后,患者利用自己的私钥和医生的公钥形成授权信息,连同解密密钥集和访问控制结构一起发送给医生所属的边缘节点,边缘节点保存授权信息和密钥集并加入患者的授权列表;
步骤5,生成陷门:医生或医疗服务提供商向边缘节点发送检索请求,边缘节点验证其是否在授权列表,如若已有授权或用户的身份属性集完全满足访问控制结构,则验证成功,边缘节点将根据用户查询的关键字帮助生成陷门,发送给云服务器;否则验证失败,拒绝用户检索;
步骤6,密文检索:边缘节点先执行关键字匹配算法,若检索文件已存储在边缘服务器,则无需上传云服务器,文件访问频度自加;否则,云服务器利用上传的陷门检索关键字索引,如果没有匹配到关键字,则返回FALSE;否则,将匹配到的密文发送给边缘节点,其中边缘节点执行频度优先算法维护一个文件列表存储接收的文件以利于高效检索;
步骤7,密文解密:边缘节点将密文和相应的解密密钥集发送给数据用户,用户解密后得到明文。
2.根据权利要求1所述的一种基于边缘计算的无证书可搜索加密方法,其特征在于:步骤1具体包括以下步骤:
步骤1-1,根据安全参数λ,密钥生成中心KGC选择两个阶数为素数p的乘法循环群G1和G2,G1的生成元为g,定义一个双线性映射e:G1×G1→G2和一个伪随机函数f:
Figure FDA0004052009880000021
选取两个防碰撞的哈希函数H0:
Figure FDA0004052009880000022
和H1:
Figure FDA0004052009880000023
并初始化属性空间Ψ={at1,at2,…,atm},其中ati表示第i个系统属性,其中
Figure FDA0004052009880000024
步骤1-2,KGC随机选取
Figure FDA0004052009880000025
保存主密钥Msk=s,计算g’=gs,并发布系统公共参数:pm={g,g’,G1,G2,e,f,p,H0,H1,Ψ}。
3.根据权利要求1所述的一种基于边缘计算的无证书可搜索加密方法,其特征在于:步骤2具体包括以下步骤:
步骤2-1,云服务器CS将自己的身份idc发送给密钥生成中心KGC,KGC根据主密钥计算生成CS的部分私钥
Figure FDA0004052009880000031
并通过安全通道发送给CS;CS随机选取
Figure FDA0004052009880000032
计算出公钥
Figure FDA0004052009880000033
并将自己的私钥设置为
Figure FDA0004052009880000034
步骤2-2,身份为ide的边缘节点ENi获得部分私钥
Figure FDA0004052009880000035
ENi随机选取
Figure FDA0004052009880000036
计算出公钥
Figure FDA0004052009880000037
并将自己的私钥设置为
Figure FDA0004052009880000038
步骤2-3,身份为idi的用户USERi获得部分私钥
Figure FDA0004052009880000039
USERi随机选取
Figure FDA00040520098800000310
计算出公钥
Figure FDA00040520098800000311
并将自己的私钥设置为
Figure FDA00040520098800000312
4.根据权利要求1所述的一种基于边缘计算的无证书可搜索加密方法,其特征在于:步骤3具体包括以下步骤:
步骤3-1,患者A的终端设备对原始医疗数据F进行分块,得到(m1,m2,…,mn),其中mi表示文件F的第i块,i∈[1,n];
步骤3-2,选取集合K1、K2,K1表示与数据拥有者DO相关的敏感信息的数据块索引集合,K2表示可直接公开给系统内用户的数据块索引集合,患者A的终端设备随机选取种子密钥k1作为伪随机函数的输入密钥,计算盲化因子
Figure FDA00040520098800000313
其中
Figure FDA00040520098800000314
是随机选取的文件标识符;
步骤3-3,患者A的终端设备计算盲化数据块
Figure FDA00040520098800000315
Figure FDA00040520098800000316
可得到加密敏感信息后的密文C为
Figure FDA00040520098800000317
其中当且仅当i∈[1,n]和
Figure FDA00040520098800000318
否则
Figure FDA00040520098800000319
步骤3-4,患者A的终端设备从数据文件F中提取出关键字ωi(1≤i≤m),然后随机选取索引密钥
Figure FDA0004052009880000041
Figure FDA0004052009880000042
构造关键字密文索引
Figure FDA0004052009880000043
其中
Figure FDA0004052009880000044
Figure FDA0004052009880000045
步骤3-5,患者A的终端设备将密文C和索引Iw发送给所属边缘节点,边缘节点再转发给云服务器CS。
5.根据权利要求1所述的一种基于边缘计算的无证书可搜索加密方法,其特征在于:步骤4,具体包括以下步骤:
步骤4-1,医生B的终端设备对患者A的终端设备发送访问请求,在对B完成身份认证之后,A利用B的公钥
Figure FDA0004052009880000046
和索引秘钥k计算出授权信息
Figure FDA0004052009880000047
并将授权信息、单向访问控制结构Ω以及用B的公钥
Figure FDA0004052009880000048
加密后的盲化密钥集{γ}一同发送给B所属的边缘节点ENi,{γ}包含了种子密钥k1,集合K1和文件标识符name;
步骤4-2,边缘节点ENi保存△、Ω和加密的{γ},并将B加入A的授权列表ULA中。
6.根据权利要求1所述的一种基于边缘计算的无证书可搜索加密方法,其特征在于:步骤5具体包括以下步骤:
步骤5-1,常规检索时,当医生B想要搜索关键字ω’时,先对其所在边缘节点ENi发出检索请求,ENi验证其是否在授权列表ULA中,若在,进行下一步操作;否则返回REFUSE;
步骤5-1’,当患者发生紧急情况,发生紧急检索即医生C急需获取患者A文件而未在访问授权列表ULA中,C发送自己的用户属性集给其所属边缘节点ENi,ENi验证用户属性集是否满足访问控制结构Ω,若不满足,返回REFUSE;若满足,则进行下一步操作;
步骤5-2,B随机选取r∈{0,1}*,计算θ=H1(r)·ui
Figure FDA0004052009880000051
Figure FDA0004052009880000052
并三元组(θ,T1,T2)发送给ENi
步骤5-3,ENi帮助用户生成搜索陷门
Figure FDA0004052009880000053
其中
Figure FDA0004052009880000054
步骤5-4,ENi将搜索陷门Tw和授权信息△一同发送给云服务器CS。
7.根据权利要求1所述的一种基于边缘计算的无证书可搜索加密方法,其特征在于:步骤6具体包括以下步骤:
步骤6-1,边缘节点ENi执行文件频度优先算法,即将CS返回的文件按照访问频度依次排序并存储在边缘服务器中,当数据用户发送检索请求后,ENi从顶端依次扫描文件列表,若验证成功,则无须云端进行搜索;否则,将搜索陷门Tw和授权信息△一同发送给云服务器CS;
步骤6-2,在收到边缘节点ENi的搜索请求后,云服务器CS首先计算
Figure FDA0004052009880000055
Figure FDA0004052009880000056
步骤6-3,再利用密文索引
Figure FDA0004052009880000057
验证
Figure FDA0004052009880000058
Figure FDA0004052009880000059
是否成立,如果等式成立,则说明关键字匹配成功,发生紧急检索时云服务器可优先将
Figure FDA00040520098800000510
通过安全信道发送给医生,使医生先获得部分可公开文件,再将文件C返回给ENi;否则返回FALSE。
8.根据权利要求1所述的一种基于边缘计算的无证书可搜索加密方法,其特征在于:步骤7具体包括以下步骤:
步骤7-1,边缘节点ENi将收到的密文C与加密的盲化密钥集{γ}一起发给医生B;
步骤7-2,B利用私钥ui解密获得{γ},计算得到盲化因子
Figure FDA0004052009880000061
Figure FDA0004052009880000062
并对密文C进行模加操作即可恢复出初始数据文件F。
CN202011338491.2A 2020-11-25 2020-11-25 一种基于边缘计算的无证书可搜索加密方法 Active CN112543099B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011338491.2A CN112543099B (zh) 2020-11-25 2020-11-25 一种基于边缘计算的无证书可搜索加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011338491.2A CN112543099B (zh) 2020-11-25 2020-11-25 一种基于边缘计算的无证书可搜索加密方法

Publications (2)

Publication Number Publication Date
CN112543099A CN112543099A (zh) 2021-03-23
CN112543099B true CN112543099B (zh) 2023-05-23

Family

ID=75015714

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011338491.2A Active CN112543099B (zh) 2020-11-25 2020-11-25 一种基于边缘计算的无证书可搜索加密方法

Country Status (1)

Country Link
CN (1) CN112543099B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114141324B (zh) * 2021-12-01 2022-08-09 医贝云服(杭州)科技有限公司 一种基于边缘计算的医疗数据处理方法和装置
CN114598717B (zh) * 2022-04-08 2024-06-28 佛山中盈盛达小额贷款有限公司 分布式云存储数据访问方法及数据服务系统
CN115484095B (zh) * 2022-09-14 2024-05-07 湖南科技大学 云边协同环境下基于区块链的细粒度访问控制方法
CN115587383A (zh) * 2022-12-14 2023-01-10 南京运享通信息科技有限公司 基于云服务器的智慧体育场馆信息加密识别方法及系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110224986A (zh) * 2019-05-07 2019-09-10 电子科技大学 一种基于隐藏策略cp-abe的高效可搜索访问控制方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106330865B (zh) * 2016-08-12 2019-03-29 安徽大学 云环境下支持高效撤销的属性基关键字搜索方法及云计算应用系统
CN108156139A (zh) * 2017-12-13 2018-06-12 西安电子科技大学 无证书的可验证多关键字密文查询系统及方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110224986A (zh) * 2019-05-07 2019-09-10 电子科技大学 一种基于隐藏策略cp-abe的高效可搜索访问控制方法

Also Published As

Publication number Publication date
CN112543099A (zh) 2021-03-23

Similar Documents

Publication Publication Date Title
US11973889B2 (en) Searchable encrypted data sharing method and system based on blockchain and homomorphic encryption
CN112543099B (zh) 一种基于边缘计算的无证书可搜索加密方法
CN110224986B (zh) 一种基于隐藏策略cp-abe的高效可搜索访问控制方法
CN107104982B (zh) 移动电子医疗中具有叛逆者追踪功能的可搜索加密系统
WO2017181911A1 (zh) 基于公钥可搜索加密的文件存储、搜索方法及存储系统
CN112365945B (zh) 基于区块链的电子病历细粒度访问控制和密文可搜索方法
Pandiaraja et al. A Novel Data Privacy-Preserving Protocol for Multi-data Users by using genetic algorithm.
WO2023044963A1 (zh) 一种基于属性条件门限代理重加密方法和系统
CN108390855A (zh) 一种面向云存储的属性基关键词搜索加密系统及方法
CN115021903B (zh) 一种基于区块链的电子病历共享方法及系统
CN111431898A (zh) 用于云协助物联网的带搜索的多属性机构属性基加密方法
Liu et al. EMK-ABSE: Efficient multikeyword attribute-based searchable encryption scheme through cloud-edge coordination
CN114338038B (zh) 区块链数据保密查询的存储系统及不经意传输方法
Huang et al. FSSR: Fine-grained EHRs sharing via similarity-based recommendation in cloud-assisted eHealthcare system
CN108092766A (zh) 一种密文搜索权限验证方法及其系统
Ma et al. CP‐ABE‐Based Secure and Verifiable Data Deletion in Cloud
CN114938382A (zh) 一种基于联盟区块链的电子病历安全可控共享方法
CN115473743A (zh) 一种抗内部关键字猜测攻击的可搜索医疗数据共享方法
Gao et al. Blockchain-enabled fine-grained searchable encryption with cloud–edge computing for electronic health records sharing
CN117828673B (zh) 基于区块链的数据流通与隐私保护方法及装置
CN115459967A (zh) 一种基于可搜索加密的密文数据库查询方法及系统
WO2019104674A1 (zh) 一种密文搜索权限验证方法及其系统
Yan et al. Secure and efficient big data deduplication in fog computing
CN116663046A (zh) 基于区块链的隐私数据共享和检索方法、系统及设备
Shen et al. Multi-Keywords Searchable Attribute-Based Encryption With Verification and Attribute Revocation Over Cloud Data

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant