Privacy protection method for genome multi-sequence alignment based on secret sharing
Through a secure multi-party calculation method based on secret sharing, genomic sequences are segmented and rearranged, and secretly shared data slices are constructed, which solves the contradiction between privacy protection and efficiency requirements in genomic multi-sequence alignment, and achieves high-precision approximate multi-sequence alignment and privacy protection of genomic data.
Patent Information
- Application Number
- CN202411850546.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-16
- Publication Date
- 2025-04-25
- Estimated Expiration
- 2044-12-16
AI Technical Summary
There is a contradiction between privacy protection and efficiency requirements in genome multi-sequence alignment, and it is difficult for the prior art to protect the privacy information of genome sequences in high-precision approximate multi-sequence alignment.
A secure multi-party calculation method based on secret sharing is adopted, and a secretly shared data slice is constructed by segmenting and rearranging genome sequences, and three methods: arithmetic secret sharing, Boolean secret sharing and Yao's secret sharing are used to convert ciphertext spaces to achieve privacy protection for genome multi-sequence alignment.
While ensuring the accuracy of multi-sequence alignment results, the overhead brought by ciphertext calculations is reduced, the implementation efficiency of multi-sequence alignment solutions for privacy protection is improved, and the privacy protection and computing effectiveness of genomic data is ensured.
Smart Images

Figure CN119885256A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to a privacy protection method for genome multiple sequence alignment based on secret sharing, belonging to the technical field of cyberspace security. Background Art
[0002] With the advancement of genome sequencing technology, the amount of genome sequence data has continued to increase and has reached the TB level, and digital storage methods have gradually become the mainstream. The analysis and utilization of genome data have gradually expanded to various fields. Genome sequence comparison analysis is an important research method in the scientific research of genome data, mainly including genome binary sequence comparison and genome multiple sequence comparison methods. Multiple sequence alignment (MSA: Multiple Sequence Alignment) of genome sequences plays an increasingly important role in comparative genomics research. MSA can identify the similarities and differences of a set of gene sequences, thereby predicting molecular structure and function, and can also construct phylogenetic trees to understand the evolutionary relationship between different species. Multi-sample MSA conducted between different gene databases can understand the evolutionary relationship and functional association between different organisms or individuals. In order to improve the effectiveness and accuracy of large-scale genome sequence analysis, collaborative analysis of genome sequences is usually carried out between different institutions.
[0003] However, human genome sequences contain a large amount of sensitive personal information, especially long gene sequence data for multiple sequence alignment. Individuals can be uniquely identified through information on mutation sites in the genome sequence, which may lead to the leakage of private information about family inheritance, diseases, and blood relationships, posing a threat to personal privacy information. In addition, there are strong correlations and similarities between genome sequences. The leakage of personal genome sequence information may also lead to the leakage of sensitive biological information of relatives, races, or countries, resulting in serious consequences. The gene sequence itself is stable, which means that if sensitive information in the gene sequence data is leaked, the related risks will run through the entire life cycle of the individual.
[0004] The owners of genomic data are basically large-scale hospitals or research institutions. Relevant practitioners have a certain degree of security awareness and use certain cryptographic technologies to protect the data security of genomic data during storage and transmission. However, there is still a lack of attention to the privacy protection of genomic sequences during calculation. Commonly used lossless methods to protect privacy in genomic sequence calculations mainly include secure multi-party computing methods based on homomorphic encryption, obfuscated circuits, and secret sharing. Among them, secure multi-party computing based on homomorphic encryption and obfuscated circuits is an effective solution to protect the privacy of gene sequences in analysis and applications. It not only protects the privacy of genomic data between different participants, but also maintains the availability of data. However, these two methods are time-efficient and not flexible enough. Even if only a single base comparison is performed, the entire genome sequence must be encrypted or obfuscated, which is difficult to meet the computational requirements of genome multiple sequence comparisons.
[0005] The secure multi-party computing method based on arithmetic secret sharing, Boolean secret sharing and Yao's secret sharing is a concept proposed by Demmler et al. in 2015 to realize secure two-party computing based on ciphertext space conversion based on secret sharing. Its core idea is to share the data to be calculated in secret, including three methods: arithmetic secret sharing, Boolean secret sharing and Yao's secret sharing, so that the participants have secret sharing slices of the data involved in the calculation, and can calculate the data slices and then restore the plaintext, so that the participants can complete the relevant privacy calculation without knowing each other's data. Since the three secret sharing methods have their own advantages and disadvantages and good calculation methods, different secret sharing methods can be adapted to different computing scenarios through the conversion of ciphertext space, so as to increase the types of calculations that can be performed and improve the efficiency of privacy calculation. The secure multi-party computing method based on secret sharing is suitable for more complex calculations in multiple sequence alignment of genome sequences, and can meet the requirements of efficiency and accuracy in multiple sequence alignment of long genome sequences. The secure multi-party computing method based on multiple secret sharing is a feasible solution for realizing privacy-protected genome multiple sequence alignment.
[0006] Therefore, the present invention will realize the privacy calculation of genomic sequence data in genomic multiple sequence alignment, design genomic sequence segmentation and rearrangement methods to reduce the time overhead of ciphertext slice construction in the process of multiple sequence alignment, design a secret sharing privacy protection method that can be used to calculate genomic multiple sequence alignment, and realize approximate genomic multiple sequence alignment based on secret sharing, thereby ensuring the privacy protection and computing utility of genomic data. Summary of the invention
[0007] The technical problem solved by the present invention is: in view of the privacy and utility requirements in genome multiple sequence alignment, a genome multiple sequence alignment method based on secret sharing is provided, which protects the privacy information of the genome sequence during the multiple sequence alignment while realizing high-precision approximate multiple sequence alignment, thereby realizing privacy-protected gene multiple sequence alignment.
[0008] The technical solution adopted by the present invention is: a privacy protection method for genome multiple sequence alignment based on secret sharing, which involves computing nodes A and B of aggregated privacy computing and multiple genome database query parties, wherein the query party is a sub-node in the multiple sequence alignment calculation, and performs the offline calculation stage of the multiple sequence alignment. The model of the genome multiple sequence alignment is as follows Figure 1 The technical solution for implementing the present invention comprises the following steps:
[0009] Step 1: The query party splits the genome sequence in the genome dataset
[0010] The genome database querying the multiple sequence alignment results is a local genome sequence dataset D = {S 0 ,S 1 ,...,S n} for preprocessing. Cut any genome sequence S in D into equal subsequences {s 0 ,s 1 ,...,s m-1 ,m=length(S)-k+1}, where m represents the number of equal subsequences of S. Different subsequences differ in one base position, so a genome sequence can be represented as a list S consisting of the hash values of multiple equal subsequences. H =[H 0 ,H 1 ,...,H m-1 ].
[0011] Step 2: The querying party builds a local common subsequence set
[0012] The genome database query party obtains the hash list S of all genome sequences H =[H 0 ,H 1 ,...,H m-1 ], the shortest sequence S among all sequences R As the reference sequence, all local genome sequences in the genome dataset D are intersected to obtain the set of local common subsequence fragments and their positions of D
[0013] AncPos=[AncPos 0 ,AncPos 1 ,...,AncPosv-1 ] and sends it to computing node A. Wherein, AncPos represents the local common subsequence set established by the genome database; v represents the number of common subsequences in the local common subsequence set established by the genome database.
[0014] Step 3: Compute node A to obtain the seed sequence set
[0015] The computing node A receives the local common subsequence fragments and positions obtained from the genome database of all child nodes participating in the query. The set AncPos = [AncPos 0 ,AncPos 1 ,...,AncPos v-1 ] and intersect the common subsequence sets of all genomic data sets to obtain the seed sequence set And send it to all querying party genome database child nodes. Among them, AncPos C represents the seed sequence set of all genome databases participating in the query established by the computing node; Z represents the number of seed sequences in the seed sequence set of all genome databases participating in the query.
[0016] Step 4: The querying party reconstructs the seed sequence locally
[0017] 4.1 Genome database query node receives seed sequence set According to the matching of the subsequence hash value with the local genome sequence, the position of the seed sequence on different local genome sequences is obtained.
[0018] 4.2 On a genome sequence, the hash of a seed sequence may appear at different positions. Based on the position of the seed sequence in all local genome sequences, the final order of the seed sequence is determined by the position weight function. The different hash values in the seed sequence are sorted according to the results obtained by the weight function. Finally, the relative position of the seed sequence on the genome sequence can be determined, and the local position list of the seed sequence can be obtained. in represents the local position list of the i-th seed sequence; Indicates the position of the i-th seed sequence on the U-th local genome sequence; Represents the hash value of the i-th seed sequence.
[0019] Step 5: The query party splits the genome sequence to obtain the sequence to be compared
[0020] Genome database query node based on the local location list of the seed sequence Determine the fragments that are identical between the local subsequence and other sequences to be compared, cut them out from the local genome sequence, and obtain the sequence list to be compared of the local genome sequence ES = {ES 1 ,ES 2 ,...,ES t}.
[0021] Step 6: The querying party constructs a secret shared data slice locally
[0022] The genome database query node obtains the sequence list to be compared locally ES = {ES 1 ,ES 2 ,...,ES t} Perform arithmetic secret sharing to obtain two data slices ES of additive arithmetic secret sharing. <es> A + <es> B ={ <ES 1 > A + <ES 1 > B , <ES 2 > A + <ES 2 > B ,..., <ES t > A + <ES t > B }, respectively <es> A ={ <ES 1 > A , <ES 2 > A ,..., <ES t > A } is sent to computing node A, <es> B ={ <ES 1 > B , <ES 2 > B ,..., <ES t > B }Send to computing node B;
[0023] Among them, ES represents the different fragments in the genome sequence of each day determined by the genome database subnode, that is, the fragments to be compared; <es> A , <es> B represents the secret shared data slice of the sequence to be compared, where <es> A Indicates that computing node A obtains data slices. <es> B represents the data slice obtained by computing node B; t represents the number of fragments to be compared; <ES 1 > A Indicates the data slice of the first fragment to be compared obtained by computing node A. <ES 1 > B Indicates the data slice of the first fragment to be compared obtained by computing node B.
[0024] Step 7: Compute multiple sequence alignment of encrypted data slices between nodes A and B
[0025] Computing node A receives the genome data subnode and sends it to the data secret sharing slice <es> A ={ <ES 1 > A , <ES 2 > A ,..., <ES t > A }, computing node B receives the genome data subnode and sends it to the data secret sharing slice <es> B ={ <ES 1 > B , <ES 2 > B ,..., <ES t > B }, the two parties conduct multiple sequence comparison of ciphertext data to implement the scoring function f(es 1 ,es 2 ) calculation, and finally obtain the ciphertext comparison result slice
[0026] <ed> A ={ <ED 1 > A , <ED 2 > A ,..., <ED n > A } and ciphertext comparison result slice
[0027] <ed> B ={ <ED 1 > B , <ED 2 > B ,..., <ED n > B }, and send the results to the genome database query node participating in the multiple sequence alignment.
[0028] in <ED 1 > A A data slice representing the score calculation result of the first fragment to be compared obtained by computing node A. <ED 1 > B A data slice representing the score calculation result of the first fragment to be compared obtained by computing node B.
[0029] Step 8: The querying party recovers and obtains the multiple sequence alignment calculation results
[0030] The genome database query node obtains the ciphertext data result slice sent by computing node A. <ed> A ={ <ED 1 > A , <ED 2 > A ,..., <ED n > A } and the ciphertext data result slice sent by computing node B <ed> B ={ <ED 1 > B , <ED 2 > B ,..., <ED n > B }, the two ciphertext data result slices are cipher-reconstructed to obtain the final multiple sequence alignment calculation result ED. For the alignment and scoring between different genome sequences and reference sequences, the multiple sequence alignment result can be obtained.
[0031] The advantages of the present invention compared with the prior art are:
[0032] (1) The present invention proposes a multi-party secure computing method that combines three secret sharing methods, namely arithmetic secret sharing, Boolean secret sharing and Yao's secret sharing, to achieve privacy protection for genome multiple sequence alignment. By utilizing the characteristics of multiple gene sequence alignment, after constructing the ciphertext reduction of the secret-sharing data slice, the corresponding secret sharing method is selected according to the properties of different calculations in the scoring function to directly realize the conversion of the ciphertext space, thereby improving the efficiency of ciphertext calculation and achieving the privacy of the gene sequence data of the genome database participating in the multiple sequence alignment.
[0033] (2) A seed sequence construction method is designed for long genome sequences, which is suitable for privacy-preserving multiple sequence alignment of long genome sequences, and improves the efficiency of implementing privacy-preserving multiple sequence alignment schemes. By segmenting the long genome sequence, the same subsequence fragments in all sequences are removed, reducing the length of the sequence that needs to be ciphertext calculated, and reducing the overhead caused by ciphertext calculation while ensuring the accuracy of the multiple sequence alignment results. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] Figure 1 Schematic diagram of the privacy protection method for genome double sequence alignment based on obfuscation circuit of the present invention. DETAILED DESCRIPTION
[0035] The privacy protection method of genome multiple sequence alignment based on secret sharing proposed in the present invention needs to solve the following two problems: (1) how to achieve the scoring of genome multiple sequence alignment; (2) how to achieve privacy-protected genome multiple sequence alignment through three secret sharing secure multi-party computing methods.
[0036] In response to problem (1), the present invention adopts a divide-and-conquer method and a heuristic method to achieve multiple sequence alignment scoring of genomic sequences. The genomic multiple sequence alignment method mainly adopts a dynamic programming algorithm to achieve the edit distance scoring between every two sequences, and then adopts a three-step heuristic method to obtain the final multiple sequence alignment matrix. When aligning every two sequences, the edit distance and gap penalty are used to score and determine the similarity of the two gene sequences. The difference between the two sequences is represented by a distance. When comparing two different DNAs, they can be made the same through insertion, deletion and substitution operations. The cost in this process is called the edit distance, which is an important basis for the alignment of two gene sequences.
[0037] Gene pair alignment is achieved by calculating the edit distance between two sequences, and the edit distance is calculated using dynamic programming. The input of the circuit is the gene sequence str1 and the gene sequence str2, and the edit distance d between the two sequences is calculated through dynamic programming. When there are two different gene sequences, through some operations, the two gene sequences can become the same. The cost of this process is called the edit distance. These operations are divided into three types: insertion, deletion, and substitution, which are defined as follows:
[0038] Insertion: insert one or more base sequences;
[0039] Deletion: remove one or more bases from a sequence;
[0040] Substitution: Replace one base in a sequence with another base.
[0041] Now assume that the cost required for insertion, deletion, and replacement operations is 1. Now the input is the i-th base of the sequence and the j-th base of the sequence. The edit distance calculated at this time is D ij , then D ij It can be obtained in three ways:
[0042] Insert or delete str1[i]: D ij =D (i-1)j +1;
[0043] Insert or delete str2[j]: D ij =D i(j-1) +1;
[0044] Replace str1[i] or str2[j]: D ij =D (i-1)(j-1) +t,t∈{0,1}.
[0045] If str1[i]=str2[j], then t=0, otherwise t=1.
[0046] The formula for calculating the edit distance through dynamic programming is:
[0047] D ij =min[D (i-1)j +1,D i(j-1) +1,D (i-1)(j-1) +t]. The distance matrix between multiple sequence alignments can be constructed by the distance between each two sequences. This can be achieved in three steps:
[0048] (1) Determine the reference sequence in the genome sequence. Select a sequence from the multiple genome sequences to be aligned as the reference sequence for constructing the multiple sequence alignment matrix, usually the shortest genome sequence.
[0049] (2) Constructing the edit distance matrix of multiple sequence alignments. Score the edit distances of other genomic sequences and the reference sequence, and construct the edit distance matrix between multiple sequence alignments around the reference sequence.
[0050] (3) Apply multiple sequence alignment based on the edit distance matrix. Based on the edit distance matrix obtained in step 2, construct a guide tree or find the central sequence in the multiple sequence alignment, find the k-neighboring sequences, etc.
[0051] In response to problem (2), the present invention designs a privacy protection scheme for genome multiple sequence alignment based on ciphertext conversion between three types of secret sharing: arithmetic sharing, Boolean sharing, and Yao's sharing. ABY is a hybrid framework for multi-party secure computing that can support three different types of secret sharing and provide efficient sharing and conversion methods for the ciphertexts of the three secret sharing.
[0052] Arithmetic sharing is implemented based on Beaver multiplication triples. A l-bit value to be shared x can be divided into The two additive secret shared values on , the ciphertext sharing and plaintext reconstruction methods are as follows:
[0053] Sharding: By performing additive secret sharing, the secret value <x> A Can be divided into a range space Two additive secret shared values on in
[0054] Shr i A (x) Sharing: Participant P i Pick a random number make And send r to participant P 1-i , participant P 1-i The resulting secret shared slice is
[0055] Reconstruction: Party P 1-i Slice the secret share it owns Send to P i Reconstructing the secret value <x> A Get the plaintext
[0056] Boolean sharing uses bitwise XOR operations to share secret values. The calculation results of functions represented as Boolean circuits are evaluated based on the Goldreich-MicaliWigderson (GMW) protocol. The ciphertext sharing and plaintext reconstruction methods are as follows:
[0057] Split: 1-bit secret value <x> B Shared between two parties via Boolean secret sharing, in
[0058] Shr i B (x) Sharing: Participant P i Choose a random number r∈ R {0,1}, let And send r to participant P 1-i , participant P 1-i The resulting secret shared slice is
[0059] Reconstruction: Party P 1-i Slice the secret share it owns Send to P i Reconstructing the secret value <x> B Get the plaintext
[0060] Yao's sharing is implemented based on the obfuscated circuit protocol. The obfuscator encrypts an obfuscated circuit based on Boolean function representation and sends the encrypted circuit to the evaluator for evaluation to obtain the calculation result. The obfuscator randomly selects a global mask R of length k. For each input line ω, the encryption keys available include and The ciphertext sharing and plaintext reconstruction methods are as follows:
[0061] Split: 1-bit secret value <x> Y By performing Yao's secret sharing between two parties, two secret sharing slices and
[0062] Shared by: Party P 0 Randomly sample to obtain the mask value k 0 ∈ R {0,1} k ,make And will Sent to participant P 1 .
[0063] Shr 1 Y (x) Sharing: The participants perform k rounds of the oblivious transfer protocol, where the participant P 0 As the sender, enter the associated function and obtain where k 0 ∈ R {0,1} k . Participant P 1 As the receiver, we can obtain the secret shared fragment securely by selecting bit c
[0064] Reconstruction: Party P 1-i The obfuscated bit string it has Send to P i Reconstructing the secret value <x> Y Get the plaintext
[0065] A privacy protection method for genome multiple sequence alignment based on secret sharing, the specific method is as follows:
[0066] Step 1: The query party splits the genome sequence in the genome dataset
[0067] The genome database query party participating in the query of multiple sequence alignment results queries the local genome sequence data set D = {S 0 ,S 1 ,...,S n } for preprocessing. The genome sequence in D is divided into equal subsequences of length k {s 0 ,s 1 ,...,s m-1 ,m=length(S)-k+1}, different subsequences have one base site different from each other. Encode the four different base types A (Adenine), T (Thymine), C (Guanine) and G (Cytosine) as h(A)=0, h(T)=1, h(C)=2, h(G)=3, and you can get the hash value of each subsequence
[0068] H sub =H(h i )=H(h 0 ||h 1 ||...||h k-1 ), then a genome sequence can be represented as a list S consisting of hash values of multiple equal subsequences H =[H 0 ,H 1 ,...,H m-1 ].
[0069] Step 2: The querying party builds a local common subsequence set
[0070] The genome database query party obtains the hash list S of all genome sequences H =[H 0 ,H 1 ,...,H m-1 ], the shortest sequence S among all sequences R As the reference sequence of the local genome dataset, compare the hash list of other sequences in D with S R List Compare and find subsequence fragments with consistent hash values that appear in all genome sequences, and record the hash values of these common subsequences and their positions on different sequence fragments. Record the hash values and positions of the common subsequences of all local genome sequences in the genome dataset D. Get the set of local common subsequence fragments and their positions of D AncPos = [AncPos 0 ,AncPos 1 ,...,AncPos v-1 ] and sends it to computing node A. Among them, Represents the representation information of a common subsequence, where is the position where the common subsequence appears in different gene sequences, a hash value representing the public sequence;
[0071] Step 3: Compute node A to obtain the seed sequence set
[0072] The computing node A receives the local common subsequence fragments and positions obtained from the genome database of all child nodes participating in the query. The set AncPos = [AncPos 0 ,AncPos 1 ,...,AncPos v-1 ], by determining whether the value is equal, the EQ function is used to intersect the common subsequence set of all genomic data sets to obtain the seed
[0073] Sequence Collection And send it to all query party genome database query party sub-nodes.
[0074] Step 4: The querying party reconstructs the seed sequence locally
[0075] 4.1 Genome database query node receives seed sequence set According to the seed subsequence hash value and all the sequences in the local genome dataset D = {S 1 ,S 2 ,...,S t } Perform position matching to obtain the position of the seed sequence on different local genome sequences in It represents the position of seed sequence i on genome sequence U. Represents the hash value of the seed sequence.
[0076] 4.2 On a genome sequence, the hash of a seed sequence may appear at different positions. Based on the position of the seed sequence in all local genome sequences, the position weight function To determine the final order of the seed sequence. The position weight function mainly includes the distance function α(j,i) and the penalty function β(i,j) and the function, the distance function The relative distance between seed sequences i and j is evaluated by the position of the seed sequence in the hash table; the function β(i,j) is a blank penalty function and can be changed according to different requirements.
[0077] Sort the different hash values in the seed sequence according to the results obtained by the weight function, and use the weight function f(i) to evaluate the order of the subsequences. It is generally believed that subsequences with higher scores are closer to each other. When the position of the seed sequence is finally determined, the scoring results calculated according to the position index of different hash values in AncPos are used, and the sorting position of the target seed sequence is calculated based on the scoring results. The function for calculating the seed sequence position is The relative position of the seed sequence on the genome sequence can be determined by the calculation result of the seed sequence position function, and the local position list of the seed sequence can be obtained.
[0078] Step 5: The query party splits the genome sequence to obtain the sequence to be compared
[0079] Genome database query node based on the local location list of the seed sequence Determine the fragments that are identical between the local subsequence and other sequences to be compared, cut them out from the local genome sequence, and obtain the sequence list to be compared of the local genome sequence ES = {ES 1 ,ES 2 ,...,ES t }.
[0080] Step 6: The querying party constructs a secret shared data slice locally
[0081] The genome database query node obtains the sequence list to be compared locally ES = {ES 1 ,ES 2 ,...,ES t }Execute the arithmetic secret sharing function Shr i A (ES), get the data slice of additive arithmetic secret sharing and Where R is an array of random numbers.
[0082]
[0083] Respectively Send it to computing node A, Sent to computing node B.
[0084] Step 7: Compute multiple sequence alignment of encrypted data slices between nodes A and B
[0085] Computing node A receives the genome data subnode and sends it to the data secret sharing slice Computing node B receives the genome data and sends it to the data secret sharing slice Multiple sequence comparison of ciphertext data is performed between the two parties.
[0086] Using the edit distance algorithm of dynamic programming, the scoring function in the double sequence alignment is constructed, and the sequence fragment to be aligned is recorded as the input es 1 ,es 2 , for the base at the i-th position and the base at the j-th position in the two sequence fragments, the edit distance at this time is recorded as f(es 1 ,es 2 ) = d i,j Then f(es 1 ,es 2 ) (i,j) You can insert es 1 [i] is obtained, and the penalty point at this time is recorded as c ins ; You can also delete es 2 [j] is obtained, and the penalty point is recorded as c del ; You can also replace es 1 [i] or es 2 [j] is obtained, and the penalty point at this time is recorded as c sub , then the scoring function of sequence alignment can be determined according to the calculation formula of edit distance
[0087] Computing nodes A and B input the sequence fragments to be compared in the form of ciphertext data slices, and calculate the scores between the corresponding subsequence fragments through the scoring function. The calculation results of the comparison of multiple genome sequences with the reference sequence are constructed as an edit distance matrix. The addition part in the function is implemented by arithmetic secret sharing, and es 1 [i] or es 2 When comparing [j] for equality, the ciphertext is converted to the Yao secret sharing ciphertext through ABY ciphertext conversion and The result is also in the form of ciphertext data slices and is returned to computing nodes A and B. The subsequence comparison scoring algorithm is shown in Algorithm 1:
[0088]
[0089]
[0090] After comparing the relative subsequence fragments of different sequences one by one, computing node A obtains the ciphertext comparison result slice Compute node B obtains the ciphertext comparison result slice The results are sent to the genome database query node that participates in the multiple sequence alignment.
[0091] Step 8: The querying party recovers and obtains the multiple sequence alignment calculation results
[0092] The genome database child node obtains the ciphertext data result slice sent by computing node A And the ciphertext data result slice sent by computing node B Slice the two ciphertext data results and perform Rec A (ED) The ciphertext reconstruction can obtain the final calculation result of the multiple sequence alignment. The result of the multiple sequence alignment is the edit distance matrix calculated by the sum of the edit distances of each unequal subsequence fragment. By scoring the edit distance matrix between different genomic sequences and reference sequences, the results of multiple sequence alignment can be obtained.
[0093] The contents not described in detail in the specification of the present invention belong to the prior art known to the professional and technical personnel in this field.
[0094] The above is only a preferred implementation of the privacy protection method for genomic multiple sequence alignment based on secret sharing of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principle of the privacy protection method for genomic multiple sequence alignment based on secret sharing of the present invention. These improvements and modifications should also be regarded as the protection scope of the privacy protection method for genomic multiple sequence alignment based on secret sharing of the present invention.< / x> < / x> < / x> < / x> < / x> < / x> < / ed> < / ed> < / ed> < / ed> < / es> < / es> < / es> < / es> < / es> < / es> < / es> < / es> < / es> < / es>
Claims
1. A privacy protection method for genome multiple sequence alignment based on secret sharing, characterized in that: The steps include: Step 1: The query party segments the genome sequences in the genome dataset; Step 2: The querying party constructs a local common subsequence set; Step 3: Compute node A to obtain a seed sequence set; Step 4: The querying party locally reconstructs the order of the seed sequence; Step 5: The querying party divides the genome sequence to obtain the sequence to be compared; Step 6: The querying party constructs a secret shared data slice locally; Step 7: Compute multiple sequence alignment of ciphertext data slices between nodes A and B; Step 8: The querying party recovers and obtains the multiple sequence alignment calculation results.
2. The privacy protection method for genome multiple sequence alignment based on secret sharing according to claim 1, characterized in that: In step 1, specifically, the query of the genome database of the multiple sequence alignment result is performed on the local genome sequence data set D = {S 0 ,S 1 ,...,S n }Preprocessing; Cut any genome sequence S in D into equal subsequences of length k {s0,s1,...,s m-1 ,m=length(S)-k+1}, different subsequences have one base position different from each other, then a genome sequence is represented as a list S consisting of the hash values of multiple equal subsequences H =[H0,H1,...,H m-1 ].
3. A privacy protection method for genome multiple sequence alignment based on secret sharing according to claim 1 or 2, characterized in that: In step 2, specifically: the genome database query party obtains the hash list S of all genome sequences H =[H0,H1,...,H m-1 ], the shortest sequence S among all sequences R As a reference sequence, all local genome sequences in the genome dataset D are intersected to obtain the set of local common subsequence fragments and their positions of D AncPos=[AncPos 0 ,AncPos 1 ,...,AncPos v-1 ] and sends it to computing node A; wherein, AncPos represents the local common subsequence set established by the genome database; v the number of common subsequences in the local common subsequence set established by the genome database.
4. The privacy protection method for genome multiple sequence alignment based on secret sharing according to claim 3, characterized in that: In step 3, specifically: computing node A receives the local common subsequence fragments and position sets AncPos obtained from the genome database of all child nodes participating in the query = [AncPos 0 ,AncPos 1 ,...,AncPos v-1 ] and intersect the common subsequence sets of all genomic data sets to obtain the seed sequence set And send it to all querying party genome database child nodes; among them, AncPos C represents the seed sequence set of all genome databases participating in the query established by the computing node; Z represents the number of seed sequences in the seed sequence set of all genome databases participating in the query.
5. The privacy protection method for genome multiple sequence alignment based on secret sharing according to claim 4, characterized in that: In step 4, specifically: 4.1 Genome database query node receives seed sequence set According to the matching of the subsequence hash value with the local genome sequence, the position of the seed sequence on different local genome sequences is obtained; 4.2 On a genome sequence, the hash of a seed sequence may appear at different positions. Based on the position of the seed sequence in all local genome sequences, the final order of the seed sequence is determined by the position weight function. The different hash values in the seed sequence are sorted according to the results obtained by the weight function, and the relative position of the seed sequence on the genome sequence is finally determined to obtain the local position list of the seed sequence. in, represents the local position list of the i-th seed sequence; Indicates the position of the i-th seed sequence on the U-th local genome sequence; Represents the hash value of the i-th seed sequence.
6. A privacy protection method for genome multiple sequence alignment based on secret sharing according to claim 1 or 5, characterized in that: In step 5, specifically: the genome database query node lists the local locations of the seed sequence Determine the fragments that are identical between the local subsequence and other sequences to be compared, cut them out from the local genome sequence, and obtain the sequence list to be compared of the local genome sequence ES = {ES 1 ,ES 2 ,...,ES t }.
7. The privacy protection method for genome multiple sequence alignment based on secret sharing according to claim 6, characterized in that: In step 6, specifically: the genome database query node obtains the local sequence list to be compared ES = {ES 1 ,ES 2 ,...,ES t } Perform arithmetic secret sharing to obtain two data slices ES of additive arithmetic secret sharing. <es> A + <es> B ={ <ES 1 > A + <ES 1 > B , <ES 2 > A + <ES 2 > B ,..., <ES t > A + <ES t > B }, respectively <es> A ={ <ES 1 > A , <ES 2 > A ,..., <ES t > A } is sent to computing node A, <es> B ={ <ES 1 > B , <ES 2 > B ,..., <ES t > B }Send to computing node B;< / es> < / es> < / es> < / es> Among them, ES represents the different fragments in the genome sequence of each day determined by the genome database subnode, that is, the fragments to be compared; <es> A , <es> B represents the secret shared data slice of the sequence to be compared, where <es> A Indicates that computing node A obtains data slices. <es> B represents the data slice obtained by computing node B; t represents the number of fragments to be compared; where, <ES 1 > A Indicates the data slice of the first fragment to be compared obtained by computing node A. <ES 1 > B Indicates the data slice of the first fragment to be compared obtained by computing node B.< / es> < / es> < / es> < / es> 8. The privacy protection method for genome multiple sequence alignment based on secret sharing according to claim 7, characterized in that: In step 7, specifically: computing node A receives the genome data subnode and sends it to the data secret sharing slice <es> A ={ <ES 1 > A , <ES 2 > A ,..., <ES t > A }, computing node B receives the genome data subnode and sends it to the data secret sharing slice <es> B ={ <ES 1 > B , <ES 2 > B ,..., <ES t > B }, the two parties conduct multiple sequence comparison of ciphertext data, realize the calculation of scoring function f(es1, es2), and finally obtain the ciphertext comparison result slice <ed> A ={ <ED 1 > A , <ED 2 > A ,..., <ED n > A } and ciphertext comparison result slice <ed> B ={ <ED 1 > B , <ED 2 > B ,..., <ED n > B }, and send the result to the genome database query subnode participating in the multiple sequence alignment;< / ed> < / ed> < / es> < / es> in, <ED 1 > A A data slice representing the score calculation result of the first fragment to be compared obtained by computing node A. <ED 1 > B A data slice representing the score calculation result of the first fragment to be compared obtained by computing node B.
9. The privacy protection method for genome multiple sequence alignment based on secret sharing according to claim 8, characterized in that: In step eight, specifically: the genome database query node obtains the ciphertext data result slice sent by computing node A <ed> A ={ <ED 1 > A , <ED 2 > A ,..., <ED n > A } and the ciphertext data result slice sent by computing node B <ed> B ={ <ED 1 > B , <ED 2 > B ,..., <ED n > B }, the two ciphertext data result slices are cipher-reconstructed to obtain the final multiple sequence alignment calculation result ED, and the multiple sequence alignment result is obtained according to the alignment scores between different genome sequences and reference sequences.< / ed> < / ed>
Citation Information
Patent Citations
User privacy information query implementation method and device based on distributed reconstruction
CN111782662A
Privacy-enhancing technologies for medical tests using genomic data
EP2709028A1
Secure and scalable mapping of human sequencing reads on hybrid clouds
US20140075183A1
Privacy-enhancing technologies for medical tests using genomic data
US20160224735A1
Methods and systems for anonymizing genome segments and sequences and associated information
US20200364371A1