Method and system for improving security of secure multi-party computing scheme

By combining CRC and RS code list decoding algorithms, the security problem of the secure multi-party computing protocol in the face of multiple malicious attackers is solved, and efficient error correction and data integrity verification are achieved for multi-party computing, which significantly improves the Security and robustness.

CN119276457APending Publication Date: 2025-01-07UNIV OF ELECTRONICS SCI & TECH OF CHINA
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202411454598.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-17
Publication Date
2025-01-07

AI Technical Summary

Technical Problem

When facing the limit on the number of malicious attackers, the existing security multi-party computing protocol is insufficient and it is difficult to effectively resist more than one-third of malicious attackers.

Method used

Combining the list decoding algorithm of cyclic redundancy check (CRC) and Reed-Solomon (RS) codes improves error correction capabilities and security, and up-regulates the threshold of information segmentation through probabilistic calculations, so that the protocol can withstand up to half. A malicious attacker.

Benefits of technology

It significantly improves the security and robustness of the secure multi-party computing solution, can show higher efficiency and accuracy in error correction and data integrity verification, and is suitable for multi-party computing and other communication scenarios that require high error correction capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119276457A_ABST
    Figure CN119276457A_ABST
Patent Text Reader

Abstract

The invention belongs to the field of secure multi-party computing, and discloses a method for combining an RS (Reed-Solomon) code list decoding algorithm, cyclic redundancy check and a secure multi-party computing scheme, which improves the security of secure multi-party computing. And theoretically, the algorithm combining RS code list decoding and CRC exists, so that the secure multi-party computing scheme can resist at most one half of hostile attackers. Meanwhile, a specific method combining an RS code list decoding algorithm and CRC is given, the limitation of the unique decoding radius of the RS is broken through, the error correction capability of the RS code is improved with high probability, and the security of secure multi-party calculation is improved. The method specifically comprises the following steps: calculating a CRC check code of information and combining the CRC check code with the information to obtain a combined code word; performing RS coding on the code word; carrying out list decoding on the attacked code word; each code word in the list is verified, and original information and a secret value are obtained in a probabilistic mode.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of secure multi-party computing, and relates to a list decoding algorithm and system that combines Reed-Solomon (RS for short) code with cyclic redundancy check (CRC for short) to improve the security of secure multi-party computing solutions. Background Art

[0002] The problem of secure multi-party computation was first proposed by Chinese-American computer scientist and Turing Award winner Yao Qizhi in 1982. It was later developed by Goldreich, Micali, Wigderson and others and has become a very active research field in modern cryptography. The secure multi-party computation protocol allows multiple participants to perform collaborative computations without mutual trust, output computation results, and ensure that no party can obtain any information other than the computation results they deserve.

[0003] The first information-theoretic security protocol was designed by Ben-Or, Goldwasse, and Wigderson. Under active attacks, this scheme requires 2 / 3 honest people. At the 2018 US Crypto Conference, China, Genkin, Hamada, Ikarashi, Kikuchi, Lindell, and Nof et al. changed the deterministic computing model to a terminable type (with abort) and designed a secure multi-party computing protocol.

[0004] Franklin and Yung et al. reduced the communication cost by increasing the number of honest participants. Cascudo, Cramer, Xing and Yuan used the idea of ​​sharing to improve the communication cost in a paper presented at the 2018 American Secret Conference. In terms of improving the amount of computation, people have improved it by combining online and offline ideas and homomorphic encryption with oblivious transfer.

[0005] Shamir's secret sharing scheme was proposed independently by Shamir and Blakley in 1997. The scheme constructs a finite field with a degree less than k. The polynomial P(x) on , where the constant of the polynomial is the secret value. Assume there are n participants, take Then the message received by the i-th participant is P(x i). To reconstruct the information, we only need to obtain the information of any k participants, use polynomial interpolation, calculate the constant term of P(x), and we can get the secret value. Shamir's secret sharing scheme is a (k,n)-scheme, that is, any set of less than k participants cannot obtain any additional information of the secret value, and any set of k participants can recover the secret value. k is called the threshold value. Using Shamir's secret sharing scheme to distribute messages and reconstruct secrets can be equivalent to the encoding and decoding of RS codes.

[0006] CRC encoding uses a generator polynomial to encode the codeword to be transmitted through polynomial division operations. After passing through the channel, the receiver uses the generator polynomial shared with the sender to determine whether the codeword is the original transmission codeword. This is an effective error detection coding method.

[0007] List decoding breaks through the unique decoding radius of error correction coding. For an RS code, if the number of errors e when passing through the channel is greater than half of the minimum distance, the list decoding algorithm of the RS code can be used to improve the error correction capability. It can correct no more than e errors and output a list set containing the original information. For any error rate 0≤ρ≤1 and integer A linear code Known as - The list is decodable if for each received codeword The number of codewords whose Hamming distance does not exceed ρN does not exceed

[0008] An important issue of secure multi-party computing at present is the requirement to limit the number of malicious attackers, that is, the number of dishonest participants allowed by the protocol. In simple terms, a protocol that can resist more attackers naturally has higher security. Therefore, the present invention constructs a coding algorithm combining CRC and RS code list decoding, which uses probabilistic calculation to increase the threshold of information segmentation, thereby improving the security of the secure multi-party computing scheme. Summary of the invention

[0009] Using the list decoding algorithm of RS code, a probabilistic secure multi-party computing scheme is designed to improve the security of the scheme. The new scheme can resist more than one third of malicious attackers from the original one-third, and theoretically can resist at most one-half of the malicious attackers.

[0010] The implementation process of the present invention is as follows: a coding and decoding method using a cyclic redundancy check and RS list decoding is used to improve the security of the secure multi-party computing scheme:

[0011] Step 1, cyclic redundancy calculation phase: calculate the CRC checksum of the information and merge the checksum with the information.

[0012] Step 2, RS code encoding stage: encode the above results into RS code.

[0013] The method of combining cyclic redundancy check and RS coding can improve the error correction capability with a high probability.

[0014] Step 3, RS code list decoding stage: Use the RS code list decoding algorithm to obtain the RS code list decoding set.

[0015] List decoding can break through the radius limitation of unique decoding, improve the decoding radius of RS code, that is, the error correction capability, and give a list of decoding results, which contains the original information if the decoding is successful.

[0016] Step 4, cyclic redundancy check stage: perform cyclic redundancy check on all the results in the above list. If more than one or no result passes the check, the decoding fails; if only one result passes the check, the decoding result is the original information.

[0017] The above steps can combine CRC with RS code, verify the result of RS code list decoding, and determine the original information in the list. Compared with unique decoding, this method can increase the decoding radius of RS code, and can be used in secure multi-party computing schemes to improve the security of secure multi-party computing schemes.

[0018] Next, it is theoretically explained that if a suitable list decoding algorithm is selected, the secure multi-party computing scheme can be able to resist at most one-half of malicious attackers.

[0019] Step 1: Get information in Representing a finite field The length of the vector is r, and c0 represents the secret value.

[0020] Calculate the CRC checksum of information c (v1,…,v l ), and combined with c to obtain codeword m=(m0,…,m r+l-1 )=(c,v1,…,v l ).

[0021] Step 2: Take the RS code with parameters [n+1,r+l] and define the information polynomial f m (x) = m0 + m1x + ... + m r+l-1 x r +l-1 , take a group The element set on Using the information polynomial to calculate the codeword after RS ​​code encoding, we can get s = (s1, s2, ..., s n )=(f m (0),fm (α1),…,f m (α n )), there should be n participants in total, and the i-th participant can obtain information s i .

[0022] After steps 1 and 2, in order to protect the security of the secret value, at most t = r + l - 1 participants can be malicious attackers. If the number of malicious attackers exceeds t, these malicious attackers can directly recover the secret value.

[0023] If you want to ensure that the honest participants can recover the secret value and use a unique decoding method, the number of malicious attackers must be less than or equal to the unique decoding radius. Right now It can be found that the number of malicious attackers is at most about one-third of the participants. The following list decoding method will be used so that the number of malicious attackers can theoretically reach one-half.

[0024] Step 3: Assume that the codeword s is attacked by a malicious attacker and the secret value needs to be recovered. In theory, the decoding radius of list decoding can reach the Singleton bound, that is, there is a list decoding algorithm that can output a list containing all codewords whose distance from the received codeword is at most nt. At this time, the number of malicious attackers should satisfy nt ≥ t, that is, That is, the number of malicious attackers is at most about half of the participants. Using the list decoding algorithm, a list can be found so that the secret value can be restored in the list.

[0025] Let p≥1 be an integer, and assume that the decoding result list obtained by using the above list decoding algorithm is

[0026] Step 4: Decode each result s1, s2…, s in the list p The verification method is similar to the calculation method in step 1. The potential information in the list is traversed and converted into a binary sequence. The polynomial division is performed using the generating polynomial in step 1. Find the codeword that matches the result. If only one codeword that meets the condition is found, i =(s i,0 ,…,s i,r+l-1 ), then the decoding is successful and the secret value is s i,0 , where 1≤i≤p; otherwise, decoding fails.

[0027] The above content provides a theoretical method that utilizes the combination of list decoding of RS code and CRC. The secure multi-party computing scheme can probabilistically resist up to one-half of malicious attackers.

[0028] A specific construction method is further given below. Although this method cannot resist at most one-half of malicious attackers, it increases the decoding radius with a high probability and improves the security of the secure multi-party computing scheme.

[0029] Step 1 includes the following:

[0030] Get information in Representing a finite field The length of the vector is r, and c0 represents the secret value.

[0031] Calculate the CRC checksum of information c and combine it with c:

[0032] Each codeword c of information c i (0≤i≤r-1) are converted into binary format. The length of the binary depends on the size q of the finite field. Here we assume that q = 2 u .c i The information c is converted into a binary sequence of length u.

[0033] Find a suitable generating polynomial CRC-lu(l∈N + ), CRC-lu represents a polynomial on a binary field with the highest term degree of lu. Add lu zeros to the end of the binary sequence converted from c to obtain u1, and perform binary polynomial division with CRC-lu to obtain a binary checksum with a length of lu. The specific content of the binary polynomial division here includes the following steps:

[0034] 1. Write the generating polynomial CRC-lu into a binary sequence and record it as u2.

[0035] 2. Align the highest bit of u2 with the highest bit of the dividend.

[0036] 3. Perform modulo 2 division and perform XOR operation on the aligned u1 and u2.

[0037] 4. Combine the result with the remaining rank of u1 and record it as the new u1.

[0038] 5. Repeat steps 2, 3, and 4 until only the last lu digits remain. This remainder is the binary check code.

[0039] Finally, each u bit of the binary check code is converted into a finite field elements on , we get a finite field The checksum on (v1, ..., v l ), and add it to the end of the information c to get the code word m = (m0, ..., m r+l-1 )=(c,v1,…,vl ).

[0040] Step 2 includes the following:

[0041] Take the RS code with parameters [n+1, r+l] and define the information polynomial f m (x) = m0 + m1x + ... + m r+l-1 x r+l-1 , take a group The set of elements on

[0042] The encoded codeword s = (s0, s1, ..., s n )=(f m (0), f m (α1),…,f m (α n )). At this time, there are n participants, and the i-th participant can obtain information s i .

[0043] Step 3 includes the following:

[0044] Select and initialize Choose a code length of n+1, a dimension of τ(n+1)+1, a list decoding radius of τ(n+1), and a list size of Guruswami-Sudan RS code list decoder.

[0045] Suppose codeword s is attacked by a malicious attacker and needs to recover the secret value. In the secure multi-party computation scheme, only n participants are allowed to provide information to recover the secret. s0 in codeword s is unknown. In order to decode smoothly, s0 can be arbitrarily set to u0. Let the received codeword be u = (u0,…,u n ).

[0046] Codewords that will be attacked Input to the RS code list decoder selected above to get the output list

[0047] Step 4 includes the following:

[0048] Traverse all the information in the list and verify them one by one. The verification method is similar to the calculation method in step 1. Convert the potential information into a binary sequence and use the generating polynomial in step 1 to perform polynomial division. If the verification result is satisfied, the decoding is successful, and the secret value is r i The decoding fails in other cases.

[0049] In combination with the above technical solutions and the technical problems solved, the advantages and positive effects of the technical solutions to be protected by the present invention are as follows:

[0050] First, the present invention combines the secure multi-party computing scheme with the RS code, and theoretically provides a method to solve an important problem of secure multi-party computing, namely, the requirement to limit the number of malicious attackers, that is, the number of dishonest participants allowed by the protocol. This enables the secure multi-party computing scheme to resist at most one-half of the malicious attackers, and improves the security of the secure multi-party computing scheme.

[0051] Second, the present invention provides a method for combining a specific CRC technology with RS code list decoding to improve the error correction capability of the RS code with a high probability. This method has the following key advantages:

[0052] 1. Breaking through the limitation of the unique decoding of RS code, the error correction capability of RS code is improved with high probability. When the error occurs more than half of the code distance, the present invention can output the correct decoding result with high probability through the codeword in the soft decision detection list.

[0053] 2. It is applicable to the secure multi-party computing scheme, improving the defense capability of the scheme and its ability to recover secret values, making it able to resist more adversaries.

[0054] 3. It has wide adaptability and can be used not only in the field of secure multi-party computing, but also in many communication application scenarios with high requirements for error detection and correction.

[0055] Third, the present invention proposes a method for improving the security of a secure multi-party computing solution. The method significantly enhances the security and robustness of data in the multi-party computing process by combining CRC checksum, RS code encoding and list decoding technology. The following are the existing technical problems solved by the present invention in industrial applications and the significant technical progress achieved:

[0056] Existing technical problems solved:

[0057] 1. Data integrity verification: In traditional secure multi-party computing, data may be tampered or damaged during transmission and calculation, resulting in inaccurate calculation results. The present invention provides an effective means of data integrity verification by calculating and appending CRC check codes.

[0058] 2. Error correction capability: In multi-party computing, the information provided by participants may contain errors due to communication noise, equipment failure or malicious attacks. The present invention adopts RS code encoding to enhance the error correction capability of data, and can tolerate and correct errors within a certain range.

[0059] 3. Decoding accuracy: In the presence of malicious attacks or noise interference, traditional decoding methods may not be able to accurately restore the original information. The present invention adopts a list decoding algorithm, which can generate multiple possible decoding results and filter out the correct results through CRC verification, thereby improving the accuracy of decoding.

[0060] Significant technological progress achieved:

[0061] 1. Enhanced security: By combining CRC check and RS code encoding, the present invention provides a dual protection mechanism that can both verify the integrity of the data and correct errors in the data, thereby significantly enhancing the security of the secure multi-party computing scheme.

[0062] 2. Improved robustness: The RS code encoding and list decoding technology adopted in the present invention enables the system to tolerate and correct errors within a certain range, improves the robustness and stability of the system, and enables the system to better cope with various complex environments and malicious attacks.

[0063] 3. Optimized decoding efficiency: Traditional decoding methods may not be able to accurately restore the original information when faced with many errors. The list decoding algorithm adopted by the present invention can generate multiple possible decoding results and quickly filter out the correct results through CRC verification, thereby improving the efficiency and accuracy of decoding.

[0064] 4. Broad application prospects: The method proposed in the present invention is not only applicable to the field of secure multi-party computing, but can also be widely used in other scenarios that require data integrity verification and error correction, such as distributed storage, cloud computing, the Internet of Things, etc., and has broad application prospects.

[0065] In summary, the present invention significantly enhances the security and robustness of the secure multi-party computing scheme by combining CRC check code, RS code encoding and list decoding technology, solves the problems of data integrity verification, error correction and decoding accuracy in the prior art, and achieves significant technical progress. BRIEF DESCRIPTION OF THE DRAWINGS

[0066] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments of the present invention. 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 creative work.

[0067] Figure 1 It is a flow chart of combining RS code list decoding with CRC technology to improve the security of a secure multi-party computing solution provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0068] In order to make the purpose, technical solution and advantages of the present invention more clearly understood, the present invention is further described in detail below in conjunction with the embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.

[0069] The present invention provides a system for improving a secure multi-party computing solution, the system comprising:

[0070] A check module, used to calculate the CRC check code of the input information and merge the check code with the information;

[0071] An encoding module, used for performing RS code encoding on the combined result to generate an RS code word;

[0072] The list decoding module uses the list decoding algorithm of the RS code to decode the encoded codeword to obtain the decoding list result;

[0073] The verification module performs CRC verification on the list results and determines whether the decoding is successful or not based on the verification results.

[0074] The verification module further includes:

[0075] An information conversion unit converts each symbol of the information into a binary format and generates a corresponding binary sequence according to the size of the finite field;

[0076] The check code generating unit calculates the CRC check code based on binary polynomial division, and appends the check code to the end of the information to generate a final code word.

[0077] The encoding module further comprises:

[0078] A polynomial building unit, used for defining an information polynomial and calculating a RS codeword through a set of finite field element sets;

[0079] The encoding output unit distributes the generated RS codeword to multiple participants, and each participant receives a codeword part.

[0080] The list decoding module adopts the Guruswami-Sudan RS code list decoder and includes:

[0081] an initialization unit for setting the decoder’s parameters based on the number of participants, code length, dimensionality, and list size;

[0082] The list generation unit is used to perform list decoding on the attacked codewords and output a list of possible decoding results.

[0083] The verification module further includes:

[0084] A polynomial check unit, performing CRC check on each information in the decoding list based on the generator polynomial;

[0085] The success judgment unit is used to find the only information that meets the verification condition in the list results and determine that the first bit of the information is a secret value.

[0086] The present invention provides a system for improving the secure multi-party computing scheme, which ensures the data integrity and security during the transmission and calculation process by using a combination of CRC check code, RS code encoding and list decoding algorithm. The core modules of the system include a check module, an encoding module, a list decoding module and a check verification module. The following is the detailed working principle of each module:

[0087] In the first step, the verification module is responsible for preliminary processing of the input information to ensure the integrity of the data. First, the information conversion unit converts the input information into a binary format representation that conforms to the size of the finite field. Subsequently, the check code generation unit generates a CRC check code through binary polynomial division and appends the generated check code to the end of the information. This ensures that if the information is tampered with during data transmission, the check code can detect the anomaly in time.

[0088] In the second step, the encoding module encodes the data through the RS code. First, the polynomial construction unit generates a polynomial based on the information and uses the elements in the finite field to generate the codeword of the RS code. The RS code is a powerful error correction code that can correct a certain number of errors. Subsequently, the encoding output unit distributes the generated RS codeword, and the system divides and distributes the codeword to multiple participants. Each participant only receives part of the data to ensure information security and privacy.

[0089] In the third step, the list decoding module uses the Guruswami-Sudan algorithm in the decoding process. This algorithm can handle errors that may occur in RS code transmission and generate multiple possible decoding results. The initialization unit sets the decoding parameters according to the number of participants, code length, dimension, and list size, and then decodes the encoded codeword through the list generation unit. At this time, the list decoding algorithm generates a set of possible decoding results, namely the decoding list.

[0090] In the fourth step, the verification module verifies the multiple decoding results generated by the list decoding module. The polynomial verification unit uses the CRC verification algorithm again to detect whether each decoding result in the list is correct. The task of the verification module is to find the only valid information that meets the CRC check code to ensure the correctness of the decoding result.

[0091] In the fifth step, the success judgment unit further determines the only valid information by detecting the check code in the decoding result. In this way, invalid decoding results can be filtered out to ensure that the final output is the correct secret value. When dealing with multi-party secure computing, this method can effectively improve the accuracy of data transmission and ensure data consistency among participants.

[0092] Step 6: The design of the entire system ensures that even in the event of an attack or transmission error, the integrity and security of the information can still be ensured through the RS code error correction and CRC verification mechanism. Even if multiple possible decoding results are generated, the system can still filter out the only correct result through the verification module, greatly improving the data security and reliability in multi-party computing.

[0093] The technical solution of the present invention mainly solves the data security, accuracy and reliability problems in the existing multi-party computing solutions in the industrial application. In the prior art, multi-party computing faces the risk that data may be tampered, lost or attacked during transmission or calculation. The traditional checksum encoding method is not robust and efficient enough in dealing with high-complexity, multi-party environments.

[0094] The present invention achieves significant technical progress through the following innovative technologies:

[0095] 1. Enhanced data integrity and security: The combination of CRC check and RS code encoding not only verifies the input information, but also achieves powerful error correction capabilities through RS code. This double guarantee ensures that the calculation results will not be invalid due to a small amount of errors during data transmission and calculation, thereby significantly improving data integrity and security.

[0096] 2. Improve the anti-attack capability of multi-party computing: Through the list decoding technology, the present invention can generate multiple possible decoding results when there is a malicious attack or data transmission error, and screen them based on CRC check to ensure that the only correct decoding result is finally obtained. This list decoding algorithm enhances the robustness and reliability of the system in complex and harsh environments, and solves the risk problems faced by existing technologies in malicious environments.

[0097] 3. Greatly improve fault tolerance and data accuracy: Existing multi-party computing schemes usually only allow errors within a certain range, while the present invention can handle more error situations through the powerful error correction capability of RS code, especially in the case of multiple parties involved, ensuring that even if there are errors in the codeword part of each participant, the data can be restored through error correction, which greatly improves the system's fault tolerance and data transmission accuracy.

[0098] 4. System performance and efficiency optimization: The present invention reduces the risk of human intervention through automated verification and decoding processes, and improves the speed and accuracy of data processing in multi-party computing through efficient encoding and decoding algorithms. The system can automatically generate, detect and repair errors in complex multi-party computing environments, thereby improving overall computing efficiency.

[0099] In summary, in industrial applications, the present invention significantly improves the security, robustness and efficiency of multi-party computing systems, effectively solves the problems of computing data loss, malicious attacks and poor fault tolerance faced by existing technical solutions, and has broad application prospects.

[0100] In view of the problems existing in the prior art, the present invention provides a method for increasing the decoding radius of RS codes, thereby improving the security of secure multi-party computing schemes and enabling them to resist attacks from more adversaries.

[0101] like Figure 1 As shown, an embodiment of the present invention provides a method for combining RS code list decoding with CRC technology to improve the security of a secure multi-party computing solution. The method includes:

[0102] Step 1, the preprocessing phase, includes:

[0103] Get information Take the generator polynomial CRC-lu and the RS code with parameters [n+1,r+l]. Where c0 is the secret value, Represents an affine space, r represents the length of the information, and CRC-lu represents a polynomial over a binary field with a highest term degree of lu.

[0104] Step 2, cyclic redundancy calculation phase, includes:

[0105] Step 2.1: Each codeword c of information c i (0≤i≤r-1) are converted into binary format. The length of the binary depends on the size q of the finite field. Here we assume that q = 2 u .c i The information c is converted into a binary sequence of length u.

[0106] Step 2.2, add lu zeros to the end of the binary sequence converted from information c to obtain u1, and perform binary polynomial division with CRC-lu to obtain a binary checksum of length lu. The specific contents of the binary polynomial division here include the following steps:

[0107] (1) Write the generating polynomial CRC-lu as a binary sequence and record it as u2.

[0108] (2) Align the highest bit of u2 with the highest bit of the dividend.

[0109] (3) Perform modulo 2 division and perform XOR operation on the aligned u1 and u2.

[0110] (4) Combine the result with the remaining rank of u1 and record it as the new u1.

[0111] Repeat steps (2), (3), and (4) until only the last lu digits of the remainder remain. This remainder is the binary check code.

[0112] Step 2.3, finally convert each u bit of the check code into a finite field elements on , we get a finite field The checksum on (v1, ..., v l ), and add it to the end of the information c to get the code word m = (m0, ..., m r+l-1 )=(c,v1,…,v l ).

[0113] Step 3, RS encoding phase, specifically includes:

[0114] Step 3.1, define the information polynomial f m (x) = m0 + m1x + ... + m r+l-1 x r+l-1 , take a group The set of elements on

[0115] Step 3.2, using the information polynomial to calculate the encoded codeword s = (s0, s1, ..., s n )=(f m (0), f m (α1),…,f m (α n )). At this time, there are n participants, and the i-th participant can obtain information s i .

[0116] Step 4, RS code decoding stage, specifically includes the following contents:

[0117] Step 4.1, select and initialize 1 / 3<τ≤1 / 2, select code length n+1, dimension τ(n+1)+1, list decoding radius τ(n+1) and list size Guruswami-Sudan RS code list decoder.

[0118] Step 4.2: Codeword to be attacked Input to the RS code list decoder selected in step 4.1 to get the output list

[0119] Step 5, cyclic redundancy check phase, specifically includes the following contents:

[0120] Step 5.1, check the results in the list respectively, and use the generated polynomial CRC-lu to perform polynomial division.

[0121] Step 5.2, if there is only one message If the verification result is satisfied, the decoding is successful, and the secret value is r i The decoding fails in other cases.

[0122] The present invention provides an efficient encoding and decoding method, which can improve the error correction capability of RS code with high probability, improve the security of secure multi-party computing scheme, and resist attacks from more adversaries.

[0123] Technical advantages:

[0124] 1. The present invention combines the secure multi-party computing scheme with the RS code, and theoretically provides a method to solve an important problem of secure multi-party computing, which is the requirement to limit the number of malicious attackers, that is, the number of dishonest participants allowed by the protocol. This enables the secure multi-party computing scheme to resist at most one-half of the malicious attackers, and improves the security of the secure multi-party computing scheme.

[0125] 2. By combining list decoding with CRC technology, the RS code decoding radius, i.e. error correction capability, can be increased probabilistically. When the error exceeds half of the code distance, the RS code can also correct the error with a high probability.

[0126] In order to prove that the above method can achieve corresponding results and has great advantages over the original technology, a specific example of the above method is given below.

[0127] Step 1, the preprocessing phase, includes:

[0128] Get information where a is a finite field The primitive element, in order to facilitate the program display, the CRC-4 generating polynomial x is taken 4 +x+1, take the RS code with parameters [31,12]. 3 +a+1 is the secret value.

[0129] Step 2, cyclic redundancy calculation phase, includes:

[0130] Step 2.1, convert each codeword of the information c into a binary format of length 5 and obtain (1,1,0,1,0,0,1,0,0,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,0,0,1,1,1,0,0,1,1,1,0,1,0,0,0,1,1,0,1,0,1,0,1,0,0,0,0,0,1,1,0,1,1,0,1,1,0,1,1).

[0131] Step 2.2, use the CRC-4 generator polynomial to perform polynomial division and get the remainder (0, 1, 1, 0), then

[0132] (1,1,0,1,0,0,1,0,0,0,1,1,1,0,0,0,0,1,1,0,0,1,1,1,1,1,0,0,1,1,1,0,0,1,1,1,0,1,0,0,0,0,1,1,0,1,0,1,0,1,0,0,0,0,0,1,1,0,1,1,0,1,1,0,1,1,0,1,1,0) is the CRC-4 encoded codeword.

[0133] Step 2.3, convert the above CRC-4 encoded codeword into a finite field Since the selected CRC-4 only adds 4 bits of redundancy, i.e. (0, 1, 1, 0), the redundancy is regarded as (0, 1, 1, 0, 0) and converted into The elements on the 3 +a+1,a,a 2 +a+1,a 3 +a 2 , a 4 +a 3 +a 2 +a,a 4 +a 3 +1, a 2 +1, a 4 +a 2 +a,a,a 3 +a 2 , a 4 +a 3 +a+1,a 2 +a).

[0134] Step 3, RS encoding phase, specifically includes:

[0135] Step 3.1, define the information polynomial f m (x)=(a 2 +a)x 11 +(a 4 +a 3 +a+1)x 10 +(a 3 +a2 )x 9 +ax 8 +(a 4 +a 2 +a)x 7 +(a 2 +1)x 6 +(a 4 +a 3 +1)x 5 +(a 4 +a 3 +a 2 +a)x 4 +(a 3 +a 2 )x 3 +(a 2 +a+1)x 2 +ax+a 3 +a+1, take a set of the set of elements on

[0136] Step 3.2, calculate the codeword after RS code encoding using the information polynomial to obtain

[0137] s=(s0, s1,..., sn)=(f m (0), f m (α1),..., f m (α n ))

[0138] =(a 3 +a+1, a 4 +a 3 +1, a 4 +a 3 +a 2 +a, a 4 +a 2 +a+1, a 4 +a 3 +a+1, a 2 +a, a 3 +a, a, a 4 +a 3 , a 4 +a 3 +a 2 , 1, a 3 +a, a 4 +a 3 +a 2 , a 4 +a 3 +a 2 +1, a 3 , a 3 +a 2+a+1,a 3 +a 2 +a,a 3 +a 2 +a,a 4 +a 3 , a 4 +a 3 +a 2 +a,a 4 +a 2 +a+1,a 4 +a,a 4 +a 3 +a 2 +a+1,a 2 +a+1,a,a 4 +a 3 +a+1,a 2 +a,a 4 +a 3 +a 2 +a+1,a 4 +a 3 +a+1,a 4 +a 2 +1, a 4 +a 2 +a+1)

[0139] Step 4, RS code decoding stage, specifically includes the following contents:

[0140] Step 4.1, select and initialize The Guruswami-Sudan RS code list decoder with code length 31, dimension 12, list decoding radius 11 and list size 3 was selected.

[0141] Step 4.2: Assume that the codeword s is attacked by a malicious attacker and needs to recover the secret value. After the attack, the codeword u = (a 3 +a+1,a 4 +a 3 +1, a 4 +a 3 +a 2 +a,a 4 +a 2 +a+1,a 4 +a 3 +a+1,a 2 +a,a 3 +a,a,a 4 +a 3 , a 4 +a 3 +a 2 , 1, a 3 +a,a 4 +a3 +a 2 , a 4 +a 3 +a 2 +1, a 3 , a 3 +a 2 +a+1,a 3 +a 2 +a,a 3 +a 2 +a,a 4 +a 3 , a 4 +a 3 +a 2 +a,a 4 +a 2 +a+1,a 4 +a 2 +1, a 4 +a 3 +a 2 , a 3 +a 2 +a+1,a 2 +a,a 4 +a 3 +a 2 +a,a 3 +a 2 +a,a 4 , a 4 +a 3 +a,a,a 4 +1).

[0142] Input the attacked codeword u into the Guruswami-Sudan RS code list decoder selected in step 4.1, and get the output list

[0143] Step 5, cyclic redundancy check phase, specifically includes the following contents:

[0144] Step 5.1, check the list results r1, r2 respectively. Convert the codewords r1 and r2 into binary sequences, and use the generating polynomial CRC-4 to perform polynomial division. Only the non-check bit of r1 is equal to the check bit after dividing by the generating polynomial of CRC-4.

[0145] Step 5.2, r1 satisfies the verification result, r2 does not satisfy the verification result, then the original information is (a 3 +a+1,a,a 2 +a+1,a 3 +a 2 , a 4 +a 3 +a2 +a,a 4 +a 3 +1, a 2 +1, a 4 +a 2 +a,a,a 3 +a 2 , a 4 +a 3 +a+1), and the secret value is a 3 +a+1. Decoding successful.

[0146] Evidence of the effects of the embodiments. The embodiments of the present invention have achieved some positive effects during the development or use process, and indeed have great advantages over the prior art. The following content is described in conjunction with the data of the test process.

[0147] Some simulation results of the present invention are as follows:

[0148] Select the finite field size as q = 2 5 , the original message length k-1 = 11, the number of participants n = 31, the message length with checksum added k = 12, the number of attackers is t = τn = 11, select and initialize Select code length n = 31, dimension k = 12, list decoding radius τn = 11 and list size The Guruswami-Sudan RS code list decoder, the generating polynomial is CRC-4=x 4 +x+1, 10,000 experiments were conducted, and the experimental success rate was 100%. The experimental results show that when the information theft threshold is 0.354>1 / 3, the algorithm can correctly recover the original secret with a high probability. This improves the security of the secure multi-party computing scheme.

Claims

1. A method for improving the security of a secure multi-party computing scheme is characterized by: Select a suitable CRC code generator polynomial according to the information sequence and the size of the finite field, and pre-code the information with the CRC code; Define the information polynomial according to the precoding result, and select the assignment point to encode the RS code; The list decoding algorithm of RS code with a sufficiently large decoding radius is combined with the decoding algorithm of CRC code with strong error detection capability, which increases the decoding radius with high probability and improves the security of the secure multi-party computing scheme.

2. A method for improving the security of a secure multi-party computing scheme as claimed in claim 1, characterized in that: Calculate the CRC checksum of the information and combine the checksum with the information, including: Each symbol c of information c i (0≤i≤r-1) are converted into binary format. The length of the binary depends on the size of the finite field q=2 u .c i Converted into a binary sequence of length u. Information c is converted into a binary sequence of length ur; Add lu zeros to the end of the binary sequence converted from information c to get u1, and perform binary polynomial division with CRC-lu to get a binary check code with a length of lu; Finally, each u bit of the check code is converted into a finite field elements on , we get a finite field The checksum on (v1,…,v l ) and add it to the end of the information c to get the code word m = (m0,…,m r+l-1 )=(c,v1,…,v l ).

3. A method for improving the security of a secure multi-party computing scheme as claimed in claim 1, characterized in that: The result obtained by combining the check code and the information is encoded by RS code, specifically including: Define the information polynomial f m (x) = m0 + m1x + ... + m r+l-1 x r+l-1 , take a group The set of elements on The encoded codeword s = (s0, s1, ..., s n )=(f m (0),f m (α1),…,f m (α n )). At this time, there should be n participants in total, and the i-th participant can obtain information s i .

4. A method for improving the security of a secure multi-party computing scheme as claimed in claim 1, characterized in that: Use the list decoding algorithm of RS code to obtain the decoding list result of RS code, including: Assume that codeword s is attacked by a malicious attacker and needs to recover the secret value. In the secure multi-party computation scheme, only n participants are allowed to provide information to recover the secret. s0 in codeword s is unknown, so s0 = u0; Select and initialize 1 / 3<τ≤1 / 2, select a Guruswami-Sudan RS code list decoder with code length n+1, dimension τ(n+1)+1, list decoding radius τ(n+1), and list size l; Codewords to be attacked Input to the Guruswami-Sudan RS code list decoder and get the output list 5. A method for improving the security of a secure multi-party computing scheme as claimed in claim 1, characterized in that: Perform CRC check on the list results, including: Pair List The results in are checked respectively, and polynomial division is performed using the generated polynomial CRC-lu; If there is only one message If the verification result is satisfied, the decoding is successful, and the secret value is r i The decoding fails in other cases.

6. A system for improving a secure multi-party computing scheme, characterized in that: The system comprises: A check module, used to calculate the CRC check code of the input information and merge the check code with the information; An encoding module, used for performing RS code encoding on the combined result to generate an RS code word; The list decoding module uses the list decoding algorithm of the RS code to decode the encoded codeword to obtain the decoding list result; The verification module performs CRC verification on the list results and determines whether the decoding is successful or not based on the verification results.

7. The system for improving secure multi-party computing scheme according to claim 1, characterized in that: The verification module further comprises: An information conversion unit converts each symbol of the information into a binary format and generates a corresponding binary sequence according to the size of the finite field; The check code generating unit calculates the CRC check code based on binary polynomial division, and appends the check code to the end of the information to generate a final code word.

8. The system for improving secure multi-party computing scheme according to claim 1, characterized in that: The encoding module further comprises: A polynomial building unit, used for defining an information polynomial and calculating a RS codeword through a set of finite field element sets; The encoding output unit distributes the generated RS codeword to multiple participants, and each participant receives a codeword part.

9. The system for improving secure multi-party computing scheme according to claim 1, characterized in that: The list decoding module adopts the Guruswami-Sudan RS code list decoder and includes: an initialization unit for setting the decoder’s parameters based on the number of participants, code length, dimensionality, and list size; The list generation unit is used to perform list decoding on the attacked codewords and output a list of possible decoding results.

10. The system for improving secure multi-party computing scheme according to claim 1, characterized in that: The verification module further comprises: A polynomial check unit, performing CRC check on each information in the decoding list based on the generator polynomial; The success judgment unit is used to find the only information that meets the verification condition in the list results and determine that the first bit of the information is a secret value.

Citation Information

Cited By

  • Data transmission method, system and device, medium and computer program product

    CN120185774A