CN110263570A - 一种实现高效相似性查询和访问控制的基因数据脱敏方法 - Google Patents
一种实现高效相似性查询和访问控制的基因数据脱敏方法 Download PDFInfo
- Publication number
- CN110263570A CN110263570A CN201910387357.2A CN201910387357A CN110263570A CN 110263570 A CN110263570 A CN 110263570A CN 201910387357 A CN201910387357 A CN 201910387357A CN 110263570 A CN110263570 A CN 110263570A
- Authority
- CN
- China
- Prior art keywords
- data
- gene
- gene order
- data owner
- cloud server
- 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.)
- Granted
Links
- 108090000623 proteins and genes Proteins 0.000 title claims abstract description 164
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000000586 desensitisation Methods 0.000 title claims abstract description 19
- 230000008569 process Effects 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims description 27
- 230000003190 augmentative effect Effects 0.000 claims description 25
- 239000011159 matrix material Substances 0.000 claims description 24
- 230000008859 change Effects 0.000 claims description 6
- 238000006073 displacement reaction Methods 0.000 claims description 5
- 108091028043 Nucleic acid sequence Proteins 0.000 claims description 3
- 230000003321 amplification Effects 0.000 claims description 3
- 238000003199 nucleic acid amplification method Methods 0.000 claims description 3
- 238000011282 treatment Methods 0.000 claims description 3
- 238000013475 authorization Methods 0.000 abstract description 2
- 230000008901 benefit Effects 0.000 description 2
- 201000010099 disease Diseases 0.000 description 2
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 2
- 238000012946 outsourcing Methods 0.000 description 2
- 241000208340 Araliaceae Species 0.000 description 1
- 235000005035 Panax pseudoginseng ssp. pseudoginseng Nutrition 0.000 description 1
- 235000003140 Panax quinquefolius Nutrition 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 235000008434 ginseng Nutrition 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000011321 prophylaxis Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9532—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
- H04L63/0435—Network 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 wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Power Engineering (AREA)
- Mathematical Physics (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
本发明属于信息安全技术领域,具体提供一种实现高效相似性查询和访问控制的基因数据脱敏方法,其有效支持密文环境下大规模基因数据的相似性查询,同时支持复杂的逻辑查询以满足用户个性化的查询需求,该方法授权方式灵活,可对不同的数据授予不同的访问权限,并在查询过程中实现对用户的数据访问权限的可靠控制,此外,本发明采用特定的哈希函数压缩数据,显著减少密文状态下匹配的元素数量,进一步提高查询检索效率。
Description
技术领域
本发明属于信息安全技术领域,具体涉及一种实现高效相似性查询和访问控制的基因数据脱敏方法。
背景技术
基因相似性查询已成为一个热门的研究领域,具有良好的医学健康应用前景。例如疾病预测,通过早期的预防治疗降低与病患有相似基因的人群的发病率。随着大数据时代的到来,庞大的基因数据量以及基因间相似度查询的计算开销,使得越来越多的公司和企业将本地的基因数据外包至第三方云服务器,如DNAnexus,Google Genomics等。然而,直接将基因数据以明文方式外包给云服务器,云服务提供商能够轻易地获取诸如基因序列、健康状况等用户敏感信息,使得用户的隐私数据存在极大的泄露隐患。
为解决上述问题,一种简单的方式是在将基因数据外包至云服务器之前,利用传统的加密方法(比如AES)加密整个基因数据;然而,这将显著降低数据的可用性,因为云服务器无法在密文状态下执行基因相似性查询;因此,迫切需要设计出一种安全、高效且功能完备的基因数据脱敏方案。
目前,现有的基因数据脱敏方案仅考虑密文环境下的查询效率,而忽略许多重要因素,尤其是数据的访问权限控制和个性化的查询需求(比如复杂的逻辑查询);在实际应用场景中,不同用户对基因数据可能有不同的访问权限,在进行查询时用户也可能只关注基因序列上某些特定的基因片段而不是整个序列,这就要求脱敏方案应具备完善的访问控制机制并能提供细粒度的密文查询检索方式。
发明内容
本发明提出一种在云环境中实现高效密文相似性查询和安全访问控制的基因数据脱敏方法,其有效支持密文环境下大规模基因数据的相似性查询,同时支持复杂的逻辑查询以满足用户个性化的查询需求,该方法授权方式灵活,可对不同的数据授予不同的访问权限,并在查询过程中实现对用户的数据访问权限的可靠控制,此外,本发明采用特定的哈希函数压缩数据,显著减少密文状态下匹配的元素数量,进一步提高查询检索效率。
为实现上述目的,本发明采用的技术方案如下:
一种实现高效相似性查询和访问控制的基因数据脱敏方法,包括以下步骤:
步骤1.系统初始化:系统生成公共的基因序列,数据拥有者生成用户访问数据的角色权限集合,生成用于特定哈希函数加密、集合伪随机排列以及矩阵安全内积运算所需的密钥;
步骤2.数据预处理:数据拥有者对其拥有的全部基因序列进行分块处理;数据拥有者参照公共基因序列,利用编辑距离算法获取各分块基因序列的编辑操作集合;数据拥有者定义各基因序列的访问权限函数,并获取相应访问权限函数的系数;对于每个基因序列,数据拥有者任意选择ψ个正态分布的随机数,并连同访问权限函数的系数对相应基因序列的编辑操作集合进行维度扩增;
步骤3.安全索引建立:数据拥有者使用特定哈希函数、伪随机排列、矩阵加密对扩维后的编辑操作集合中非函数系数、非随机数的元素进行k次循环加密、求和、混淆以及矩阵内积操作,最终每个基因序列对应k个安全索引;数据拥有者使用对称密码算法对原始基因数据进行加密处理,建立基因密文数据与安全索引之间的联系,并由数据拥有者将基因密文数据以及相应的安全索引上传至云服务器;
步骤4.生成搜索指令:用户将待检索基因序列进行分块处理,并利用编辑距离算法和公共基因序列获取待检索基因序列的编辑操作集合;用户使用数据拥有者授权的函数根值进行多次求幂运算并连同任意选择的ψ个随机数,对待检索基因序列的编辑操作集合进行扩维处理;用户使用特定哈希函数、伪随机排列、矩阵加密对扩维后的编辑操作集合中非函数根的幂值、非随机数的元素进行k次循环加密、求和、混淆以及矩阵内积操作,最终用户将生成的k个搜索指令发送给云服务器;
步骤5.查询处理:云服务器将k个搜索指令同每个基因序列的k个安全索引逐一进行内积运算并计算均值,最终云服务器将前n个大的均值所对应的基因密文返回给用户;
步骤6.数据解密:用户使用数据拥有者授权的解密密钥解密云服务器返回的密文数据,最终获取明文状态下的基因数据。
进一步的,步骤1的具体过程为:
步骤1.1系统发布不包含任何敏感信息的公共基因序列ref;
步骤1.2数据拥有者生成用于哈希函数H加密的密钥{r1,r2,...,rk},其中H加密任意数据的结果均以相等概率取值为1或-1:其中j=1,2,...,k,χ表示任意数据;
步骤1.3数据拥有者生成用户访问数据的角色权限集合其中δ1>2λ,λ≥128为预设值,
步骤1.4数据拥有者生成用于集合伪随机排列π混淆的密钥{sk1,sk2,...,skk};
步骤1.5数据拥有者生成用于矩阵安全内积运算所需的加密密钥:
{{S1,S2,...,Sk},{M11,M12,...,M1k},{M21,M22,...,M2k}},
其中{Sj}j=1,2,...,k为分裂指示向量且仅包含0、1元素,{M1j}j=1,2,...,k和{M2j}j=1,2,...,k为可逆矩阵;
步骤1.6数据拥有者生成用于对称加密原始基因数据的密钥key。
进一步的,步骤2的具体过程为:
步骤2.1数据拥有者将其拥有的基因序列{A1,A2,...,AN}进行s分块处理,其中s表示每个基因序列别分成的块数:Ai=(Ai1,Ai2,...,Ais)=(Aim)m=1,2,...,s,其中i=1,2,...,N,m=1,2,...,s;
步骤2.2数据拥有者利用编辑距离算法以及公共基因序列ref获取每个已分块基因序列的编辑操作集合,即A′i=(A′i1,A′i2,...,A′is)=(A′im)m=1,2,...,s,其中A′im表示第i个基因序列的第m个分块在编辑距离算法以及ref的第m个分块的共同处理下得到的编辑操作集合;
步骤2.3数据拥有者从集合为每个基因序列Ai选择角色权限并计算访问权限函数:其中βil表示第i个基因序列的访问权限函数fi(x)的l次项系数;
步骤2.4数据拥有者为每个基因序列Ai选择ψ个随机数{γρ}ρ=1,2,...,ψ,其中γρ服从正态分布,并连同基因序列Ai访问权限函数的系数{βil}l=0,1,...,ω对A′i进行扩维处理:
其中表示A′i扩维后的向量。
进一步的,步骤3的具体过程为:
步骤3.1数据拥有者使用特定哈希函数H对每个中的前s项元素(A′i1,A′i2,...,A′is)逐一进行加密以及求和处理:其中t表示A′im中的元素;数据拥有者利用对进行置换以及扩维处理得到:
其中表示经过置换扩维得到的结果;
步骤3.2数据拥有者使用伪随机排列π对每个进行混淆,改变原始的数据分布:其中v=1,2,...,2s+ω+ψ+1;
步骤3.3数据拥有者利用Sj将每个分裂为向量和其分裂规则满足:
步骤3.4数据拥有者使用M1j、M2j分别对每个进行加密处理得到每个基因序列Ai所对应的安全索引即
步骤3.5数据拥有者重复执行k次步骤3.1至步骤3.4,最终每个基因序列Ai都对应k个安全索引
步骤3.6数据拥有者使用对称密码算法加密原始基因序列{A1,A2,...,AN},获得密文基因数据Enc表示对称密码算法的加密函数;数据拥有者建立每个密文基因数据与其安全索引之间的对应关系并将发送给云服务器;
步骤3.7数据拥有者将公共基因序列、哈希函数加密密钥、基因数据的访问权限、集合伪随机排列密钥、矩阵安全内积加密密钥以及对称加密原始基因数据的加密密钥发送给授权用户。
进一步的,步骤4的具体过程为:
步骤4.1授权用户将待检索的基因序列Q进行s分块处理:Q=(Q1,Q2,...,Qs)=(Qm)m=1,2,...,s;授权用户利用编辑距离算法以及公共基因序列ref获取已分块基因序列Q的编辑操作集合:Q′=(Q′1,Q′2,...,Q′s)=(Q′m)m=1,2,...,s,其中Q′m表示基因序列Q的第m个分块在编辑距离算法以及ref的第m个分块的共同处理下得到的编辑操作集合;
步骤4.2授权用户选择ψ个随机数{γ′ρ}ρ=1,2,...,ψ,并连同权限η对Q′进行扩维处理:
其中γ′ρ服从正态分布,η表示数据拥有者授予的角色权限,满足 表示Q′扩维后的向量;
步骤4.3授权用户使用QN、哈希函数H对中的前s项元素(Q′1,Q′2,...,Q′s)按特定的规则进行过滤、加密处理:
其中t′表示Q′m中的元素,QN由授权用户定义、表示当前需要进行相似性查询的基因片段集合;授权用户利用对进行置换处理得到:
其中表示经过置换得到的结果;
步骤4.4授权用户使用伪随机排列π对进行混淆,改变原始的数据分布:
其中v=1,2,...,2s+ω+ψ+1;
步骤4.5授权用户利用Sj将分裂为向量和其分裂规则满足:
步骤4.6授权用户使用M1j、M2j分别对进行加密处理得到Q所对应的加密搜索指令
步骤4.7授权用户重复执行k次步骤4.3至步骤4.6,最终为待检索基因序列Q生成k个加密搜索指令并将加密搜索指令发送给云服务器。
进一步的,步骤5的具体过程为:
步骤5.1云服务器将接受到的加密搜索指令同每个密文基因序列所对应的安全索引分别进行内积运算并计算均值
步骤5.2云服务器对结果进行过滤,若则保留否则丢弃其中D满足
步骤5.3云服务器将过滤后的结果按从大到小排序,越大,所对应的基因序列与查询的Q的相似程度越高;最终,云服务器将前n个所对应的基因密文数据发送给用户。
进一步的,步骤6的具体过程为:
授权用户使用对称密码算法解密云服务器返回的密文结果即其中Dec表示对称密码算法的解密函数。
本发明的有益效果在于:
本发明提供一种实现高效相似性查询和访问控制的基因数据脱敏方法,具有如下优点:1)利用KNN技术实现密文环境下基因数据的相似性查询;2)利用多项式函数实现数据的权限分配以及查询过程中对用户的数据访问权限的可靠控制;3)利用编辑距离算法,参照公共基因序列获取原始基因数据的编辑操作集合;4)利用特定的哈希函数压缩数据,提高查询检索效率;5)在数据预处理、生成搜索指令阶段引入随机数,确保中间结果的机密性;6)利用集合伪随机排列混淆数据的分布方式,进一步提高数据的安全性;7)利用向量分裂、矩阵加密技术,实现搜索指令之间的无关联性;8)利用向量分裂、矩阵加密、超递增序列技术实现密文环境下的“与”、“非”逻辑查询。
附图说明
图1为本发明一种实现高效相似性查询和访问控制的基因数据脱敏方法的流程示意图。
具体实施方式
下面结合附图和实施例对本发明做进一步详细说明。
本实施例提出一种在云环境中实现高效密文相似性查询和安全访问控制的基因数据脱敏方法,其流程如图1所示,具体包括以下步骤:
步骤1.系统初始化:系统生成公共的基因序列,数据拥有者生成用户访问数据的角色权限集合,生成用于特定哈希函数加密、集合伪随机排列以及矩阵安全内积运算所需的密钥;
系统初始化,具体包括以下步骤:
步骤1.1系统发布不包含任何敏感信息的公共基因序列ref,ref是编辑距离算法处理时所需的目标序列;
步骤1.2数据拥有者生成用于哈希函数H加密的密钥{r1,r2,...,rk},其中,H加密任意数据的结果均以相等概率取值为1或-1,即其中j=1,2,...,k,χ表示任意数据;
步骤1.3数据拥有者生成用户访问数据的角色权限集合其中δ1>2λ,λ≥128为预设值,
步骤1.4数据拥有者生成用于集合伪随机排列π混淆的密钥{sk1,sk2,...,skk},其中伪随机排列π仅改变集合中元素的顺序;
步骤1.5数据拥有者生成用于矩阵安全内积运算所需的加密密钥:
{{S1,S2,...,Sk},{M11,M12,...,M1k},{M21,M22,...,M2k}},
其中,{Sj}j=1,2,...,k是维度为1×(2s+ω+ψ+1)的分裂指示向量且仅包含0、1元素,{M1j}j=1,2,...,k和{M2j}j=1,2,...,k是维度为(2s+ω+ψ+1)×(2s+ω+ψ+1)的可逆矩阵,ψ为每个基因序列加入的随机数个数;
步骤1.6数据拥有者生成用于对称加密原始基因数据的密钥key;
步骤2数据预处理:数据拥有者对其拥有的全部基因序列进行分块处理;数据拥有者参照公共基因序列,利用编辑距离算法获取各分块基因序列的编辑操作集合;数据拥有者定义各基因序列的访问权限函数,并获取相应访问权限函数的系数;对于每个基因序列,数据拥有者任意选择ψ个正态分布的随机数,并连同访问权限函数的系数对相应基因序列的编辑操作集合进行维度扩增。数据预处理,具体包括以下步骤:
步骤2.1数据拥有者将其拥有的基因序列{A1,A2,...,AN}进行s分块处理,其中,s表示每个基因序列被分成的块数,即Ai=(Ai1,Ai2,...,Ais)=(Aim)m=1,2,...,s,其中i=1,2,...,N,m=1,2,...,s;
步骤2.2数据拥有者利用编辑距离算法以及公共基因序列ref获取每个已分块基因序列的编辑操作集合,即A′i=(A′i1,A′i2,...,A′is)=(A′im)m=1,2,...,s,其中A′im表示第i个基因序列的第m个分块在编辑距离算法以及ref的第m个分块的共同处理下得到的编辑操作集合;
步骤2.3数据拥有者从集合为基因序列Ai选择角色权限并计算访问权限函数,即其中βil表示第i个基因序列的访问权限函数fi(x)的l次项系数;
步骤2.4数据拥有者为基因序列Ai选择ψ个随机数{γρ}ρ=1,2,...,ψ,其中γρ服从正态分布,并连同基因序列Ai访问权限函数的系数{βil}l=0,1,...,ω对A′i进行扩维处理,即其中表示A′i扩维后的向量,维度为1×(s+ω+ψ+1);
步骤3安全索引建立:数据拥有者使用特定哈希函数、伪随机排列、矩阵加密对扩维后的编辑操作集合中非函数系数、非随机数的元素进行k次循环加密、求和、混淆以及矩阵内积操作,最终每个基因序列对应k个安全索引;数据拥有者使用对称密码算法对原始基因数据进行加密处理,建立基因密文数据与安全索引之间的联系,并由数据拥有者将基因密文数据以及相应的安全索引上传至云服务器。安全索引建立,具体包括以下步骤:
步骤3.1数据拥有者使用特定哈希函数H对每个中的前s项元素(A′i1,A′i2,...,A′is)逐一进行加密以及求和处理,即其中t表示A′im中的元素;数据拥有者利用对进行置换以及扩维处理得到:
其中表示经过置换扩维得到的结果,维度为1×(2s+ω+ψ+1);
步骤3.2数据拥有者使用伪随机排列π对每个进行混淆,改变原始的数据分布,即其中v=1,2,...,2s+ω+ψ+1;
步骤3.3数据拥有者利用Sj将每个分裂为向量和维度均为1×(2s+ω+ψ+1),其分裂规则满足:
步骤3.4数据拥有者使用M1j、M2j分别对每个进行加密处理得到每个基因序列Ai所对应的安全索引即
步骤3.5数据拥有者重复执行k次步骤3.1至步骤3.4,最终每个基因序列Ai都对应k个安全索引
步骤3.6数据拥有者使用对称密码算法加密原始基因序列{A1,A2,...,AN},获得密文基因数据即Enc表示对称密码算法的加密函数;数据拥有者建立每个密文基因数据与其安全索引之间的对应关系并将发送给云服务器;
步骤3.7数据拥有者将公共基因序列、哈希函数加密密钥、基因数据的访问权限、集合伪随机排列密钥、矩阵安全内积加密密钥以及对称加密原始基因数据的加密密钥发送给授权用户。
步骤4生成搜索指令:用户将待检索基因序列进行分块处理,并利用编辑距离算法和公共基因序列获取待检索基因序列的编辑操作集合;用户使用数据拥有者授权的函数根值进行多次求幂运算并连同任意选择的ψ个随机数,对待检索基因序列的编辑操作集合进行扩维处理;用户使用特定哈希函数、伪随机排列、矩阵加密对扩维后的编辑操作集合中非函数根的幂值、非随机数的元素进行k次循环加密、求和、混淆以及矩阵内积操作,最终用户将生成的k个搜索指令发送给云服务器。生成搜索指令,具体包括以下步骤:
步骤4.1授权用户将待检索的基因序列Q进行s分块处理,基因序列别分成的块数,即Q=(Q1,Q2,...,Qs)=(Qm)m=1,2,...,s;授权用户利用编辑距离算法以及公共基因序列ref获取已分块基因序列Q的编辑操作集合,即Q′=(Q′1,Q′2,...,Q′s)=(Q′m)m=1,2,...,s,其中Q′m表示基因序列Q的第m个分块在编辑距离算法以及ref的第m个分块的共同处理下得到的编辑操作集合;
步骤4.2授权用户选择ψ个随机数{γ′ρ}ρ=1,2,...,ψ,并连同权限η对Q′进行扩维处理,即其中γ′ρ服从正态分布,η表示数据拥有者授予的角色权限,满足 表示Q′扩维后的向量,维度为1×(s+ω+ψ+1);
步骤4.3授权用户使用QN、哈希函数H对中的前s项元素(Q′1,Q′2,...,Q′s)按特定的规则进行过滤、加密处理:
其中t′表示Q′m中的元素,QN由授权用户定义,表示当前需要进行相似性查询的基因片段集合;授权用户利用对进行置换处理得到:
其中表示经过置换得到的结果,维度为1×(2s+ω+ψ+1);
步骤4.4授权用户使用伪随机排列π对进行混淆,改变原始的数据分布,即其中v=1,2,...,2s+ω+ψ+1;
步骤4.5授权用户利用Sj将分裂为向量和维度均为1×(2s+ω+ψ+1),其分裂规则满足:
步骤4.6授权用户使用M1j、M2j分别对进行加密处理得到Q所对应的加密搜索指令即
步骤4.7授权用户重复执行k次步骤4.3至步骤4.6,最终为待检索基因序列Q生成k个加密搜索指令并将加密搜索指令发送给云服务器。
步骤5查询处理:云服务器将k个搜索指令同每个基因序列的k个安全索引逐一进行内积运算并计算均值,最终云服务器将前n个大的均值所对应的基因密文返回给用户。查询处理,具体包括以下步骤:
步骤5.1云服务器将接受到的加密搜索指令同每个密文基因序列所对应的安全索引分别进行内积运算并计算均值
步骤5.2云服务器对结果进行过滤,若则保留否则丢弃其中D满足
步骤5.3云服务器将过滤后的结果按从大到小排序,越大,所对应的基因序列与查询的Q的相似程度越高;最终,云服务器将前n个所对应的基因密文数据发送给用户。
步骤6数据解密:用户使用数据拥有者授权的解密密钥解密云服务器返回的密文数据,最终获取明文状态下的基因数据。数据解密,具体包括以下步骤:
授权用户使用对称密码算法解密云服务器返回的密文结果即其中Dec表示对称密码算法的解密函数。
以上所述,仅为本发明的具体实施方式,本说明书中所公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换;所公开的所有特征、或所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以任何方式组合。
Claims (7)
1.一种实现高效相似性查询和访问控制的基因数据脱敏方法,包括以下步骤:
步骤1.系统初始化:系统生成公共的基因序列,数据拥有者生成用户访问数据的角色权限集合,生成用于特定哈希函数加密、集合伪随机排列以及矩阵安全内积运算所需的密钥;
步骤2.数据预处理:数据拥有者对其拥有的全部基因序列进行分块处理;数据拥有者参照公共基因序列,利用编辑距离算法获取各分块基因序列的编辑操作集合;数据拥有者定义各基因序列的访问权限函数,并获取相应访问权限函数的系数;对于每个基因序列,数据拥有者任意选择ψ个正态分布的随机数,并连同访问权限函数的系数对相应基因序列的编辑操作集合进行维度扩增;
步骤3.安全索引建立:数据拥有者使用特定哈希函数、伪随机排列、矩阵加密对扩维后的编辑操作集合中非函数系数、非随机数的元素进行k次循环加密、求和、混淆以及矩阵内积操作,最终每个基因序列对应k个安全索引;数据拥有者使用对称密码算法对原始基因数据进行加密处理,建立基因密文数据与安全索引之间的联系,并由数据拥有者将基因密文数据以及相应的安全索引上传至云服务器;
步骤4.生成搜索指令:用户将待检索基因序列进行分块处理,并利用编辑距离算法和公共基因序列获取待检索基因序列的编辑操作集合;用户使用数据拥有者授权的函数根值进行多次求幂运算并连同任意选择的ψ个随机数,对待检索基因序列的编辑操作集合进行扩维处理;用户使用特定哈希函数、伪随机排列、矩阵加密对扩维后的编辑操作集合中非函数根的幂值、非随机数的元素进行k次循环加密、求和、混淆以及矩阵内积操作,最终用户将生成的k个搜索指令发送给云服务器;
步骤5.查询处理:云服务器将k个搜索指令同每个基因序列的k个安全索引逐一进行内积运算并计算均值,最终云服务器将前n个大的均值所对应的基因密文返回给用户;
步骤6.数据解密:用户使用数据拥有者授权的解密密钥解密云服务器返回的密文数据,最终获取明文状态下的基因数据。
2.按权利要求1所述实现高效相似性查询和访问控制的基因数据脱敏方法,其特征在于,步骤1的具体过程为:
步骤1.1系统发布不包含任何敏感信息的公共基因序列ref;
步骤1.2数据拥有者生成用于哈希函数H加密的密钥{r1,r2,...,rk},其中H加密任意数据的结果均以相等概率取值为1或-1:其中j=1,2,...,k,χ表示任意数据;
步骤1.3数据拥有者生成用户访问数据的角色权限集合其中δ1>2λ,λ≥128为预设值,
步骤1.4数据拥有者生成用于集合伪随机排列π混淆的密钥{sk1,sk2,...,skk};
步骤1.5数据拥有者生成用于矩阵安全内积运算所需的加密密钥:
{{S1,S2,...,Sk},{M11,M12,...,M1k},{M21,M22,...,M2k}},
其中{Sj}j=1,2,...,k为分裂指示向量且仅包含0、1元素,{M1j}j=1,2,...,k和{M2j}j=1,2,...,k为可逆矩阵;
步骤1.6数据拥有者生成用于对称加密原始基因数据的密钥key。
3.按权利要求1所述实现高效相似性查询和访问控制的基因数据脱敏方法,其特征在于,步骤2的具体过程为:
步骤2.1数据拥有者将其拥有的基因序列{A1,A2,...,AN}进行s分块处理,其中s表示每个基因序列别分成的块数:Ai=(Ai1,Ai2,...,Ais)=(Aim)m=1,2,...,s,其中i=1,2,...,N,m=1,2,...,s;
步骤2.2数据拥有者利用编辑距离算法以及公共基因序列ref获取每个已分块基因序列的编辑操作集合,即A′i=(A′i1,A′i2,...,A′is)=(A′im)m=1,2,...,s,其中A′im表示第i个基因序列的第m个分块在编辑距离算法以及ref的第m个分块的共同处理下得到的编辑操作集合;
步骤2.3数据拥有者从集合为每个基因序列Ai选择角色权限并计算访问权限函数:其中βil表示第i个基因序列的访问权限函数fi(x)的l次项系数;
步骤2.4数据拥有者为每个基因序列Ai选择ψ个随机数{γρ}ρ=1,2,...,ψ,其中γρ服从正态分布,并连同基因序列Ai访问权限函数的系数{βil}l=0,1,...,ω对A′i进行扩维处理:
其中表示A′i扩维后的向量。
4.按权利要求1所述实现高效相似性查询和访问控制的基因数据脱敏方法,其特征在于,步骤3的具体过程为:
步骤3.1数据拥有者使用特定哈希函数H对每个中的前s项元素(A′i1,A′i2,...,A′is)逐一进行加密以及求和处理:其中t表示A′im中的元素;数据拥有者利用对进行置换以及扩维处理得到:
其中表示经过置换扩维得到的结果;
步骤3.2数据拥有者使用伪随机排列π对每个进行混淆,改变原始的数据分布:其中v=1,2,...,2s+ω+ψ+1;
步骤3.3数据拥有者利用Sj将每个分裂为向量和其分裂规则满足:
步骤3.4数据拥有者使用M1j、M2j分别对每个进行加密处理得到每个基因序列Ai所对应的安全索引即
步骤3.5数据拥有者重复执行k次步骤3.1至步骤3.4,最终每个基因序列Ai都对应k个安全索引
步骤3.6数据拥有者使用对称密码算法加密原始基因序列{A1,A2,...,AN},获得密文基因数据 Enc表示对称密码算法的加密函数;数据拥有者建立每个密文基因数据与其安全索引之间的对应关系并将发送给云服务器;
步骤3.7数据拥有者将公共基因序列、哈希函数加密密钥、基因数据的访问权限、集合伪随机排列密钥、矩阵安全内积加密密钥以及对称加密原始基因数据的加密密钥发送给授权用户。
5.按权利要求1所述实现高效相似性查询和访问控制的基因数据脱敏方法,其特征在于,步骤4的具体过程为:
步骤4.1授权用户将待检索的基因序列Q进行s分块处理:Q=(Q1,Q2,...,Qs)=(Qm)m=1,2,...,s;授权用户利用编辑距离算法以及公共基因序列ref获取已分块基因序列Q的编辑操作集合:Q'=(Q′1,Q'2,...,Q′s)=(Q'm)m=1,2,...,s,其中Q'm表示基因序列Q的第m个分块在编辑距离算法以及ref的第m个分块的共同处理下得到的编辑操作集合;
步骤4.2授权用户选择ψ个随机数{γ'ρ}ρ=1,2,...,ψ,并连同权限η对Q'进行扩维处理:
其中γ'ρ服从正态分布,η表示数据拥有者授予的角色权限,满足 表示Q'扩维后的向量;
步骤4.3授权用户使用QN、哈希函数H对中的前s项元素(Q′1,Q'2,...,Q′s)按特定的规则进行过滤、加密处理:
其中t'表示Q'm中的元素,QN由授权用户定义、表示当前需要进行相似性查询的基因片段集合;授权用户利用对进行置换处理得到:
其中表示经过置换得到的结果;
步骤4.4授权用户使用伪随机排列π对进行混淆,改变原始的数据分布:
其中v=1,2,...,2s+ω+ψ+1;
步骤4.5授权用户利用Sj将分裂为向量和其分裂规则满足:
步骤4.6授权用户使用M1j、M2j分别对进行加密处理得到Q所对应的加密搜索指令
步骤4.7授权用户重复执行k次步骤4.3至步骤4.6,最终为待检索基因序列Q生成k个加密搜索指令并将加密搜索指令发送给云服务器。
6.按权利要求1所述实现高效相似性查询和访问控制的基因数据脱敏方法,其特征在于,步骤5的具体过程为:
步骤5.1云服务器将接受到的加密搜索指令同每个密文基因序列所对应的安全索引分别进行内积运算并计算均值
步骤5.2云服务器对结果进行过滤,若则保留否则丢弃其中D满足
步骤5.3云服务器将过滤后的结果按从大到小排序,越大,所对应的基因序列与查询的Q的相似程度越高;最终,云服务器将前n个所对应的基因密文数据发送给用户。
7.按权利要求1所述实现高效相似性查询和访问控制的基因数据脱敏方法,其特征在于,步骤6的具体过程为:
授权用户使用对称密码算法解密云服务器返回的密文结果即其中Dec表示对称密码算法的解密函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910387357.2A CN110263570B (zh) | 2019-05-10 | 2019-05-10 | 一种实现高效相似性查询和访问控制的基因数据脱敏方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910387357.2A CN110263570B (zh) | 2019-05-10 | 2019-05-10 | 一种实现高效相似性查询和访问控制的基因数据脱敏方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110263570A true CN110263570A (zh) | 2019-09-20 |
CN110263570B CN110263570B (zh) | 2020-09-25 |
Family
ID=67914548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910387357.2A Expired - Fee Related CN110263570B (zh) | 2019-05-10 | 2019-05-10 | 一种实现高效相似性查询和访问控制的基因数据脱敏方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110263570B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110660450A (zh) * | 2019-09-23 | 2020-01-07 | 长沙学院 | 一种基于加密基因组数据的安全计数查询与完整性验证装置和方法 |
CN110957003A (zh) * | 2019-11-20 | 2020-04-03 | 河南师范大学 | 一种面向用户隐私保护的高效基因比对方法 |
CN112052478A (zh) * | 2020-09-01 | 2020-12-08 | 上海观安信息技术股份有限公司 | 一种多表子集抽取脱敏方法 |
CN112104609A (zh) * | 2020-08-20 | 2020-12-18 | 电子科技大学 | 在移动群智感知系统中可验证的、具有隐私意识的真相发现的方法 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314580A (zh) * | 2011-09-20 | 2012-01-11 | 西安交通大学 | 一种基于向量和矩阵运算的支持计算的加密方法 |
CN104462582A (zh) * | 2014-12-30 | 2015-03-25 | 武汉大学 | 一种基于结构和内容二级过滤的Web数据相似性检测方法 |
US9015167B1 (en) * | 2014-01-27 | 2015-04-21 | Tipbit Inc. | User isolated indexes for determining the context and relevance of relationships |
CN105681280A (zh) * | 2015-12-29 | 2016-06-15 | 西安电子科技大学 | 一种云环境中基于中文的可搜索加密方法 |
CN106657059A (zh) * | 2016-12-21 | 2017-05-10 | 哈尔滨工业大学深圳研究生院 | 一种具有访问控制功能的数据库查询方法和系统 |
CN106776904A (zh) * | 2016-11-30 | 2017-05-31 | 中南大学 | 一种不可信云计算环境中支持动态验证的模糊查询加密方法 |
CN107463848A (zh) * | 2017-07-18 | 2017-12-12 | 北京邮电大学 | 一种面向应用的密文搜索方法、装置、代理服务器和系统 |
CN108062485A (zh) * | 2017-12-15 | 2018-05-22 | 北京工业大学 | 一种面向多服务器多用户的模糊关键字搜索方法 |
CN108345802A (zh) * | 2018-02-11 | 2018-07-31 | 西安电子科技大学 | 基于车联云系统的安全高效的密文检索方法、车载系统 |
CN108632385A (zh) * | 2018-05-15 | 2018-10-09 | 上海海事大学 | 基于时间序列的多叉树数据索引结构云存储隐私保护方法 |
CN108768951A (zh) * | 2018-05-03 | 2018-11-06 | 上海海事大学 | 一种云环境下保护文件隐私的数据加密和检索方法 |
CN108985094A (zh) * | 2018-06-28 | 2018-12-11 | 电子科技大学 | 云环境下实现密文空间数据的访问控制和范围查询方法 |
-
2019
- 2019-05-10 CN CN201910387357.2A patent/CN110263570B/zh not_active Expired - Fee Related
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314580A (zh) * | 2011-09-20 | 2012-01-11 | 西安交通大学 | 一种基于向量和矩阵运算的支持计算的加密方法 |
US9015167B1 (en) * | 2014-01-27 | 2015-04-21 | Tipbit Inc. | User isolated indexes for determining the context and relevance of relationships |
CN104462582A (zh) * | 2014-12-30 | 2015-03-25 | 武汉大学 | 一种基于结构和内容二级过滤的Web数据相似性检测方法 |
CN105681280A (zh) * | 2015-12-29 | 2016-06-15 | 西安电子科技大学 | 一种云环境中基于中文的可搜索加密方法 |
CN106776904A (zh) * | 2016-11-30 | 2017-05-31 | 中南大学 | 一种不可信云计算环境中支持动态验证的模糊查询加密方法 |
CN106657059A (zh) * | 2016-12-21 | 2017-05-10 | 哈尔滨工业大学深圳研究生院 | 一种具有访问控制功能的数据库查询方法和系统 |
CN107463848A (zh) * | 2017-07-18 | 2017-12-12 | 北京邮电大学 | 一种面向应用的密文搜索方法、装置、代理服务器和系统 |
CN108062485A (zh) * | 2017-12-15 | 2018-05-22 | 北京工业大学 | 一种面向多服务器多用户的模糊关键字搜索方法 |
CN108345802A (zh) * | 2018-02-11 | 2018-07-31 | 西安电子科技大学 | 基于车联云系统的安全高效的密文检索方法、车载系统 |
CN108768951A (zh) * | 2018-05-03 | 2018-11-06 | 上海海事大学 | 一种云环境下保护文件隐私的数据加密和检索方法 |
CN108632385A (zh) * | 2018-05-15 | 2018-10-09 | 上海海事大学 | 基于时间序列的多叉树数据索引结构云存储隐私保护方法 |
CN108985094A (zh) * | 2018-06-28 | 2018-12-11 | 电子科技大学 | 云环境下实现密文空间数据的访问控制和范围查询方法 |
Non-Patent Citations (6)
Title |
---|
何亨等: "《一种云环境中密文数据的模糊多关键词检索方案》", 《计算机科学》 * |
张荑: "《云环境下支持访问控制的高效密文查询技术研究》", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
胡胜平: "《面向云端加密数据的多关键字模糊检索策略》", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
邓江等: "《一种全同态加密的安全内积计算方案》", 《电子科技大学学报》 * |
项菲等: "《云计算环境下密文搜索算法的研究》", 《通信学报》 * |
黄家俊: "《具有访问控制功能的密文查询方案设计与实现》", 《中国优秀硕士学位论文全文数据库(信息科技辑)》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110660450A (zh) * | 2019-09-23 | 2020-01-07 | 长沙学院 | 一种基于加密基因组数据的安全计数查询与完整性验证装置和方法 |
CN110957003A (zh) * | 2019-11-20 | 2020-04-03 | 河南师范大学 | 一种面向用户隐私保护的高效基因比对方法 |
CN110957003B (zh) * | 2019-11-20 | 2023-05-26 | 河南师范大学 | 一种面向用户隐私保护的高效基因比对方法 |
CN112104609A (zh) * | 2020-08-20 | 2020-12-18 | 电子科技大学 | 在移动群智感知系统中可验证的、具有隐私意识的真相发现的方法 |
CN112052478A (zh) * | 2020-09-01 | 2020-12-08 | 上海观安信息技术股份有限公司 | 一种多表子集抽取脱敏方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110263570B (zh) | 2020-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11582038B2 (en) | Systems and methods to secure searchable data having personally identifiable information | |
JP7384914B2 (ja) | 二重暗号化秘密パーツのサブセットを使用して秘密のアセンブリを可能にする二重暗号化秘密パーツ | |
CN110263570A (zh) | 一种实现高效相似性查询和访问控制的基因数据脱敏方法 | |
US11652608B2 (en) | System and method to protect sensitive information via distributed trust | |
CN101953113B (zh) | 对可漫游凭证存储的安全且可用保护 | |
CN107359998B (zh) | 一种便携式智能口令管理体制的建立与操作方法 | |
CN109040090A (zh) | 一种数据加密方法及装置 | |
US11297043B2 (en) | Cryptographic datashare control for blockchain | |
CN106776904A (zh) | 一种不可信云计算环境中支持动态验证的模糊查询加密方法 | |
CN105474575A (zh) | 多方安全认证系统、认证服务器、中间服务器、多方安全认证方法以及程序 | |
CN109361644A (zh) | 一种支持快速搜索和解密的模糊属性基加密方法 | |
CN112000632B (zh) | 密文的分享方法、介质、分享客户端及系统 | |
Jyoti et al. | A blockchain and smart contract-based data provenance collection and storing in cloud environment | |
CN108038128A (zh) | 一种加密文件的检索方法、系统、终端设备及存储介质 | |
Majumdar et al. | A novel DNA-inspired encryption strategy for concealing cloud storage | |
Suganya et al. | Stochastic Gradient Descent long short-term memory based secure encryption algorithm for cloud data storage and retrieval in cloud computing environment | |
Verma | Secure client-side deduplication scheme for cloud with dual trusted execution environment | |
CN115694921B (zh) | 一种数据存储方法、设备及介质 | |
CN114584286B (zh) | 支持全向量操作的动态密文检索、验证方法及系统 | |
EP3410630B1 (en) | General data protection method for multicentric sensitive data storage and sharing | |
Kanagala et al. | Effective encryption approach to improving the secure cloud framework through fuzzy-based encrypted cryptography | |
Garg et al. | ANN based security in mobile cloud computing | |
CN113904823A (zh) | 常数级授权计算复杂度的属性基可搜索加密方法及系统 | |
Patel et al. | A chaff-point based approach for cancelable template generation of fingerprint data | |
Babu et al. | EFFICIENT SECURE DATA STORAGE AND DATA RETRIEVAL ON CLOUD USING MULTI‑STAGE AUTHENTICATION FROM CLOUD DATABASES |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200925 |
|
CF01 | Termination of patent right due to non-payment of annual fee |