WO2019104674A1 - 一种密文搜索权限验证方法及其系统 - Google Patents

一种密文搜索权限验证方法及其系统 Download PDF

Info

Publication number
WO2019104674A1
WO2019104674A1 PCT/CN2017/114027 CN2017114027W WO2019104674A1 WO 2019104674 A1 WO2019104674 A1 WO 2019104674A1 CN 2017114027 W CN2017114027 W CN 2017114027W WO 2019104674 A1 WO2019104674 A1 WO 2019104674A1
Authority
WO
WIPO (PCT)
Prior art keywords
ciphertext
search
user
authority verification
trapdoor
Prior art date
Application number
PCT/CN2017/114027
Other languages
English (en)
French (fr)
Inventor
张鹏
陈泽虹
吴楚欣
Original Assignee
深圳大学
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 深圳大学 filed Critical 深圳大学
Priority to PCT/CN2017/114027 priority Critical patent/WO2019104674A1/zh
Publication of WO2019104674A1 publication Critical patent/WO2019104674A1/zh

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/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials

Definitions

  • System initialization step generating a system public key PK and a master private key MSK according to the input system security parameter ⁇ and the global attribute set N;
  • a key generation step generating a user secret key SK according to the public key PK and the primary private key MSK;
  • Generating a trapdoor step generating a trapdoor TD according to the input secret key SK and the search authority verification result AVR;
  • MSK ⁇ , g ⁇ , ⁇ v j
  • the index generation algorithm takes the public key PK, the access tree T and the keyword set W as inputs, and for each node x in the access tree T, selects the polynomial q x from the root node R Initially, the polynomial is selected in a top-down manner.
  • the step of generating a trapdoor comprises:
  • the search authority verification result AVR Entering the secret key SK, the search authority verification result AVR, and a keyword Wherein the keyword Indicates that the user wants to search for keywords Encrypted health record;
  • the key generation module is specifically configured to:
  • system initialization module 11 is specifically configured to:
  • MSK ⁇ ⁇ , g ⁇ , ⁇ v j
  • the file encryption and indexing module 13 is specifically configured to:
  • the authorization verification module 14 is configured to verify the authority of the user to search for the encrypted health record by using the authorization control ciphertext ACC received by the user, and save the verification result AVR.
  • the ciphertext search authority verification system 10 provided by the invention supports the search permission control, and only the user with the authority can search the ciphertext, thereby ensuring the privacy of the user health data and efficiently processing the user health data.

Abstract

本发明适用于在移动医疗网络中支持授权控制的密文搜索领域,提供了一种密文搜索权限验证方法及其系统,该方法包括:系统初始化步骤:根据输入的系统安全参数和全局属性集生成系统的公钥和主私钥;秘钥生成步骤:根据公钥和主私钥生成用户秘钥SK;文件加密和索引建立步骤:利用对称加密算法对上传的用户健康记录进行加密,利用公钥加密算法对从健康记录提取的关键字建立索引;搜索权限验证步骤:利用用户收到的授权控制密文ACC对用户搜索加密健康记录的权限进行验证,并保存验证结果AVR;生成陷门步骤:根据输入的秘钥SK和权限验证结果AVR生成陷门TD;搜索匹配步骤:根据陷门TD并利用搜索算法搜索匹配的健康记录。

Description

一种密文搜索权限验证方法及其系统 技术领域
本发明属于数据处理领域,尤其涉及在移动医疗网络中支持授权控制的密文搜索领域。
背景技术
基于物联网、云计算、可穿戴技术的快速发展,由可穿戴设备、接入设备、云服务器所组成的移动医疗网络逐渐形成,将极大地提升现有的医疗水平与效率。可穿戴设备附着在人体将采集用户的健康数据,包括血压、心率等,健康数据通过接入设备上传到云服务器,医生等通过云服务器搜索或下载用户健康数据,进而实时监控到用户的健康状况。
然而,由于健康数据属于用户隐私,云服务器也是不完全可信的,任何健康数据的泄露将影响到用户财产甚至生命状况。数据加密是保障用户隐私的最直接方式之一,但与此同时健康数据的灵活性受到影响,因此,医生如何对加密数据进行高效的搜索操作一直是业界亟需解决的问题。
发明内容
本发明所要解决的技术问题为提高对加密数据进行搜索操作的效率,既保证用户健康数据的隐私,又能对用户健康数据进行高效处理。
为解决上述技术问题,本发明是这样实现的,一种密文搜索权限验证方法,其中,所述方法包括:
系统初始化步骤:根据输入的系统安全参数κ和全局属性集N生成系统的公钥PK和主私钥MSK;
秘钥生成步骤:根据所述公钥PK和主私钥MSK生成用户秘钥SK;
文件加密和索引建立步骤:利用对称加密算法对上传的用户健康记录进行加密,利用公钥加密算法对从健康记录提取的关键字建立索引;
搜索权限验证步骤:利用用户收到的授权控制密文ACC对用户搜索加密健康记录的权限进行验证,并保存验证结果AVR;
生成陷门步骤:根据输入的所述秘钥SK和所述搜索权限验证结果AVR生成陷门TD;
搜索匹配步骤:根据所述陷门TD并利用搜索算法搜索匹配的健康记录。
优选的,所述系统初始化步骤包括:
输入系统安全参数κ和全局属性集N,并选择一个阶为素数p、生成元为g的双线性群G0,其中,e:G0×G0→GT表示双线性映射;
随机选择α,β∈Zp以及h∈G0,并对任一aj∈N,选择随机数vj∈Zp并计算
Figure PCTCN2017114027-appb-000001
生成系统的公钥PK和主私钥MSK,其中,
Figure PCTCN2017114027-appb-000002
MSK={α,gβ,{vj|aj∈N}}。
优选的,所述秘钥生成步骤包括:
输入所述公钥PK、主私钥MSK以及属性集
Figure PCTCN2017114027-appb-000003
选择随机数r∈Zp,并生成用户秘钥SK,其中,
Figure PCTCN2017114027-appb-000004
优选的,所述文件加密和索引建立步骤包括:
在将l个用户健康记录D={d1,…,dl}上传到医疗健康服务器之前,向每个记录dj分配一个标识符idj(j=1,…,l),并从D中提取t个关键字W={w1,…,wt},然后使用对称加密算法对上传的用户健康记录进行加密,加密的健康记录表示为C={c1,…,cl},其中ci是di的密文,i=1,…,l,令表示与关键词wj相关联的标识符集,CD(wj)表示与存储在D(wj)中的标识符相关的密文,对于每个关键字wj∈W,数据属主将D(wj)添加到对应于wj的密文的桶bj
IndGen(PK,T,W)→CI,索引生成算法将公钥PK,访问树T和关键字集合 W作为输入,对于访问树T中的每个节点x,选择多项式qx,从根节点R开始,以自顶向下的方式选择多项式,对于T中的每个节点x,阈值tx仅需要比qx的阶dx多1,即tx=dx+1;
从R开始,数据属主随机选择s∈Zp,设置qR(0)=s,接着随机选择dR个其它节点来完整的定义多项式qR,对于每个非根节点x,设定qx(0)=qparent(x)(index(x)),并随机选择dx个其它节点来完整的定义qx
在访问树T中,令X表示与叶子节点相对应的属性构成的集合,通过访问结构树T,创建授权控制密文ACC:
Figure PCTCN2017114027-appb-000005
构造与关键字集W相关联的密文KC(简称为关键字密文):
Figure PCTCN2017114027-appb-000006
数据属主将索引密文CI整合为
CI={ACC,KC}。
优选的,所述搜索权限验证步骤包括:
在用户首次向所述医疗健康服务器发送搜索请求时,从所述医疗健康服务器接收到授权控制密文ACC;
如果属性集N′不满足嵌入在所述授权控制密文ACC中的访问树T,则在解密之后得到null;
如果属性集N′满足嵌入在所述授权控制密文ACC中的访问树T,则可生成有效的陷门用于搜索,并保存验证结果AVR。
优选的,所述生成陷门步骤包括:
输入所述秘钥SK、所述搜索权限验证结果AVR以及关键字
Figure PCTCN2017114027-appb-000007
其中,所述关键字
Figure PCTCN2017114027-appb-000008
表示用户想要搜索包含关键字
Figure PCTCN2017114027-appb-000009
的加密健康记录;
随机选择u∈Zp,并生成陷门
Figure PCTCN2017114027-appb-000010
优选的,所述搜索匹配步骤包括:
以索引密文CI和所述陷门TD作为输入以检验等式
Figure PCTCN2017114027-appb-000011
是否成立;
若成立,则搜索到与所述陷门TD相匹配的桶bi以及相应的用户健康记录CD(wi),返回搜索结果{bi,CD(wi)}给用户。
本发明还提供了一种密文搜索权限验证系统,其中,所述系统包括:
系统初始化模块,用于根据输入的系统安全参数κ和全局属性集N生成系统的公钥PK和主私钥MSK;
秘钥生成模块,用于根据所述公钥PK和主私钥MSK生成用户秘钥SK;
文件加密和索引建立模块,用于利用对称加密算法对上传的用户健康记录进行加密,利用公钥加密算法对从健康记录提取的关键字建立索引;
搜索权限验证模块,用于利用用户收到的授权控制密文ACC对用户搜索加密健康记录的权限进行验证,并保存验证结果AVR;
生成陷门模块,用于根据输入的所述秘钥SK和所述搜索权限验证结果AVR生成陷门TD;
搜索匹配模块,用于根据所述陷门TD并利用搜索算法搜索匹配的健康记录。
优选的,所述系统初始化模块具体用于:
输入系统安全参数κ和全局属性集N,并选择一个阶为素数p、生成元为g的双线性群G0,其中,e:G0×G0→GT表示双线性映射;
随机选择α,β∈Zp以及h∈G0,并对任一aj∈N,选择随机数vj∈Zp并计算
Figure PCTCN2017114027-appb-000012
生成系统的公钥PK和主私钥MSK,其中,
Figure PCTCN2017114027-appb-000013
MSK={α,gβ,{vj|aj∈N}}。
优选的,所述秘钥生成模块具体用于:
输入所述公钥PK、主私钥MSK以及属性集
Figure PCTCN2017114027-appb-000014
选择随机数r∈Zp,并生成用户秘钥SK,其中,
Figure PCTCN2017114027-appb-000015
优选的,所述文件加密和索引建立模块具体用于:
在将l个用户健康记录D={d1,…,dl}上传到医疗健康服务器之前,向每个记录dj分配一个标识符idj(j=1,…,l),并从D中提取t个关键字W={w1,…,wt},然后使用对称加密算法对上传的用户健康记录进行加密,加密的健康记录表示为C={c1,…,cl},其中ci是di的密文,i=1,…,l,令表示与关键词wj相关联的标识符集,CD(wj)表示与存储在D(wj)中的标识符相关的密文,对于每个关键字wj∈W,数据属主将D(wj)添加到对应于wj的密文的桶bj
IndGen(PK,T,W)→CI,索引生成算法将公钥PK,访问树T和关键字集合W作为输入,对于访问树T中的每个节点x,选择多项式qx,从根节点R开始,以自顶向下的方式选择多项式,对于T中的每个节点x,阈值tx仅需要比qx的阶dx多1,即tx=dx+1;
从R开始,数据属主随机选择s∈Zp,设置qR(0)=s,接着随机选择dR个其它节点来完整的定义多项式qR,对于每个非根节点x,设定qx(0)=qparent(x)(index(x)),并随机选择dx个其它节点来完整的定义qx
在访问树T中,令X表示与叶子节点相对应的属性构成的集合,通过访问结构树T,创建授权控制密文ACC:
Figure PCTCN2017114027-appb-000016
构造与关键字集W相关联的密文KC(简称为关键字密文):
Figure PCTCN2017114027-appb-000017
数据属主将索引密文CI整合为
CI={ACC,KC}。
优选的,所述搜索权限验证模块具体用于:
在用户首次向所述医疗健康服务器发送搜索请求时,从所述医疗健康服务器接收到授权控制密文ACC;
如果属性集N′不满足嵌入在所述授权控制密文ACC中的访问树T,则在解密之后得到null;
如果属性集N′满足嵌入在所述授权控制密文ACC中的访问树T,则可生成有效的陷门用于搜索,并保存验证结果AVR。
优选的,所述生成陷门模块具体用于:
输入所述秘钥SK、所述搜索权限验证结果AVR以及关键字
Figure PCTCN2017114027-appb-000018
其中,所述关键字
Figure PCTCN2017114027-appb-000019
表示用户想要搜索包含关键字
Figure PCTCN2017114027-appb-000020
的加密健康记录;
随机选择u∈Zp,并生成陷门
Figure PCTCN2017114027-appb-000021
优选的,所述搜索匹配模块具体用于:
以索引密文CI和所述陷门TD作为输入以检验等式
Figure PCTCN2017114027-appb-000022
是否成立;
若成立,则搜索到与所述陷门TD相匹配的桶bi以及相应的用户健康记录CD(wi),返回搜索结果{bi,CD(wi)}给用户。
本发明与现有技术相比,有益效果在于:本发明的技术方案支持搜索权限控制,只有具有权限的用户才能对密文进行搜索,本发明的技术方案既保证用户健康数据的隐私,又能对用户健康数据进行高效处理。
附图说明
图1是本发明实施例提供的密文搜索权限验证方法流程图;
图2是本发明实施例提供的密文搜索权限验证系统结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实 施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参阅图1,为本发明实施例提供的密文搜索权限验证方法流程图。
在步骤S1中,系统初始化步骤:根据输入的系统安全参数κ和全局属性集N生成系统的公钥PK和主私钥MSK。
在本实施例中,假设系统有n个属性,用N={a1,a2,…,an}表示,令e:G0×G0→GT表示一个双线性映射,其中G0是素数p、生成元为g的双线性群,设H1:{0,1}*→Zp和H2:{0,1}*→G0表示两个抗碰撞的哈希函数,对i∈Zp以及Zp中的元素集合S,拉格朗日系数Δi,S可定义为
Figure PCTCN2017114027-appb-000023
在本实施例中,所述系统初始化步骤S1为Setup(1κ,L)→(PK,MSK),具体包括:
输入系统安全参数κ和全局属性集N,并选择一个阶为素数p、生成元为g的双线性群G0,其中,e:G0×G0→GT表示双线性映射;
随机选择α,β∈Zp以及h∈G0,并对任一aj∈N,选择随机数vj∈Zp并计算
Figure PCTCN2017114027-appb-000024
生成系统的公钥PK和主私钥MSK,其中,
Figure PCTCN2017114027-appb-000025
MSK={α,gβ,{vj|aj∈N}}。
在步骤S2中,秘钥生成步骤:根据所述公钥PK和主私钥MSK生成用户秘钥SK。
在本实施例中,所述秘钥生成步骤S2为KeyGen(PK,MSK,N′)→SK,具体包括:
输入所述公钥PK、主私钥MSK以及属性集
Figure PCTCN2017114027-appb-000026
选择随机数r∈Zp,并生成用户秘钥SK,其中,
Figure PCTCN2017114027-appb-000027
在步骤S3中,文件加密和索引建立步骤:利用对称加密算法对上传的用户健康记录进行加密,利用公钥加密算法对从健康记录提取的关键字建立索引。
在本实施例中,所述文件加密和索引建立步骤S3包括:
数据属主要上传l个用户健康记录D={d1,…,dl}并存储到医疗健康服务器上,在上传这些记录之前,数据所有者向每个记录dj分配一个标识符idj(j=1,…,l),并从D中提取t个关键字W={w1,…,wt},然后使用对称加密算法(例如AES算法)对上传的用户健康记录进行加密,其中,用户健康记录的数量远远大于关键字的数量,即l>>t,加密的用户健康记录表示为C={c1,…,cl},其中ci是di的密文,i=1,…,l,令D(wj)表示与关键字wj相关联的标识符集,CD(wj)表示与存储在D(wj)中的标识符相关的密文,例如,如果D(wj)={id1,id2},则CD(wj)={c1,c2},对于每个关键字wj∈W,数据属主将D(wj)添加到对应于wj的密文的桶bj
在本实施例中,索引建立算法IndGen包括:
IndGen(PK,T,W)→CI。索引生成算法将公钥PK,访问树T和关键字集合W作为输入。对于访问树T中的每个节点x,选择多项式qx。从根节点R开始,以自顶向下的方式选择多项式。对于T中的每个节点x,阈值tx仅需要比qx的阶dx多1,即tx=dx+1。
从R开始,数据属主随机选择s∈Zp,设置qR(0)=s,接着随机选择dR个其它节点来完整的定义多项式qR。对于每个非根节点x,设定qx(0)=qparent(x)(index(x)),并随机选择dx个其它节点来完整的定义qx
在访问树T中,令X表示与叶子节点相对应的属性构成的集合。通过访问结构树T,创建授权控制密文ACC:
Figure PCTCN2017114027-appb-000028
构造与关键字集W相关联的密文KC(简称为关键字密文):
Figure PCTCN2017114027-appb-000029
数据属主将索引密文CI整合为:
CI={ACC,KC}。
在步骤S4中,授权验证步骤:利用用户收到的授权控制密文ACC对用户搜索加密健康记录的权限进行验证,并保存验证结果AVR。
在本实施例中,所述搜索权限验证步骤S4包括:
在用户首次向所述医疗健康服务器发送搜索请求时,从所述医疗健康服务器接收到授权控制密文ACC;
如果属性集N′不满足嵌入在所述授权控制密文ACC中的访问树T,则在解密之后得到null;
如果属性集N′满足嵌入在所述授权控制密文ACC中的访问树T,则可生成有效的陷门用于搜索,并保存验证结果AVR。
具体而言,当用户首次向医疗健康服务器发送搜索请求时,用户将收到授权控制密文ACC,以检查用户他或她是否有权搜索加密的健康数据。如果属性集N′不满足嵌入在ACC中的访问树T,则解密之后得到null,这表示用户没有权利搜索加密的健康记录。否则,可生成有效的陷门用于搜索。
用户收到授权控制密文
Figure PCTCN2017114027-appb-000030
然后执行以下操作:
DecryptVal(PK,ACC,SK)→AVR。由于验证过程被定义为递归算法,用户需要定义递归算法DecValNode(ACC,SK,x),其输入授权控制密文ACC,密钥SK和T中的节点x;
1)如果x是叶子节点,则令aj=att(x)。如果
Figure PCTCN2017114027-appb-000031
则DecValNode(ACC,SK,x)=null。否则,计算
Figure PCTCN2017114027-appb-000032
2)如果x是非叶子节点,则递归算法DecValNode(ACC,SK,x)定义如下:对于节点x的所有子节点z,执行Fz=DecValNode(ACC,SK,z)。设Sx是任意的kx个子节 点z构成的集合,则Fz≠null。如果这样的集合不存在,那么Fz=null。否则,计算Fx如下:
Figure PCTCN2017114027-appb-000033
其中,j=index(z),S′x={index(z):z∈Sx}。
然后,通过调用T的根节点R的函数DecValNode(ACC,SK,R),定义解密算法的操作如下。如果N′满足T,则用户可计算得到
Figure PCTCN2017114027-appb-000034
以及
Figure PCTCN2017114027-appb-000035
最后,用户保存验证结果AVR={A}。
在步骤S5中,生成陷门步骤:根据输入的所述秘钥SK和所述搜索权限验证结果AVR生成陷门TD。
在本实施例中,如果用户想要搜索包含关键字
Figure PCTCN2017114027-appb-000036
的加密健康记录,则运行以下算法来生成与
Figure PCTCN2017114027-appb-000037
相关联的陷门。所述生成陷门步骤S5为
Figure PCTCN2017114027-appb-000038
具体包括:
输入所述秘钥SK、所述搜索权限验证结果AVR以及关键字
Figure PCTCN2017114027-appb-000039
其中,所述关键字
Figure PCTCN2017114027-appb-000040
表示用户想要搜索包含关键字
Figure PCTCN2017114027-appb-000041
的加密健康记录;
随机选择u∈Zp,并生成陷门
Figure PCTCN2017114027-appb-000042
最后,用户向医疗健康服务器提交TD。
在步骤S6中,搜索匹配步骤:根据所述陷门TD并利用搜索算法搜索匹配 的健康记录。
在本实施例中,接收到用户的陷门TD后,医疗健康服务器执行以下算法来搜索匹配的健康记录。所述搜索匹配步骤S6为Search(CI,VI,TD)→Search result,具体包括:
以索引密文CI和所述陷门TD作为输入以检验等式
Figure PCTCN2017114027-appb-000043
是否成立;
若成立,则搜索到与所述陷门TD相匹配的桶bi以及相应的用户健康记录CD(wi),返回搜索结果{bi,CD(wi)}给用户。
本发明提供的一种密文搜索权限验证方法,支持授权控制,只有具有权限的用户才能对密文进行搜索,既保证用户健康数据的隐私,又能对用户健康数据进行高效处理。
请参阅图2,为本发明实施例提供的密文搜索权限验证系统结构示意图。
在本实施例中,密文搜索权限验证系统10具体包括系统初始化模块11、秘钥生成模块12、文件加密和建立索引模块13、搜索权限验证模块14、生成陷门模块15、搜索匹配模块16。
系统初始化模块11,用于根据输入的系统安全参数κ和全局属性集N生成系统的公钥PK和主私钥MSK。
在本实施例中,所述系统初始化模块11具体用于:
输入系统安全参数κ和全局属性集N,并选择一个阶为素数p、生成元为g的双线性群G0,其中,e:G0×G0→GT表示双线性映射;
随机选择α,β∈Zp以及h∈G0,并对任一aj∈N,选择随机数vj∈Zp并计算
Figure PCTCN2017114027-appb-000044
生成系统的公钥PK和主私钥MSK,其中,PK={G0,g,gα,e(g,g)β,{Vj=gvj|aj∈N}},MSK={α,gβ,{vj|aj∈N}}。
秘钥生成模块12,用于根据所述公钥PK和主私钥MSK生成用户秘钥SK。
在本实施例中,所述秘钥生成模块12具体用于:
输入所述公钥PK、主私钥MSK以及属性集
Figure PCTCN2017114027-appb-000045
选择随机数r∈Zp,并生成用户秘钥SK,其中,
Figure PCTCN2017114027-appb-000046
文件加密和索引建立模块13,用于利用对称加密算法对上传的用户健康记录进行加密,利用公钥加密算法对从健康记录提取的关键字建立索引。
在本实施例中,所述文件加密和建立索引模块13具体用于:
在将l个用户健康记录D={d1,…,dl}上传到医疗健康服务器之前,向每个记录dj分配一个标识符idj(j=1,…,l),并从D中提取t个关键字W={w1,…,wt},然后使用对称加密算法对上传的用户健康记录进行加密。加密的健康记录表示为C={c1,…,cl},其中ci是di的密文,i=1,…,l。令表示与关键词wj相关联的标识符集,CD(wj)表示与存储在D(wj)中的标识符相关的密文。对于每个关键字wj∈W,数据属主将D(wj)添加到对应于wj的密文的桶bj
IndGen(PK,T,W)→CI。索引生成算法将公钥PK,访问树T和关键字集合W作为输入。对于访问树T中的每个节点x,选择多项式qx。从根节点R开始,以自顶向下的方式选择多项式。对于T中的每个节点x,阈值tx仅需要比qx的阶dx多1,即tx=dx+1。
从R开始,数据属主随机选择s∈Zp,设置qR(0)=s,接着随机选择dR个其它节点来完整的定义多项式qR。对于每个非根节点x,设定qx(0)=qparent(x)(index(x)),并随机选择dx个其它节点来完整的定义qx
在访问树T中,令X表示与叶子节点相对应的属性构成的集合。通过访问结构树T,创建授权控制密文ACC:
Figure PCTCN2017114027-appb-000047
构造与关键字集W相关联的密文KC(简称为关键字密文):
Figure PCTCN2017114027-appb-000048
数据属主将索引密文CI整合为
CI={ACC,KC}。
授权验证模块14,用于利用用户收到的授权控制密文ACC对用户搜索加密健康记录的权限进行验证,并保存验证结果AVR。
在本实施例中,所述搜索权限验证模块14具体用于:
在用户首次向所述医疗健康服务器发送搜索请求时,从所述医疗健康服务器接收到授权控制密文ACC;
如果属性集N′不满足嵌入在所述授权控制密文ACC中的访问树T,则在解密之后得到null;
如果属性集N′满足嵌入在所述授权控制密文ACC中的访问树T,则可生成有效的陷门用于搜索,并保存搜索权限验证结果AVR。
生成陷门模块15,用于根据输入的所述秘钥SK和所述搜索权限验证结果AVR生成陷门TD。
在本实施例中,所述生成陷门模块15具体用于:
输入所述秘钥SK、所述搜索权限验证结果AVR以及关键字
Figure PCTCN2017114027-appb-000049
其中,所述关键字
Figure PCTCN2017114027-appb-000050
表示用户想要搜索包含关键字
Figure PCTCN2017114027-appb-000051
的加密健康记录;
随机选择u∈Zp,并生成陷门
Figure PCTCN2017114027-appb-000052
搜索匹配模块16,用于根据所述陷门TD并利用搜索算法搜索匹配的健康记录。
在本实施例中,所述搜索匹配模块16具体用于:
以索引密文CI和所述陷门TD作为输入以检验等式
Figure PCTCN2017114027-appb-000053
是否成立;
若成立,则搜索到与所述陷门TD相匹配的桶bi以及相应的用户健康记录CD(wi),返回搜索结果{bi,CD(wi)}给用户。
在本实施例中,各个模块中的处理流程分别和前述方法步骤中的步骤一一 对应,在此不做重复描述。
本发明提供的一种密文搜索权限验证系统10,支持搜索权限控制,只有具有权限的用户才能对密文进行搜索,既保证用户健康数据的隐私,又能对用户健康数据进行高效处理。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (14)

  1. 一种密文搜索权限验证方法,其特征在于,所述方法包括:
    系统初始化步骤:根据输入的系统安全参数κ和全局属性集N生成系统的公钥PK和主私钥MSK;
    秘钥生成步骤:根据所述公钥PK和主私钥MSK生成用户秘钥SK;
    文件加密和索引建立步骤:利用对称加密算法对上传的用户健康记录进行加密,利用公钥加密算法对从健康记录提取的关键字建立索引;
    搜索权限验证步骤:利用用户收到的授权控制密文ACC对用户搜索加密健康记录的权限进行验证,并保存验证结果AVR;
    生成陷门步骤:根据输入的所述秘钥SK和所述权限验证结果AVR生成陷门TD;
    搜索匹配步骤:根据所述陷门TD并利用搜索算法搜索匹配的健康记录。
  2. 如权利要求1所述的密文搜索权限验证方法,其特征在于,所述系统初始化步骤包括:
    输入系统安全参数κ和全局属性集N,并选择一个阶为素数p、生成元为g的双线性群G0,其中,e:G0×G0→GT表示双线性映射;
    随机选择α,β∈Zp以及h∈G0,并对任一aj∈N,选择随机数vj∈Zp并计算
    Figure PCTCN2017114027-appb-100001
    生成系统的公钥PK和主私钥MSK,其中,
    Figure PCTCN2017114027-appb-100002
    MSK={α,gβ,{vj|aj∈N}}。
  3. 如权利要求2所述的密文搜索权限验证方法,其特征在于,所述秘钥生成步骤包括:
    输入所述公钥PK、主私钥MSK以及属性集
    Figure PCTCN2017114027-appb-100003
    选择随机数r∈Zp,并生成用户秘钥SK,其中,
    Figure PCTCN2017114027-appb-100004
  4. 如权利要求3所述的密文搜索权限验证方法,其特征在于,所述文件加 密和索引建立步骤包括:
    在将l个用户健康记录D={d1,…,dl}上传到医疗健康服务器之前,向每个记录dj分配一个标识符idj(j=1,…,l),并从D中提取t个关键字W={w1,…,wt},然后使用对称加密算法对上传的用户健康记录进行加密,加密的健康记录表示为C={c1,…,cl},其中ci是di的密文,i=1,…,l,令表示与关键词wj相关联的标识符集,CD(wj)表示与存储在D(wj)中的标识符相关的密文,对于每个关键字wj∈W,数据属主将D(wj)添加到对应于wj的密文的桶bj
    IndGen(PK,T,W)→CI,索引生成算法将公钥PK,访问树T和关键字集合W作为输入,对于访问树T中的每个节点x,选择多项式qx,从根节点R开始,以自顶向下的方式选择多项式,对于T中的每个节点x,阈值tx仅需要比qx的阶dx多1,即tx=dx+1;
    从R开始,数据属主随机选择s∈Zp,设置qR(0)=s,接着随机选择dR个其它节点来完整的定义多项式qR,对于每个非根节点x,设定qx(0)=qparent(x)(index(x)),并随机选择dx个其它节点来完整的定义qx
    在访问树T中,令X表示与叶子节点相对应的属性构成的集合,通过访问结构树T,创建授权控制密文ACC:
    Figure PCTCN2017114027-appb-100005
    构造与关键字集W相关联的密文KC(简称为关键字密文):
    Figure PCTCN2017114027-appb-100006
    数据属主将索引密文CI整合为
    CI={ACC,KC}。
  5. 如权利要求4所述的密文搜索权限验证方法,其特征在于,所述搜索权限验证步骤包括:
    在用户首次向所述医疗健康服务器发送搜索请求时,从所述医疗健康服务器接收到授权控制密文ACC;
    如果属性集N′不满足嵌入在所述授权控制密文ACC中的访问树T,则在解密之后得到null;
    如果属性集N′满足嵌入在所述授权控制密文ACC中的访问树T,则可生成有效的陷门用于搜索,并保存验证结果AVR。
  6. 如权利要求5所述的密文搜索权限验证方法,其特征在于,所述生成陷门步骤包括:
    输入所述秘钥SK、所述搜索权限验证结果AVR以及关键字
    Figure PCTCN2017114027-appb-100007
    其中,所述关键字
    Figure PCTCN2017114027-appb-100008
    表示用户想要搜索包含关键字
    Figure PCTCN2017114027-appb-100009
    的加密健康记录;
    随机选择u∈Zp,并生成陷门
    Figure PCTCN2017114027-appb-100010
  7. 如权利要求6所述的密文搜索权限验证方法,其特征在于,所述搜索匹配步骤包括:
    以索引密文CI和所述陷门TD作为输入以检验等式
    Figure PCTCN2017114027-appb-100011
    是否成立;
    若成立,则搜索到与所述陷门TD相匹配的桶bi以及相应的用户健康记录CD(wi),返回搜索结果{bi,CD(wi)}给用户。
  8. 一种密文搜索权限验证系统,其特征在于,所述系统包括:
    系统初始化模块,用于根据输入的系统安全参数κ和全局属性集N生成系统的公钥PK和主私钥MSK;
    秘钥生成模块,用于根据所述公钥PK和主私钥MSK生成用户秘钥SK;
    文件加密和索引建立模块,用于利用对称加密算法对上传的用户健康记录进行加密,利用公钥加密算法对从健康记录提取的关键字建立索引;
    搜索权限验证模块,用于利用用户收到的授权控制密文ACC对用户搜索加密健康记录的权限进行验证,并保存验证结果AVR;
    生成陷门模块,用于根据输入的所述秘钥SK和所述权限验证结果AVR生成陷门TD;
    搜索匹配模块,用于根据所述陷门TD并利用搜索算法搜索匹配的健康记录。
  9. 如权利要求8所述的密文搜索权限验证系统,其特征在于,所述系统初始化模块具体用于:
    输入系统安全参数κ和全局属性集N,并选择一个阶为素数p、生成元为g的双线性群G0,其中,e:G0×G0→GT表示双线性映射;
    随机选择α,β∈Zp以及h∈G0,并对任一aj∈N,选择随机数vj∈Zp并计算
    Figure PCTCN2017114027-appb-100012
    生成系统的公钥PK和主私钥MSK,其中,
    Figure PCTCN2017114027-appb-100013
    MSK={α,gβ,{vj|aj∈N}}。
  10. 如权利要求9所述的密文搜索权限验证系统,其特征在于,所述秘钥生成模块具体用于:
    输入所述公钥PK、主私钥MSK以及属性集
    Figure PCTCN2017114027-appb-100014
    选择随机数r∈Zp,并生成用户秘钥SK,其中,
    Figure PCTCN2017114027-appb-100015
  11. 如权利要求10所述的密文搜索权限验证系统,其特征在于,所述文件加密和索引建立模块具体用于:
    在将l个用户健康记录D={d1,…,dl}上传到医疗健康服务器之前,向每个记录dj分配一个标识符idj(j=1,…,l),并从D中提取t个关键字W={w1,…,wt},然后使用对称加密算法对上传的用户健康记录进行加密,加密的健康记录表示为C={c1,…,cl},其中ci是di的密文,i=1,…,l,令表示与关键词wj相关联的标识符集,CD(wj)表示与存储在D(wj)中的标识符相关的密文,对于每个关键字wj∈W,数据属主将D(wj)添加到对应于wj的密文的桶bj
    IndGen(PK,T,W)→CI,索引生成算法将公钥PK,访问树T和关键字集合W作为输入,对于访问树T中的每个节点x,选择多项式qx,从根节点R开始,以自顶向下的方式选择多项式,对于T中的每个节点x,阈值tx仅需要比qx的 阶dx多1,即tx=dx+1;
    从R开始,数据属主随机选择s∈Zp,设置qR(0)=s,接着随机选择dR个其它节点来完整的定义多项式qR,对于每个非根节点x,设定qx(0)=qparent(x)(index(x)),并随机选择dx个其它节点来完整的定义qx
    在访问树T中,令X表示与叶子节点相对应的属性构成的集合,通过访问结构树T,创建授权控制密文ACC:
    Figure PCTCN2017114027-appb-100016
    构造与关键字集W相关联的密文KC(简称为关键字密文):
    Figure PCTCN2017114027-appb-100017
    数据属主将索引密文CI整合为
    CI={ACC,KC}。
  12. 如权利要求11所述的密文搜索权限验证系统,其特征在于,所述搜索权限验证模块具体用于:
    在用户首次向所述医疗健康服务器发送搜索请求时,从所述医疗健康服务器接收到授权控制密文ACC;
    如果属性集N′不满足嵌入在所述授权控制密文ACC中的访问树T,则在解密之后得到null;
    如果属性集N′满足嵌入在所述授权控制密文ACC中的访问树T,则可生成有效的陷门用于搜索,并保存验证结果AVR。
  13. 如权利要求12所述的密文搜索权限验证系统,其特征在于,所述生成陷门模块具体用于:
    输入所述秘钥SK、所述搜索权限验证结果AVR以及关键字
    Figure PCTCN2017114027-appb-100018
    其中,所述关键字
    Figure PCTCN2017114027-appb-100019
    表示用户想要搜索包含关键字
    Figure PCTCN2017114027-appb-100020
    的加密健康记录;
    随机选择u∈Zp,并生成陷门
    Figure PCTCN2017114027-appb-100021
  14. 如权利要求13所述的密文搜索权限验证系统,其特征在于,所述搜索匹配模块具体用于:
    以索引密文CI和所述陷门TD作为输入以检验等式
    Figure PCTCN2017114027-appb-100022
    是否成立;
    若成立,则搜索到与所述陷门TD相匹配的桶bi以及相应的用户健康记录CD(wi),返回搜索结果{bi,CD(wi)}给用户。
PCT/CN2017/114027 2017-11-30 2017-11-30 一种密文搜索权限验证方法及其系统 WO2019104674A1 (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/114027 WO2019104674A1 (zh) 2017-11-30 2017-11-30 一种密文搜索权限验证方法及其系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/114027 WO2019104674A1 (zh) 2017-11-30 2017-11-30 一种密文搜索权限验证方法及其系统

Publications (1)

Publication Number Publication Date
WO2019104674A1 true WO2019104674A1 (zh) 2019-06-06

Family

ID=66665291

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/114027 WO2019104674A1 (zh) 2017-11-30 2017-11-30 一种密文搜索权限验证方法及其系统

Country Status (1)

Country Link
WO (1) WO2019104674A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110674110A (zh) * 2019-09-09 2020-01-10 中国建设银行股份有限公司 银行分布式数据库的构建方法及装置
CN112861177A (zh) * 2021-02-05 2021-05-28 深圳市辰星瑞腾科技有限公司 一种基于物联网的计算机防卫系统
CN115442102A (zh) * 2022-08-29 2022-12-06 成都安恒信息技术有限公司 一种基于sm9算法的等式测试方法
CN115442102B (zh) * 2022-08-29 2024-05-17 成都安恒信息技术有限公司 一种基于sm9算法的等式测试方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160315772A1 (en) * 2015-04-24 2016-10-27 Red Hat, Inc. Kerberos preauthentication with j-pake
CN106341236A (zh) * 2016-09-09 2017-01-18 深圳大学 一种面向云存储服务平台的访问控制方法及其系统
CN107122449A (zh) * 2017-04-25 2017-09-01 安徽大学 一种多用户环境下基于公钥加密的文件分类方法和系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160315772A1 (en) * 2015-04-24 2016-10-27 Red Hat, Inc. Kerberos preauthentication with j-pake
CN106341236A (zh) * 2016-09-09 2017-01-18 深圳大学 一种面向云存储服务平台的访问控制方法及其系统
CN107122449A (zh) * 2017-04-25 2017-09-01 安徽大学 一种多用户环境下基于公钥加密的文件分类方法和系统

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110674110A (zh) * 2019-09-09 2020-01-10 中国建设银行股份有限公司 银行分布式数据库的构建方法及装置
CN110674110B (zh) * 2019-09-09 2022-07-05 中国建设银行股份有限公司 银行分布式数据库的构建方法及装置
CN112861177A (zh) * 2021-02-05 2021-05-28 深圳市辰星瑞腾科技有限公司 一种基于物联网的计算机防卫系统
CN115442102A (zh) * 2022-08-29 2022-12-06 成都安恒信息技术有限公司 一种基于sm9算法的等式测试方法
CN115442102B (zh) * 2022-08-29 2024-05-17 成都安恒信息技术有限公司 一种基于sm9算法的等式测试方法

Similar Documents

Publication Publication Date Title
US11973889B2 (en) Searchable encrypted data sharing method and system based on blockchain and homomorphic encryption
CN108092766B (zh) 一种密文搜索权限验证方法及其系统
Ge et al. Towards achieving keyword search over dynamic encrypted cloud data with symmetric-key based verification
CN111488598B (zh) 访问控制方法、装置、计算机设备和存储介质
WO2019090988A1 (zh) 一种基于动态规则的密码学属性基访问控制方法与系统
CN108494768B (zh) 一种支持访问控制的密文搜索方法及系统
Tong et al. Cloud-assisted mobile-access of health data with privacy and auditability
CN104038349B (zh) 一种基于kp‑abe的有效可验证的公钥可搜索加密方法
Lu et al. Lightweight public key authenticated encryption with keyword search against adaptively-chosen-targets adversaries for mobile devices
CN103329478B (zh) 密码系统以及密码系统的密码处理方法
WO2017181911A1 (zh) 基于公钥可搜索加密的文件存储、搜索方法及存储系统
WO2016106752A1 (zh) 一种共享数据的访问控制方法、装置及系统
WO2018113563A1 (zh) 一种具有访问控制功能的数据库查询方法和系统
CN107359998B (zh) 一种便携式智能口令管理体制的建立与操作方法
CN112365945B (zh) 基于区块链的电子病历细粒度访问控制和密文可搜索方法
CN108171066A (zh) 一种医疗云中隐私保护下的关键词跨域搜索方法及系统
CN112543099B (zh) 一种基于边缘计算的无证书可搜索加密方法
CN109344637B (zh) 一种可搜索和保护隐私的数据共享云辅助电子医疗系统
Wang et al. Ciphertext-policy attribute-based encryption supporting policy-hiding and cloud auditing in smart health
CN113411323A (zh) 基于属性加密的医疗病历数据访问控制系统及方法
WO2019104674A1 (zh) 一种密文搜索权限验证方法及其系统
CN113836571B (zh) 基于云和区块链的医疗数据拥有终端位置匹配方法及系统
Alqarni et al. Authenticated wireless links between a drone and sensors using a blockchain: Case of smart farming
Han et al. An efficient lucas sequence-based batch auditing scheme for the internet of medical things
CN108632257B (zh) 支持分层搜索的加密健康记录的获取方法和系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17933705

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 07/09/2020)

122 Ep: pct application non-entry in european phase

Ref document number: 17933705

Country of ref document: EP

Kind code of ref document: A1