A cryptographic component construction method based on Boolean function, cryptographic component and medium
By constructing a Boolean function that satisfies the perfect balance of weights, algebraic immune optimization and rotational symmetry, the security and evaluation problems of Boolean functions in the prior art are solved, and the security and complexity of the cryptographic system are improved.
Patent Information
- Application Number
- CN202410195837.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-02-22
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2044-02-22
AI Technical Summary
Existing Boolean functions have problems such as uneven output distribution, susceptibility to algebraic attacks, lack of rotational symmetry, and difficulty in evaluating security in cryptography, which affects the security and complexity of the cryptographic system.
A cryptographic component based on Boolean functions is constructed. By configuring the initial parameters, the initial Boolean function is constructed, and the parameters are adjusted through iterative verification to satisfy the verification rules of perfect weight balance, algebraic immune optimization, rotational symmetry and high nonlinearity, forming the final Boolean function.
It improves the security of cryptographic components, enhances resistance to algebraic attacks, differential attacks, and linear attacks, provides more reliable security assessments, and improves the overall security and complexity of the cryptographic system.
Smart Images

Figure CN118118159B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of cryptography, and in particular to a Boolean function-based cryptographic component construction method, a cryptographic component, and a medium. Background Art
[0002] A cryptographic component refers to an S-box in cryptography, which performs substitution operations by mapping input bits to output bits. In cryptography, Boolean functions are widely used in the design of core encryption algorithms such as block and stream ciphers. Well-designed Boolean functions can improve the security of cryptographic components.
[0003] Existing technology, such as the patent publication (CN104486066A), discloses a method for constructing a Boolean function. Using this function construction method in cryptographic algorithms can improve the algorithm's ability to resist linear attacks, correlation attacks, and algebraic attacks, thereby increasing the algorithm's security strength and providing a Boolean function component with good cryptographic indicators for sequence ciphers.
[0004] However, the above existing technologies have several disadvantages:
[0005] 1. The aforementioned prior art Boolean functions may exhibit skewness, resulting in an uneven distribution of outputs, potentially favoring certain output values. This arises from the uneven distribution of 0s and 1s within the function, which makes the Boolean function more likely to produce a specific output under certain input conditions. This imbalance can be detrimental to certain applications, such as security in cryptography and complexity and energy efficiency in digital circuit design.
[0006] 2. The Boolean function of the above-mentioned prior art is easily affected by algebraic attacks, which is a method of using the algebraic representation of a Boolean function to discover its weaknesses, because the Boolean function of the above-mentioned prior art is not an algebraically immune optimal Boolean function.
[0007] 3. These existing functions are more vulnerable to certain types of attacks, such as differential attacks and linear attacks. Rotational symmetry states that when the input bits are rotated in a certain way, the output of a Boolean function also rotates in the same way. This property is crucial in cryptography for resisting various types of analytical attacks. The lack of rotational symmetry in these existing functions may reveal weaknesses in specific directions, making the cryptographic system more vulnerable.
[0008] 4. The security of these existing functions is difficult to accurately assess in cryptographic and information security applications. p-weighted nonlinearity is a key metric for measuring a Boolean function's resistance to linear approximation; it indicates the complexity of the relationship between the function's output and input for linear approximation. These existing functions lack relevant calculations and proofs for p-weighted nonlinearity. This lack of clarity makes it difficult for designers and users to accurately understand the function's resistance to linear attacks, making it difficult to accurately assess its security in cryptographic systems. Summary of the Invention
[0009] The embodiments of the present invention provide a cryptographic component construction method based on Boolean functions, a cryptographic component, and a medium, which have the characteristics of perfect weight balance, optimal algebraic immunity, and rotational symmetry, while maintaining a high degree of nonlinearity, thereby improving the overall performance of the cryptographic component.
[0010] In a first aspect, an embodiment of the present invention provides a method for constructing a cryptographic component based on a Boolean function, comprising:
[0011] Configuring initial parameters of the cryptographic component; wherein the initial parameters include: the number of Boolean function variables, the Boolean function input vectors, and the Hamming weights corresponding to the input vectors;
[0012] constructing an initial Boolean function according to the initial parameters;
[0013] Iteratively verifying the initial Boolean function and adjusting the initial parameters at each iteration to update the initial Boolean function until the Boolean function at the current iteration simultaneously satisfies multiple verification rules, and outputting the Boolean function at the current iteration; wherein the multiple verification rules include: a weight perfect balance verification rule, an algebraic immunity left-right verification rule, a rotational symmetry verification rule, and a nonlinearity verification rule;
[0014] Construct the cryptographic component based on the output Boolean function.
[0015] The embodiment of the present invention first establishes initial parameters for a cryptographic component and constructs an initial Boolean function based on these initial parameters. The initial parameters and Boolean function are then updated through iterative verification, ensuring that the resulting Boolean function satisfies the weighted perfect balance verification rule, the algebraically immune left-right verification rule, the rotational symmetry verification rule, and the nonlinearity verification rule. The output Boolean function is then used to construct the corresponding cryptographic component. Compared to the shortcomings of the prior art, the embodiment of the present invention achieves the characteristics of perfect weight balance, algebraically immune optimization, and rotational symmetry, while maintaining a high degree of nonlinearity, thereby improving the overall performance of the cryptographic component.
[0016] As a preferred embodiment of this invention, the initial parameters of the password component are configured, specifically including:
[0017] Define the number of variables of the Boolean function as ,and ;
[0018] Define the Boolean function input vector as , and divide the Boolean function input vector into multiple subsets of equal length; wherein, is a 1-dimensional vector space over a binary field;
[0019] Define the Hamming weight corresponding to each input vector as ;in, is the input vector The Hamming weight of .
[0020] As a preferred embodiment of this invention, the Boolean function input vector is evenly divided into multiple subsets of equal length, specifically including:
[0021] Divide the Boolean function input vector into four subsets of equal length and obtain and ;in, For a binary domain dimensional vector space.
[0022] In this preferred embodiment, the vector is divided into different numbers as needed. When the number of the divided subsets is 4, the best balance can be directly achieved between the time and space complexity and the nonlinearity, thereby improving the overall performance of the present invention.
[0023] As a preference of this embodiment, constructing an initial Boolean function according to the initial parameters specifically includes:
[0024] By calculation and , and using recursive definition Meta-initial Boolean function :
[0025]
[0026] Among them, when hour, ; For subset Hamming weight of ; For subset The Hamming weight of .
[0027] In this preferred example, constructing a Boolean function using this preferred method can improve the algorithm's ability to resist algebraic attacks, differential attacks, and best affine approximation attacks, thereby increasing the algorithm's security strength. The method of the present invention enhances the overall security of cryptographic algorithm components and provides a Boolean function component with good cryptographic indicators for the cryptographic algorithm.
[0028] As a preference of this embodiment, the iterative verification of the initial Boolean function includes:
[0029] Verify whether the initial Boolean function satisfies the weight perfect balance verification rule, specifically:
[0030] when When is an odd number, calculate the initial Boolean function of ;
[0031] when When is an even number, calculate the initial Boolean function of ;
[0032] Evaluate parameterized Boolean functions of ;
[0033] when and When the size of meets the preset weight perfect balance requirement, the initial Boolean function meets the weight perfect balance verification rule;
[0034] in, is a variable, is the k-weight support set of Boolean functions; The set of input vectors for the Boolean function k-weights.
[0035] In this preferred example, by verifying the perfect weight balance, it is ensured that 0 and 1 have a uniform distribution in the function output, reducing the tendency to generate specific outputs under specific input conditions, thereby enhancing resistance to skewness and improving the security of the cryptographic component.
[0036] As a preference of this embodiment, the iterative verification of the initial Boolean function includes:
[0037] Verify whether the initial Boolean function satisfies the algebraic immunity left and right verification rules, specifically:
[0038] verify ;
[0039] Verify that for any and have , if and only if Take the equal sign when
[0040] verify , ;
[0041] When all the above verifications are passed, it is determined that the initial Boolean function satisfies the algebraic immunity left-right verification rule;
[0042] in, for algebraic immunity;
[0043] for , defined as:
[0044] in, for The set of Boolean functions; express and The inner product of ;when hour, exist The above is algebraically immune optimal.
[0045] In this preferred example, the algebraic immunity optimal design is adopted, which can improve the resistance to algebraic attacks, help reduce the weaknesses of the function, and improve the overall security of the cryptographic system.
[0046] As a preference of this embodiment, the iterative verification of the initial Boolean function includes:
[0047] Verify whether the initial Boolean function satisfies the rotational symmetry verification rules, specifically:
[0048] Let the input vector ;
[0049] Let the input vector ;
[0050] when When , it is determined that the initial Boolean function satisfies the rotational symmetry verification rule;
[0051] Among them, the parameter Boolean function .
[0052] In this preferred example, rotational symmetry is introduced so that when the input bits of the Boolean function rotate, the output also rotates accordingly, thereby enhancing the defense capability against specific types of attacks such as differential attacks and linear attacks, making the cryptographic system more robust.
[0053] As a preferred embodiment of this invention, the iterative verification of the initial Boolean function includes: the iterative verification of the initial Boolean function includes:
[0054] Verify whether the initial Boolean function meets the nonlinearity verification rules, specifically:
[0055] Nonlinearity Defined as:
[0056]
[0057] -Weight nonlinearity Defined as:
[0058]
[0059] when -When the weighted nonlinearity is greater than a preset critical value, determining that the initial Boolean function satisfies the nonlinearity verification rule;
[0060] in, is a Boolean function The nonlinearity, is a Boolean function k-weighted nonlinearity; is an n-bit Boolean vector; is the bitwise exclusive OR operator;
[0061] In this preferred example, emphasis is placed on calculating and proving the p-weighted nonlinearity to ensure that the designed Boolean function is highly resistant to linear attacks, providing a more reliable security assessment basis for cryptography and information security applications.
[0062] In a second aspect, an embodiment of the present invention provides a cryptographic component, which is constructed according to the Boolean function-based cryptographic component construction method described in an embodiment of the present invention.
[0063] In a third aspect, an embodiment of the present invention provides a computer-readable storage medium, which includes a stored computer program, wherein when the computer program is running, the device where the computer-readable storage medium is located is controlled to execute the Boolean function-based cryptographic component construction method as described in an embodiment of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0064] Figure 1 The figure is a flow chart of an embodiment of a method for constructing a cryptographic component based on a Boolean function provided by the present invention. DETAILED DESCRIPTION
[0065] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments of the present invention without making any creative efforts shall fall within the scope of protection of the present invention.
[0066] In order to better illustrate the embodiment of the present invention, the symbols used in this embodiment and their specific meanings are shown in the following Table 1:
[0067]
[0068] Table 1
[0069] See also Figure 1 , Figure 1 1 is a flow chart of an embodiment of a Boolean function-based cryptographic component construction method provided by the present invention. The method includes steps 101 to 104, each of which is as follows:
[0070] Step 101: Configuring initial parameters of the cryptographic component; wherein the initial parameters include: the number of Boolean function variables, Boolean function input vectors, and Hamming weights corresponding to each input vector.
[0071] In this embodiment, the initial parameters of the password component are configured, specifically including:
[0072] Define the number of variables of the Boolean function as ,and ;
[0073] Define the Boolean function input vector as , and divide the Boolean function input vector into multiple subsets of equal length; wherein, is a 1-dimensional vector space over a binary field;
[0074] Define the Hamming weight corresponding to each input vector as ;in, is the input vector The Hamming weight of .
[0075] In this embodiment, the Boolean function input vector is evenly divided into multiple subsets of equal length, specifically including: evenly dividing the Boolean function input vector into four subsets of equal length, obtaining and ;in, For a binary domain dimensional vector space.
[0076] In this embodiment, other partitioning methods exist for partitioning the input vector. However, using a large number of partitioning subsets, such as eight, increases the space-time complexity of the Boolean function computation. Using a small number of partitioning subsets, such as two, reduces the nonlinearity of the Boolean function. Experimental test results show that using four partitioning subsets achieves the optimal balance between space-time complexity and nonlinearity.
[0077] Step 102: construct an initial Boolean function according to the initial parameters.
[0078] In this embodiment, step 102 is specifically as follows: and , and using recursive definition Meta-initial Boolean function :
[0079]
[0080] Among them, when hour, ; For subset Hamming weight of ; For subset The Hamming weight of .
[0081] Step 103: Iteratively verify the initial Boolean function, and adjust the initial parameters in each iteration to update the initial Boolean function until the Boolean function in the current iteration satisfies multiple verification rules at the same time, and output the Boolean function of the current iteration; wherein the multiple verification rules include: a weight perfect balance verification rule, an algebraic immunity left-right verification rule, a rotational symmetry verification rule, and a nonlinearity verification rule.
[0082] To ensure that the Boolean function constructed in this embodiment achieves optimal algebraic immunity, perfectly balanced weights, high nonlinearity, and rotational symmetry, the function's parameters must be adjusted iteratively. The final Boolean function is output only after passing various verifications. Parameter adjustment methods include, but are not limited to, manual adjustment or adjustment based on preset rules.
[0083] In this embodiment, iteratively verifying the initial Boolean function includes: verifying whether the initial Boolean function satisfies the weight perfect balance verification rule. The verification is specifically:
[0084] when When is an odd number, calculate the initial Boolean function of ;
[0085] when When is an even number, calculate the initial Boolean function of ;
[0086] Evaluate parameterized Boolean functions of ;
[0087] when and When the size of meets the preset weight perfect balance requirement, the initial Boolean function meets the weight perfect balance verification rule;
[0088] in, is a variable, is the k-weight support set of Boolean functions; The set of input vectors for the Boolean function k-weights.
[0089] for , and define its support set as , define its input vector set as .when When It is weight balanced.
[0090] In this embodiment, weight balance is one of the important properties for evaluating the quality of Boolean functions in cryptography. It reflects the uniformity of the Boolean function's output values. The uniformity of a Boolean function's output affects its susceptibility to differential attacks and linear cryptanalysis domain non-uniform attacks. Therefore, weight balance reflects the Boolean function's resistance to these attacks. When a Boolean function is described as perfectly weighted, it indicates that its balance has reached an optimal value, resulting in the strongest resistance to differential attacks. The Boolean function constructed by this construction method has perfectly balanced weights, so it can be used to enhance the security strength of cryptographic components in cryptographic algorithms.
[0091] In this embodiment, iteratively verifying the initial Boolean function includes: verifying whether the initial Boolean function satisfies the algebraic immunity left-right verification rule. The verification is specifically:
[0092] verify ;
[0093] Verify that for any and have , if and only if When taking the equal sign;
[0094] verify , ;
[0095] When all the above verifications are passed, it is determined that the initial Boolean function satisfies the algebraic immunity left-right verification rule;
[0096] in, for algebraic immunity;
[0097] for , defined as: ;
[0098] in, for The set of Boolean functions; express and The inner product of ;when hour, exist The above is the algebraic immune optimal; a is an n-element vector used to adjust the Boolean function, and different a represents different Boolean functions.
[0099] In this embodiment, algebraic immunity is also one of the important properties for evaluating the quality of a Boolean function in cryptography. It reflects the minimum algebraic degree of its non-zero annihilators. The minimum algebraic degree of a Boolean function's non-zero annihilators affects its sensitivity to algebraic attacks. Therefore, algebraic immunity can reflect the Boolean function's resistance to algebraic attacks. A higher algebraic immunity indicates that the algebraic expression of the Boolean function lacks obvious patterns and structure, which means that it is difficult for attackers to establish valid algebraic equations, resulting in inefficient algebraic attacks. The Boolean function constructed by this construction method is optimally algebraically immune, indicating that the generated Boolean function has the strongest resistance to algebraic attacks. In this way, the construction method of the present invention can enhance the anti-attack capability of cryptographic algorithms and protect data security.
[0100] In this embodiment, iteratively verifying the initial Boolean function includes: verifying whether the initial Boolean function satisfies the rotational symmetry verification rule. The verification is specifically:
[0101] Let the input vector ;
[0102] Let the input vector ;
[0103] when When , it is determined that the initial Boolean function satisfies the rotational symmetry verification rule;
[0104] Among them, the parameter Boolean function , if exists , and exists , making ,in, ; for The set of all Boolean functions; mod is an operator, indicating modulo.
[0105] In this embodiment, for the Boolean function , if exists , and exists , making ,in ,have , then it is called is rotationally symmetric about k.
[0106] In this embodiment, iteratively verifying the initial Boolean function includes: verifying whether the initial Boolean function satisfies the nonlinearity verification rule. The verification is specifically:
[0107] Nonlinearity Defined as:
[0108]
[0109] -Weight nonlinearity Defined as:
[0110]
[0111] when -When the weighted nonlinearity is greater than a preset critical value, determining that the initial Boolean function satisfies the nonlinearity verification rule;
[0112] in, is a Boolean function The nonlinearity, is a Boolean function k-weighted nonlinearity; is an n-bit Boolean vector; is the bitwise exclusive OR operator;
[0113] In this embodiment, when the number of variables of the constructed Boolean function is 8, the calculation structure of its p-weighted nonlinearity is as follows:
[0114]
[0115] Table 2
[0116] Step 104: Construct a cryptographic component based on the output Boolean function.
[0117] In this embodiment, step 104 is a conventional technique and will not be described in detail here.
[0118] Accordingly, an embodiment of the present invention discloses a cryptographic component, which is constructed according to the above-mentioned Boolean function-based cryptographic component construction method.
[0119] As can be seen from the above, the embodiments of the present invention have the following beneficial effects:
[0120] 1. Perfectly balanced weights: Unlike existing Boolean functions, which can exhibit skewness, this invention focuses on achieving perfectly balanced weights, ensuring an even distribution of 0s and 1s in the output. This property helps reduce the tendency for specific inputs to produce specific outputs, improving cryptographic security. Existing Boolean functions can lack this balance and be susceptible to skewness.
[0121] Optimal Algebraic Immunity: This invention pursues optimal algebraic immunity for Boolean functions to improve their resistance to algebraic attacks. Compared to some existing Boolean functions, the Boolean functions designed in this invention are more robust in algebraic representation, reducing potential vulnerabilities. Existing Boolean functions may not fully consider the impact of algebraic attacks, resulting in relatively low security.
[0122] 3. Rotational Symmetry: Unlike existing Boolean functions that lack rotational symmetry, this invention incorporates rotational symmetry, ensuring that when the input bits of the function rotate, the output also rotates accordingly. This property helps enhance resistance to certain types of attacks (such as differential attacks and linear attacks), improving the overall security of the cryptographic system.
[0123] 4. Calculation of p-weighted nonlinearity: This paper focuses on calculating p-weighted nonlinearity, providing a clear indicator of resistance to linear attacks. Compared to existing techniques that lack the calculation and proof of p-weighted nonlinearity, this Boolean function can demonstrate its strength against linear attacks through explicit mathematical methods, improving the accuracy of security assessments.
[0124] In summary, the embodiments of the present invention have significant advantages in improving the security, resistance and evaluation credibility of Boolean functions. Compared with the existing technology, it provides a more comprehensive and reliable solution and provides Boolean function components with better cryptographic indicators for stream ciphers.
[0125] Accordingly, the present invention also provides a computer-readable storage medium, which includes a stored computer program, wherein when the computer program is running, the device where the computer-readable storage medium is located is controlled to execute the deep learning-based end-to-end Web attack detection method as described in an embodiment of the present invention.
[0126] Exemplarily, the computer program may be divided into one or more modules / units, which are stored in the memory and executed by the processor to implement the present invention. The one or more modules / units may be a series of computer program instruction segments capable of performing specific functions, and the instruction segments are used to describe the execution process of the computer program in the terminal device.
[0127] The terminal device may be a computing device such as a desktop computer, a notebook computer, a PDA, a cloud server, etc. The terminal device may include, but is not limited to, a processor and a memory.
[0128] The processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA), other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor. The processor is the control center of the terminal device and connects various parts of the entire terminal device using various interfaces and lines.
[0129] The memory can be used to store the computer programs and / or modules. The processor implements various functions of the terminal device by running or executing the computer programs and / or modules stored in the memory and calling the data stored in the memory. The memory may mainly include a program storage area and a data storage area. The program storage area may store an operating system, at least one application required for a function, etc.; the data storage area may store data created based on the use of the mobile terminal, etc. In addition, the memory may include high-speed random access memory and non-volatile memory, such as a hard disk, internal memory, a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, at least one disk storage device, a flash memory device, or other volatile solid-state storage device.
[0130] If the module / unit integrated into the terminal device is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present invention can also implement all or part of the process steps in the above-mentioned method embodiments by using a computer program to instruct the relevant hardware. The computer program can be stored in a computer-readable storage medium. When executed by a processor, the computer program can implement the steps of each of the above-mentioned method embodiments. The computer program includes computer program code, which can be in source code form, object code form, executable file, or some intermediate form. The computer-readable medium can include any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a mobile hard drive, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunications signal, and a software distribution medium.
[0131] As can be seen from the above, the embodiments of the present invention first establish initial parameters for the cryptographic component and construct an initial Boolean function using these initial parameters. The initial parameters and Boolean function are then updated through iterative verification, ensuring that the resulting Boolean function satisfies the weighted perfect balance verification rule, the algebraically immune left-right verification rule, the rotational symmetry verification rule, and the nonlinearity verification rule. The output Boolean function is then used to construct the corresponding cryptographic component. Compared to the shortcomings of the prior art, the embodiments of the present invention achieve the characteristics of weighted perfect balance, algebraically immune optimality, and rotational symmetry, while maintaining a high degree of nonlinearity, thereby improving the overall performance of the cryptographic component.
[0132] The above is a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications are also considered to be within the scope of protection of the present invention.
Claims
1. A method for constructing a cryptographic component based on a Boolean function, characterized in that: include: Configuring initial parameters of the cryptographic component; wherein the initial parameters include: the number of Boolean function variables, the Boolean function input vectors, and the Hamming weights corresponding to the input vectors; the initial parameters of the cryptographic component specifically include: Define the number of variables of the Boolean function as ,and ; Define the Boolean function input vector as , and divide the Boolean function input vector into multiple subsets of equal length; wherein, is a 1-dimensional vector space over a binary field; Define the Hamming weight corresponding to each input vector as ;in, is the input vector Hamming weight of ; The step of evenly dividing the Boolean function input vector into a plurality of subsets of equal length specifically includes: Divide the Boolean function input vector into four subsets of equal length and obtain and ;in, For a binary domain dimensional vector space; According to the initial parameters, a Boolean function is constructed, including: By calculation and , and using recursive definition Meta-Boolean function : in, , For subset Hamming weight of ; For subset Hamming weight of ; Iteratively verifying the Boolean function and adjusting the initial parameters at each iteration to update the Boolean function until the Boolean function at the current iteration simultaneously satisfies multiple verification rules, and outputting the Boolean function at the current iteration; wherein the multiple verification rules include: a weight perfect balance verification rule, an algebraic immunity left-right verification rule, a rotational symmetry verification rule, and a nonlinearity verification rule; Construct the cryptographic component based on the output Boolean function.
2. The Boolean function-based cryptographic component construction method according to claim 1, wherein: The iterative verification of the Boolean function comprises: Verify whether the Boolean function satisfies the weight perfect balance verification rules, specifically: when When is an odd number, calculate the Boolean function of ; when When is an even number, calculate the Boolean function of ; Evaluating Boolean functions of ; when and When the size of meets the preset weight perfect balance requirement, the Boolean function meets the weight perfect balance verification rule; in, is a variable, is the k-weight support set of Boolean functions; The set of input vectors for the Boolean function k-weights.
3. The Boolean function-based cryptographic component construction method according to claim 1, wherein: The iterative verification of the Boolean function comprises: Verify whether the Boolean function satisfies the rotational symmetry verification rules, specifically: Let the input vector ; Let the input vector ; when When , it is determined that the Boolean function satisfies the rotational symmetry verification rule; Among them, the Boolean function .
4. The Boolean function-based cryptographic component construction method according to claim 1, wherein: The iterative verification of the Boolean function comprises: Verify whether the Boolean function meets the nonlinearity verification rules, specifically: Nonlinearity Defined as: -Weight nonlinearity Defined as: when -When the weighted nonlinearity is greater than a preset critical value, determining that the Boolean function satisfies the nonlinearity verification rule; in, is a Boolean function The nonlinearity of is a Boolean function k-weighted nonlinearity; is an n-bit Boolean vector; is the bitwise exclusive OR operator.
5. A computer-readable storage medium, characterized in that The computer-readable storage medium includes a stored computer program, wherein when the computer program is executed, the device where the computer-readable storage medium is located is controlled to execute the Boolean function-based cryptographic component construction method according to any one of claims 1 to 4.
Citation Information
Patent Citations
Construction method of Boolean function and cryptographic component using Boolean function
CN104486066A
Boolean function algebraic frequency obtaining method and device for symmetric password design
CN110417732A