Chip key decryption method and chip defense method based on differential evolution algorithm

By using the differential evolution algorithm to initialize the chip entity population in parallel and combining it with an ensemble learning model, the problem that existing chip decryption methods are unable to accurately identify defense weaknesses is solved, and high-precision and efficient chip key decryption and security optimization are achieved.

CN120692003APending Publication Date: 2025-09-23HUAZHONG UNIV OF SCI & TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510844220.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-23
Publication Date
2025-09-23

AI Technical Summary

Technical Problem

Existing chip decryption methods are unable to accurately identify defense weaknesses, resulting in insufficient chip security.

Method used

The differential evolution algorithm is used to treat the locked chip to be decrypted as multiple entities. The population and input vector corresponding to each entity are initialized in parallel. The optimal key combination is found through difference calculation, and an ensemble learning model is constructed for key decryption.

Benefits of technology

Significantly shorten the key search space traversal time, improve decryption precision and accuracy, and achieve efficient and low-cost chip security optimization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120692003A_ABST
    Figure CN120692003A_ABST
Patent Text Reader

Abstract

The invention discloses a chip key decryption method and a chip defense method based on a differential evolution algorithm, and belongs to the technical field of chip security defens.The chip key decryption method comprises the steps that a to-be-decrypted locked chip is regarded as a plurality of entities, and a population and an input vector corresponding to each entity are initialized in parallel; each locked entity of the chip is regarded as an independent unit to be initialized in parallel, so that a multi-core processor / distributed computing resource can be fully utilized, and the key search space traversal time is remarkably shortened. Based on the difference between the first output value and the second output value corresponding to each entity, finding out an optimal key combination corresponding to each entity; according to the method, the optimal keys of all entities are combined to form the optimal key set of the to-be-decrypted locking chip, and finally the optimal key set is integrated to determine the value of each bit in the final key decryption result, so that the result of the optimal key set can be subjected to fine-grained integration, and high-precision and high-accuracy decryption is realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of hardware security defense technology, and more specifically, relates to a chip key decryption method and a chip defense method based on a differential evolution algorithm. Background Art

[0002] Logic lock technology is an advanced hardware security mechanism. Its core lies in embedding specific lock logic during the integrated circuit design phase to effectively prevent unauthorized access and reverse engineering. This technology implements key-controlled logic gates or modules within the chip, enabling precise control of chip functionality. Chip functions are activated only when the correct key is entered; otherwise, the chip remains inactive. Logic lock technology is primarily used in areas such as intellectual property protection, hardware tamper prevention, and enhanced chip security.

[0003] The dynamic relationship between logical locking defenses and decryption methods exists, and this adversarial interaction continues to drive advancements in high-security chip design. Taking decryption algorithms based on Boolean satisfiability (SAT) as an example, early research on logical locking defenses focused on optimizing key gate insertion strategies, including the selection of insertion locations and the design of key lengths. However, with the emergence of efficient decryption algorithms based on Boolean satisfiability, the security assumptions of traditional locking schemes have been radically overturned, exposing serious security risks. To address this challenge, a new generation of defenses against SAT attacks has emerged, such as functional stripping locking and true random locking, which have become one of the most cutting-edge research directions in hardware security. This dynamic evolution of attack and defense has significantly advanced the development of integrated circuit security technology.

[0004] In summary, existing chips have security risks, and it is necessary to use reverse methods based on decryption methods to find defense weaknesses and then improve or upgrade chip encryption. Summary of the Invention

[0005] In response to the above-mentioned defects or improvement needs of the existing technology, the present invention provides a chip key decryption method and a chip defense method based on a differential evolution algorithm, the purpose of which is to solve the technical problem that the existing chip decryption method cannot accurately identify defense weaknesses.

[0006] To achieve the above objectives, according to one aspect of the present invention, a chip key decryption method based on a differential evolution algorithm is provided, comprising:

[0007] S1: Treat the locked chip to be decrypted as multiple entities, and initialize the population and input vector corresponding to each entity in parallel; the population corresponds to multiple individuals, and each individual corresponds to a key;

[0008] S2: Input the input vector corresponding to each entity and each individual in the population into the locked chip to be decrypted for simulation, and obtain the first output value of each individual corresponding to each entity. lock ; Input the input vector corresponding to each of the entities into the key authorization chip for simulation, and obtain the second output value corresponding to each of the entities. oracle ;

[0009] S3: Based on the first output value corresponding to each of the entities lock With the second output value O oracle The optimal key combination corresponding to each entity is found based on the difference between the two entities; the optimal key combination of all the entities constitutes the optimal key set of the locked chip to be decrypted;

[0010] S4: Integrate the optimal key set to determine the value of each bit in the final key decryption result.

[0011] Furthermore, the population corresponding to each entity is initialized in parallel in S1, including: for each entity population, randomly starting from 0 to 2 KS -1, and convert the NP integers into binary sequences, and then use the NP binary sequences as NP individuals of the population corresponding to the entity; wherein KS represents the key size and NP represents the population size.

[0012] Furthermore, the step S3 includes: taking the population corresponding to each entity as the current population, and performing the following steps:

[0013] S31: Determine whether the update times of the current population meet the preset requirements, if not, proceed to S32, otherwise proceed to S33;

[0014] S32: Based on the first output value O corresponding to the current population lock With the second output value O oracle , calculate the fitness value of each individual in the current population; select one individual from the current population in turn as the current individual, mutate the current individual to obtain a first candidate individual, and traverse each bit in the first candidate individual; determine whether the value of the current bit is greater than the crossover probability, if so, replace the value of the current bit with the value of the corresponding bit on the current individual, otherwise retain the value of the corresponding bit to obtain a second candidate individual; compare the fitness value of the current individual with the fitness value of the second candidate individual; if the fitness value of the current individual is greater than the fitness value of the second candidate individual, retain the current individual, otherwise replace the current individual with the second candidate individual, and return to S31;

[0015] S33: taking the individual corresponding to the maximum fitness value in the current population when the number of updates of the current population meets the requirement as the optimal key combination of the corresponding entity;

[0016] S34: The optimal keys of all entities are combined to form an optimal key set for the locked chip to be decrypted.

[0017] Furthermore, mutating the current individual in S32 includes: for each current individual, randomly selecting a mutation strategy from a strategy list to perform a mutation operation to obtain the first candidate individual; the mutation strategies in the strategy list include:

[0018]

[0019] in, ∨ and ∧ correspond to the logical operations XOR, OR, and AND respectively. In the i-th iteration of differential evolution, k best is the current best individual in the current population, v t is a key combination of a mutated individual, is the key combination of an unmutated individual, and yes The key combination of 5 different random individuals, is the population after the last round of crossover mutation, S v ={v1,v2,…,v NP} is the key combination set of the mutated individuals generated in this iteration.

[0020] Furthermore, determining whether the value of the current bit is greater than the crossover probability includes:

[0021] For the current bit, a random number ranging from 0 to 1 is generated, and the random number is compared with the crossover probability CR. If the random number is greater than the crossover probability CR, it is considered that the value of the current bit is greater than the crossover probability CR.

[0022] Furthermore, the first output value O corresponding to the current population is lock With the second output value O oracle The difference between them is used to calculate the fitness value of each individual in the current population, including:

[0023] Initialize the current population cumulative score Score to 0, and traverse each individual in the current population to perform the following steps:

[0024] For the current individual, traverse the first output value O oracle and the second output value Olock For each bit of the output, if the corresponding bits are equal, the current cumulative score of the current individual is added to the weight of the corresponding output bit; the score value of the current individual obtained after traversing each bit is added to the cumulative score Score, and the final cumulative score Score is the fitness value corresponding to the current individual; wherein, the first output value O lock The weight w of the bth bit in b Set to NKI / (NPI+NKI), NKI is the number of key input bits in the logic cone, and NPI is the number of chip main input bits in the logic cone.

[0025] Furthermore, the S4 includes: constructing a corresponding ensemble learning model according to the optimal key set, treating each key in the optimal key set as a base predictor, and determining the key decryption result by majority voting on the result of each key bit.

[0026] According to another aspect of the present invention, a chip defense method based on a differential evolution algorithm is provided, comprising: obtaining the key decryption result by using the chip key decryption method based on the differential evolution algorithm; and performing chip defense layout according to the key decryption result.

[0027] According to another aspect of the present invention, a chip key decryption device based on a differential evolution algorithm is provided, comprising a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the chip key decryption method based on the differential evolution algorithm when executing the computer program.

[0028] According to another aspect of the present invention, a computer-readable storage medium is provided, on which a computer program is stored. When the computer program is executed by a processor, the steps of the chip key decryption method or chip defense method based on the differential evolution algorithm are implemented.

[0029] In general, the above technical solutions conceived by the present invention can achieve the following beneficial effects compared with the prior art:

[0030] (1) The present invention provides a chip key decryption method based on differential evolution algorithm, which regards the locked chip to be decrypted as multiple entities, and initializes the population and input vector corresponding to each entity in parallel; the population corresponds to multiple individuals, and each individual corresponds to a key; by treating each locked entity of the chip as an independent unit and initializing it in parallel, it can make full use of multi-core processor / distributed computing resources, significantly shorten the key search space traversal time, and based on the first output value O corresponding to each entity, the key is decrypted. lock With the second output value O oracleThe optimal key combination corresponding to each entity is found by calculating the difference between them; the optimal key combinations of all the entities constitute the optimal key set of the locked chip to be decrypted, and finally the optimal key set is integrated to determine the value of each bit in the final key decryption result. The results of the optimal key set can be fine-grainedly integrated to achieve high-precision and high-accuracy decryption.

[0031] (2) This scheme randomly selects from 0 to 2 KS -1, and convert the NP integers into binary sequences, and then use the NP binary sequences as the NP individuals of the population corresponding to the entity; this design takes into account that diversity is the key to maintaining the global search capability of the algorithm, and initializes individuals according to the key size, which can ensure diversity while preventing individuals from being overly dispersed, thereby achieving a balance between the global search capability and convergence efficiency of the algorithm.

[0032] (3) This scheme uses the differential evolution algorithm to search for the optimal key combination corresponding to each entity. To address the problems of slow decryption speed and low accuracy of the key of the locked chip to be decrypted in the Oracle-guide mode, based on the differential evolution algorithm, by optimizing the methods of individual initialization, mutation and crossover, the population diversity is enriched, making the search process more uniform, ensuring that the search algorithm can approach the global optimal solution in an ideal optimization algorithm, thereby accelerating convergence.

[0033] (4) The mutation strategies in the strategy list described in this scheme include a variety of design methods. Each design method takes into account the characteristics of logical lock key decryption and the implementation cost and search efficiency of the algorithm, and designs the number of mutation strategies and specific implementation plans. The advantage is that such a design can ensure the completeness of the feasible solution space of the key and realize highly efficient parallel key search.

[0034] (5) This scheme generates a random number ranging from 0 to 1 for the current bit and compares the random number with the crossover probability CR. This design takes into account that maintaining individual diversity is the key to maintaining the global search capability of the algorithm. The advantage is that this will not increase the overall complexity of the algorithm, while maintaining the diversity of individuals in the population, providing a theoretical basis for the introduction of the integrated improvement strategy and realizing a highly efficient population iteration method.

[0035] (6) This solution traverses the first output value O for the current individual. oracle and the second output value O lockFor each bit of the output, if the corresponding bits are equal, the current cumulative score of the current individual is added to the weight of the corresponding output bit; the score value of the current individual obtained after traversing each bit is added to the cumulative score Score, and the final cumulative score Score is the fitness value corresponding to the current individual; wherein, the first output value O lock The weight w of the bth bit in b Set to NKI / (NPI+NKI), where NKI is the number of key input bits in the logic cone and NPI is the number of primary chip input bits in the logic cone. This design takes into account that the greater the number of key inputs in the logic cone of the output port, the higher the probability of the locking circuit outputting an incorrect value when an incorrect key is applied. The advantage is that the weighted fitness calculation method can effectively retain the correct key bits in the current key individual, thereby improving the key decryption accuracy.

[0036] (7) This solution constructs a corresponding ensemble learning model based on the optimal key set, treating each key in the optimal key set as a base predictor, and determining the key decryption result by majority voting on the result of each key bit. This design takes into account the diversity and random factors of the differential evolution algorithm. The optimal key combination of a single entity may contain incorrect key bits. At the same time, the ensemble learning model can combine the prediction results of multiple models to improve the overall performance. The advantage is that the construction of the ensemble learning model has a reasonable overhead and does not increase the overall cost of the algorithm. At the same time, it can also promote the improvement of key decryption accuracy, achieving low-cost and high-efficiency key decryption accuracy improvement.

[0037] (8) This solution provides a chip defense method based on a differential evolution algorithm. A chip key decryption method based on a differential evolution algorithm is used to obtain a key decryption result. A chip defense layout is performed based on the key decryption result. This chip defense method can reveal security vulnerabilities in current chips and provide multiple optimization ideas for improving chip security, achieving low-cost and high-efficiency chip security design optimization. BRIEF DESCRIPTION OF THE DRAWINGS

[0038] Figure 1 This is a flow chart of a chip key decryption method based on a differential evolution algorithm provided by an embodiment of the present invention.

[0039] Figure 2 This is another flow chart of a chip key decryption method based on a differential evolution algorithm provided by an embodiment of the present invention.

[0040] Figure 3 This is a flow chart of initializing a population of multiple entities in parallel based on the integrated promotion concept provided by an embodiment of the present invention, taking each locked chip to be decrypted as an entity and according to the corresponding key bits.

[0041] Figure 4 is the output value of the locked chip to be decrypted provided by the embodiment of the present invention. lock The output value O of the key authorization chip oracle The flowchart of the optimal key set is constructed by using the differential evolution algorithm to search for the optimal key combination and integrating the optimal key combinations of multiple entities. DETAILED DESCRIPTION

[0042] In order to make the objectives, technical solutions and advantages of the present invention more clearly understood, the present invention is further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely for the purpose of explaining the present invention and are not intended to limit the present invention. In addition, the technical features involved in the various embodiments of the present invention described below may be combined with each other as long as they do not conflict with each other.

[0043] Figure 1 This is a flow chart of a chip key decryption method based on a differential evolution algorithm provided by an embodiment of the present invention. Figure 1 As shown, an embodiment of the present invention provides a chip key decryption method based on a differential evolution algorithm, comprising:

[0044] S1: The locked chip to be decrypted is regarded as multiple entities, and the population and input vector corresponding to each entity are initialized in parallel; the population corresponds to multiple individuals, and each individual corresponds to a key.

[0045] S2: Input the input vector corresponding to each entity and each individual in the population into the locked chip to be decrypted for simulation, and obtain the first output value of each individual corresponding to each entity. lock ; Input the input vector corresponding to each of the entities into the key authorization chip for simulation, and obtain the second output value corresponding to each of the entities. oracle Among them, when the output value of the key authorization chip appears O oracle Always equal to the output value of the locking circuit O lock , the correct key is obtained.

[0046] S3: Based on the first output value corresponding to each of the entities lock With the second output value O oracle The optimal key combination corresponding to each entity is found by the difference between them; the optimal key combination of all entities constitutes the optimal key set of the lock chip to be decrypted. Specifically, based on the output value O of the lock chip to be decrypted, lock The output value O of the key authorization chip oracleBy designing the fitness calculation method of individuals in the population, the differential evolution algorithm is used to search for the optimal key combination, and the optimal key combinations of multiple entities are integrated to form the optimal key set.

[0047] S4: Integrate the optimal key set to determine the value of each bit in the final key decryption result.

[0048] Figure 3 This is a flowchart of initializing a population of multiple entities in parallel based on the integrated promotion concept provided by an embodiment of the present invention, taking each locked chip to be decrypted as an entity and according to the corresponding key bit. Step S1 includes:

[0049] (S101) For each locked chip entity to be decrypted, obtain its corresponding locked gate-level netlist and determine the location of the key inputs (KI). Then initialize the population for each locked entity and generate a certain number of input vectors S in Each individual in the population represents a potential key for the locked circuit, and the differential evolution algorithm will continuously update the population so that the correct key is included.

[0050] (S102) Initializing relevant parameters; the relevant parameters at least include the key size KS of the current entity and the population size NP.

[0051] (S103) For each population of the entity, randomly select from 0 to 2 KS -1, and convert the NP integers into binary sequences, and then use the NP binary sequences as NP individuals of the population corresponding to the entity; wherein KS represents the key size and NP represents the population size.

[0052] In step S2, based on the generated input vector and the initialized population, the key authorization chip and the lock chip to be decrypted are simulated to obtain the output value of the circuit when the key is correct. oracle The output value of the locked circuit is O lock The steps include:

[0053] (S201) Based on the generated input vector S in , simulate the key authorization chip and the locked chip to be decrypted respectively.

[0054] (S202) For the simulation of the locked chip to be decrypted, the key is also part of its input, so during the simulation process, the input vector S in and key k i integrated together and applied to the circuit.

[0055] Figure 4is the output value of the locked chip to be decrypted provided by the embodiment of the present invention. lock The output value O of the key authorization chip oracle The flowchart of the optimal key set is formed by using the differential evolution algorithm to search for the optimal key combination and integrating the optimal key combinations of multiple entities. Step S3 includes:

[0056] (S301) Initializing relevant parameters and using the initialized population as the current population; the relevant parameters include at least the maximum number of iterations, the number of early termination iterations, the crossover probability, and the number of the most recent iteration rounds;

[0057] (S302) According to the output value O of the locked chip to be decrypted lock The output value O of the key authorization chip oracle The fitness values ​​of the individuals in the current population are calculated and sorted based on the difference between them, and the optimal value among the fitness values ​​is determined; for each individual, a first candidate individual is obtained by mutation based on an individual randomly selected from the population and the optimal value, and a second candidate individual is obtained by crossover; the fitness of the second candidate individual is calculated, and if the fitness is higher than the fitness of the current individual, the key combination is updated to the second candidate individual; it is determined whether the current number of iterations has reached the maximum number of iterations or the number of consecutive iterations without a better solution has reached the early termination number of iterations; if so, all global optimal solutions are obtained as the optimal key set; if not, the next round of iterations is entered.

[0058] (S303) For each locked chip to be decrypted, the optimal key combination obtained after differential evolution of all its entities is integrated to construct an optimal key set.

[0059] The method for calculating fitness in step (S302) includes:

[0060] (1) Initialize relevant parameters; the relevant parameters include at least fitness, target population NP for fitness calculation, test input vector set S in , input vector number NI, cumulative score Score;

[0061] (2) Initialize the cumulative score Score to 0. The fitness calculation process first traverses the input vector set S in Each input vector in the oracle is input into the locking circuit at the same time to obtain the output O of the oracle. oracle And the output of the locking circuit O lock , traverse O oracle and O lockFor each bit of , if the corresponding bits are equal, the score of the current individual will be added with the weight of the corresponding output bit. After traversing each bit, the score value of the individual corresponding to the current input vector is obtained, and the score value is accumulated to the cumulative score Score;

[0062] (3) After traversing each input vector, the final individual cumulative score, that is, the fitness corresponding to the individual, can be obtained.

[0063] Furthermore, in step (S302), for each individual, the step of updating its trial key combination according to the randomly selected individuals in the population and the variation of the optimal value includes:

[0064] (1) Determine whether the current iteration number is greater than the most recent iteration number; if not, start a new round of iterative update process, first performing mutation operations on individuals in the population;

[0065] (2) The algorithm designs 6 different mutation strategies for mutation. One of the mutation strategies is selected for execution through a random roulette wheel algorithm. After the execution strategy is selected, the required number of individuals are randomly selected from the population according to the number of individuals required by the execution strategy, and the operation specified by the current strategy is performed to obtain the mutated candidate individuals. If yes, the iterative search process ends, the individuals in the current population are traversed, and the individual with the highest fitness is selected as the best individual of the current predictor and returned.

[0066] (3) For each individual, a mutation operation is required to generate a mutated candidate individual. Each mutation is based on the probability of the mutation strategy. A strategy is randomly selected from the six mutation strategies. At the same time, other individuals participating in the mutation are selected and the mutation strategy is applied to obtain a temporary key combination. The individuals and the temporary keys will be combined and crossed later to obtain a new key combination.

[0067] Furthermore, the mutation strategy in step (S302) includes:

[0068]

[0069]

[0070] In the formula ∨ and ∧ correspond to the logical operations XOR, OR, and AND respectively. In the i-th iteration of differential evolution, v t is a key combination of a mutated individual, is the key combination of an unmutated individual, yes The key combination of 5 different random individuals, is the population after the last round of crossover mutation, Sv ={v1,v2,…,v NP} is the key combination set of the mutated individuals generated in this iteration.

[0071] In step S4, the step of constructing an integrated learning model based on all the keys in the optimal key set to obtain the key decryption result of the locked chip to be decrypted includes:

[0072] (S401) Constructing a corresponding ensemble learning model based on the current optimal key set, treating each key in the set as a base predictor, and aggregating the results of each key position by majority voting.

[0073] (S402) Based on the inherent randomness of mutation and crossover in different runs, diversity is introduced into the decryption of the key, so that key prediction errors can offset each other during the voting process.

[0074] Furthermore, this embodiment introduces an ensemble learning model based on differential evolution to further screen the optimal key, improving the accuracy of key decryption. The basic concept is to treat the optimal key obtained from each population as a base learner, performing majority voting on each key bit to improve the accuracy of the result. Furthermore, different populations accelerate the combinatorial optimization process by parallelizing the processing of multiple entities on the same locked chip to be decrypted.

[0075] Example 2

[0076] According to another aspect of the present invention, a chip defense method based on a differential evolution algorithm is provided, comprising: obtaining the key decryption result by using the chip key decryption method based on the differential evolution algorithm; and performing chip defense layout according to the key decryption result.

[0077] Taking into account the characteristics of the decryption algorithm, the chip's security architecture is dynamically adjusted from three perspectives: key complexity, circuit structure, and logic lockout defense strategy. First, the key complexity is analyzed, and the number of key bits is appropriately increased while maintaining reasonable overhead. The circuit structure is then adjusted to reduce the number of key inputs in the logic cone of each output port. This reduces the fitness value to increase the probability of an incorrect key appearing in the optimal key set. Finally, the currently implemented logic lockout defense strategy is adjusted, taking into account both cost and overhead, and attempting to adopt a more secure logic lockout solution.

[0078] Example 3

[0079] This embodiment provides a chip defense method based on a differential evolution algorithm, comprising: obtaining the key decryption result using the chip key decryption method based on the differential evolution algorithm; and performing chip defense layout according to the key decryption result.

[0080] Example 4

[0081] This embodiment provides a chip key decryption device based on a differential evolution algorithm, including a memory and a processor. The memory stores a computer program, and the processor implements the steps of the chip key decryption method based on the differential evolution algorithm when executing the computer program.

[0082] Example 4

[0083] This embodiment provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the steps of the chip key decryption method or chip defense method based on the differential evolution algorithm are implemented.

[0084] It will be easily understood by those skilled in the art that the above description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.

Claims

1. A chip key decryption method based on differential evolution algorithm, characterized in that: include: S1: Treat the locked chip to be decrypted as multiple entities, and initialize the population and input vector corresponding to each entity in parallel; The population corresponds to a plurality of individuals, and each individual corresponds to a key; S2: Input the input vector corresponding to each entity and each individual in the population into the locked chip to be decrypted for simulation, and obtain the first output value of each individual corresponding to each entity. lock ; Input the input vector corresponding to each of the entities into the key authorization chip for simulation, and obtain the second output value corresponding to each of the entities. oracle ; S3: Based on the first output value corresponding to each of the entities lock With the second output value O oracle The optimal key combination corresponding to each entity is found based on the difference between the two entities; the optimal key combination of all the entities constitutes the optimal key set of the locked chip to be decrypted; S4: Integrate the optimal key set to determine the value of each bit in the final key decryption result.

2. The chip key decryption method based on the differential evolution algorithm according to claim 1, characterized in that: The S1 initializes the population corresponding to each entity in parallel, including: For each population of said entity, randomly from 0 to 2 KS -1, and convert the NP integers into binary sequences, and then use the NP binary sequences as NP individuals of the population corresponding to the entity; wherein KS represents the key size and NP represents the population size.

3. The chip key decryption method based on differential evolution algorithm according to claim 1, characterized in that: The step S3 includes: taking the population corresponding to each entity as the current population, and performing the following steps: S31: Determine whether the update times of the current population meet the preset requirements, if not, proceed to S32, otherwise proceed to S33; S32: Based on the first output value O corresponding to the current population lock With the second output value O oracle , calculate the fitness value of each individual in the current population; select one individual from the current population as the current individual, mutate the current individual to obtain a first candidate individual, and traverse each bit in the first candidate individual; determine whether the value of the current bit is greater than the crossover probability, if so, replace the value of the current bit with the value of the corresponding bit on the current individual, otherwise retain the value of the corresponding bit to obtain a second candidate individual; compare the fitness value of the current individual with the fitness value of the second candidate individual; if the fitness value of the current individual is greater than the fitness value of the second candidate individual, retain the current individual, otherwise replace the current individual with the second candidate individual, thereby achieving a population update; and return to S31; S33: taking the individual corresponding to the maximum fitness value in the current population when the number of updates of the current population meets the requirement as the optimal key combination of the corresponding entity; S34: The optimal keys of all entities are combined to form an optimal key set for the locked chip to be decrypted.

4. The chip key decryption method based on the differential evolution algorithm according to claim 3, characterized in that: The step of mutating the current individual in S32 includes: For each of the current individuals, randomly select a mutation strategy from the strategy list to perform a mutation operation to obtain the first candidate individual; The mutation strategies in the strategy list include: in, ∨ and ∧ correspond to the logical operations XOR, OR, and AND respectively. In the i-th iteration of differential evolution, k best is the current best individual in the current population, v t is a key combination of a mutated individual, is the key combination of an unmutated individual, and yes The key combination of 5 different random individuals, is the population after the last round of crossover mutation, S v ={v1,v2,…,v NP } is the key combination set of the mutated individuals generated in this iteration.

5. The chip key decryption method based on differential evolution algorithm according to claim 3, characterized in that: The determining whether the value of the current bit is greater than the crossover probability includes: For the current bit, a random number ranging from 0 to 1 is generated, and the random number is compared with the crossover probability CR. If the random number is greater than the crossover probability CR, it is considered that the value of the current bit is greater than the crossover probability CR.

6. The chip key decryption method based on differential evolution algorithm according to claim 1, characterized in that: The first output value O corresponding to each of the entities lock With the second output value O oracle The difference between them is used to calculate the fitness value of each individual in the current population, including: Initialize the current population cumulative score Score to 0, and traverse each individual in the current population to perform the following steps: For the current individual, traverse the first output value O oracle and the second output value O lock For each bit of the output, if the corresponding bits are equal, the current cumulative score of the current individual is added to the weight of the corresponding output bit; the score value of the current individual obtained after traversing each bit is added to the cumulative score Score, and the final cumulative score Score is the fitness value corresponding to the current individual; wherein, the first output value O lock The weight w of the bth bit in b Set to NKI / (NPI+NKI), NKI is the number of key input bits in the logic cone, and NPI is the number of chip main input bits in the logic cone.

7. The chip key decryption method based on differential evolution algorithm according to claim 1, characterized in that: The S4 includes: constructing a corresponding ensemble learning model according to the optimal key set, treating each key in the optimal key set as a base predictor, and determining the key decryption result by majority voting on the result of each key bit.

8. A chip defense method based on differential evolution algorithm, characterized in that: include: Obtain the key decryption result using the chip key decryption method based on the differential evolution algorithm according to any one of claims 1 to 7; Chip defense layout is performed based on the key decryption result.

9. A chip key decryption device based on a differential evolution algorithm, comprising a memory and a processor, wherein the memory stores a computer program, characterized in that: When the processor executes the computer program, the steps of the chip key decryption method based on the differential evolution algorithm according to any one of claims 1 to 7 are implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the chip key decryption method or chip defense method based on the differential evolution algorithm according to any one of claims 1 to 7 are implemented.