CN115101131A - 一种基于多方安全计算的基因序列对齐方法及系统 - Google Patents
一种基于多方安全计算的基因序列对齐方法及系统 Download PDFInfo
- Publication number
- CN115101131A CN115101131A CN202210565098.XA CN202210565098A CN115101131A CN 115101131 A CN115101131 A CN 115101131A CN 202210565098 A CN202210565098 A CN 202210565098A CN 115101131 A CN115101131 A CN 115101131A
- Authority
- CN
- China
- Prior art keywords
- sequence
- party
- participant
- sequences
- share
- 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.)
- Pending
Links
Images
Classifications
-
- 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
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
- G16B30/10—Sequence alignment; Homology search
-
- 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
- G16B30/00—ICT specially adapted for sequence analysis involving nucleotides or amino acids
-
- 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/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- 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)
- Life Sciences & Earth Sciences (AREA)
- Physics & Mathematics (AREA)
- Biotechnology (AREA)
- General Health & Medical Sciences (AREA)
- Proteomics, Peptides & Aminoacids (AREA)
- Health & Medical Sciences (AREA)
- Analytical Chemistry (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Chemical & Material Sciences (AREA)
- Evolutionary Biology (AREA)
- Biophysics (AREA)
- Medical Informatics (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种基于多方安全计算的基因序列对齐方法及系统,包括:第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列并分发给对方;第一参与方和第二参与方分别在明文条件下计算自己持有序列两两对齐第一得分,并通过秘密共享协议将第一得分拆分份额发给对方;双方在持有的两方碱基序列份额条件下,联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额分别发送给各方持有;第一参与方和第二参与方根据持有的所有序列两两对齐得分的份额,计算最高的第三得分作为轴心序列;第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。本发明解决了现有明文序列对齐普遍存在的隐私泄露风险的问题。
Description
技术领域
本发明涉及基因序列计算技术领域,尤其涉及一种基于多方安全计算的基因序列对齐方法及系统。
背景技术
随着基因组测序成本的持续下降,高通量测序仪(如:I1lumina Hiseq系列测序仪)产生的基因组测序序列(read)呈现爆照式增长,尤其是人类基因组测序序列的积累速度更为明显。
目前,人们通常利用短序列比对软件(如:Burrows Wheeler Aligner,BWA)将每条测序序列比对到参考序列(reference sequence)上,得到每条测序序列与参考序列的双序列比对结果(包括测序序列相对于参考序列详细的匹配、错配、插入和删除等信息),然后根据所有测序序列与参考序列的双序列比对结果,得到基因组变异结果。面对一些新出现的病毒,不同地区可能出现不一样的变异版本,通常需要将不同地区的病毒基因序列进行对齐比对,发现相同和不同的地方,便于进行疫苗的研发和相关治疗方案的研究,但是当双方提供各自的基因序列时,容易造成单方的基因序列信息泄密,因此需要保证在信息安全的前提下进行基因序列对齐。
发明内容
本发明提供一种基于多方安全计算的基因序列对齐方法及系统,用以解决现有技术中基因对齐过程中存在基因序列泄密风险的缺陷,实现保证基因序列信息安全的前提下进行基因序列对齐。
本发明提供一种基于多方安全计算的基因序列对齐方法,包括:
第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
所述第一参与方和第二参与方分别在明文条件下计算自己持有序列两两对齐第一得分,并通过秘密共享协议将第一得分拆分份额发给对方;
所述第一参与方和第二参与方在持有的两方碱基序列份额条件下,联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额分别发送给各方持有;
所述第一参与方和第二参与方根据持有的所有序列两两对齐得分的份额,计算最高的第三得分,将第三得分序列作为轴心序列;
所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
根据本发明提供的一种基于多方安全计算的基因序列对齐方法,所述第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列,具体包括:
将原碱基序列中,进行加法秘密共享时,将碱基序列编码成整数序列;
进行碱基是否相等判断时,将碱基序列编码成二进制序列。
根据本发明提供的一种基于多方安全计算的基因序列对齐方法,所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有,具体包括:
第一参与方和第二参与方通过加法秘密共享协议将编码后的原始序列份额发送给另一方,自己持有另一份份额,需双方份额聚合才可恢复出原始序列;
根据本发明提供的一种基于多方安全计算的基因序列对齐方法,所述第一参与方和第二参与方分别在明文条件下计算自己持有份额序列两两对齐第一得分,并通过加法秘密共享协议将第一得分拆分份额发给双方,具体包括:
基于Needleman-Wunsch算法计算持有序列两两对齐得分,通过计算得分矩阵获得对齐第一得分;
两条序列得分矩阵计算满足:
其中,i表示序列1的第i位碱基,j示序列2的第j位碱基,indel表示错位罚分,match表示匹配罚分,mismatch表示不匹配罚分,f(i,j)为得分矩阵第i行j列得分。
根据本发明提供的一种基于多方安全计算的基因序列对齐方法,所述第一参与方和第二参与方将持有的两方碱基序列份额,在安全条件下进行联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额发送给双方各自持有,具体包括:
所述加法秘密共享条件下联合计算第二得分矩阵包括:不泄露原始序列条件下,通过各方持有的序列秘密份额进行计算得分矩阵,且得分矩阵以秘密分享形式被双方分别持有,只有双方联合才可恢复出得分矩阵的具体得分。
根据本发明提供的一种基于多方安全计算的基因序列对齐方法,所述第一参与方和第二参与方根据持有的所有序列两两对齐,计算最高的第三得分,将第三得分序列作为轴心序列,具体包括:
在双方只持有对方序列份额的条件下,计算双方持有的每一条序列与其余双方序列对齐的第三得分,累加获得每一条序列的最终得分,输出最终得分的份额给各方,并将最高得分序列作为轴心序列。
根据本发明提供的一种基于多方安全计算的基因序列对齐方法,所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐,具体包括:
第一参与方和第二参与方分别在秘密共享条件下通过联合计算分别获得得分矩阵的份额矩阵,并基于得分矩阵的份额矩阵计算出路径矩阵,并将路径矩阵份额发送给双方分别持有;
所述路径矩阵是指将从得分矩阵获得对齐序列的路径构成的矩阵;
最终计算所得的轴心序列为秘密分享形式,分别由第一参与方和第二参与方持有份额,第一参与方和第二参与方在只持有轴心序列份额的条件下将自己持有序列与轴心序列进行对齐,最终输出对齐序列的份额。
本发明还提供一种基于多方安全计算的基因序列对齐系统,所述系统包括:
编码模块,用于第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
分发模块,用于所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
自我对齐计算模块,用于所述第一参与方和第二参与方分别在明文条件下计算自己持有份额序列两两对齐第一得分,并通过加法秘密共享协议将第一得分拆分份额发给双方;
联合对齐计算模块,用于所述第一参与方和第二参与方将持有的两方碱基序列份额,在安全条件下进行联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额发送给双方各自持有;
轴心序列确定模块,用于所述第一参与方和第二参与方根据持有的所有序列两两对齐,计算最高的第三得分,将第三得分序列作为轴心序列;
更新对齐模块,用于所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于多方安全计算的基因序列对齐方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于多方安全计算的基因序列对齐方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述基于多方安全计算的基因序列对齐方法。
本发明提供的一种基于多方安全计算的基因序列对齐方法及系统,通过第一参与方和第二参与方对自己持有的碱基序列编码后进行份额互相分享,计算自己持有的序列两两对齐得分以及在秘密条件下计算双方序列两两对齐得分,计算最高得分序列作为轴心序列,将各方自己持有的序列与轴心序列对齐。避免明文序列对齐普遍存在的隐私泄露的情况,以防各方持有的原始序列被另一方直接获取,提升基因对齐过程的安全性。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的一种基于多方安全计算的基因序列对齐方法的流程示意图;
图2是本发明提供的一种基于多方安全计算的基因序列对齐系统的模块连接示意图;
图3是本发明提供的电子设备的结构示意图。
附图标记:
110:编码模块;120:分发模块;130:自我对齐计算模块;140:联合对齐计算模块;150:轴心序列确定模块;160:更新对齐模块;310:处理器;320:通信接口;330:存储器;340:通信总线。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-图X描述本发明的一种基于多方安全计算的基因序列对齐方法,包括:
S100、第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
S200、第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
S300、第一参与方和第二参与方分别在明文条件下计算自己持有序列两两对齐第一得分,并通过秘密共享协议将第一得分拆分份额发给对方;
S400、第一参与方和第二参与方在持有的两方碱基序列份额条件下,联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额分别发送给各方持有;
S500、第一参与方和第二参与方根据持有的所有序列两两对齐得分的份额,计算最高的第三得分,将第三得分序列作为轴心序列;
S600、第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
通过第一参与方和第二参与方的对齐得分计算,确定轴心序列,并将自有的序列与轴心序列对齐,避免明文序列对齐普遍存在的隐私泄露的情况,以防各方持有的原始序列被另一方直接获取,提升基因对齐过程的安全性。
第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列,具体包括:
将原碱基序列中,进行加法秘密共享时,将碱基序列编码成整数序列;将“A、G、C、T、N、-”6种符号编码规则为:A-0、G-1、C-2、T-3、N-4、--5;
进行碱基是否相等判断时,将碱基序列编码成二进制序列,“A、G、C、T、N、-”6种符号编码规则为:A-0000、G-001、C-2010、T-011、N-100、--101。
第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有,具体包括:
第一参与方和第二参与方通过加法秘密共享协议将编码后的原始序列份额发送给另一方,自己持有另一份份额,需双方份额聚合才可恢复出原始序列;
假设第一参与方持有秘密a的份额<a>1和秘密b的份额<b>1、第二参与方持有秘密a的份额<a>2和秘密b的份额<b>2,其中a、b、<a>1、<a>2、<b>1、<b>2∈Zn,满足<a>1+<a>2=a,〈b〉1+〈b〉2=b。
第一参与方和第二参与方分别在明文条件下计算自己持有份额序列两两对齐第一得分,并通过加法秘密共享协议将第一得分拆分份额发给双方,具体包括:
基于Needleman-Wunsch算法计算持有序列两两对齐得分,通过计算得分矩阵获得对齐第一得分;
两条序列得分矩阵计算满足:
其中,i表示序列1的第i位碱基,j示序列2的第j位碱基,indel表示错位罚分,match表示匹配罚分,mismatch表示不匹配罚分,f(i,j)为得分矩阵第i行j列得分。
隐私保护的Needleman-Wunsch算法,第一参与方持有S1,第二参与方持有S2;
第一参与方与第二参与方,双方分别将持有序列S1和S2转换为整数(例如A=1,G=2,C=3,T=4,N=5,-=6);
第一参与方通过算术秘密共享计算S1的秘密份额<S1>1和<S1>2,并将<S1>2发送给第二参与方,第二参与方通过算术秘密共享计算S2的秘密份额<S2>1和<S2>2,并将<S2>1发送给第一参与方;
双方联合计算得分矩阵Sc和路径矩阵P,第一参与方获得得分矩阵秘密分享<Sc>1和路径矩阵秘密分享<P>1,第二参与方获得得分矩阵秘密分享<Sc>2和路径矩阵秘密分享<P>2;
双方基于持有的路径矩阵份额和原序列份额联合计算回溯路径P-back,第一参与方获得回溯路径的秘密分享矩阵<P-back>1,第二参与方获得回溯路径的秘密分享矩阵<P-back>1;
双方基于回溯路径联合计算对齐S1和S2,最终第一参与方获取<S1‘>1、<S2‘>1,第二参与方获取<S1‘>2、<S2‘>2。
其中,S1为第一参与方持有的原始序列,S2为第二参与方持有的原始序列,S1‘、S2‘为对齐后序列;<S1‘>1表示S1对齐后序列S1的秘密分享份额,<S1‘>2为序列S1‘的另一份秘密分享份额,由<S1‘>1和<S1‘>2可恢复出S1‘;Sc表示len(S1+1)×len(S2+1)维的得分矩阵,P表示lenght(S1+1)×len(S2+1)维的路径矩阵,len(Si)表示序列Si的维度,<Sc>1和<Sc>2为得分矩阵Sc的2个秘密份额矩阵,<P>1和<P>2为路径矩阵P的2个秘密份额矩阵。
第一参与方和第二参与方将持有的两方碱基序列份额,在安全条件下进行联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额发送给双方各自持有,具体包括:
所述加法秘密共享条件下联合计算第二得分矩阵包括:不泄露原始序列条件下,通过各方持有的序列秘密份额进行计算得分矩阵,且得分矩阵以秘密分享形式被双方分别持有,只有双方联合才可恢复出得分矩阵的具体得分。
第一参与方和第二参与方根据持有的所有序列两两对齐,计算最高的第三得分,将第三得分序列作为轴心序列,具体包括:
在双方只持有对方序列份额的条件下,计算双方持有的每一条序列与其余双方序列对齐的第三得分,累加获得每一条序列的最终得分,输出最终得分的份额给各方,并将最高得分序列作为轴心序列。
通过选出最高分序列作为轴心序列,可以使双方序列对齐形成基准,均与轴心序列进行对齐。
第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐,具体包括:
第一参与方和第二参与方分别在秘密共享条件下通过联合计算分别获得得分矩阵的份额矩阵,并基于得分矩阵的份额矩阵计算出路径矩阵,并将路径矩阵份额发送给双方分别持有;
所述路径矩阵是指将从得分矩阵获得对齐序列的路径构成的矩阵;
最终计算所得的轴心序列为秘密分享形式,分别由第一参与方和第二参与方持有份额,第一参与方和第二参与方在只持有轴心序列份额的条件下将自己持有序列与轴心序列进行对齐,最终输出对齐序列的份额。
本发明提供的一种基于多方安全计算的基因序列对齐方法通过第一参与方和第二参与方对自己持有的碱基序列编码后进行份额互相分享,计算自己持有的序列两两对齐得分以及在秘密条件下计算双方序列两两对齐得分,计算最高得分序列作为轴心序列,将各方自己持有的序列与轴心序列对齐。避免明文序列对齐普遍存在的隐私泄露的情况,以防各方持有的原始序列被另一方直接获取,提升基因对齐过程的安全性。
本发明还公开了一种基于多方安全计算的基因序列对齐系统,所述系统包括:
编码模块110,用于第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
分发模块120,用于所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
自我对齐计算模块130,用于所述第一参与方和第二参与方分别在明文条件下计算自己持有序列两两对齐第一得分,并通过秘密共享协议将第一得分拆分份额发给对方;
联合对齐计算模块140,用于所述第一参与方和第二参与方在持有的两方碱基序列份额条件下,联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额分别发送给各方持有;
轴心序列确定模块150,用于所述第一参与方和第二参与方根据持有的所有序列两两对齐得分的份额,计算最高的第三得分,将第三得分序列作为轴心序列;
更新对齐模块160,用于所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
通过编码模块110将原碱基序列中,进行加法秘密共享时,将碱基序列编码成整数序列;将“A、G、C、T、N、-”6种符号编码规则为:A-0、G-1、C-2、T-3、N-4、--5;
进行碱基是否相等判断时,将碱基序列编码成二进制序列,“A、G、C、T、N、-”6种符号编码规则为:A-0000、G-001、C-2010、T-011、N-100、--101。
分发模块120将第一参与方和第二参与方编码后的份额分成两部分,需要将两方持有份额结合才能恢复原始碱基序列。
自我对齐计算模块130,针对明文条件下持有份额序列两两对齐第一得分,避免全部都在秘密条件下进行对齐,降低计算量。
联合对齐计算模块140针对双方进行碱基序列对齐计算后,有助于后续确定最高分的对齐序列;通过轴心序列确定模块150确定轴心序列;更新对齐模块160将双方各自持有的序列与轴心序列进行对齐。
本发明提供的一种基于多方安全计算的基因序列对齐系统通过第一参与方和第二参与方对自己持有的碱基序列编码后进行份额互相分享,计算自己持有的序列两两对齐得分以及在秘密条件下计算双方序列两两对齐得分,计算最高得分序列作为轴心序列,将各方自己持有的序列与轴心序列对齐。避免明文序列对齐普遍存在的隐私泄露的情况,以防各方持有的原始序列被另一方直接获取,提升基因对齐过程的安全性。
图3示例了一种电子设备的实体结构示意图,如图3所示,该电子设备可以包括:处理器(processor)310、通信接口(Communications Interface)320、存储器(memory)330和通信总线340,其中,处理器310,通信接口320,存储器330通过通信总线340完成相互间的通信。处理器310可以调用存储器330中的逻辑指令,以执行基于多方安全计算的基因序列对齐方法,该方法包括:第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
所述第一参与方和第二参与方分别在明文条件下计算自己持有序列两两对齐第一得分,并通过秘密共享协议将第一得分拆分份额发给对方;
所述第一参与方和第二参与方在持有的两方碱基序列份额条件下,联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额分别发送给各方持有;
所述第一参与方和第二参与方根据持有的所有序列两两对齐得分的份额,计算最高的第三得分,将第三得分序列作为轴心序列;
所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
此外,上述的存储器330中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的基于多方安全计算的基因序列对齐方法,该方法包括:第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
所述第一参与方和第二参与方分别在明文条件下计算自己持有序列两两对齐第一得分,并通过秘密共享协议将第一得分拆分份额发给对方;
所述第一参与方和第二参与方在持有的两方碱基序列份额条件下,联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额分别发送给各方持有;
所述第一参与方和第二参与方根据持有的所有序列两两对齐得分的份额,计算最高的第三得分,将第三得分序列作为轴心序列;
所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的基于多方安全计算的基因序列对齐方法,该方法包括:第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
所述第一参与方和第二参与方分别在明文条件下计算自己持有序列两两对齐第一得分,并通过秘密共享协议将第一得分拆分份额发给对方;
所述第一参与方和第二参与方在持有的两方碱基序列份额条件下,联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额分别发送给各方持有;
所述第一参与方和第二参与方根据持有的所有序列两两对齐得分的份额,计算最高的第三得分,将第三得分序列作为轴心序列;
所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种基于多方安全计算的基因序列对齐方法,其特征在于,包括:
第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
所述第一参与方和第二参与方分别在明文条件下计算自己持有序列两两对齐第一得分,并通过秘密共享协议将第一得分拆分份额发给对方;
所述第一参与方和第二参与方在持有的两方碱基序列份额条件下,联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额分别发送给各方持有;
所述第一参与方和第二参与方根据持有的所有序列两两对齐得分的份额,计算最高的第三得分,将第三得分序列作为轴心序列;
所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
2.根据权利要求1所述的基于多方安全计算的基因序列对齐方法,其特征在于,所述第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列,具体包括:
将原碱基序列中,进行加法秘密共享时,将碱基序列编码成整数序列;
进行碱基是否相等判断时,将碱基序列编码成二进制序列。
6.根据权利要求1所述的基于多方安全计算的基因序列对齐方法,其特征在于,所述第一参与方和第二参与方根据持有的所有序列两两对齐,计算最高的第三得分,将第三得分序列作为轴心序列,具体包括:
在双方只持有对方序列份额的条件下,计算双方持有的每一条序列与其余双方序列对齐的第三得分,累加获得每一条序列的最终得分,输出最终得分的份额给各方,并将最高得分序列作为轴心序列。
7.根据权利要求1所述的基于多方安全计算的基因序列对齐方法,其特征在于,所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐,具体包括:
第一参与方和第二参与方分别在秘密共享条件下通过联合计算分别获得得分矩阵的份额矩阵,并基于得分矩阵的份额矩阵计算出路径矩阵,并将路径矩阵份额发送给双方分别持有;
所述路径矩阵是指将从得分矩阵获得对齐序列的路径构成的矩阵;
最终计算所得的轴心序列为秘密分享形式,分别由第一参与方和第二参与方持有份额,第一参与方和第二参与方在只持有轴心序列份额的条件下将自己持有序列与轴心序列进行对齐,最终输出对齐序列的份额。
8.一种基于多方安全计算的基因序列对齐系统,其特征在于,所述系统包括:
编码模块,用于第一参与方和第二参与方将持有碱基序列编码为整数序列和二进制序列;
分发模块,用于所述第一参与方和第二参与方分别将编码后的序列分为两份互补的份额序列,一份份额序列发送给另一方,另一份份额序列自己持有;
自我对齐计算模块,用于所述第一参与方和第二参与方分别在明文条件下计算自己持有份额序列两两对齐第一得分,并通过加法秘密共享协议将第一得分拆分份额发给双方;
联合对齐计算模块,用于所述第一参与方和第二参与方将持有的两方碱基序列份额,在安全条件下进行联合计算双方序列两两对齐的第二得分,并将第二得分拆分份额发送给双方各自持有;
轴心序列确定模块,用于所述第一参与方和第二参与方根据持有的所有序列两两对齐,计算最高的第三得分,将第三得分序列作为轴心序列;
更新对齐模块,用于所述第一参与方和第二参与方分别在秘密份额条件下将自己持有序列与轴心序列对齐。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述基于多方安全计算的基因序列对齐方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述基于多方安全计算的基因序列对齐方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210565098.XA CN115101131A (zh) | 2022-05-23 | 2022-05-23 | 一种基于多方安全计算的基因序列对齐方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210565098.XA CN115101131A (zh) | 2022-05-23 | 2022-05-23 | 一种基于多方安全计算的基因序列对齐方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115101131A true CN115101131A (zh) | 2022-09-23 |
Family
ID=83288208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210565098.XA Pending CN115101131A (zh) | 2022-05-23 | 2022-05-23 | 一种基于多方安全计算的基因序列对齐方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115101131A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117114059A (zh) * | 2023-05-16 | 2023-11-24 | 华为云计算技术有限公司 | 神经网络中激活函数的计算方法、装置以及计算设备 |
-
2022
- 2022-05-23 CN CN202210565098.XA patent/CN115101131A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117114059A (zh) * | 2023-05-16 | 2023-11-24 | 华为云计算技术有限公司 | 神经网络中激活函数的计算方法、装置以及计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111600707B (zh) | 一种在隐私保护下的去中心化联邦机器学习方法 | |
CN107038639A (zh) | 一种兼容多资产类型快速交易的联盟链构建方法 | |
CN112183730A (zh) | 一种基于共享学习的神经网络模型的训练方法 | |
CN115101131A (zh) | 一种基于多方安全计算的基因序列对齐方法及系统 | |
CN115688185B (zh) | 多方隐私求和方法、装置、电子设备和存储介质 | |
CN115102693A (zh) | 基于多方安全计算的隐私保护序列nj树构建方法及系统 | |
WO2023020216A1 (zh) | 多方安全确定最值的方法、装置、设备及存储介质 | |
CN111104968A (zh) | 一种基于区块链的安全svm训练方法 | |
CN111917721A (zh) | 基于区块链的属性加密方法 | |
CN117171779B (zh) | 基于交集保护的数据处理装置 | |
Bochkareva et al. | Genome rearrangements and phylogeny reconstruction in Yersinia pestis | |
CN103618593B (zh) | 体域网中加强的传感器安全附着和密钥管理方法 | |
CN113051608A (zh) | 一种联邦学习的虚拟化共享模型传输方法 | |
CN116489637A (zh) | 一种面向元宇宙的基于隐私保护的移动边缘计算方法 | |
Mohamed et al. | A cancelable biometric security framework based on RNA encryption and genetic algorithms | |
CN116865938A (zh) | 基于秘密共享和同态加密的多服务器联邦学习方法 | |
CN115473633B (zh) | 一种多方协同产生sm2数字签名的方法及装置 | |
CN111769945A (zh) | 基于区块链的拍卖处理方法和区块链节点 | |
CN113489690B (zh) | 强抗密钥暴露的在线/离线外包数据完整性审计方法 | |
CN115719094A (zh) | 基于联邦学习的模型训练方法、装置、设备及存储介质 | |
CN115361196A (zh) | 一种基于区块链网络的业务交互方法 | |
CN115550073A (zh) | 可监管隐身地址构造方法 | |
CN115277696A (zh) | 一种跨网络联邦学习系统及方法 | |
CN113541963A (zh) | 一种基于tee可扩展的安全多方计算方法及系统 | |
CN113162759A (zh) | 基于恶意mascot协议的安全数据共享计算方法及系统 |
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 |