Server-assisted secure two-party inversion calculation method, system and device
By introducing the secure three-party matrix multiplication calculation protocol 3PMP and data random obfuscation technology into the server-assisted secure two-party inversion calculation method, the problems of low efficiency, large security risks and unstable accuracy of matrix inversion calculation in the prior art are solved, and efficient, safe and reliable matrix inversion calculation are achieved.
Patent Information
- Application Number
- CN202310841976.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-10
- Publication Date
- 2025-05-02
- Estimated Expiration
- 2043-07-10
AI Technical Summary
When implementing large-scale matrix inversion operations, the prior art has problems such as low computing efficiency, high security risks and unstable computing accuracy, especially under the risk of data privacy protection and multi-node conspiracy.
A secure two-party inverse calculation method based on server assistance is proposed. By introducing three semi-honest external server nodes, the secure three-party matrix multiplication calculation protocol 3PMP is used to perform parallel calculations, and combined with data random obfuscation technology, the calculation results are decomposed and split to ensure security and accuracy.
The inverse calculation method of two-party security matrix with low overhead, high precision and ease of use is realized, effectively resisting multi-node conspiracy, and ensuring the safety and reliability of the calculation process and results.
Smart Images

Figure CN117459218B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of data security, and in particular to a server-assisted secure two-party inversion calculation method, system and device. Background Art
[0002] With the continuous innovation and application of artificial intelligence and big data technologies, the world has officially entered the "data-driven" era. For countries and enterprises, data has become an important strategic resource. In actual production work, data calculation involves a large number of matrix-based calculations, among which inverse matrices play a pivotal role, especially in data analysis, signal processing, modern control theory, network theory and many other fields. However, with the increasing attention of users to the security and privacy of personal data, how to achieve large-scale matrix inversion operations with correct calculation results, security of settlement process and stability of calculation accuracy under the premise of ensuring that the original data is not leaked has become an important research direction involving complex data analysis and calculation problems.
[0003] In the existing technical solutions, Beniamin and Atallah constructed a matrix inversion outsourcing calculation solution that can be verified by multiple servers based on homomorphic encryption technology. The user's calculation complexity is O(n 2 t 2 ), where n and t are the order and threshold of the matrix respectively; although the calculation scheme of Benjamin and Atallah effectively protects the privacy of input data and the verifiability of calculation, the introduction of homomorphic encryption technology leads to a significant reduction in calculation efficiency, and there is a risk that outsourced third-party cloud service providers are vulnerable to collusion attacks; Lei, Ren et al. proposed an efficient and verifiable matrix inversion and matrix multiplication blinding technology based on randomly permuted sparse matrices and Monte-Carlo verification algorithms. The core idea is to encrypt the original large-scale matrix by multiplying it with a special sparse matrix and put it on the cloud for calculation and decrypt the resulting ciphertext; although the scheme of Lei et al. improves the efficiency of outsourced cloud computing, there is a risk that Under the premise that the blind inversion matrix must be reversible, the original matrix has the security risk of local zero element data information leakage and the problem of lack of calculation precision for the inversion of the data matrix with pathological condition number; Fiore et al. constructed a publicly verifiable amortized calculation model for high-order polynomial and matrix inversion based on different cryptographic difficulty assumptions (such as co-CDH difficulty assumption and deterministic linear difficulty assumption) and secret sharing technology; although Fiore et al.'s scheme improves the overall computational security, it involves a large number of public key cryptography tools, which causes a significant increase in computational overhead and lacks computational precision due to the limited ring domain involved in the secret sharing scheme; Zhen and Jia et al. cited The oblivious transfer protocol constructs a secure two-party matrix inversion protocol that can be used to solve n-order matrix equations; Zhen et al. Since the oblivious transmission scheme involves a large number of rounds of communication interactions, it has the problems of high communication cost and low computational efficiency for the inversion operation task of large-scale data matrices.
[0004] Existing solutions to the problem of inverting the two-party security matrix use cryptographic techniques such as homomorphic encryption, oblivious transmission, and secret sharing, which cause a significant increase in the computational complexity of the client's ciphertext space and a doubling of communication overhead; existing solutions to the problem of inverting the two-party security matrix mostly rely on outsourced cloud service computing systems, and collusion between third-party cloud service computing nodes may cause security risks such as privacy leakage of the original data party; existing solutions to the problem of inverting the two-party security matrix use large prime number encryption to increase the number of ciphertext bits in the computational space, and at the same time, the limitation of the fixed length of the ciphertext bits directly causes the loss of numerical calculation precision, affecting the reliability of the calculation results. Summary of the invention
[0005] The purpose of the present invention is to provide a server-assisted secure two-party inversion calculation method, system and device, which has the characteristics of parallelism, security, reliability and effective resistance to collusion of multiple server nodes.
[0006] To achieve the above object, the present invention provides the following solutions:
[0007] A secure two-party inversion calculation method based on server assistance, comprising:
[0008] According to the private matrix A of the participant Alice's node, the private matrix P of the auxiliary computing node P, and the private matrix Q of the auxiliary computing node Q, based on the secure three-party matrix multiplication protocol 3PMP, the first round of three-party matrix multiplication calculation is performed to obtain a three-party matrix multiplication calculation result;
[0009] The result of a three-way matrix multiplication is split into the matrix V using data random obfuscation technology. a , matrix V p1 And the matrix V q1 ; and the matrix V a , matrix V p1 And the matrix V q1 Send to the participating party Alice node and auxiliary computing nodes P and Q respectively;
[0010] V a 、V p1 、V q1 ∈R n×n ; V p1 +V a+V q1 =P×A×Q;
[0011] According to the private matrix B of the participant Bob's node, the private matrix P of the auxiliary computing node P, and the private matrix Q of the auxiliary computing node Q, based on 3PMP, a second round of three-party matrix multiplication calculation is performed to obtain the secondary three-party matrix multiplication calculation result;
[0012] The result of the quadratic trigonometric matrix multiplication is split into the matrix V using the data random obfuscation technique. b , matrix V p2 And the matrix V q2 ; and the matrix V b , matrix V p2 And the matrix V q2 Sent to the participating party Bob node, auxiliary computing node P, and auxiliary computing node Q respectively; V b 、V p2 、V q2 ∈R n×n ;
[0013] V p2 +V b +V q2 =P×B×Q;
[0014] The calculation result V calculated by the auxiliary computing node P locally is p =V p1 +V p2 Send to the auxiliary computing node S;
[0015] The result V of the local secret calculation of the auxiliary computing node Q is q =V q1 +V q2 Send to the auxiliary computing node S;
[0016] The matrix V of the node of participant Alice a and the matrix V of the participant Bob’s node b Send to the auxiliary computing node S;
[0017] The auxiliary computing node S calculates the result V p , calculation result V q , matrix V a And the matrix V b , we get the matrix T = V a +V b +V q +V p =PAQ+PBQ=P(A+B)Q, and calculate the matrix T locally -1 =Q -1 (A+B) -1 P-1 ; where T∈R n×n ;
[0018] According to the matrix P of the auxiliary computing node P, the matrix Q of the auxiliary computing node Q, and the matrix T of the auxiliary computing node S -1 , based on the 3PMP protocol, a third round of tripartite matrix multiplication calculation is performed to obtain three tripartite matrix multiplication calculation results;
[0019] The result of the tripartite matrix multiplication is randomly split into the private matrix U P , private matrix U S and the private matrix U Q ; U P , U S , U Q ∈R n×n ;
[0020] The private matrix U P , private matrix U S and the private matrix U Q Sent to the requester of the secure two-party inversion operation to obtain the final result of the two-party inversion calculation; the participating party Alice node has a private matrix A∈R n×n , the participant Bob node has a private matrix B∈R n×n , the auxiliary computing node P has a random reversible matrix P∈R n×n , the auxiliary computing node Q has a random reversible matrix Q∈R n×n .
[0021] Optionally, the final result of the two-way inversion calculation is:
[0022]
[0023] Optionally, the participant Alice node, the participant Bob node, the auxiliary computing node P, the auxiliary computing node Q and the auxiliary computing node S satisfy the constraint ψ(P Node, A Node, Q Node)=φ, the constraint ψ(A Node, B Node)={φ} and the semi-honest model;
[0024] Among them, ψ means that there is no tradition between the participant Bob's node, the auxiliary computing node P and the auxiliary computing node Q, and the shared data is an empty set. ψ(A Node, B Node) = {φ} means that collusion is prohibited between the participant Alice's node and the participant Bob's node.
[0025] Optionally, the secure three-point multiplication protocol of the 3PMP protocol is implemented using secret sharing, oblivious transmission, obfuscated circuit framework ABY3, and fully homomorphic encryption.
[0026] A server-assisted secure two-party inversion computing system, comprising:
[0027] The first computing unit is used to perform a first round of three-party matrix multiplication calculation based on the secure three-party matrix multiplication calculation protocol 3PMP according to the private matrix A of the node of the participant Alice, the private matrix P of the auxiliary computing node P, and the private matrix Q of the auxiliary computing node Q, to obtain a three-party matrix multiplication calculation result;
[0028] The first sending unit is used to split the result of a three-way matrix multiplication into a matrix V using a data random obfuscation technique. a , matrix V p1 And the matrix V q1 ; and the matrix V a , matrix V p1 And the matrix V q1 Send to the participating party Alice node and auxiliary computing nodes P and Q respectively;
[0029] V a 、V p1 、V q1 ∈R n×n ; V p1 +V a +V q1 =P×A×Q;
[0030] The second computing unit is used to perform a second round of three-party matrix multiplication calculation based on 3PMP according to the private matrix B of the node of the participant Bob, the private matrix P of the auxiliary computing node P, and the private matrix Q of the auxiliary computing node Q, to obtain a secondary three-party matrix multiplication calculation result;
[0031] The second sending unit is used to split the result of the quadratic three-way matrix multiplication into a matrix V using a data random obfuscation technique. b , matrix V p2 And the matrix V q2 ; and the matrix V b , matrix V p2 And the matrix V q2 Send to the participating party Bob node, auxiliary computing node P, and auxiliary computing node Q respectively;
[0032] V b 、V p2 、V q2 ∈R n×n ; V p2 +V b +V q2 =P×B×Q;
[0033] The calculation result first sending unit is used to send the calculation result V calculated secretly by the auxiliary computing node P locally p =V p1 +V p2 Send to the auxiliary computing node S;
[0034] The calculation result second sending unit is used to send the calculation result V calculated secretly by the auxiliary computing node Q locally q =V q1 +V q2 Send to the auxiliary computing node S;
[0035] The third sending unit is used to send the matrix V of the node of the participant Alice a and the matrix V of the participant Bob’s node b Send to the auxiliary computing node S;
[0036] The auxiliary computing node S computing unit is used to assist the computing node S according to the calculation result V p , calculation result V q , matrix V a And the matrix V b , and we get the matrix
[0037] T=V a +V b +V q +V p =PAQ+PBQ=P(A+B)Q, and calculate the matrix locally
[0038] T -1 =Q -1 (A+B) -1 P -1 ; where T∈R n×n ;
[0039] The third computing unit is used to calculate the matrix P of the auxiliary computing node P, the matrix Q of the auxiliary computing node Q, and the matrix T of the auxiliary computing node S. -1 , based on the 3PMP protocol, a third round of tripartite matrix multiplication calculation is performed to obtain three tripartite matrix multiplication calculation results;
[0040] Private matrix splitting unit, used to randomly split the private matrix U from the result of the tripartite matrix multiplication calculation P , private matrix U s and the private matrix U Q ; U P , U S , U Q ∈R n×n ;
[0041] The result determination module of the two-way inversion calculation is used to convert the private matrix UP , private matrix U S and the private matrix U Q Sent to the requester of the secure two-party inversion operation to obtain the final result of the two-party inversion calculation; the participating party Alice node has a private matrix A∈R n×n , the participant Bob node has a private matrix B∈R n×n , the auxiliary computing node P has a random reversible matrix P∈R n×n , the auxiliary computing node Q has a random reversible matrix Q∈R n×n .
[0042] A server-assisted secure two-party inversion computing device, applied to the server-assisted secure two-party inversion computing method, comprising: a task acquisition module, a secure computing module, a rule generation module, a consensus computing module and a data sending module;
[0043] The task acquisition module is responsible for receiving and decoding privacy computing requests from the client;
[0044] The secure computing module is used to automatically match the corresponding two-party secure computing protocol according to the parsed computing request;
[0045] The rule generation module is used to realize the splitting of computing tasks according to the asynchronous instruction set of the secure computing protocol, and different computing nodes perform collaborative computing according to their corresponding self-rules;
[0046] The consensus calculation module is used to ensure the synchronization and consistency of calculation processes through consensus protocols after receiving the assigned sub-rules.
[0047] The data sending module is used to collect and transmit the calculation results of each participant's node to the calculation requester after the calculation is completed;
[0048] After receiving the request Request for matrix inversion calculation, the task acquisition module parses it and starts the security computing service process of the corresponding computing participant node A, participant Bob node, auxiliary computing node P, auxiliary computing node Q and auxiliary computing node S; when the task acquisition module has completed parsing the corresponding computing requirements, it passes them to the security computing module, performs a joint query through the internal interface of the security computing module, and after matching the corresponding security computing protocol, synchronizes it to the rule generation module in the participant node A, participant Bob node, auxiliary computing node P, auxiliary computing node Q and auxiliary computing node S; the rule generation module will generate the rules according to the participant node A, participant Bob node and auxiliary computing node P, The auxiliary computing nodes Q and S formulate different asynchronous parallel execution processes for the different subtasks they undertake, and maintain communication with the consensus computing module at each step of the execution; while the participant nodes A, the participant Bob node, the auxiliary computing nodes P, the auxiliary computing nodes Q and the auxiliary computing nodes S execute each step of the calculation instructions, the consensus computing module broadcasts and maintains the consistency of the results of the distributed computing nodes on the chain and the stability of the control execution process; after waiting for the final calculation protocol to be executed, the two computing participant nodes A and the participant Bob node obtain the sub-results of each other's calculations, and then send the sub-matrices after the confusion and splitting of the two parties to the calculation requester through the data sending module to obtain the correct calculation results.
[0049] According to the specific embodiments provided by the present invention, the present invention discloses the following technical effects:
[0050] The present invention provides a server-assisted secure two-party inversion calculation method, system and device. The present invention is committed to proposing a low-overhead, high-precision, easy-to-use two-party secure matrix inversion calculation method to solve the problem of high computational overhead caused by the use of oblivious transmission schemes or homomorphic encryption schemes in the prior art; the present invention is committed to realizing a reliability method that can effectively resist multi-node collusion, solving the security problems caused by local data information (zero elements) or collusion in the existing privacy computing protocols that do not involve cryptographic tools; the present invention is committed to realizing a secure two-party inversion protocol for real-domain floating-point type matrix inversion operations to ensure the accuracy stability and reliability of the final calculation results; the present invention introduces three semi-honest external server nodes to assist in privacy computing, solves the data privacy leakage problem of the prior art due to excessive reliance on a single centralized third-party cloud computing service provider, and realizes a high-security computing solution that can effectively resist collusion among multiple server nodes. The present invention is committed to realizing a two-party inversion calculation protocol under dual security standards that can ensure both process-level security and result security, solving the limitation that existing privacy protocols rarely take into account both result security and process security; BRIEF DESCRIPTION OF THE DRAWINGS
[0051] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0052] Figure 1 A schematic diagram of a flow chart of a secure two-party inversion calculation method based on server assistance provided by the present invention;
[0053] Figure 2 It is a flow chart of the inverse calculation method of the two-party security matrix based on the 3PMP protocol;
[0054] Figure 3 A schematic diagram of the problem of calculating the inverse of a secure bidirectional matrix;
[0055] Figure 4 This is a schematic diagram of the three-party security matrix multiplication calculation problem;
[0056] Figure 5 This is a flow chart of the three-party secure multiplication calculation method;
[0057] Figure 6 This is the anti-collusion performance analysis diagram of the secure two-party matrix inversion protocol;
[0058] Figure 7 This is a schematic diagram of the data obfuscation technology solution;
[0059] Figure 8 This is a schematic diagram of the structure of a server-assisted secure two-party inversion computing device provided by the present invention. DETAILED DESCRIPTION
[0060] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0061] The purpose of the present invention is to provide a server-assisted secure two-party inversion calculation method, system and device, which has the characteristics of parallelism, security, reliability and effective resistance to collusion of multiple server nodes.
[0062] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.
[0063] like Figure 3As shown, it is known that there are two computing parties, Alice and Bob, who are independent and do not trust each other. Alice holds a private data matrix that is only stored in her own computing node.
[0064] A∈R n×n , Bob holds a private data matrix B∈R n×n The two parties jointly execute a two-party matrix inversion protocol to calculate f(A, B) = (A + B) -1 =V a +V b , and finally each computing participant node obtains its corresponding output matrix V a 、V b ∈R n×n , and send it to the calculation requester to aggregate and obtain the expected result of the two-way matrix inversion calculation. During the calculation process, each participating node can only obtain the input and output information involved in its own calculation process, and cannot obtain the intermediate settlement results and private data information held by other participants.
[0065] like Figure 4 As shown in the figure, there are three computing parties, Alice, Bob, and Carol, who are independent and do not trust each other. Alice holds a private data matrix A with a dimension of n×s and is only stored in her own computing node. Bob holds a private data matrix B with a dimension of s×t. Carol holds a private data matrix C with a dimension of t×m. The three participants jointly execute a three-party matrix multiplication protocol to calculate f(A, B, C)=ABC=V a +V b +V c Finally, each computing participant node obtains its own output matrix V with dimensions of n×m a 、V b 、V c , and sends it to the calculation requester to aggregate and obtain the desired three-way matrix product result. During the calculation process, each participating node can only understand its own input and output information, and cannot obtain the intermediate settlement results and holding data information of other participants. Figure 5 As shown in the figure, the specific protocol process is as follows:
[0066] Step 1: The auxiliary computing node, also known as the commodity service node CS (Commodity Server), generates three sets of random matrix pairs, which are in the form of random matrices R with dimensions n×s a , a random matrix R of dimension s×t b , a random matrix R with dimension t×m c and three random matrices r of dimension n×m a 、r b 、r cThese random matrices must strictly satisfy the following constraints: a +r b +r c =R a ·R b ·R c Then the CS auxiliary computing node converts the random matrix pair (R a , r a ) is sent to the participant Alice’s computing node, and the random matrix pair (R b , r b ) is sent to the participant Bob’s computing node, and the random matrix pair (R c , r c ) is sent to the computing node of the participant Carol. During the execution of the entire computing protocol, the CS auxiliary computing node must strictly meet the following three requirements: 1) Do not touch the private data information related to Alice, Bob, and Carol, whether it is the input or output result of the intermediate computing process; 2) Do not collude with any computing node of the participating party; 3) Strictly execute the assigned subtasks correctly according to the protocol process. Since the CS auxiliary computing node does not directly participate in the subsequent actual computing process of the three-party secure multiplication calculation, it only provides a random matrix pair that is independent of the private data matrix in the initial stage of the protocol execution, thereby protecting the private matrix information of the participating parties and ensuring the security of the original data in the subsequent computing process. Therefore, the auxiliary computing node CS can pre-generate a large number of independent random matrix pairs offline, and send the random number seeds to Alice, Bob and Carol computing nodes in the initial trial stage of the protocol execution in a similar way to the sale of commodities, so that the computing nodes can obtain the corresponding random matrix information. This is also the origin of the name of the commodity server CS.
[0067] Step 2: Upon receiving the corresponding random matrix pair (R a , r a ) after which the node internally calculates And send it to the participating node Bob;
[0068] Step 3: After receiving the corresponding random matrix pair (R c , r c ) after which the node internally calculates And send it to the participating node Bob;
[0069] Step 4: Participant Bob receives the corresponding random matrix pair (R b , r b ) after which the node internally calculates And synchronize the verification matrix Is it a non-full rank matrix? If it does not meet the conditions, return to step 1 and reselect a random matrix pair until the conditions are met, then continue to calculate the matrix and will and Send it to node Carol, and Send to node Alice;
[0070] Step 5: Alice's node receives the matrix sent by Bob's node After γ2, the local and
[0071] Step 6: Carol's node receives the matrix sent by Bob's node After γ1, the local and
[0072] Step 7: Participant Bob’s node uses full rank decomposition to decompose the matrix The split is realized, and the two sub-matrices after decomposition are column full rank matrices and row full rank matrix The non-zero matrix The rank of the split matrices B1 and B2 satisfies the constraints Node Bob sends matrix B1 to node Alice and matrix B2 to node Carol;
[0073] Step 8: After receiving the matrix B1 from Bob’s node, the participant Alice’s node generates a secret internally A random matrix and locally calculates T a =M a +S a -V a -r a and t1 = R a B1, and T a and t1 is sent to node Bob;
[0074] Step 9: After receiving the matrix B2 from Bob’s node, Carol’s node secretly calculates t2=B2R c , and send the result t2 to node Bob;
[0075] Step 10: Participant Bob's node receives the matrix T sent from Alice's node a After adding t1 and the matrix t2 sent by Carol node, a random matrix is generated secretly inside And secretly compute the matrix locally Finally, we calculated T b =T a -M b +S b -V b -r b , sent to Carol node;
[0076] Step 11: Carol’s node receives T b Afterwards, the local secret calculation obtains the matrix V c =T b -M c +S c -r c ;
[0077] Step 12: Participants Alice, Bob, and Carol nodes respectively generate their corresponding final obfuscated split results V a 、V b and V c Sent to the three-party matrix multiplication requester, who then summarizes the final product ABC = V a +V b +V c .
[0078] The existing solutions to the problem of secure two-party inversion calculation are partly outsourced computing modes represented by matrix blinding technology and homomorphic encryption. This mode is mostly applicable to situations where client computing resources are limited. Although it greatly reduces the computing and communication overhead of the data provider, it completely gives the data ownership to the third-party cloud platform, and there is a risk of data leakage caused by the security risks of the cloud server; the other part is the end-to-end multi-party computing mode represented by secret sharing and inadvertent transmission technology. This mode is suitable for data holders with sufficient computing resources. It puts all computing and communication tasks on the local side. Although this mode avoids the data leakage risk brought by the third-party server, it has relatively high requirements for local computing resources and environmental reliability. Unlike the multi-party computing mode that is completely end-to-end in the local computing node and the multi-party computing mode that is completely outsourced to the cloud, the present invention proposes a multi-party hybrid computing mode based on server-assisted computing nodes. In other words, under the premise of having external semi-honest auxiliary computing nodes, some calculations are performed by the data provider himself, while some calculations are performed by external auxiliary server nodes in collaboration, which can achieve the balance between computing resource overhead and server credibility to the greatest extent.
[0079] The problem of secure two-party matrix inversion calculation is essentially a compound operation problem of two-party matrices. Different from the previous version of the secure two-party inversion protocol based on the secure two-party multiplication protocol 2PMP (2-Party Matrix Secure Multiplication Protocol) scheme, the core idea of this method is to introduce three external auxiliary computing nodes P Node, Q Node, and S Node to transform a two-party secure inversion calculation problem that requires repeated calls to the 2PMP protocol into a problem that can be parallelized through three rounds of secure three-party multiplication protocol 3PMP (3-Party Matrix Secure Multiplication Protocol), and store the final calculation result fragments on the distributed auxiliary computing nodes P, Q, and S, greatly reducing the security risks caused by the result leakage. In the process of executing the 3PMP protocol, the anti-collusion method previously proposed for the 3PMP protocol can be selected according to the security level requirements to ensure the security level and the reliability of the calculation accuracy.
[0080] like Figure 1 and Figure 2 As shown, the present invention provides a server-assisted secure two-party inversion calculation method, including:
[0081] S101, based on the private matrix A of the participant Alice's node, the private matrix P of the auxiliary computing node P, and the private matrix Q of the auxiliary computing node Q, based on the secure three-party matrix multiplication protocol 3PMP, perform the first round of three-party matrix multiplication calculation to obtain a three-party matrix multiplication calculation result.
[0082] S102, splitting the result of a three-way matrix multiplication into a matrix V using a data random obfuscation technique a , matrix V p1 And the matrix V q1 ; and the matrix V a , matrix V p1 And the matrix V q1 Send to the participating party Alice node and auxiliary computing nodes P and Q respectively;
[0083] V a 、V p1 、V q1 ∈R n×n ; V p1 +V a +V q1 =P×A×Q.
[0084] S103, based on the private matrix B of the participant Bob's node, the private matrix P of the auxiliary computing node P, and the private matrix Q of the auxiliary computing node Q, a second round of tripartite matrix multiplication calculation is performed based on 3PMP to obtain a secondary tripartite matrix multiplication calculation result.
[0085] S104, splitting the result of the quadratic trigonometric matrix multiplication into a matrix V using a random data obfuscation technique b , matrix V p2 And the matrix V q2 ; and the matrix V b , matrix V p2 And the matrix V q2 Sent to the participating party Bob node, auxiliary computing node P, and auxiliary computing node Q respectively; V b 、V p2 、V q2 ∈R n×n ; V p2 +V b +V q2 =P×B×Q.
[0086] S105, the calculation result V calculated by the auxiliary computing node P locally p =V p1 +V p2 Sent to the auxiliary computing node S.
[0087] S106, the calculation result V calculated by the auxiliary computing node Q in the local secret calculation q =V q1 +V q2 Sent to the auxiliary computing node S.
[0088] S107, the matrix V of the node of the participant Alice a and the matrix V of the participant Bob’s node b Sent to the auxiliary computing node S.
[0089] S108, the auxiliary computing node S calculates the result V p , calculation result V q , matrix V a And the matrix V b , we get the matrix T = V a +V b +V q +V p =PAQ+PBQ=P(A+B)Q, and calculate the matrix T locally -1 =Q -1 (A+B) -1 P -1 ; where T∈R n×n .
[0090] S109: Based on the matrix P of the auxiliary computing node P, the matrix Q of the auxiliary computing node Q, and the matrix T of the auxiliary computing node S, -1 ,Based on the 3PMP protocol, the third round of tripartite matrix multiplication calculation is performed to obtain the results of three tripartite matrix multiplication calculations.
[0091] S110, randomly split the result of the tripartite matrix multiplication into a private matrix U P , private matrix U S and the private matrix U Q ; U P , U S , U Q ∈R n×n .
[0092] S111, the private matrix U P , private matrix U S and the private matrix U Q Sent to the requester of the secure two-party inversion operation to obtain the final result of the two-party inversion calculation; the participating party Alice node has a private matrix A∈R n×n , the participant Bob node has a private matrix B∈R n×n , the auxiliary computing node P has a random reversible matrix P∈R n×n , the auxiliary computing node Q has a random reversible matrix Q∈R n×n .
[0093] The final result of the two-way inversion calculation is:
[0094]
[0095] The participant Alice node, the participant Bob node, the auxiliary computing node P, the auxiliary computing node Q and the auxiliary computing node S satisfy the constraints ψ(P Node, A Node, Q Node)=φ, the constraint ψ(A Node, B Node)={φ} and the semi-honest model.
[0096] Among them, ψ means that there is no tradition between the participant Bob's node, the auxiliary computing node P and the auxiliary computing node Q, and the shared data is an empty set. ψ(A Node, B Node) = {φ} means that collusion is prohibited between the participant Alice's node and the participant Bob's node.
[0097] The process of anti-collusion performance analysis is as follows:
[0098] First of all, this model is based on two security assessment standards, one is process-level security, and the other is result-level security. Here, it is mainly compared with matrix blinding technology or two-party inversion scheme based on 2PMP. The reason is that homomorphic encryption and OT or secret sharing schemes using cryptographic technology are based on sacrificing communication overhead and computational complexity, and the information security of the data source is protected to the greatest extent, but the efficiency of protocol execution is sacrificed. Blinding technology or inversion technology based on 2PMP is the same as this method. They are privacy computing schemes that do not introduce or introduce very little communication computing overhead. Since there are only two computing data holders Alice and Bob nodes in this scheme, and in addition to Alice and Bob nodes, there are three server-assisted computing nodes P Node, Q Node, and S Node that participate in the calculation. Therefore, for process-level security and result security, the following three prerequisites must be met:
[0099] All computing nodes participating in the 3PMP protocol do not allow three parties to collude at the same time;
[0100] For the original data holders, collusion between data holders is absolutely prohibited;
[0101] For all participating nodes, the current maximum security level is only for collusion-level attack risks;
[0102] Since this protocol is based on semi-honest participant nodes for calculation, all participants will strictly abide by the protocol's calculation process. In order to meet condition 1, for Alice and Bob nodes and the three auxiliary computing nodes, the constraint ψ(P Node, A Node, Q Node) = φ should be satisfied. The symbol ψ indicates that there is no tradition between the three nodes and the shared data is an empty set. In order to meet condition 2, for Alice and Bob nodes, ψ(A Node, B Node) = {φ} must be strictly observed. Similar to the previous constraint, this constraint indicates that collusion is prohibited between Alice and Bob nodes. In order to meet condition 3, all nodes participating in the calculation can only be assisted to the level of collusion attack behavior at most. Under normal circumstances, the two-party inversion protocol involving corresponding requirements requires strict process control to execute the protocol process. According to the definition of information theory security, if the security of the calculation process of each link can be guaranteed, that is, the security of the calculation of sub-protocol 3PMP, then the entire protocol is assumed to be safe in the calculation process. If it can be guaranteed that after the calculation is completed, even if there is a partial leakage of the three slice data outputs finally sent to the calculation requester, the original data holder Alice or Bob still cannot infer the private data of the other party, then the calculation result of the entire protocol can be considered safe.
[0103] The following is an analysis of SAC (Server-Assistant Computing) node collusion in terms of process safety. This method follows the three constraints and makes the following analysis on the possible collusion situations: Figure 6 As shown, it is mainly divided into two-node collusion and three-node collusion. According to the protocol, the entire calculation process only involves three rounds of 3PMP calls. Even when the corresponding participants execute a single 3PMP protocol, the anti-two-node collusion constraint method proposed by the previous 3PMP algorithm can ensure the security of the sub-protocol execution process. However, for the intermediate calculation results, it is necessary to further discuss the data exposure status in the SAC node collusion analysis for in-depth analysis. It can be seen from the upper and lower parts of the table that this method evaluates the security risks caused by collusion between the three auxiliary computing nodes according to the parallel relationship between the A node and the B node in the secure two-party inversion protocol. In the case of two-node collusion, Alice may collude with any one of the auxiliary computing nodes P, Q or S. However, no matter which collusion method is used, it is impossible to infer the other party's data based on the intermediate results due to the lack of relevant non-singular matrix complete information items [P, Q, T]. In the case of three-node collusion, Alice can collude with any two of the auxiliary computing nodes P, Q or S. However, no matter which collusion method is used, it is impossible to infer the other party's data based on the intermediate results due to the lack of relevant non-singular matrix complete information items [P, Q, T]. Similarly, SAC collusion analysis can be performed on node Bob, and similar results are obtained. Therefore, we can believe that the protocol complies with process-level computing security. In terms of result security, after the calculation is completed, the data holders related to the final result are the auxiliary computing nodes P, Q, and S, and the result shard data u is sent to the requester. p 、u q 、u s At the same time, even if there are shard data u related to a single or two nodes i (i=p,q,s) is leaked, Alice or Bob cannot use the leaked shard data item information (incomplete data item [u p ,u q ,u s ] is impossible to predict the final result (A+B) -1 ) can infer the other party’s private data items, so we can assume that the algorithm satisfies the calculation result security.
[0104] In summary, under the premise of the semi-honest model assumption, all participating nodes, whether they are local data holder nodes Alice or Bob, or service auxiliary computing nodes Node P, Node Q, Node S, strictly follow the protocol flow to execute the calculation process, and under the premise of meeting the constraints, even if there are a few malicious nodes conspiring or speculating on the private data of other participants, the scheme can effectively ensure the security of the calculation process and results from the beginning to the end of the entire calculation task. Therefore, we believe that the protocol is in compliance with computational security.
[0105] like Figure 7 As shown in the figure, for most multi-party computations, the process of achieving secure computation usually involves more than one step. Inevitably, we need to face a problem: how to ensure the security of intermediate results. For example, when the product of two matrices a×b is used as the intermediate result of the computation, whether the participating node Alice or the node Bod obtains the result of the final matrix a×b, it is possible to infer the data information of the other party. Therefore, in the privacy computing process, we must not only ensure the security of the input original data, but also the security of the intermediate value.
[0106] To solve this problem, this study proposes a data obfuscation encryption technology, which is to decompose any multi-objective operation into a new multi-objective addition to obfuscate the result of calculating the intermediate value. To make it easier to explain its principle, this article takes the most basic two-party operation type as an example. The principle is as follows Figure 3 Assume S k =F k (A i , B i ), where F k is the target calculation function, A i is private data belonging to organization Alice, B i It is the private data of the organization Bob. When executing each step of the multi-party secure computing protocol, the intermediate result S k will strictly follow the following constraints: Alice only knows her own calculation result A k and Bob only knows B k , and A k +B k =S k . formula It shows the process of transferring the intermediate value. Alice and Bod are not allowed to exchange each other's data information during the whole process, including the calculation of the intermediate result after the splitting of A k and B kAs long as the intermediate value is split into two random data items at each step of the calculation, it can be guaranteed that no party can infer the original data item from the obfuscated encrypted data, making the entire privacy computing process more secure.
[0107] The secure three-point multiplication protocol of the 3PMP protocol is implemented using secret sharing, oblivious transmission, the obfuscated circuit framework ABY3, and fully homomorphic encryption.
[0108] Corresponding to the above method, the present invention provides a server-assisted secure two-party inversion computing system, comprising:
[0109] The first computing unit is used to perform a first round of three-party matrix multiplication calculation based on the secure three-party matrix multiplication calculation protocol 3PMP according to the private matrix A of the participant Alice's node, the private matrix P of the auxiliary computing node P and the private matrix Q of the auxiliary computing node Q, and obtain a three-party matrix multiplication calculation result.
[0110] The first sending unit is used to split the result of a three-way matrix multiplication into a matrix V using a data random obfuscation technique. a , matrix V p1 And the matrix V q1 ; and the matrix V a , matrix V p1 And the matrix V q1 Send to the participating party Alice node and auxiliary computing nodes P and Q respectively;
[0111] V a 、V p1 、V q1 ∈R n×n ; V p1 +V a +V q1 =P×A×Q.
[0112] The second computing unit is used to perform a second round of tripartite matrix multiplication calculation based on 3PMP according to the private matrix B of the participant Bob's node, the private matrix P of the auxiliary computing node P, and the private matrix Q of the auxiliary computing node Q, to obtain a secondary tripartite matrix multiplication calculation result.
[0113] The second sending unit is used to split the result of the quadratic three-way matrix multiplication into a matrix V using a data random obfuscation technique. b , matrix V p2 And the matrix V q2 ; and the matrix V b , matrix V p2 And the matrix V q2Send to the participating party Bob node, auxiliary computing node P, and auxiliary computing node Q respectively;
[0114] V b 、V p2 、V q2 ∈R n×n ; V p2 +V b +V q2 =P×B×Q.
[0115] The calculation result first sending unit is used to send the calculation result V calculated secretly by the auxiliary computing node P locally p =V p1 +V p2 Sent to the auxiliary computing node S.
[0116] The calculation result second sending unit is used to send the calculation result V calculated secretly by the auxiliary computing node Q locally q =V q1 +V q2 Sent to the auxiliary computing node S.
[0117] The third sending unit is used to send the matrix V of the node of the participant Alice a and the matrix V of the participant Bob’s node b Sent to the auxiliary computing node S.
[0118] The auxiliary computing node S computing unit is used to assist the computing node S according to the calculation result V p , calculation result V q , matrix V a And the matrix V b , and we get the matrix
[0119] T=V a +V b +V q +V p =PAQ+PBQ=P(A+B)Q, and calculate the matrix locally
[0120] T -1 =Q -1 (A+B) -1 P -1 ; where T∈R n×n .
[0121] The third computing unit is used to calculate the matrix P of the auxiliary computing node P, the matrix Q of the auxiliary computing node Q, and the matrix T of the auxiliary computing node S. -1 ,Based on the 3PMP protocol, the third round of tripartite matrix multiplication calculation is performed to obtain the results of three tripartite matrix multiplication calculations.
[0122] Private matrix splitting unit, used to randomly split the private matrix U from the result of the tripartite matrix multiplication calculation P , private matrix U S and the private matrix U Q ; U P , U S , U Q ∈R n×n .
[0123] The result determination module of the two-way inversion calculation is used to convert the private matrix U P , private matrix U S and the private matrix U Q Sent to the requester of the secure two-party inversion operation to obtain the final result of the two-party inversion calculation; the participating party Alice node has a private matrix A∈R n×n , the participant Bob node has a private matrix B∈R n×n , the auxiliary computing node P has a random reversible matrix P∈R n×n , the auxiliary computing node Q has a random reversible matrix Q∈R n×n .
[0124] like Figure 8 As shown, a server-assisted secure two-party inversion computing device provided by the present invention is applied to the server-assisted secure two-party inversion computing method, including: a task acquisition module, a security computing module, a rule generation module, a consensus computing module and a data sending module.
[0125] The task acquisition module is responsible for receiving and decoding privacy computing requests from the client;
[0126] The secure computing module is used to automatically match the corresponding two-party secure computing protocol according to the parsed computing request.
[0127] The rule generation module is used to realize the splitting of computing tasks according to the asynchronous instruction set of the secure computing protocol, and different computing nodes perform collaborative computing according to their corresponding self-rules;
[0128] The consensus calculation module is used to ensure the synchronization and consistency of calculation processes through the consensus protocol after receiving the assigned sub-rules.
[0129] The data sending module is used to collect and transmit the calculation results of each participant's node to the calculation requester after the calculation is completed.
[0130] First, the corresponding distributed computing framework needs to be deployed on the two computing participant nodes and three auxiliary computing nodes that participate in the two-party security matrix inversion calculation task; the external client sends a request for two-party matrix inversion calculation to the network end where the distributed computing service is deployed through HTTP or GRPC communication protocol; after receiving the request Request for matrix inversion calculation, the task acquisition module parses it and starts the security computing service process of the corresponding computing participant node A, participant Bob node and auxiliary computing node P, auxiliary computing node Q and auxiliary computing node S; when the task acquisition module has completed the parsing of the corresponding computing requirements, it passes them to the security computing module, performs a joint query through the internal interface of the security computing module, and synchronizes them to the participant node A, participant Bob node and auxiliary computing node P, auxiliary computing node Q after matching the corresponding security computing protocol. And the rule generation module in the auxiliary computing node S; the rule generation module will formulate different asynchronous parallel execution processes according to the different subtasks undertaken by the participant node A, the participant Bob node and the auxiliary computing node P, the auxiliary computing node Q and the auxiliary computing node S, and maintain communication with the consensus computing module at each step of the execution; while the participant node A, the participant Bob node and the auxiliary computing node P, the auxiliary computing node Q and the auxiliary computing node S execute each step of the calculation instruction, the consensus computing module broadcasts and maintains the consistency of the results of the distributed computing nodes on the chain and the stability of the control execution process; wait until the final calculation protocol is executed, after the two computing participant nodes A and the participant Bob node obtain the sub-results of each other's calculations, the sub-matrices after the confusion and splitting of the two parties are sent to the calculation requester through the data sending module to obtain the correct calculation results.
[0131] The present invention proposes a two-party secure inversion calculation method based on a dual-link parallel computing paradigm with three auxiliary computing nodes. The method solves the problems of low computing efficiency and high communication overhead caused by the sequential execution of cryptographic tools in the existing technical solutions; the present invention is committed to realizing a reliability method that can effectively resist collusion of server nodes, and solves the problem of low security defense level in the existing outsourced cloud computing method; the present invention proposes a secure two-party matrix inversion protocol that supports float64 floating-point type data operations at the highest, and the accuracy stability and result reliability of the final calculation result can be guaranteed by introducing a 3PMP three-matrix multiplication protocol with verifiable results; the present invention proposes a secure two-party inversion calculation protocol with dual protection from process to result, and the calculation process level security and calculation result level security of the protocol are respectively guaranteed by the 3PMP protocol and the output data obfuscation splitting technology.
[0132] In this specification, each embodiment is described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same or similar parts between the embodiments can be referred to each other. For the system disclosed in the embodiment, since it corresponds to the method disclosed in the embodiment, the description is relatively simple, and the relevant parts can be referred to the method part.
[0133] The principles and implementation methods of the present invention are described in this article using specific examples. The description of the above embodiments is only used to help understand the method and core idea of the present invention. At the same time, for those skilled in the art, according to the idea of the present invention, there will be changes in the specific implementation methods and application scope. In summary, the content of this specification should not be understood as limiting the present invention.
Claims
1. A secure two-party inversion calculation method based on server assistance, characterized in that: include: According to the private matrix A of the participant Alice's node, the private matrix P of the auxiliary computing node P' and the private matrix Q of the auxiliary computing node Q', based on the secure three-party matrix multiplication protocol 3PMP, the first round of three-party matrix multiplication calculation is performed to obtain a three-party matrix multiplication calculation result; The result of a three-way matrix multiplication is split into the matrix V using data random obfuscation technology. a , matrix V p1 And the matrix V q1 ; and the matrix V a , matrix V p1 And the matrix V q1 Sent to the participant Alice node and the auxiliary computing nodes P' and Q' respectively; V a 、V p1 、V q1 ∈R n×n ; V p1 +V a +V q1 =P×A×Q; According to the private matrix B of the participant Bob's node, the private matrix P of the auxiliary computing node P', and the private matrix Q of the auxiliary computing node Q', based on 3PMP, a second round of three-party matrix multiplication calculation is performed to obtain a secondary three-party matrix multiplication calculation result; The result of the quadratic matrix multiplication is split into the matrix V using the data random obfuscation technique. b , matrix V p2 And the matrix V q2 ; and the matrix V b , matrix V p2 And the matrix V q2 Sent to the participating party Bob node, auxiliary computing node P' and auxiliary computing node Q' respectively; V b 、V p2 、V q2 ∈R n×n ; V p2 +V b +V q2 =P×B×Q; The calculation result V of the auxiliary computing node P' node in the local secret calculation p =V p1 +V p2 Send to the auxiliary computing node S; The result V of the local secret calculation of the auxiliary computing node Q' is q =V q1 +V q2 Send to the auxiliary computing node S; The matrix V of the node of participant Alice a and the matrix V of the participant Bob’s node b Send to the auxiliary computing node S; The auxiliary computing node S calculates the result V p , calculation result V q , matrix V a And the matrix V b , we get the matrix T = V a +V b +V q +V p =PAQ+PBQ=P(A+B)Q, and calculate the matrix T locally -1 =Q -1 (A+B) -1 P -1 ; where T∈R n×n ; According to the private matrix P of the auxiliary computing node P', the private matrix Q of the auxiliary computing node Q' and the matrix T of the auxiliary computing node S -1 , based on the 3PMP protocol, a third round of tripartite matrix multiplication calculation is performed to obtain three tripartite matrix multiplication calculation results; The result of the cubic matrix multiplication is randomly split into the private matrix U P , private matrix U S and the private matrix U Q ; U P , U S , U Q ∈R n×n ; The private matrix U P , private matrix U S and the private matrix U Q Sent to the requester of the secure two-party inversion operation to obtain the final result of the two-party inversion calculation; the participating party Alice node has a private matrix A∈R n×n , the participant Bob node has a private matrix B∈R n×n , the auxiliary computing node P' has a random reversible matrix P∈R n×n , the auxiliary computing node Q' has a random reversible matrix Q∈R n×n ; The final result of the two-way inversion calculation is: U P +U S +U Q =QT -1 P=Q(V a +V p +V q +V b ) -1 P; The participant Alice node, the participant Bob node, the auxiliary computing node P', the auxiliary computing node Q' and the auxiliary computing node S satisfy the constraints ψ(P Node, A Node, Q Node) = φ, the constraint ψ(A Node, B Node) = {φ} and the semi-honest model; Among them, ψ(P Node, A Node, Q Node) = φ means that there is no tradition between the participant Alice's node, the auxiliary computing node P' and the auxiliary computing node Q', the shared data is an empty set, φ is an empty set, and ψ(A Node, B Node) = {φ} means that collusion is prohibited between the participant Alice's node and the participant Bob's node.
2. A server-assisted secure two-party inversion calculation method according to claim 1, characterized in that: The secure three-point multiplication protocol of the 3PMP protocol is implemented using secret sharing, oblivious transmission, the obfuscated circuit framework ABY3, and fully homomorphic encryption.
3. A server-assisted secure two-party inversion calculation system, applied to a server-assisted secure two-party inversion calculation method according to any one of claims 1-2, characterized in that: include: The first computing unit is used to perform a first round of three-party matrix multiplication calculation based on the secure three-party matrix multiplication calculation protocol 3PMP according to the private matrix A of the node of the participant Alice, the private matrix P of the auxiliary computing node P' and the private matrix Q of the auxiliary computing node Q', and obtain a three-party matrix multiplication calculation result; The first sending unit is used to split the result of a three-way matrix multiplication into a matrix V using a data random obfuscation technique. a , matrix V p1 And the matrix V q1 ; and the matrix V a , matrix V p1 And the matrix V q1 Sent to the participant Alice node and the auxiliary computing nodes P' and Q' respectively; V a 、V p1 、V q1 ∈R n×n ; V p1 +V a +V q1 =P×A×Q; The second calculation unit is used to perform a second round of three-party matrix multiplication calculation based on 3PMP according to the private matrix B of the node of the participant Bob, the private matrix P of the auxiliary computing node P' and the private matrix Q of the auxiliary computing node Q', to obtain a secondary three-party matrix multiplication calculation result; The second sending unit is used to split the result of the quadratic three-way matrix multiplication into a matrix V using a data random obfuscation technique. b , matrix V p2 And the matrix V q2 ; and the matrix V b , matrix V p2 And the matrix V q2 Sent to the participating party Bob node, auxiliary computing node P' and auxiliary computing node Q' respectively; V b 、V p2 、V q2 ∈R n×n ; V p2 +V b +V q2 =P×B×Q; The calculation result first sending unit is used to send the calculation result V calculated by the auxiliary computing node P' locally secretly p =V p1 +V p2 Send to the auxiliary computing node S; The calculation result second sending unit is used to send the calculation result V calculated by the auxiliary computing node Q' locally secretly q =V q1 +V q2 Send to the auxiliary computing node S; The third sending unit is used to send the matrix V of the node of the participant Alice a and the matrix V of the participant Bob’s node b Send to the auxiliary computing node S; The auxiliary computing node S computing unit is used to assist the computing node S according to the calculation result V p , calculation result V q , matrix V a And the matrix V b , we get the matrix T = V a +V b +V q +V p =PAQ+PBQ=P(A+B)Q, and calculate the matrix T locally -1 =Q -1 (A+B) - 1 P -1 ; where T∈R n×n ; The third computing unit is used to calculate the matrix T of the auxiliary computing node S according to the private matrix P of the auxiliary computing node P', the private matrix Q of the auxiliary computing node Q' and the matrix T of the auxiliary computing node S. -1 , based on the 3PMP protocol, a third round of tripartite matrix multiplication calculation is performed to obtain three tripartite matrix multiplication calculation results; Private matrix splitting unit, used to randomly split the private matrix U from the result of the cubic matrix multiplication calculation P , private matrix U S and the private matrix U Q ; U P , U S , U Q ∈R n×n ; The result determination module of the two-way inversion calculation is used to convert the private matrix U P , private matrix U S and the private matrix U Q Sent to the requester of the secure two-party inversion operation to obtain the final result of the two-party inversion calculation; the participating party Alice node has a private matrix A∈R n×n , the participant Bob node has a private matrix B∈R n×n , the auxiliary computing node P' has a random reversible matrix P∈R n×n , the auxiliary computing node Q' has a random reversible matrix Q∈R n×n .
4. A server-assisted secure two-party inversion computing device, applied to a server-assisted secure two-party inversion computing method according to any one of claims 1-2, characterized in that: include: Task acquisition module, security calculation module, rule generation module, consensus calculation module and data sending module; The task acquisition module is responsible for receiving and decoding privacy computing requests from the client; The secure computing module is used to automatically match the corresponding two-party secure computing protocol according to the parsed computing request; The rule generation module is used to realize the splitting of computing tasks according to the asynchronous instruction set of the secure computing protocol, and different computing nodes perform collaborative computing according to their corresponding self-rules; The consensus calculation module is used to ensure the synchronization and consistency of calculation processes through consensus protocols after receiving the assigned sub-rules. The data sending module is used to collect and transmit the calculation results of each participant's node to the calculation requester after the calculation is completed; After receiving the request Request for matrix inversion calculation, the task acquisition module parses it and starts the security computing service process of the corresponding computing participants Alice node, Bob node, auxiliary computing nodes P', Q' and S; after the task acquisition module parses the corresponding computing requirements, it passes them to the security computing module, performs a joint query through the internal interface of the security computing module, and after matching the corresponding security computing protocol, synchronizes it to the rule generation module in the participants Alice node, Bob node, auxiliary computing nodes P', Q' and S; The rule generation module will formulate different asynchronous parallel execution processes according to the different subtasks undertaken by the participant Alice node, the participant Bob node, the auxiliary computing node P', the auxiliary computing node Q' and the auxiliary computing node S, and maintain communication with the consensus computing module at each step of the execution; The consensus computing module broadcasts and maintains the consistency of the results of the distributed computing nodes on the chain and the stability of the control execution process while the participating parties Alice's node, participating party Bob's node, and the auxiliary computing nodes P', Q', and S execute each step of the computing instructions; After the final calculation protocol is executed, the participating parties Alice and Bob obtain the sub-results of each other's calculations, and then send the sub-matrices after the confusion and splitting of the two parties to the calculation requester through the data sending module to obtain the correct calculation results.
Citation Information
Patent Citations
Method and device for power inversion of 2 in multi-party security calculation
CN115766009A
Three-party security computing anti-attack method, equipment and medium
CN116383848A