CN111967048A - 面向基因组数据相似度的高效匹配及隐私保护方法、系统 - Google Patents
面向基因组数据相似度的高效匹配及隐私保护方法、系统 Download PDFInfo
- Publication number
- CN111967048A CN111967048A CN202010834443.6A CN202010834443A CN111967048A CN 111967048 A CN111967048 A CN 111967048A CN 202010834443 A CN202010834443 A CN 202010834443A CN 111967048 A CN111967048 A CN 111967048A
- Authority
- CN
- China
- Prior art keywords
- genome
- user
- vcf
- tree
- data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000002068 genetic effect Effects 0.000 claims abstract description 67
- 238000012545 processing Methods 0.000 claims abstract description 31
- 238000006243 chemical reaction Methods 0.000 claims abstract description 24
- 230000036541 health Effects 0.000 claims abstract description 22
- 238000004364 calculation method Methods 0.000 claims abstract description 7
- 239000013598 vector Substances 0.000 claims description 56
- 239000011159 matrix material Substances 0.000 claims description 35
- 108090000623 proteins and genes Proteins 0.000 claims description 31
- 230000008569 process Effects 0.000 claims description 18
- 238000012946 outsourcing Methods 0.000 claims description 15
- 238000004422 calculation algorithm Methods 0.000 claims description 13
- 238000010276 construction Methods 0.000 claims description 10
- 201000010099 disease Diseases 0.000 claims description 7
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 4
- 238000013500 data storage Methods 0.000 claims description 4
- 238000011156 evaluation Methods 0.000 claims description 4
- 238000004458 analytical method Methods 0.000 claims description 3
- 238000012790 confirmation Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims description 2
- 238000007726 management method Methods 0.000 claims description 2
- 238000007781 pre-processing Methods 0.000 claims description 2
- 238000011426 transformation method Methods 0.000 claims description 2
- 230000007547 defect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 108020004414 DNA Proteins 0.000 description 1
- 108091028043 Nucleic acid sequence Proteins 0.000 description 1
- 108700019146 Transgenes Proteins 0.000 description 1
- 210000000349 chromosome Anatomy 0.000 description 1
- 238000007621 cluster analysis Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 238000003745 diagnosis Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012268 genome sequencing Methods 0.000 description 1
- 238000012165 high-throughput sequencing Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
Images
Classifications
-
- 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/602—Providing cryptographic facilities or services
-
- 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
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16B—BIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
- G16B40/00—ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/30—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for calculating health indices; for individual health risk assessment
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Theoretical Computer Science (AREA)
- Medical Informatics (AREA)
- Physics & Mathematics (AREA)
- Bioethics (AREA)
- Software Systems (AREA)
- Public Health (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Epidemiology (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Biomedical Technology (AREA)
- Pathology (AREA)
- Primary Health Care (AREA)
- Artificial Intelligence (AREA)
- Biophysics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Biotechnology (AREA)
- Evolutionary Biology (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明属于信息安全技术领域,公开了一种面向基因组数据相似度的高效匹配及隐私保护方法、系统,客户端利用获取的系统参数对个人基因组数据进行转换加密,生成查询请求发送给云服务器请求搜索相似基因组,对接收到相似基因组标签进行混淆处理后发送给医疗机构终端请求相似患者信息并对自身健康状况做出评估;医疗机构终端生成系统参数并面向客户端提供注册服务,同时将存储在本地的基因组数据库外包给云服务面向用户提供相似基因组查询服务;云服务器存储医疗机构终端外包的加密遗传BK树,并在密文树上进行计算搜索,返回给用户相似基因组的标签集。本发明实现了医疗机构终端及用户的原始基因组数据隐私保护,提高了相似基因组的匹配效率。
Description
技术领域
本发明属于信息安全技术领域,尤其涉及一种面向基因组数据相似度的高效匹配及隐私保护方法、系统。
背景技术
目前:随着高通量测序技术的快速发展及基因组测序成本的大幅降低,医学领域已经产生了大量具有挖掘价值的基因组数据,人们可以通过与已有的基因组进行相似度匹配对自身健康状况做出评估,防病于未然。在传统的基因组相似度匹配方法中,编辑距离作为相似度的最佳衡量标准之一,被使用的最为广泛。然而,考虑到编辑距离计算的复杂性及人类基因组的高维性(每条人类基因组含有约31.6亿个DNA碱基对),直接计算基因组间的编辑距离将带来巨大的计算及通信开销。为了提供高效的基因组相似度匹配服务,近似编辑距离的概念被提出,它在几乎不影响匹配准确度的前提条件下通过基因分段、基因转换等技术提高匹配效率。同时,为了防止服务提供方终端的超负荷运行,已有基因组数据库通常会外包给云服务器,由云服务器提供基因组相似度匹配服务。然而,无论是医疗机构本地存储的基因组数据库还是用户的私人基因组数据,都具有高度的机密性和敏感性,而服务外包要求服务提供方和用户提供相关数据进行匹配,造成敏感的原始基因组数据泄露。因此,考虑到匹配效率和隐私保护的需求,实现一个面向基因组数据相似度的隐私保护高效匹配系统是具有挑战性的。为了找出一种解决上述问题的方法,人们提出了一些解决方案,其中:现有技术一“一种基因数据的查询方法、系统、设备及存储介质”公开了一种基因数据的查询方法,将待测序列均分为x+t条seed,基准序列均分为x+t条子序列,通过对确定的每个seed的每个匹配位置进行无向扩展确定出待测序列在基准序列中的定位。但是该方法存在一定的缺陷,例如不适用于全基因组数据的匹配查询,基准序列仅考虑一条不能用于预测服务;且该方法基于明文匹配,没有能够实现待测及基准序列的隐私保护。现有技术二“一种面向用户隐私保护的高效基因比对方法”包含了基因序列编码、混淆电路建立以及基因序列比对三个步骤,通过混淆电路比对按照给定编码规则进行编码后DNA序列达到基因比对场景下的隐私保护。该方法确保了匹配过程中用户及基因组数据库的隐私,但未考虑匹配结果的隐私,且用户基因需和N条数据逐一对比,整体性能较为低下。
通过上述分析,现有技术存在的问题及缺陷为:现有的基因组相似度匹配服务存在匹配总耗时长,匹配过程无加密或加密开销大;在应用中会造成服务提供不及时,原始基因组泄露,无法保护患者及用户隐私。
解决以上问题及缺陷的难度为:传统的同态加密、混淆电路等技术应用于编辑距离无法很好的平衡隐私保护和基因组相似度匹配效率的问题,而应用于近似编辑距离又会一定程度上影响匹配结果的准确性。使用上述技术无法满足基因组相似度匹配服务中数据海量高维,需实时匹配、及时反馈的特点。
解决以上问题及缺陷的意义为:需要为基因组相似度匹配服务设计一种新型高效隐私保护的加密方法,能够在尽可能不影响匹配效率和准确率的前提下实现原始基因组数据和匹配结果的隐私保护。
发明内容
针对现有技术存在的问题,本发明提供了一种面向基因组数据相似度的高效匹配及隐私保护方法、系统。
本发明是这样实现的,一种面向基因组数据相似度的高效匹配及隐私保护方法,所述面向基因组数据相似度的高效匹配及隐私保护方法包括:
系统参数初始化,每家医疗机构随机选择数据处理过程中所需的公共参考基因组、HMAC算法及其它安全参数,生成加密过程中所需的索引矩阵;
加密基因组数据库外包,每家医疗机构首先基于转换后的基因组构建一棵遗传BK树,然后利用索引矩阵和密钥对树进行加密,并发送给云服务器;
用户基因组数据安全匹配,用户首先在目标医疗机构进行注册获取相关参数,然后利用不同医疗机构的参数分别转换加密个人基因组数据,并发送给云服务器请求匹配服务;云服务器接收到用户加密的查询请求后,对指定的加密遗传BK树进行搜索,返回给用户符合要求的基因组标签;
相似基因组信息查询,用户通过添加随机标签掩蔽真实的标签集向医疗机构请求相关患者的患病信息,对自身健康状态做出评估。
进一步,所述面向基因组数据相似度的高效匹配及隐私保护方法具体包括:
步骤一,系统参数初始化步骤:
(1)每家医疗机构Mj∈{M1,M2,M3,…}从本地存储的基因组数据库中随机选取一个基因组作为公共参考基因,公共参考基因Refj=(g1,g2,...,gm)∈{A,G,C,T}m,{A,G,C,T}代表形成基因组的四种不同碱基;
(2)Mj随机地将Refj切割成ξ段(sg1,...,sgω,...,sgξ),|sgω|=πω,ω∈[1,ξ]。
(3)根据Refj被切割后每段的起始位置,构造索引矩阵M(ξ+1)×9,表示如下:
,其中cω{1,2,3}∈{0,1,2},cω{4,5,6,7,8}∈{0,1,2,3,4},cω{1,2,3,4,5,6,7,8}被随机赋值且满足cω1≠cω2≠cω3,cω4≠cω5≠cω6≠cω7≠cω8;
(4)Mj随机选取一种HMAC算法;
(5)Mj随机选取三个密钥k1,k2,k3,密钥长度由选取的HMAC算法决定,以及一个随机数r≥3;
(6)Mj发布系统参数<idj0,k1,k2,k3,r,Refj,M(ξ+1)×9,HMAC()>,其中idj0是医疗机构Mj的标签;
步骤二,加密基因组数据库外包步骤:
(6)Mj完成加密后(即完成(4)(5)),在每一个节点上添加该节点存储的基因组的标签,即树的根节点上存储的信息更新为其它节点存储的信息更新为(E(vcfjk),idjk),k=1,2,...,nj-1,将加密后的记为
步骤三,用户基因组数据安全匹配步骤:
(1)每个用户Ui∈{U1,U2,U3...}首先向所有目标医疗机构Mi请求注册;
(2)注册成功后,属于集合Mi的每家医疗机构Mj′都会通过安全的信道向用户发送系统参数<idj′0,k1,k2,k3,r,Refj′,M(ξ+1)×9,HMAC()>,不同医疗机构发送的安全参数都是自身随机生成的,彼此不具有关联性,且Ui的身份信息会被存储在这|Mi|家医疗机构中;
(3)Ui每接收到一条系统参数<idj′0,k1,k2,k3,r,Refj′,M(ξ+1)×9,HMAC()>,都会对应地加密个人基因组数据Gui得到一条查询请求:
完成加密处理后,Ui将得到|Mi|条不同的查询请求{(E(vcfui),idj′0)|Mj′∈Mi};
(5)对于Ui的每一条查询请求,云服务器都会进行以下处理:
步骤四,相似基因组信息查询步骤:
进一步,所述基因转换方法具体包括:
其中,当Ref[i-1]=G[j-1]时,f取值为0;否则f取值为1;
②若Ref[i-1]与G[j-1]不相等,判断是否等于若是,向集合vcf中添加向量(i,sub,G[j-1]),跳转至若不是,再判断是否等于若相等,则向集合vcf中添加向量(i,del,⊥),并跳转至否则添加向量(i,ins,G[j-1]),并跳转至
(5)完成集合vcf的向量添加之后,按照添加顺序由晚到早更新集合顺序,即最晚添加进集合的向量是集合vcf的第一个向量;
(6)集合vcf可能存在对于同一个位置i有多个含ins的三维向量的情况,在这种情况下,按照其在vcf的位置,原来的ins依次由{ins,ins+r,ins+r+1,...}替换,其中r是由Mj决定的大于等于3的随机数;至此,基因组的转换工作完成。
①通过vcfjk与根节点vcfj0计算其对应的基因组间的近似编辑距离Aed(vcfj0,vcfjk),若此时vcfj0已有的孩子节点与它的基因组间的近似编辑距离都不等于Aed(vcfj0,vcfjk),则添加vcfjk作为vcfj0的孩子节点,且vcfjk的边权值被赋值为Aed(vcfj0,vcfjk);
②若此时vcfj0已有的孩子节点中存在某个节点vcfpn与它的基因组间的近似编辑距离等于Aed(vcfj0,vcfjk),则找出以vcfpn为根节点的子树,继续操作①②,直到vcfjk找到合适的父亲节点;
进一步,所述Aed(tv1,tv2)的计算方法具体包括,tv1,tv2代表两个三维向量的集合:
(1)记len1=|tv1|,len2=|tv2|;
(2)按照以下方法更新集合tv1,tv2:
①对于集合tv1每一个三维向量,若在tv2中找不到一个向量与其第一维数据相同,则将该向量从tv1中删除;同理,对集合tv2进行处理;
②对于处理后的tv1中的每一个三位向量,若第一维数据是集合中重复出现的数据,且对应的向量在tv2中找不到与其前两位数据一样的向量,则将该向量从tv1中删除;同理,对集合tv2进行处理;
(3)记更新后的集合tv1,tv2为tv1′,tv2′,且|tv1′|=|tv2′|=len;
(4)初始化Aed(tv1,tv2)=len1+len2-2·len;
(5)将集合tv1′,tv2′形式化表示为两个len×3的数组T1,T2;
(6)对于所有的0≤i≤len-1,执行以下操作:
①若T1[i][1]≠T2[i][1]且T1[i][2]≠T2[i][2],则在现有Aed(tv1,tv2)的值上加2,即Aed(tv1,tv2)=Aed(tv1,tv2)+2;
②若T1[i][1]≠T2[i][1]且T1[i][2]=T2[i][2],则在现有Aed(tv1,tv2)的值上加1,即Aed(tv1,tv2)=Aed(tv1,tv2)+1;
③若T1[i][1]=T2[i][1]且T1[i][2]≠T2[i][2],则在现有Aed(tv1,tv2)的值上加1,即Aed(tv1,tv2)=Aed(tv1,tv2)+1;
④若T1[i][1]=T2[i][1]且T1[i][2]=T2[i][2],则Aed(tv1,tv2)的值保持不变;完成所有的比较后,得到最终Aed(tv1,tv2)的值;
(7)tv1,tv2对应的基因组间的近似编辑距离等于最终的Aed(tv1,tv2)值。
本发明的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
系统参数初始化,每家医疗机构随机选择数据处理过程中所需的公共参考基因组、HMAC算法及其它安全参数,生成加密过程中所需的索引矩阵;
加密基因组数据库外包,每家医疗机构首先基于转换后的基因组构建一棵遗传BK树,然后利用索引矩阵和密钥对树进行加密,并发送给云服务器;
用户基因组数据安全匹配,用户首先在目标医疗机构进行注册获取相关参数,然后利用不同医疗机构的参数分别转换加密个人基因组数据,并发送给云服务器请求匹配服务;云服务器接收到用户加密的查询请求后,对指定的加密遗传BK树进行搜索,返回给用户符合要求的基因组标签;
相似基因组信息查询,用户通过添加随机标签掩蔽真实的标签集向医疗机构请求相关患者的患病信息,对自身健康状态做出评估。
本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
系统参数初始化,每家医疗机构随机选择数据处理过程中所需的公共参考基因组、HMAC算法及其它安全参数,生成加密过程中所需的索引矩阵;
加密基因组数据库外包,每家医疗机构首先基于转换后的基因组构建一棵遗传BK树,然后利用索引矩阵和密钥对树进行加密,并发送给云服务器;
用户基因组数据安全匹配,用户首先在目标医疗机构进行注册获取相关参数,然后利用不同医疗机构的参数分别转换加密个人基因组数据,并发送给云服务器请求匹配服务;云服务器接收到用户加密的查询请求后,对指定的加密遗传BK树进行搜索,返回给用户符合要求的基因组标签;
相似基因组信息查询,用户通过添加随机标签掩蔽真实的标签集向医疗机构请求相关患者的患病信息,对自身健康状态做出评估。
本发明的另一目的在于提供一种实施所述面向基因组数据相似度的高效匹配及隐私保护方法的面向基因组数据相似度的高效匹配及隐私保护系统,所述面向基因组数据相似度的高效匹配及隐私保护系统包括:
客户端,用于用户基因组数据信息和身份信息的采集,在目标医疗机构注册,接收到各个医疗机构的系统参数后对基因组数据信息进行加密并生成查询请求,然后发送给云服务器;对云服务器返回的结果进行混淆处理后再发送给对应的医疗机构请求相关患者信息;根据相关患者信息评估用户的健康状况;
医疗机构终端,用于生成系统参数,构建并加密遗传BK树,并且将加密后的遗传BK树发送给云服务器;为用户提供注册服务;为合法的用户检索相似患者的非隐私信息并发送给用户;
云服务器,用于存储各家医疗机构发送过来的加密遗传BK树;接受用户发送的查询请求,在完成加密遗传BK树的搜索后,将基因组匹配查询结果返回给用户。
所述客户端进一步包括:
信息采集模块,包括基因组数据采集子模块、身份信息采集子模块;用于采集用户的个人基因组数据和身份信息,并生成基因组向量和注册信息;
用户安全支持模块,包括请求注册子模块、参数存储子模块、数据转换子模块、加密发送子模块;用于向目标医疗机构终端发送注册请求,在获取系统参数后对个人基因组数据进行转换加密处理并发送给云服务器;
健康状况评估模块,包括扰动处理子模块、聚类分析子模块;用于对真实的标签集进行加扰发送给医疗机构终端,并对返回的患者信息进行分析从而评估用户健康状况;
所述医疗机构终端进一步包括:
参数生成模块,包括安全参数选取子模块、索引矩阵生成子模块;用于生成基因组转换加密所需的系统参数;
注册认证模块,包括用户信息认证子模块、用户信息存储子模块、系统参数发送子模块;用于接收合法用户的注册请求,存储用户身份信息,并将系统参数发送到成功注册的客户端;
医疗机构安全支持模块,包括数据转换子模块、遗传BK树构建子模块、加密发送子模块;用于将医疗机构终端存储的基因组数据库全部转换加密处理后以加密遗传BK树的形式发送给云服务器;
患者信息查询模块,包括患者信息索引子模块;用于将用户请求的相似基因组的患者的非隐私信息发送给用户;
所述云服务器进一步包括:
数据存储模块,包括加密遗传BK树存储子模块、用户查询请求接收子模块;用于存储医疗机构终端发送来的加密遗传BK树,并接收客户端发送来的查询请求;
相似基因组匹配模块,包括BK树定位子模块、BK树查询子模块、查询结果发送子模块;用于定位并搜索标签包含在用户查询请求中的加密遗传BK树,并将符合要求的基因组标签返回给相应的客户端。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:本发明实现了数据资源的隐私保护;在数据传输前对其加密,并且在数据处理过程中保持了加密状态,大大提高了数据的隐私性和安全性,防止医疗机构及用户的原始基因组数据泄露;实现了诊断结果的隐私保护,在随机扰动技术支持下,即使医疗机构终端拿到了用户请求查询的基因组标签,也无法预先评估用户的健康状况;实现了遗传BK树的构建、加密及搜索机制,即使面对海量高维的基因组数据,也能够为用户提供高效精准的基因组匹配服务。通过在真实基因组数据集DisGeNet上进行测试,可以证明本发明的匹配精确度能达到90%以上;同时实验表明,在所提方案中,提供一次完整的基因组匹配服务所有的总时间不超过0.6s,与已知性能最优方案(EFSS)相比,效率提高了50倍以上,就查询效率而言,在所提方案中,完成一次查询仅需1ms左右,与已知性能最优方案相比,效率提高了5倍以上。医疗机构终端、云服务器及客户端进行一次完成的基因组匹配查询服务所需的通信开销不超过2.5MB,与EFSS相比,开销节省了近6倍。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的面向基因组数据相似度的高效匹配及隐私保护方法流程图。
图2是本发明实施例提供的面向基因组数据相似度的高效匹配及隐私保护系统的结构示意图;
图3是本发明实施例提供的系统参数初始化流程图。
图4是本发明实施例提供的加密基因组数据库外包流程图。
图5是本发明实施例提供的用户基因组数据安全匹配流程图。
图6是本发明实施例提供的相似基因组信息查询流程图。
图7是本发明实施例提供的与已知性能最优方案(EFSS)计算开销对比图。
图8是本发明实施例提供的与已知性能最优方案(EFSS)通信开销对比图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
针对现有技术存在的问题,本发明提供了一种面向基因组数据相似度的高效匹配及隐私保护方法、系统,下面结合附图对本发明作详细的描述。
如图1所示,本发明提供的面向基因组数据相似度的高效匹配及隐私保护方法包括以下步骤:
S101:系统参数初始化,医疗机构终端随机选择数据处理过程中所需的公共参考基因、HM。AC算法及其它安全参数,并生成加密过程中所需的索引矩阵;
S102:加密基因组数据库外包,医疗机构终端首先基于公共参考基因完成对数据库中的所有原始基因组的转换,然后基于转换后的基因组构建一棵遗传BK树,再利用索引矩阵和安全参数对构建好的树进行加密,最后发送给云服务器。
S103:用户基因组数据安全匹配,用户首先在目标医疗机构终端进行注册获取其系统参数,然后根据不同医疗机构的系统参数对个人基因组数据进行不同的转换加密,生成查询请求发送给云服务器,最后云服务器根据查询请求对指定的加密遗传BK树进行搜索,返回给用户符合要求的基因组标签。
S104:相似基因组信息查询,用户首先通过添加随机标签混淆云服务器返回的正确结果,生成新的查询请求,然后发送给对应的医疗机构终端,在接收到医疗机构返回的相关患者非隐私信息后再对自身健康状态做出评估。
本发明提供的面向基因组数据相似度的高效匹配及隐私保护方法业内的普通技术人员还可以采用其他的步骤实施,图1的本发明提供的面向基因组数据相似度的高效匹配及隐私保护方法仅仅是一个具体实施例而已。
如图2所示,本发明提供的面向基因组数据相似度的高效匹配及隐私保护系统包括:客户端、医疗机构终端,云服务器三个组成部分。其中:
客户端采集用户基因组数据信息和身份信息,在目标医疗机构注册,接收各个医疗机构的系统参数后对基因组数据信息进行加密并生成查询请求,发送给云服务器;混淆处理云服务器返回的结果后发送给对应的医疗机构请求相关患者信息,并根据相关患者信息评估用户的健康状况。
医疗机构终端生成系统参数,构建并加密遗传BK树,并且将加密后的遗传BK树发送给云服务器;为用户提供注册服务,并为合法的用户检索相似患者的非隐私信息后返回。
云服务器存储各家医疗机构发送过来的加密遗传BK树,同时接受用户发送的查询请求,在完成指定加密遗传BK树的搜索后,将基因组匹配查询结果返回给用户。
下面结合附图对本发明的技术方案作进一步的描述。
客户端,包括:信息采集模块、用户安全支持模块、健康状况评估模块。
该信息采集模块,用于采集用户的个人基因组数据和身份信息,并生成基因组向量Gui和包含身份认证的注册信息;
该用户安全支持模块,用于向多家目标医疗机构终端Mj′发送注册请求获取其生成的系统参数<idj′0,k1,k2,k3,r,Refj′,M(ξ+1)×9,HMAC()>,然后分别根据每家Mj′选取的公共参考基因Refj′对Gui进行转换,并通过其他安全参数和索引矩阵M(ξ+1)×9加密用户的个人基因组数据,发送给云服务器;
所述医疗机构终端,包括:参数生成模块、注册认证模块、医疗机构安全支持模块、患者信息查询模块。
该参数生成模块,用于生成系统参数,包括转换原始基因组所需的公共参考基因组Refj,加密转换后基因组所需的安全参数<k1,k2,k3,r,HMAC()>及索引矩阵M(ξ+1)×9,并附以可以识别该医疗机构终端的标签idj0;
该认证注册模块,用于对用户发送的请求注册信息进行认证,认证通过,则存储用户的身份信息方便进一步提供服务,并通过安全信道将系统参数<idj0,k1,k2,k3,r,Refj,M(ξ+1)×9,HMAC()>发送给成功注册的用户;
该医疗机构安全支持模块,用于构建并加密遗传BK树后发送给云服务器,基于给出的近似编辑距离计算方法和原始BK树的构建方法,为该医疗机构存储的基因组数据库转换后的基因组数据构建一棵遗传BK树,并利用安全参数<k1,k2,k3,r,HMAC()>及索引矩阵M(ξ+1)×9对其进行加密后发送给云服务器;
所述云服务器,包括:数据存储模块、相似基因组匹配模块。
该相似基因组匹配模块,用于处理用户的加密查询请求,首先根据用户的请求,定位需要被搜索的加密遗传BK树,然后对每一棵加密遗传BK树进行搜索后返回近似编辑距离小于查询阈值的所有的基因组的标签集及该树上存储的所有标签
如图3-图6本发明实施例提供的面向基因组数据相似度的高效匹配及隐私保护方法包括如下步骤:
步骤1,系统参数初始化。
1.1)每家医疗机构终端Mj∈{M1,M2,M3,…}从本地存储的基因组数据库中随机选取一个基因组作为公共参考基因,公共参考基因Refj=(g1,g2,...,gm)∈{A,G,C,T}m,{A,G,C,T}代表形成基因组的四种不同碱基;
1.2)Mj随机地将Refj切割成ξ段(sg1,...,sgω,...,sgξ),|sgω|=πω,ω∈[1,ξ]。
1.3)Mj根据Refj被切割后每段的起始位置,构造索引矩阵M(ξ+1)×9,表示如下:
,其中cω{1,2,3}∈{0,1,2},cω{4,5,6,7,8}∈{0,1,2,3,4},cω{1,2,3,4,5,6,7,8}被随机赋值且满足cω1≠cω2≠cω3,cω4≠cω5≠cω6≠cω7≠cω8;
1.4)Mj随机选取一种HMAC算法(例如,HMAC-SHA256)用作之后的转换基因加密过程;
1.5)Mj随机选取三个密钥k1,k2,k3(密钥长度由选取的HMAC算法里的哈希函数决定),和一个随机数r≥3;
1.6)医疗机构Mj的标签idj0将随着选取的公共参考基因Refj、安全参数<k1,k2,k3,r,HMAC()>以及生成的索引矩阵M(ξ+1)×9一起作为系统参数发布<idj0,k1,k2,k3,r,Refj,M(ξ+1)×9,HMAC()>(注:每家医疗机构终端的每一个系统参数都不尽相同,不公开发布,只提供给成功注册的用户)。
步骤2,加密基因组数据库外包。
其中,当Refj[i-1]=Gjk*[j-1]时,f取值为0;否则f取值为1;
2.4.4.2)若Refj[i-1]与Gjk*[j-1]不相等,判断是否等于若是,向集合vcfjk中添加向量(i,sub,Gjk*[j-1]),跳转至若不是,再判断是否等于若相等,则向集合vcfjk中添加向量(i,del,⊥),并跳转至否则添加向量(i,ins,Gjk*[j-1]),并跳转至
2.4.4.3)完成集合vcfjk的向量添加之后,按照添加顺序由晚到早更新集合顺序,即最晚添加进集合的向量是集合vcfjk的第一个向量;
2.4.4.4)集合vcfjk可能存在对于同一个位置i有多个含ins的三维向量的情况,在这种情况下,按照其在vcfjk的位置,原来的ins依次由{ins,ins+r,ins+r+1,...}替换,其中r是由Mj决定的大于等于3的随机数。至此,基因组的转换工作完成,得到以下三维向量集合:
2.5.1)首先给出Aed(tv1,tv2)的计算方法(tv1,tv2代表两个三维向量的集合):
2.5.1.1)记len1=|tv1|,len2=|tv2|;
2.5.1.2)按照以下方法更新集合tv1,tv2:
2.5.1.2.1)对于集合tv1每一个三维向量,若在tv2中找不到一个向量与其第一维数据相同,则将该向量从tv1中删除;同理,对集合tv2进行处理;
2.5.1.2.2)对于处理后的tv1中的每一个三位向量,若第一维数据是集合中重复出现的数据,且对应的向量在tv2中找不到与其前两位数据一样的向量,则将该向量从tv1中删除;同理,对集合tv2进行处理。
2.5.1.3)记更新后的集合tv1,tv2为tv1′,tv2′,且|tv1′|=|tv2′|=len;
2.5.1.4)初始化Aed(tv1,tv2)=len1+len2-2·len;
2.5.1.5)将集合tv1′,tv2′形式化表示为两个len×3的数组T1,T2;
2.5.1.6)对于所有的0≤i≤len-1,执行以下操作:
2.5.1.6.1)若T1[i][1]≠T2[i][1]且T1[i][2]≠T2[i][2],则在现有Aed(tv1,tv2)的值上加2,即Aed(tv1,tv2)=Aed(tv1,tv2)+2;
2.5.1.6.2)若T1[i][1]≠T2[i][1]且T1[i][2]=T2[i][2],则在现有Aed(tv1,tv2)的值上加1,即Aed(tv1,tv2)=Aed(tv1,tv2)+1;
2.5.1.6.3)若T1[i][1]=T2[i][1]且Tx[i][2]≠T2[i][2],则在现有Aed(tv1,tv2)的值上加1,即Aed(tv1,tv2)=Aed(tv1,tv2)+1;
2.5.1.6.4)若T1[i][1]=T2[i][1]且T1[i][2]=T2[i][2],则Aed(tv1,tv2)的值保持不变;
完成所有的比较后,得到最终Aed(tv1,tv2)的值;
2.5.1.7)tv1,tv2对应的基因组间的近似编辑距离等于最终的Aed(tv1,tv2)值。
2.5.2)通过vcfjk与根节点vcfj0计算其对应的基因组间的近似编辑距离Aed(vcfj0,vcfjk),若此时vcfj0已有的孩子节点与它的基因组间的近似编辑距离都不等于Aed(vcfj0,vcfjk),则添加vcfjk作为vcfj0的孩子节点,且vcfjk的边权值被赋值为Aed(vcfj0,vcfjk);
2.5.3)若此时vcfj0已有的孩子节点中存在某个节点vcfpn与它的基因组间的近似编辑距离等于Aed(vcfj0,vcfjk),则找出以vcfpn为根节点的子树,继续操作2.5.2)和2.5.3),直到vcfjk找到合适的父亲节点;
2.8)Mj完成加密后(即完成2.6)2.7)),在每一个节点上添加该节点存储的基因组的标签,即树的根节点上存储的信息更新为其它节点存储的信息更新为(E(vcfjk),idjk),k=1,2,...,nj-1,将加密后的记为
步骤3,用户基因组数据安全匹配。
3.1)每个用户Ui∈{U1,U2,U3...}首先向所有目标医疗机构Mi请求注册;
3.2)注册成功后,属于集合Mi的每家医疗机构Mj′都会通过安全的信道向用户发送系统参数<idj,0,k1,k2,k3,r,Refj,M(ξ+1)×9,HMAC()>,不同医疗机构发送的安全参数都是自身随机生成的,彼此不具有关联性;
3.3)这|Mi|家医疗机构都会存储Ui的身份信息;
3.4)Ui每接收到一条系统参数<idj′0,k1,k2,k3,r,Refj′,M(ξ+1)×9,HMAC()>,都会对应地加密个人基因组数据Gui得到一条查询请求:
完成加密处理后,Ui将得到|Mi|条不同的查询请求{(E(vcfui),idj′0)|,Mj′∈Mi};
3.6)对于Ui的每一条查询请求,云服务器都会进行以下处理:
步骤4,相似基因组信息查询。
基于真实基因组数据集DisGeNET(https://www.disgenet.org/home/),实施例采用Java编程语言实现后被部署在一台普通测试机(四核2.5GHz,24GB,Windows10操作系统)上,测试结果表明在任意染色体上即使查询阈值的值增加,其基因组的相似度匹配精确率也可达90%以上(如下表所示)。
同时,如图7所示,与已知性能最优方案(EFSS)中相比,本实施例的效率更高,其中,与EFSS方案中效率最好的子方案EFSS_Ⅰ相比,本实施例的效率提高了50倍以上。如图8所示,医疗机构终端、云服务器及客户端进行一次完成的基因组匹配查询服务所需的通信开销不超过2.5MB,与EFSS中开销最小的子方案EFSS_Ⅰ相比,节省了近6倍。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行系统,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种面向基因组数据相似度的高效匹配及隐私保护方法,其特征在于,所述面向基因组数据相似度的高效匹配及隐私保护方法包括:
系统参数初始化,每家医疗机构随机选择数据处理过程中所需的公共参考基因组、HMAC算法及其它安全参数,生成加密过程中所需的索引矩阵;
加密基因组数据库外包,每家医疗机构首先基于转换后的基因组构建一棵遗传BK树,然后利用索引矩阵和密钥对树进行加密,并发送给云服务器;
用户基因组数据安全匹配,用户首先在目标医疗机构进行注册获取相关参数,然后利用不同医疗机构的参数分别转换加密个人基因组数据,并发送给云服务器请求匹配服务;云服务器接收到用户加密的查询请求后,对指定的加密遗传BK树进行搜索,返回给用户符合要求的基因组标签;
相似基因组信息查询,用户通过添加随机标签掩蔽真实的标签集向医疗机构请求相关患者的患病信息,对自身健康状态做出评估。
2.如权利要求1所述的面向基因组数据相似度的高效匹配及隐私保护方法,其特征在于,所述面向基因组数据相似度的高效匹配及隐私保护方法具体包括:
步骤一,系统参数初始化步骤:
(1)每家医疗机构Mj∈{M1,M2,M3,…}从本地存储的基因组数据库中随机选取一个基因组作为公共参考基因,公共参考基因Refj=(g1,g2,...,gm)∈{A,G,C,T}m,{A,G,C,T}代表形成基因组的四种不同碱基;
(3)根据Refj被切割后每段的起始位置,构造索引矩阵M(ξ+1)×9,表示如下:
,其中cω{1,2,3}∈{0,1,2},cω{4,5,6,7,8}∈{0,1,2,3,4},cω{1,2,3,4,5,6,7,8}被随机赋值且满足cω1≠cω2≠cω3,cω4≠cω5≠cω6≠cω7≠cω8;
(4)Mj随机选取一种HMAC算法;
(5)Mj随机选取三个密钥k1,k2,k3,密钥长度由选取的HMAC算法决定,以及一个随机数r≥3;
(6)Mj发布系统参数<idj0,k1,k2,k3,r,Refj,M(ξ+1)×9,HMAC()>,其中idj0是医疗机构Mj的标签;
步骤二,加密基因组数据库外包步骤:
(6)Mj完成加密后(即完成(4)(5)),在每一个节点上添加该节点存储的基因组的标签,即树的根节点上存储的信息更新为其它节点存储的信息更新为(E(vcfjk),idjk),k=1,2,...,nj-1,将加密后的记为
步骤三,用户基因组数据安全匹配步骤:
(1)每个用户Ui∈{U1,U2,U3…}首先向所有目标医疗机构Mi请求注册;
(2)注册成功后,属于集合Mi的每家医疗机构Mj′都会通过安全的信道向用户发送系统参数<idj′0,k1,k2,k3,r,Refj′,M(ξ+1)×9,HMAC()>,不同医疗机构发送的安全参数都是自身随机生成的,彼此不具有关联性,且Ui的身份信息会被存储在这|Mi|家医疗机构中;
(3)Ui每接收到一条系统参数<idj′0,k1,k2,k3,r,Refj′,M(ξ+1)×9,HMAC()>,都会对应地加密个人基因组数据Gui得到一条查询请求:
完成加密处理后,Ui将得到|Mi|条不同的查询请求{(E(vcfui),idj′0)|Mj′∈Mi};
(5)对于Ui的每一条查询请求,云服务器都会进行以下处理:
步骤四,相似基因组信息查询步骤:
3.如权利要求2所述的面向基因组数据相似度的高效匹配及隐私保护方法,其特征在于,所述基因转换方法具体包括:
其中,当Ref[i-1]=G[j-1]时,f取值为0;否则f取值为1;
②若Ref[i-1]与G[j-1]不相等,判断是否等于若是,向集合vcf中添加向量(i,sub,G[j-1]),跳转至若不是,再判断是否等于若相等,则向集合vcf中添加向量(i,del,⊥),并跳转至否则添加向量(i,ins,G[j-1]),并跳转至
(5)完成集合vcf的向量添加之后,按照添加顺序由晚到早更新集合顺序,即最晚添加进集合的向量是集合vcf的第一个向量;
①通过vcfjk与根节点vcfj0计算其对应的基因组间的近似编辑距离Aed(vcfj0,vcfjk),若此时vcfj0已有的孩子节点与它的基因组间的近似编辑距离都不等于Aed(vcfj0,vcfjk),则添加vcfjk作为vcfj0的孩子节点,且vcfjk的边权值被赋值为Aed(vcfj0,vcfjk);
②若此时vcfj0已有的孩子节点中存在某个节点vcfpn与它的基因组间的近似编辑距离等于Aed(vcfj0,vcfjk),则找出以vcfpn为根节点的子树,继续操作①②,直到vcfjk找到合适的父亲节点;
6.如权利要求5所述的面向基因组数据相似度的高效匹配及隐私保护方法,其特征在于,所述Aed(tv1,tv2)的计算方法具体包括,tv1,tv2代表两个三维向量的集合:
(1)记len1=|tv1|,len2=|tv2|;
(2)按照以下方法更新集合tv1,tv2:
①对于集合tv1每一个三维向量,若在tv2中找不到一个向量与其第一维数据相同,则将该向量从tv1中删除;同理,对集合tv2进行处理;
②对于处理后的tv1中的每一个三位向量,若第一维数据是集合中重复出现的数据,且对应的向量在tv2中找不到与其前两位数据一样的向量,则将该向量从tv1中删除;同理,对集合tv2进行处理;
(3)记更新后的集合tv1,tv2为tv1′,tv2′,且|tv1′|=|tv2′|=len;
(4)初始化Aed(tv1,tv2)=len1+len2-2·len;
(5)将集合tv1′,tv2′形式化表示为两个len×3的数组T1,T2;
(6)对于所有的0≤i≤len-1,执行以下操作:
①若T1[i][1]≠T2[i][1]且T1[i][2]≠T2[i][2],则在现有Aed(tv1,tv2)的值上加2,即Aed(tv1,tv2)=Aed(tv1,tv2)+2;
②若T1[i][1]≠T2[i][1]且T1[i][2]=T2[i][2],则在现有Aed(tv1,tv2)的值上加1,即Aed(tv1,tv2)=Aed(tv1,tv2)+1;
③若T1[i][1]=T2[i][1]且T1[i][2]≠T2[i][2],则在现有Aed(tv1,tv2)的值上加1,即Aed(tv1,tv2)=Aed(tv1,tv2)+1;
④若T1[i][1]=T2[i][1]且T1[i][2]=T2[i][2],则Aed(tv1,tv2)的值保持不变;完成所有的比较后,得到最终Aed(tv1,tv2)的值;
(7)tv1,tv2对应的基因组间的近似编辑距离等于最终的Aed(tv1,tv2)值。
7.一种计算机设备,其特征在于,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
系统参数初始化,每家医疗机构随机选择数据处理过程中所需的公共参考基因组、HMAC算法及其它安全参数,生成加密过程中所需的索引矩阵;
加密基因组数据库外包,每家医疗机构首先基于转换后的基因组构建一棵遗传BK树,然后利用索引矩阵和密钥对树进行加密,并发送给云服务器;
用户基因组数据安全匹配,用户首先在目标医疗机构进行注册获取相关参数,然后利用不同医疗机构的参数分别转换加密个人基因组数据,并发送给云服务器请求匹配服务;云服务器接收到用户加密的查询请求后,对指定的加密遗传BK树进行搜索,返回给用户符合要求的基因组标签;
相似基因组信息查询,用户通过添加随机标签掩蔽真实的标签集向医疗机构请求相关患者的患病信息,对自身健康状态做出评估。
8.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如下步骤:
系统参数初始化,每家医疗机构随机选择数据处理过程中所需的公共参考基因组、HMAC算法及其它安全参数,生成加密过程中所需的索引矩阵;
加密基因组数据库外包,每家医疗机构首先基于转换后的基因组构建一棵遗传BK树,然后利用索引矩阵和密钥对树进行加密,并发送给云服务器;
用户基因组数据安全匹配,用户首先在目标医疗机构进行注册获取相关参数,然后利用不同医疗机构的参数分别转换加密个人基因组数据,并发送给云服务器请求匹配服务;云服务器接收到用户加密的查询请求后,对指定的加密遗传BK树进行搜索,返回给用户符合要求的基因组标签;
相似基因组信息查询,用户通过添加随机标签掩蔽真实的标签集向医疗机构请求相关患者的患病信息,对自身健康状态做出评估。
9.一种实施权利要求1~6任意一项所述面向基因组数据相似度的高效匹配及隐私保护方法的面向基因组数据相似度的高效匹配及隐私保护系统,其特征在于,所述面向基因组数据相似度的高效匹配及隐私保护系统包括:
客户端,用于用户基因组数据信息和身份信息的采集,在目标医疗机构注册,接收到各个医疗机构的系统参数后对基因组数据信息进行加密并生成查询请求,然后发送给云服务器;对云服务器返回的结果进行混淆处理后再发送给对应的医疗机构请求相关患者信息;根据相关患者信息评估用户的健康状况;
医疗机构终端,用于生成系统参数,构建并加密遗传BK树,并且将加密后的遗传BK树发送给云服务器;为用户提供注册服务;为合法的用户检索相似患者的非隐私信息并发送给用户;
云服务器,用于存储各家医疗机构发送过来的加密遗传BK树;接受用户发送的查询请求,在完成加密遗传BK树的搜索后,将基因组匹配查询结果返回给用户。
10.如权利要求9所述的的面向基因组数据相似度的高效匹配及隐私保护系统,其特征在于,所述客户端进一步包括:
信息采集模块,包括基因组数据采集子模块、身份信息采集子模块;用于采集用户的个人基因组数据和身份信息,并生成基因组向量和注册信息;
用户安全支持模块,包括请求注册子模块、参数存储子模块、数据转换子模块、加密发送子模块;用于向目标医疗机构终端发送注册请求,在获取系统参数后对个人基因组数据进行转换加密处理并发送给云服务器;
健康状况评估模块,包括扰动处理子模块、聚类分析子模块;用于对真实的标签集进行加扰发送给医疗机构终端,并对返回的患者信息进行分析从而评估用户健康状况;
所述医疗机构终端进一步包括:
参数生成模块,包括安全参数选取子模块、索引矩阵生成子模块;用于生成基因组转换加密所需的系统参数;
注册认证模块,包括用户信息认证子模块、用户信息存储子模块、系统参数发送子模块;用于接收合法用户的注册请求,存储用户身份信息,并将系统参数发送到成功注册的客户端;
医疗机构安全支持模块,包括数据转换子模块、遗传BK树构建子模块、加密发送子模块;用于将医疗机构终端存储的基因组数据库全部转换加密处理后以加密遗传BK树的形式发送给云服务器;
患者信息查询模块,包括患者信息索引子模块;用于将用户请求的相似基因组的患者的非隐私信息发送给用户;
所述云服务器进一步包括:
数据存储模块,包括加密遗传BK树存储子模块、用户查询请求接收子模块;用于存储医疗机构终端发送来的加密遗传BK树,并接收客户端发送来的查询请求;
相似基因组匹配模块,包括BK树定位子模块、BK树查询子模块、查询结果发送子模块;用于定位并搜索标签包含在用户查询请求中的加密遗传BK树,并将符合要求的基因组标签返回给相应的客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010834443.6A CN111967048B (zh) | 2020-08-19 | 2020-08-19 | 面向基因组数据相似度的高效匹配及隐私保护方法、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010834443.6A CN111967048B (zh) | 2020-08-19 | 2020-08-19 | 面向基因组数据相似度的高效匹配及隐私保护方法、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111967048A true CN111967048A (zh) | 2020-11-20 |
CN111967048B CN111967048B (zh) | 2022-11-29 |
Family
ID=73388429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010834443.6A Active CN111967048B (zh) | 2020-08-19 | 2020-08-19 | 面向基因组数据相似度的高效匹配及隐私保护方法、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111967048B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112614545A (zh) * | 2020-12-29 | 2021-04-06 | 暨南大学 | 一种支持多属性匿名认证的基因序列安全比对方法及系统 |
CN115982503A (zh) * | 2023-02-07 | 2023-04-18 | 梁礼津 | 一种基于云平台的网站信息采集方法及系统 |
CN118381859A (zh) * | 2024-06-25 | 2024-07-23 | 成都科玛奇信息科技有限责任公司 | 一种医疗影像数据的传输方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2769322A1 (en) * | 2011-10-17 | 2014-08-27 | Intertrust Technologies Corporation | Systems and methods for protecting and governing genomic and other information |
CN110611567A (zh) * | 2019-09-20 | 2019-12-24 | 福州大学 | 基于非确定性有限自动机的隐私保护医学诊疗系统 |
CN110660450A (zh) * | 2019-09-23 | 2020-01-07 | 长沙学院 | 一种基于加密基因组数据的安全计数查询与完整性验证装置和方法 |
CN110957003A (zh) * | 2019-11-20 | 2020-04-03 | 河南师范大学 | 一种面向用户隐私保护的高效基因比对方法 |
-
2020
- 2020-08-19 CN CN202010834443.6A patent/CN111967048B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2769322A1 (en) * | 2011-10-17 | 2014-08-27 | Intertrust Technologies Corporation | Systems and methods for protecting and governing genomic and other information |
CN110611567A (zh) * | 2019-09-20 | 2019-12-24 | 福州大学 | 基于非确定性有限自动机的隐私保护医学诊疗系统 |
CN110660450A (zh) * | 2019-09-23 | 2020-01-07 | 长沙学院 | 一种基于加密基因组数据的安全计数查询与完整性验证装置和方法 |
CN110957003A (zh) * | 2019-11-20 | 2020-04-03 | 河南师范大学 | 一种面向用户隐私保护的高效基因比对方法 |
Non-Patent Citations (2)
Title |
---|
丁滟等: "可信云服务", 《计算机学报》 * |
田美金 等: "一种改进PSI协议的基因数据隐私保护方案", 《西安电子科技大学学报》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112614545A (zh) * | 2020-12-29 | 2021-04-06 | 暨南大学 | 一种支持多属性匿名认证的基因序列安全比对方法及系统 |
CN115982503A (zh) * | 2023-02-07 | 2023-04-18 | 梁礼津 | 一种基于云平台的网站信息采集方法及系统 |
CN115982503B (zh) * | 2023-02-07 | 2023-10-13 | 深圳慧梧科技有限公司 | 一种基于云平台的网站信息采集方法及系统 |
CN118381859A (zh) * | 2024-06-25 | 2024-07-23 | 成都科玛奇信息科技有限责任公司 | 一种医疗影像数据的传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111967048B (zh) | 2022-11-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111967048B (zh) | 面向基因组数据相似度的高效匹配及隐私保护方法、系统 | |
Akgün et al. | Privacy preserving processing of genomic data: A survey | |
Wang et al. | Searchable encryption over feature-rich data | |
US9449191B2 (en) | Device, system and method for securing and comparing genomic data | |
US10522244B2 (en) | Bioinformatic processing systems and methods | |
Schneider et al. | EPISODE: Efficient privacy-preserving similar sequence queries on outsourced genomic databases | |
Xie et al. | Achieving privacy-preserving online diagnosis with outsourced SVM in internet of medical things environment | |
EP2709306A1 (en) | Method and system to perform secure boolean search over encrypted documents | |
Giacomelli et al. | Privacy-preserving collaborative prediction using random forests | |
US20180330054A1 (en) | Rapid genomic sequence classification using probabilistic data structures | |
Mahdi et al. | Privacy-preserving string search on encrypted genomic data using a generalized suffix tree | |
Sharma et al. | On differential privacy-based framework for enhancing user data privacy in mobile edge computing environment | |
CN109783667A (zh) | 一种图像存储和检索的方法、客户端及系统 | |
LU100449B1 (en) | Improved Computing Device | |
CN114254344B (zh) | 一种基于区块链的共享数据库的隐私数据范围查询方法 | |
Deuber et al. | My genome belongs to me: controlling third party computation on genomic data | |
Tong et al. | Federated Computing: Query, Learning, and Beyond. | |
CN110660450A (zh) | 一种基于加密基因组数据的安全计数查询与完整性验证装置和方法 | |
JP2021163381A5 (zh) | ||
Oprisanu et al. | How Much Does GenoGuard Really" Guard"? An Empirical Analysis of Long-Term Security for Genomic Data | |
Djeddai et al. | Keeping the Privacy and the Security of the Knowledge Graph Completion Using Blockchain Technology | |
EP3461055A1 (en) | System and method for secure outsourced annotation of datasets | |
Zhao et al. | A secure alignment algorithm for mapping short reads to human genome | |
WO2020259847A1 (en) | A computer implemented method for privacy preserving storage of raw genome data | |
Fernandes | Reconciling data privacy with sharing in next-generation genomic workflows |
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 |