An improved evaluation method and system of information set decoding algorithm, electronic equipment and readable storage medium
By employing refined modeling and probabilistic inverse reasoning mechanisms, the evaluation accuracy of information set decoding algorithms has been improved, the problem of inaccurate complexity modeling in the BJMM algorithm has been solved, and a more scientific security assessment and performance optimization of post-quantum cryptosystems has been achieved.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- SHANDONG UNIV
- Filing Date
- 2025-10-17
- Publication Date
- 2026-07-14
AI Technical Summary
Existing information set decoding algorithm evaluation tools do not accurately model the complexity of BJMM algorithms, resulting in low evaluation accuracy and affecting the security and performance of post-quantum cryptosystems.
By employing refined modeling and probabilistic back-calculation mechanisms, the complexity analysis of the BJMM algorithm is refined, including the number of iterations, Gaussian elimination operations, search tree construction, and the calculation of error vector probabilities, providing a more accurate time complexity assessment.
It improves the evaluation accuracy of information set decoding algorithms, especially BJMM-type algorithms, helps to scientifically evaluate the security level of cryptographic systems, optimizes the balance between key length and system efficiency, and enhances the applicability of evaluation tools.
Smart Images

Figure CN121396441B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the technical field of security assessment of cryptographic systems, and more specifically, to an evaluation method and system for an improved information set decoding algorithm. Background Technology
[0002] The statements in this section are merely background information relating to this disclosure and do not necessarily constitute prior art.
[0003] Post-quantum cryptography (PQC) refers to a class of encryption algorithms designed in advance to resist quantum computing attacks, before the advent of quantum computers and their ability to actually threaten existing cryptographic systems. Among many candidate technologies, code-based encryption algorithms are widely considered to be resistant to quantum computing attacks due to their clear structure and ease of implementation. The security of such cryptosystems relies on the core computational problem in coding theory: the Syndrome Decoding Problem (SDP).
[0004] Encoding-based cryptographic algorithms rely on the unsolvability of the checksum decoding problem, thus possessing a significant advantage in resisting quantum attacks. Accurate assessment of the complexity of solving the SDP is crucial for encoding-based cryptographic systems. Overestimating the efficiency of solving the SDP leads to insufficient cryptographic parameters, reducing the system's security strength; conversely, overestimating it results in excessive inflation of key length and computational cost, impacting system performance. Therefore, researching SDP solution methods, analyzing the complexity boundaries of different algorithms, and accurately estimating the system's security level are key technical tasks in post-quantum cryptography research.
[0005] Currently, the mainstream solution to the Syndrome Decoding Problem (SDP) is the Information Set Decoding (ISD) algorithm and its improved variants. The Becker–Joux–May–Meurer (BJMM) algorithm within ISD theoretically reduces the expected size of the search space by introducing intermediate meeting strategies and representation techniques, thus outperforming previous algorithms such as Stern and Dumer in terms of complexity. However, its practical evaluation still faces significant challenges.
[0006] Existing tools for evaluating the decoding cost of ISD algorithms, such as the SyndromeDecoding Estimator, primarily estimate the complexity of different algorithms under given parameters through representation techniques and probabilistic models. However, these tools are inaccurate in modeling the complexity of complex ISD variants like the BJMM algorithm, which employs intermediate vector representations and hierarchical tree structures. Current estimators only use approximate estimates to express aspects such as the merging operation and the probability of linear constraint satisfaction in the BJMM algorithm, resulting in an overall low accuracy in evaluating the complexity of the BJMM algorithm. Summary of the Invention
[0007] To address the aforementioned issues, this disclosure proposes an improved evaluation method and system for information set decoding algorithms. Through refined modeling and probabilistic back-calculation mechanisms, it provides more accurate complexity analysis methods, which can be widely applied to key aspects such as parameter selection, security level verification, and standard setting in post-quantum encryption algorithms.
[0008] To achieve the above objectives, the present disclosure adopts the following technical solution:
[0009] One or more embodiments provide an evaluation method for an improved information set decoding algorithm, comprising the following steps:
[0010] Obtain the parameters of the parity decoding problem, and obtain the optimization parameters of the information set decoding algorithm to be evaluated;
[0011] Based on the obtained parameters, the combination formula is used to estimate the expected number of iterations required for the information set decoding algorithm to solve the checksum decoding problem, which is then used as the processing complexity. ;
[0012] For each iteration of the information set decoding algorithm to be evaluated, Gaussian elimination is performed on the parity-check matrix H. The time cost of the Gaussian elimination operation is calculated. ;
[0013] Based on the size of the set during the construction of the search tree process for the information set decoding algorithm to be evaluated, the calculation is performed to find the appropriate error vector each time. The time cost of the binary tree is used as the complexity of the search tree construction. ;
[0014] The set found using the binary tree contains a suitable error vector. The reciprocal of the probability, representing the expected number of times the error vector is found. ;
[0015] Based on the obtained processing complexity Gaussian elimination operation time overhead Search tree construction complexity And the expected number of times the error vector is found. The overall time complexity of the information set decoding algorithm to be evaluated for solving the checksum decoding problem is calculated. .
[0016] One or more embodiments provide an evaluation system for an improved information set decoding algorithm, comprising:
[0017] The acquisition module is configured to acquire the parameters of the checksum decoding problem and the optimization parameters of the information set decoding algorithm to be evaluated.
[0018] The first computation module is configured to estimate the expected number of iterations required by the information set decoding algorithm to solve the checksum decoding problem based on the obtained parameters using a combination formula, and use this as the processing complexity. ;
[0019] The second computation module is configured to perform Gaussian elimination on the parity-check matrix H in each iteration of the decoding algorithm for the information set to be evaluated, and to calculate the time cost of the Gaussian elimination operation. ;
[0020] The third computation module is configured to calculate the set size during the construction of the search tree based on the information set decoding algorithm to be evaluated, and to calculate the appropriate error vector used each time. The time cost of the binary tree is used as the complexity of the search tree construction. ;
[0021] The fourth computation module is configured to find a set containing appropriate error vectors based on a binary tree. The reciprocal of the probability, representing the expected number of times the error vector is found. ;
[0022] The complexity evaluation module is configured to evaluate the processing complexity based on the obtained complexity. Gaussian elimination operation time overhead Search tree construction complexity And the expected number of times the error vector is found. The overall time complexity of the information set decoding algorithm to be evaluated for solving the checksum decoding problem is calculated. .
[0023] An electronic device includes a memory and a processor, as well as computer instructions stored in the memory and running on the processor, wherein the computer instructions, when executed by the processor, perform the steps in the evaluation method for the improved information set decoding algorithm described above.
[0024] A computer-readable storage medium for storing computer instructions, which, when executed by a processor, perform the steps in the evaluation method for the improved information set decoding algorithm described above.
[0025] Compared with the prior art, the beneficial effects of this disclosure are as follows:
[0026] The evaluation method disclosed herein effectively improves the evaluation accuracy of information set decoding algorithms, especially complex BJMM-type algorithms. By refining the complexity into multiple parts and analyzing them one by one, it not only avoids the problem of inaccurate matching probability modeling in traditional evaluation tools, but also improves the accuracy of calculating the expected number of matches by introducing the reciprocal of the matching probability and the modeling method. This method helps to more scientifically evaluate the security level of coding-based cryptosystems, prevent parameters from being too weak or too strong, and optimize the balance between key length and system efficiency. In addition, by modeling two-layer tree and three-layer tree BJMM algorithms separately, it provides adaptive complexity evaluation support for ISD variants with different structures, enhancing the applicability and practical value of the evaluation tool.
[0027] The advantages of this disclosure, as well as its additional advantages, will be described in detail in the following specific embodiments. Attached Figure Description
[0028] The accompanying drawings, which form part of this disclosure, are used to provide a further understanding of this disclosure. The illustrative embodiments of this disclosure and their descriptions are used to explain this disclosure and do not constitute a limitation thereof.
[0029] Figure 1 This is a flowchart of the evaluation method of Embodiment 1 of this disclosure;
[0030] Figure 2 This is a schematic diagram of the binary tree structure of the two-layer tree BJMM in Embodiment 1 of this disclosure;
[0031] Figure 3 This is a schematic diagram of the binary tree structure of the three-layer tree BJMM in Embodiment 1 of this disclosure. Detailed Implementation
[0032] The present disclosure will be further described below with reference to the accompanying drawings and embodiments.
[0033] It should be noted that the following detailed descriptions are exemplary and intended to provide further illustration of this disclosure. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure pertains.
[0034] It should be noted that the terminology used herein is for descriptive purposes only and is not intended to limit the exemplary embodiments according to this disclosure. As used herein, the singular form is intended to include the plural form as well, unless the context clearly indicates otherwise. Furthermore, it should be understood that when the terms "comprising" and / or "including" are used in this specification, they indicate the presence of features, steps, operations, devices, components, and / or combinations thereof. It should be noted that, without conflict, the various embodiments and features within those embodiments can be combined with each other. The embodiments will now be described in detail with reference to the accompanying drawings.
[0035] Example 1
[0036] The checksum decoding problem is: given an integer Let the check matrix Given a parity-check matrix for a random linear code, a vector... This is a checksum. The checksum decoding problem is to find an error vector. satisfy ;
[0037] in, Indicates the codeword length. Indicates the length of the information bits. The Hamming weight represents the target error vector;
[0038] First, the steps of the BJMM algorithm are explained as follows:
[0039] The input to the BJMM algorithm is the parameters of the parser decoding problem. Optimize parameters Output the set of error vectors ;
[0040] in, Represents the error vector The dimension of the linear constraints satisfied; Represents the error vector Half the weight of Hamming; The dimension of the linear constraint satisfied by the vectors in the set represented by the second-to-last level node of the tree; The Hamming weight represents half the vector in the set represented by the second-to-last level node of the tree; in a three-level tree BJMM, The dimension of the linear constraint satisfied by the vectors in the set represented by the third-to-last node of the tree; in a three-level tree BJMM, This represents half the Hamming weight of the vectors in the set represented by the third-to-last node of the tree.
[0041] In this embodiment, the counting order of the tree structure is from the root node to the leaf node, where the root node is the first level and the leaf node is the last level.
[0042] The optimization parameters are adjustable strategy parameters introduced within the BJMM algorithm to reduce search complexity. They are used to control the structure of the search tree (such as two or three levels), the structural constraints of the merging vectors, and the target Hamming weight. As a solver, the BJMM algorithm introduces a set of adjustable optimization parameters in order to find the solution efficiently. These parameters do not affect the parser decoding problem itself, but they greatly affect the algorithm's running efficiency and success rate.
[0043] Step 1: Permutate and simplify the matrix form of the SDP problem:
[0044] The original parity-check matrix Right-multiply by a random column permutation matrix ,get:
[0045] ;
[0046] For the obtained matrix By using Gaussian elimination, the matrix is divided into four sub-matrices: the lower right one is... The Void Square is an identity matrix, with the upper right corner being... The submatrix is an all-zero matrix, and the lower left corner is the defined submatrix. Submatrix is The top left corner is the definition. Submatrix is ;
[0047] The second step is to construct a search tree and find the error vectors that meet the conditions.
[0048] Construct intermediate error vectors in the search tree that satisfy the following conditions. :
[0049] ;
[0050] For error vectors that satisfy the above conditions Determine if there are any error vectors that satisfy the following conditions:
[0051] ;
[0052] If so, output the corresponding ( If not, return to step one and re-permutate the matrix.
[0053] The above describes the process of using the BJMM algorithm to evaluate the SDP problem, calculating its time complexity, and thus adjusting the parameters of the cryptographic system to improve its performance while maintaining security. This embodiment addresses the problem of inaccurate complexity evaluation of the BJMM algorithm in currently widely used checksum decoder evaluators. This embodiment provides an improved evaluation method for information set decoding algorithms, which can more accurately evaluate the time complexity of the BJMM algorithm.
[0054] In one or more of the technical solutions disclosed in the embodiments, such as Figures 1 to 3 As shown, an evaluation method for an improved information set decoding algorithm includes the following steps:
[0055] Step 1: Obtain the parameters of the checksum decoding problem (SDP) and the optimization parameters of the information set decoding algorithm to be evaluated;
[0056] Step 2: Based on the obtained parameters, use the combination formula to estimate the expected number of iterations required for the information set decoding algorithm to solve the checksum decoding problem (SDP), and use this as the processing complexity. ;
[0057] Step 3: Perform Gaussian elimination on the parity-check matrix H in each iteration of the decoding algorithm for the information set to be evaluated, and calculate the time cost of the Gaussian elimination operation. ;
[0058] Step 4: Calculate the set size during the construction of the search tree process based on the information set decoding algorithm to be evaluated, and calculate the appropriate error vector used each time to find the appropriate error vector. The time cost of the binary tree is used as the complexity of the search tree construction. ;
[0059] Step 5: The set found based on the binary tree contains suitable error vectors. The reciprocal of the probability, representing the expected number of times the error vector is found. ;
[0060] Step 6: Based on the obtained processing complexity Gaussian elimination operation time overhead Search tree construction complexity And the expected number of times the error vector is found. The overall time complexity of the information set decoding algorithm to be evaluated for solving the checksum decoding problem is calculated. ;
[0061] The evaluation method in this implementation focuses on the detailed modeling and calculation of the complexity of information set decoding algorithms (especially variants such as BJMM) in solving the checksum decoding problem (SDP). First, by obtaining the parameters of the SDP problem (such as code length, code rate, target weight, etc.) and the optimization parameters of the algorithm to be evaluated (such as the number of intermediate layers, set size configuration, etc.), the search space size and number of iterations are estimated using the combinatorial formula. Furthermore, in each iteration, the algorithm typically needs to perform Gaussian elimination on the checksum matrix H to update the intermediate state; the specific time cost of this linear operation is calculated. Second, during the search process, algorithms such as BJMM organize the candidate error vector set by constructing a hierarchical binary tree. This step calculates the time required to construct this search tree and evaluates it based on the number of tree layers and the size of each layer's set. Simultaneously, by modeling the matching probability of the correct error vector in the binary tree search and taking the reciprocal of this probability, the expected number of attempts required to find a feasible error vector in the entire search is estimated. Finally, by combining the costs of each part, namely processing complexity, Gaussian elimination time, search tree construction complexity, and expected number of matches, the overall time complexity of the algorithm for solving SDP under the current parameter configuration can be obtained, thus achieving accurate quantification of the algorithm's performance.
[0062] This embodiment of the evaluation method effectively improves the evaluation accuracy of information set decoding algorithms, especially complex BJMM-type algorithms. By refining the complexity into multiple parts and analyzing them one by one, a multi-layer evaluation framework is constructed, including the expected number of iterations, the overhead of the structured search process, and the probability of candidate solutions. This not only avoids the problem of inaccurate matching probability modeling in traditional evaluation tools, but also improves the accuracy of the expected number of matches by introducing a modeling method based on the reciprocal of the matching probability, realizing a success rate back-calculation mechanism based on tree construction. This effectively improves the estimation accuracy of algorithm time complexity and overcomes the technical defects of existing tools, such as large errors and overly optimistic estimations. This method helps to more scientifically evaluate the security level of coding-based cryptographic systems, prevent parameter configuration from being too weak or too strong, and optimize the balance between key length and system efficiency. In addition, by modeling two-layer tree and three-layer tree BJMM algorithms respectively, adaptive complexity evaluation support is provided for ISD variants with different structures, enhancing the applicability and practical value of the evaluation tool.
[0063] Step 1: Obtain the parameters of the checksum decoding problem (SDP) and the optimization parameters of the information set decoding algorithm to be evaluated;
[0064] Specifically, in this embodiment, basic parameters, including codeword length, are obtained from a given checksum decoding problem (SDP). Information bit length and the Hamming weight of the target error vector ;
[0065] In this embodiment, the information set decoding algorithm to be evaluated is the BJMM algorithm, and the optimization parameters of the BJMM algorithm are obtained. i = 1 or 2;
[0066] in, This represents the size of the block in Gaussian elimination; Represents the error vector The dimension of the linear constraints satisfied; Represents the error vector Half the weight of Hamming; The dimension of the linear constraint satisfied by the vectors in the set represented by the second-to-last level node of the tree; The Hamming weight represents half the vector in the set represented by the second-to-last level node of the tree; in a three-level tree BJMM, The dimension of the linear constraint satisfied by the vectors in the set represented by the third-to-last node of the tree; in a three-level tree BJMM, This represents half the Hamming weight of the vectors in the set represented by the third-to-last node of the tree.
[0067] Step 2: Based on the obtained parameters, use the combination formula to estimate the expected number of iterations required for the information set decoding algorithm to solve the checksum decoding problem (SDP), and use this as the processing complexity. The calculation formula is as follows:
[0068] ;
[0069] in, express Take from each coordinate position The number of combinations of , express Take from the coordinate position The number of combinations of ; Indicates from Select from coordinate positions The square of the number of combinations of coordinates;
[0070] Optionally, for the BJMM algorithm, the processing steps of the BJMM algorithm include matrix permutation, Gaussian elimination, and other processing steps;
[0071] Step 3: For each iteration of the information set decoding algorithm to be evaluated, perform Gaussian elimination on the parity-check matrix H, calculate the multiplication cost between blocks of the parity-check matrix H, the cost of enumerating column combinations, and the processing cost of the remaining uneliminated rows, and obtain the time overhead of the Gaussian elimination operation. ;
[0072] ;
[0073] in, This means that a single Gaussian elimination is performed to obtain... Time expenditure, This indicates a round-down operation;
[0074] This represents the multiplication cost between blocks of the parity check matrix H;
[0075] Represents the cost of combining enumerated columns;
[0076] This represents the processing cost of the remaining unspent rows;
[0077] Indicates the number of iterations;
[0078] This represents the size of the block in Gaussian elimination;
[0079] In Information Set Decoding (ISD) algorithms, Gaussian elimination, as a preprocessing step in each decoding iteration, has a relatively low computational cost per operation compared to subsequent search tree operations. However, with large-scale parameters (such as BIKE and McEliece recommendation parameters), its cumulative number of operations is enormous, thus having a significant impact on overall efficiency. In this embodiment, the time cost of Gaussian elimination is structurally modeled and quantitatively estimated, and the matrix preprocessing step is decomposed independently, making the complexity assessment more granular and targeted.
[0080] Step 4: Calculate the set size during the construction of the search tree process based on the information set decoding algorithm to be evaluated, and calculate the appropriate error vector used each time to find the appropriate error vector. The time cost of the binary tree is used as the complexity of the search tree construction. ;
[0081] The set used in constructing the search tree includes the original set of vectors and the intermediate set of vectors obtained by merging intermediate vectors.
[0082] For the BJMM algorithm, calculate the complexity of searching tree construction. The calculations are as follows for two-level and three-level BJMM trees:
[0083] In the first case, a two-level tree BJMM, the calculation formula is:
[0084] ;
[0085] ;
[0086] ;
[0087] in, The size of the set of original vectors required to represent the nodes of the penultimate level of the tree; This represents the size of the second-to-last layer of vectors obtained by merging from the last layer of the tree; This represents the total dimension of the linear constraint; The dimension of the linear constraint satisfied by the vectors in the set represented by the second-to-last level node of the tree; This indicates the dimension in which the remaining linear condition needs to be verified during the penultimate level merging of the tree;
[0088] Indicates from Select from coordinate positions The number of combinations of coordinates;
[0089] In the second case, the three-level tree BJMM, the calculation formula is:
[0090] ;
[0091] ;
[0092] in, The dimension of the linear constraint satisfied by the vectors in the set represented by the second-to-last level node of the tree; The dimension of the linear constraint satisfied by the vectors in the set represented by the third-to-last node of the tree; This represents the size of the vector set at the third-to-last level, obtained by merging from the second-to-last level of the tree.
[0093] Indicates from Select from coordinate positions The number of combinations of coordinates;
[0094] In existing technologies, the complexity evaluation models for constructing multi-level search trees in BJMMs do not adequately characterize the computational resources required for steps such as tree node generation and vector merging, resulting in a significant discrepancy between the actual computational cost and the actual overhead. This embodiment explicitly distinguishes the calculation formulas and probabilistic analysis methods for two-level and three-level tree BJMMs. Different calculation methods for the number of combinations and set size are proposed for different tree structures, improving the targeting of algorithm evaluation. The merging cost of each level of the tree structure is clearly defined, allowing for dynamic selection of two- or three-level structures based on target parameters to balance performance and resources. Considering the impact of set size and constraint dimensions, this method uses a more accurate formula for three-level tree BJMMs. The value was estimated, improving the inaccurate estimation of the search tree construction process by traditional ISD evaluation tools, and enhancing the accuracy and practicality of the evaluation of the time and space complexity of the BJMM algorithm.
[0095] Step 5: The set found based on the binary tree contains suitable error vectors. The reciprocal of the probability, representing the expected number of times the error vector is found. ,Right now This indicates that the set found using the binary tree contains error vectors. The expected number of times;
[0096] The set found by the binary tree refers to the vector set generated by merging and linearly filtering intermediate sets at different levels in the information set decoding algorithm, through the construction of a binary search tree (or multi-level search tree). This set contains, with a certain probability, erroneous vectors that satisfy the target constraints. ;
[0097] Unlike the "checker decoder evaluator", this embodiment uses a binary tree to find a set containing suitable... The reciprocal of probability as .
[0098] For two-layer and three-layer BJMM trees respectively, what is the expected number of times the error vector is found? The value is calculated as follows:
[0099] In the first case, a two-level tree BJMM, the calculation formula is:
[0100] ;
[0101] In the second case, the three-level tree BJMM, the calculation formula is:
[0102] ;
[0103] ;
[0104] in, Represents the natural base of Power;
[0105] Regarding the process of selecting target vectors that satisfy SDP constraints from a tree, current estimation methods are based on asymptotic probability models, ignoring the actual probabilities of the specific construction, which can easily lead to errors in decoding success rate estimation. This embodiment uses a binary tree to find a set containing suitable... The reciprocal of the probability, as a way to evaluate the expected number of times the error vector is found, can more accurately reflect the actual probability that the solution is contained after merging multiple intermediate sets in the search tree structure, thereby improving the accuracy of the expected value estimation.
[0106] Step 6: Based on the obtained processing complexity Gaussian elimination operation time overhead Search tree construction complexity And the expected number of times the error vector is found. Calculate the overall time complexity ;
[0107] Specifically, calculate the overall time complexity. And determine if it is less than the current record. If so, record and update. And the corresponding optimization parameters. Overall time complexity. The calculation formula is:
[0108] ;
[0109] In this embodiment, by traversing different optimization parameters (such as the number of binary tree levels), the optimal parameter combination is continuously compared and updated, ultimately yielding a more accurate and optimized complexity evaluation value. The original coarse evaluation model has been improved into a precise time complexity evaluation method obtained through accurate probability analysis, tree level differentiation, and parameter optimization, avoiding underestimation of the complexity of the BJMM algorithm.
[0110] Furthermore, based on time complexity Furthermore, the security strength of the coding-based cryptosystem can be evaluated, and the corresponding security parameters of the coding-based cryptosystem can be adjusted according to the security strength to improve the system's security and operational performance; among these security parameters are parameters such as key length and error weight.
[0111] This embodiment employs a more refined time complexity decomposition and probabilistic analysis to progressively calculate the time overhead of different parts of the BJMM algorithm's operation under two- or three-layer tree structures. This results in a more accurate complexity estimate than existing evaluators, enabling a more precise analysis of the security strength of code-based cryptosystems. Accurate evaluation of the results and precise estimation of the BJMM algorithm's solution efficiency allow for the setting of appropriate parameters such as key length and error weights in code-based cryptosystems, ultimately improving the overall security of the cryptosystem.
[0112] Example 2
[0113] Based on Embodiment 1, this embodiment provides an evaluation system for an improved information set decoding algorithm, comprising:
[0114] The acquisition module is configured to acquire the parameters of the checksum decoding problem and the optimization parameters of the information set decoding algorithm to be evaluated.
[0115] The first computation module is configured to estimate the expected number of iterations required by the information set decoding algorithm to solve the checksum decoding problem based on the obtained parameters using a combination formula, and use this as the processing complexity. ;
[0116] The second computation module is configured to perform Gaussian elimination on the parity-check matrix H in each iteration of the decoding algorithm for the information set to be evaluated, and to calculate the time cost of the Gaussian elimination operation. ;
[0117] The third computation module is configured to calculate the set size during the construction of the search tree based on the information set decoding algorithm to be evaluated, and to calculate the appropriate error vector used each time. The time cost of the binary tree is used as the complexity of the search tree construction. ;
[0118] The fourth computation module is configured to find a set containing appropriate error vectors based on a binary tree. The reciprocal of the probability, representing the expected number of times the error vector is found. ;
[0119] The complexity evaluation module is configured to evaluate the processing complexity based on the obtained complexity. Gaussian elimination operation time overhead Search tree construction complexity And the expected number of times the error vector is found. The overall time complexity of the information set decoding algorithm to be evaluated for solving the checksum decoding problem is calculated. .
[0120] It should be noted that each module in this embodiment corresponds one-to-one with each step in embodiment 1, and their specific implementation process is the same, so it will not be repeated here.
[0121] Example 3
[0122] This embodiment provides an electronic device, including a memory and a processor, as well as computer instructions stored in the memory and running on the processor. When the processor executes the computer instructions, it completes the steps in the evaluation method of an improved information set decoding algorithm of Embodiment 1.
[0123] Example 4
[0124] This embodiment provides a computer-readable storage medium for storing computer instructions, which, when executed by a processor, complete the steps in the evaluation method of an improved information set decoding algorithm of Embodiment 1.
[0125] The above description is merely a preferred embodiment of this disclosure and is not intended to limit this disclosure. Various modifications and variations can be made to this disclosure by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this disclosure should be included within the scope of protection of this disclosure.
[0126] While the specific embodiments of this disclosure have been described above in conjunction with the accompanying drawings, this is not intended to limit the scope of protection of this disclosure. Those skilled in the art should understand that various modifications or variations that can be made by those skilled in the art without creative effort based on the technical solutions of this disclosure are still within the scope of protection of this disclosure.
Claims
1. An evaluation method for an improved information set decoding algorithm, characterized in that, Includes the following steps: Obtain the parameters of the parity decoding problem, and obtain the optimization parameters of the information set decoding algorithm to be evaluated; Based on the obtained parameters, the combination formula is used to estimate the expected number of iterations required for the information set decoding algorithm to solve the checksum decoding problem, which is then used as the processing complexity. ; For each iteration of the information set decoding algorithm to be evaluated, Gaussian elimination is performed on the parity-check matrix H. The time cost of the Gaussian elimination operation is calculated. ; For each iteration of the information set decoding algorithm to be evaluated, Gaussian elimination is performed on the parity-check matrix H. The multiplication cost between blocks of the parity-check matrix H, the cost of enumerating column combinations, and the processing cost of the remaining uneliminated rows are calculated to obtain the time overhead of the Gaussian elimination operation. ; ; in, This means that a single Gaussian elimination is performed to obtain... Time expenditure, This indicates a round-down operation; This represents the multiplication cost between blocks of the parity check matrix H; Represents the cost of combining enumerated columns; This represents the processing cost of the remaining unspent rows; Indicates the number of iterations; This represents the size of the block in Gaussian elimination; The original parity-check matrix Right-multiply by a random column permutation matrix ,get: ; Based on the size of the set during the construction of the search tree process for the information set decoding algorithm to be evaluated, the calculation is performed to find the appropriate error vector each time. The time cost of the binary tree is used as the complexity of the search tree construction. For the BJMM algorithm, calculate the complexity of searching tree construction. The calculations are as follows for two-level and three-level BJMM trees: The formula for calculating a two-level tree BJMM is: ; ; ; in, The size of the set of original vectors required to represent the nodes of the penultimate level of the tree; This represents the size of the second-to-last layer of vectors obtained by merging from the last layer of the tree; This represents the total dimension of the linear constraint; The dimension of the linear constraint satisfied by the vectors in the set represented by the second-to-last level node of the tree; This indicates the dimension in which the remaining linear condition needs to be verified during the penultimate level merging of the tree; Indicates from Select from coordinate positions The number of combinations of coordinates; The formula for calculating a three-layer tree BJMM is: ; ; in, The dimension of the linear constraint satisfied by the vectors in the set represented by the third-to-last node of the tree; This represents the size of the vector set at the third-to-last level, obtained by merging from the second-to-last level of the tree. Indicates from Select from coordinate positions The number of combinations of coordinates; The set found using the binary tree contains a suitable error vector. The reciprocal of the probability, representing the expected number of times the error vector is found. ; Expected number of times the error vector is found The value is calculated as follows: For a two-level tree BJMM, the calculation formula is: ; For a three-level tree BJMM, the calculation formula is: ; ; in, Represents the natural base of Power; Indicates from Take from each coordinate position The number of combinations of ; Indicates from Take from each coordinate position The number of combinations of ; This represents the number of combinations of p2 / 2 coordinates from p2 coordinate positions; Indicates from Take from each coordinate position The number of combinations of ; The dimension of the linear constraints satisfied by the vectors in the set represented by the second-to-last node of the BJMM algorithm's construction tree; Represents the error vector Half the weight of Hamming; The Hamming weight represents half of the vectors in the set represented by the second-to-last node of the tree; Indicates the length of information bits; in a three-level tree BJMM, The dimension of the linear constraint satisfied by the vectors in the set represented by the third-to-last node of the tree; in a three-level tree BJMM, The Hamming weight represents half of the vectors in the set represented by the third-to-last node of the tree; Based on the obtained processing complexity Gaussian elimination operation time overhead Search tree construction complexity And the expected number of times the error vector is found. The overall time complexity of the information set decoding algorithm to be evaluated for solving the checksum decoding problem is calculated. ; Overall time complexity The calculation formula is: 。 2. The evaluation method for the improved information set decoding algorithm as described in claim 1, characterized in that: Based on time complexity Then, the security strength of the encoding-based cryptosystem is assessed, and the corresponding security parameters of the encoding-based cryptosystem are adjusted according to the security strength.
3. The evaluation method for the improved information set decoding algorithm as described in claim 1, characterized in that: The set used in constructing the search tree includes the original set of vectors and the intermediate set of vectors obtained by merging intermediate vectors.
4. An evaluation system for an improved information set decoding algorithm, characterized in that, include: The acquisition module is configured to acquire the parameters of the checksum decoding problem and the optimization parameters of the information set decoding algorithm to be evaluated. The first computation module is configured to estimate the expected number of iterations required by the information set decoding algorithm to solve the checksum decoding problem based on the obtained parameters using a combination formula, and use this as the processing complexity. ; The second computation module is configured to perform Gaussian elimination on the parity-check matrix H in each iteration of the decoding algorithm for the information set to be evaluated, and to calculate the time cost of the Gaussian elimination operation. ; For each iteration of the information set decoding algorithm to be evaluated, Gaussian elimination is performed on the parity-check matrix H. The multiplication cost between blocks of the parity-check matrix H, the cost of enumerating column combinations, and the processing cost of the remaining uneliminated rows are calculated to obtain the time overhead of the Gaussian elimination operation. ; ; in, This means that a single Gaussian elimination is performed to obtain... Time expenditure, This indicates a round-down operation; This represents the multiplication cost between blocks of the parity check matrix H; Represents the cost of combining enumerated columns; This represents the processing cost of the remaining unspent rows; Indicates the number of iterations; This represents the size of the block in Gaussian elimination; The original parity-check matrix Right-multiply by a random column permutation matrix ,get: ; The third computation module is configured to calculate the set size during the construction of the search tree based on the information set decoding algorithm to be evaluated, and to calculate the appropriate error vector used each time. The time cost of the binary tree is used as the complexity of the search tree construction. ; For the BJMM algorithm, calculate the complexity of searching tree construction. The calculations are as follows for two-level and three-level BJMM trees: The formula for calculating a two-level tree BJMM is: ; ; ; in, The size of the set of original vectors required to represent the nodes of the penultimate level of the tree; This represents the size of the second-to-last layer of vectors obtained by merging from the last layer of the tree; This represents the total dimension of the linear constraint; The dimension of the linear constraint satisfied by the vectors in the set represented by the second-to-last level node of the tree; This indicates the dimension in which the remaining linear condition needs to be verified during the penultimate level merging of the tree; Indicates from Select from coordinate positions The number of combinations of coordinates; The formula for calculating a three-layer tree BJMM is: ; ; in, The dimension of the linear constraint satisfied by the vectors in the set represented by the third-to-last node of the tree; This represents the size of the vector set at the third-to-last level, obtained by merging from the second-to-last level of the tree. Indicates from Select from coordinate positions The number of combinations of coordinates; The fourth computation module is configured to find a set containing appropriate error vectors based on a binary tree. The reciprocal of the probability, representing the expected number of times the error vector is found. ; Expected number of times the error vector is found The value is calculated as follows: For a two-level tree BJMM, the calculation formula is: ; For a three-level tree BJMM, the calculation formula is: ; ; in, Represents the natural base of Power; Indicates from Take from each coordinate position The number of combinations of ; Indicates from Take from each coordinate position The number of combinations of ; This represents the number of combinations of p2 / 2 coordinates from p2 coordinate positions; Indicates from Take from each coordinate position The number of combinations of ; The dimension of the linear constraints satisfied by the vectors in the set represented by the second-to-last node of the BJMM algorithm's construction tree; Represents the error vector Half the weight of Hamming; The Hamming weight represents half of the vectors in the set represented by the second-to-last node of the tree; Indicates the length of information bits; in a three-level tree BJMM, The dimension of the linear constraint satisfied by the vectors in the set represented by the third-to-last node of the tree; in a three-level tree BJMM, The Hamming weight represents half of the vectors in the set represented by the third-to-last node of the tree; The complexity evaluation module is configured to evaluate the processing complexity based on the obtained complexity. Gaussian elimination operation time overhead Search tree construction complexity And the expected number of times the error vector is found. The overall time complexity of the information set decoding algorithm to be evaluated for solving the checksum decoding problem is calculated. ; Overall time complexity The calculation formula is: 。 5. An electronic device, characterized in that, It includes a memory and a processor, as well as computer instructions stored in the memory and running on the processor, which, when executed by the processor, perform the steps in the evaluation method of an improved information set decoding algorithm as described in any one of claims 1-3.
6. A computer-readable storage medium, characterized in that, Used to store computer instructions, which, when executed by a processor, complete the steps in the evaluation method of an improved information set decoding algorithm as described in any one of claims 1-3.
Citation Information
Patent Citations
Decoding method and system with precomputation
CN115225206A
Information set decoding method, device and equipment based on weight distribution change
CN117914330A