White box encryption and decryption method and device based on AES, storage equipment and medium

By generating table TypeΙΙ and the first matrix in each round of loop of white box AES, and performing key transformation and matrix multiplication, the encryption and decryption process is optimized, and the efficiency and memory of existing white box AES in industrial Internet applications are solved. Problem, efficient and secure encryption and decryption operations are achieved.

CN119449271AActive Publication Date: 2025-02-14BEIJING ZHI YOU WANG AN TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202411006450.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-07-25
Publication Date
2025-02-14
Estimated Expiration
2044-07-25

AI Technical Summary

Technical Problem

The existing white box AES implementation solution has problems such as low operating efficiency, large operating memory, and overload of terminal devices in industrial Internet applications, and it is difficult to balance security, efficiency and memory usage.

Method used

In each round of the advanced encryption standard, the table TypeΙΙ and the first matrix are generated according to the encryption round key, and the encryption and decryption operation of the advanced encryption standard is realized, and the encryption and decryption process is optimized through technical means such as key transformation and matrix multiplication. , reduces computational complexity and memory usage.

Benefits of technology

In industrial Internet application scenarios, efficient encryption and decryption speed, low additional memory usage, and meet weak security requirements in terminal device scenarios, achieving performance that is no obvious difference compared with black box AES.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119449271A_ABST
    Figure CN119449271A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides an AES-based white box encryption and decryption method and device, a storage device and a medium, and the method comprises the steps: firstly generating a table Type II and a first matrix according to an encryption round key based on each round of circulation of an advanced encryption standard, then carrying out the left multiplication of each round of circulation of the advanced encryption standard by the first matrix, then looking up the table Type II, and obtaining a second matrix; the method comprises the following steps: completing encryption of an advanced encryption standard, then carrying out key transformation on an encryption round key to obtain a decryption round key, finally replacing the encryption round key with the decryption round key, sequentially repeating an encryption process of the advanced encryption standard to obtain a second matrix, and completing decryption of the advanced encryption standard. Compared with the prior art, balance among running efficiency, running memory and safety is met, the encryption and decryption speed which is not obviously different from that of a black box AES is achieved, extra memory occupation can be ignored, and the weak safety requirement in a terminal equipment scene is met.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of information security and cryptography application technology, and in particular to a white box encryption and decryption method, apparatus, storage device and medium based on AES. Background Art

[0002] The key is the core of the cryptographic system, and the management and storage of the key is the most critical part of the engineering implementation of the cryptographic algorithm. When designing a cryptographic algorithm, the designer usually assumes that the cryptographic algorithm will be used in a black box environment, that is, the intermediate data of the cryptographic algorithm is inaccessible during operation, and only the input and output are allowed to be accessed. However, this assumption is unrealistic in many engineering applications (such as mobile device terminals), and the key faces the risk of direct leakage from the memory and cache. Therefore, the white box implementation of traditional cryptographic algorithms came into being.

[0003] A white-box environment refers to a cryptographic algorithm that allows unlimited access to any intermediate data, input and output when it is running. As the name suggests, the white-box implementation of traditional cryptographic algorithms refers to the transformation of traditional cryptographic algorithms designed based on the assumption of a black-box environment into an implementation method that still has good security in a white-box environment.

[0004] Since its release, the Advanced Encryption Standard (AES) has quickly become the most mainstream symmetric encryption algorithm and is widely used in all aspects of social life and production, including various terminal devices and software / hardware services. Due to its ultra-high security and ultra-fast performance, AES's leading position in global usage remains unshakable.

[0005] Therefore, the implementation method of white-box AES first attracted the attention of researchers, but researchers are committed to making the security of white-box AES closer to the strong security of black-box AES, but often ignore the feasibility in engineering applications. These white-box AES implementation methods will cause data refresh delays due to low operating efficiency (such as the CEJO framework) and excessive operating memory (such as the Xiao-Lai solution) causing terminal device overload. Summary of the invention

[0006] The present application provides a white-box encryption and decryption method, apparatus, storage device and medium based on AES, which can solve the infeasibility of existing public white-box AES implementation solutions in industrial Internet applications, and achieve a balance between operating efficiency, operating memory and security in industrial Internet application scenarios.

[0007] In order to achieve the above purpose, the technical solution adopted in the embodiment of the present application is as follows:

[0008] In a first aspect, an embodiment of the present application provides a white box encryption and decryption method based on AES, the method comprising:

[0009] Step S1, based on each round of the Advanced Encryption Standard, generate a table Type ΙΙ and a first matrix according to the encryption round key;

[0010] Step S2, after each round of the advanced encryption standard is cyclically multiplied by the first matrix, the second matrix is ​​obtained by looking up the table Type ΙΙ, thereby completing the encryption of the advanced encryption standard;

[0011] Step S3, performing key transformation on the encryption round key to obtain the decryption round key;

[0012] Step S4, replace the encryption round key with the decryption round key, and perform steps S1 and S2 in sequence to obtain the second matrix, thereby completing the decryption of the Advanced Encryption Standard.

[0013] In a possible implementation, the step of generating a table Type II and a first matrix according to an encryption round key includes:

[0014] Using the CEJO framework, generate table TMC based on the encryption round key i ;

[0015] Select the random linear coding generation table Type ΙΙ in the CEJO framework;

[0016] Add the pre- and post-linear encoding and decoding of round i in table Type ΙΙ and combine with table TMC i Perform Advanced Encryption Standard loop with table Type ΙΙ;

[0017] The first matrix is ​​generated in a loop to achieve decoding between rounds.

[0018] In a possible implementation, the method further includes:

[0019] For XOR, use the binary XOR operator in your programming language.

[0020] In a possible implementation, the advanced encryption standard adopts any one of AES-128, AES-192, and AES-256.

[0021] In a possible implementation, the step of performing key transformation on the encryption round key to obtain the decryption round key includes:

[0022] Use the first round encryption key as the last round decryption key;

[0023] Use the inverse operator InvMixColumns to transform the encryption round key of each intermediate round into the decryption round key of each intermediate round in reverse order;

[0024] The encryption round key of the last round is used as the decryption round key of the first round to obtain the decryption round key.

[0025] In a second aspect, an embodiment of the present application further provides a white box encryption and decryption device based on AES, the device comprising:

[0026] A generating module, configured to generate a table Type ΙΙ and a first matrix according to an encryption round key in each cycle of the advanced encryption standard;

[0027] An encryption module, used for performing left multiplication of each round of the advanced encryption standard by the first matrix and then looking up the table Type ΙΙ to obtain a second matrix, thereby completing encryption of the advanced encryption standard;

[0028] A key conversion module, used to convert the encryption round key to obtain the decryption round key;

[0029] The decryption module is used to replace the encryption round key with the decryption round key, and sequentially execute the steps of the generation module and the encryption module to obtain the second matrix, thereby completing the decryption of the advanced encryption standard.

[0030] In a possible implementation, the generating module is further used for:

[0031] Using the CEJO framework, generate table TMC based on the encryption round key i ;

[0032] Select the random linear coding generation table Type ΙΙ in the CEJO framework;

[0033] Add the pre- and post-linear encoding and decoding of round i in table Type ΙΙ and combine with table TMC i Perform Advanced Encryption Standard loop with table Type ΙΙ;

[0034] The first matrix is ​​generated in a loop to achieve decoding between rounds.

[0035] In a possible implementation manner, the key transformation module is further used to:

[0036] Use the first round encryption key as the last round decryption key;

[0037] Use the inverse operator InvMixColumns to transform the encryption round key of each intermediate round into the decryption round key of each intermediate round in reverse order;

[0038] The encryption round key of the last round is used as the decryption round key of the first round to obtain the decryption round key.

[0039] In the third aspect, an embodiment of the present application also provides a storage device, including: a processor, a memory and a bus, the memory storing program instructions executable by the processor, when the storage device is running, the processor and the memory communicate through the bus, and the processor executes the program instructions to perform the AES-based white box encryption and decryption method as described in any one of the first aspects.

[0040] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium, on which a computer program is stored. When the computer program is executed by a processor, the AES-based white-box encryption and decryption method as described in any one of the first aspects is executed.

[0041] The above-mentioned main scheme of the present application and its further options can be freely combined to form multiple schemes, all of which are schemes that can be adopted and claimed for protection in the present application; and in the present application, (non-conflicting options) options and other options can also be freely combined. After understanding the scheme of the present application, those skilled in the art can understand that there are multiple combinations based on the prior art and common knowledge, all of which are technical schemes to be protected by the present application, and they are not exhaustively listed here.

[0042] The embodiment of the present application proposes a white-box encryption and decryption method, apparatus, storage device and medium based on AES. First, based on each round of the advanced encryption standard, a table Type ΙΙ and a first matrix are generated according to the encryption round key. Then, each round of the advanced encryption standard is multiplied on the left by the first matrix, and then the table Type ΙΙ is looked up to obtain a second matrix to complete the encryption of the advanced encryption standard. Then, the encryption round key is transformed to obtain a decryption round key. Finally, the decryption round key is replaced with the encryption round key. The encryption process of the advanced encryption standard is repeated in sequence to obtain the second matrix to complete the decryption of the advanced encryption standard. Compared with the prior art, a balance between operating efficiency, operating memory and security is met, and an encryption and decryption speed with no significant difference compared with the black-box AES is achieved, and the additional memory usage is negligible, which meets the weak security requirements in the terminal device scenario. BRIEF DESCRIPTION OF THE DRAWINGS

[0043] In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings required for use in the embodiments will be briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present application and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without paying creative work.

[0044] Figure 1 An AES-based white box encryption and decryption method proposed in an embodiment of the present application is shown. DETAILED DESCRIPTION

[0045] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. The components of the embodiments of the present application described and shown in the drawings here can be arranged and designed in various different configurations.

[0046] Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the present application for which protection is sought, but merely represents selected embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.

[0047] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.

[0048] It should be noted that, in the absence of conflict, the features in the embodiments of the present application may be combined with each other.

[0049] In the prior art, researchers have been working hard to make the security of white-box AES closer to the strong security of black-box AES, but have often ignored the feasibility of white-box AES in engineering applications. These white-box AES implementation methods will cause data refresh delays due to low operating efficiency (such as the CEJO framework) and excessive operating memory (such as the Xiao-Lai solution) causing terminal device overload.

[0050] Therefore, in order to solve the above-mentioned technical problems, the embodiments of the present application propose a white-box encryption and decryption method, apparatus, storage device and medium based on AES, which satisfies the balance between operating efficiency, operating memory and security in the application scenarios of the industrial Internet, and achieves encryption and decryption speeds that are no significantly different from those of the black-box AES, negligible additional memory usage, and meets the weak security requirements in the terminal device scenario, which will be described in detail below.

[0051] Please refer to Figure 1 , Figure 1 A white box encryption and decryption method based on AES proposed in an embodiment of the present application is shown, and the method includes:

[0052] Step S1: Based on each round of the Advanced Encryption Standard, generate a table Type II and a first matrix according to an encryption round key.

[0053] The steps before generating the table Type ΙΙ and the first matrix also include:

[0054] The number of encryption rounds and decryption rounds of the Advanced Encryption Standard are set to Nr respectively. Each round of the Advanced Encryption Standard is Roundi (i=1,...,Nr), where Nr represents the total number of loops in the AES encryption or decryption process, and Roundi refers to each specific loop operation, whether it is the i-th round in the encryption or decryption process. The main difference between them lies in the specific operations performed in each round and the order.

[0055] In addition, the four operators included in each round of the Advanced Encryption Standard are set to AddRoundKey, SubBytes, ShiftRows, and MixColumns, and the inverse operators of the operators included in each round of the Advanced Encryption Standard are InvSubBytes, InvShiftRows, and InvMixColumns. If the output of any operator F with input x is F(x), and the output of any operator G with input x is G(x), then the composite operator with input x is The output is The notation of the five tables in the CEJO framework is used: TypeIa, TypeIb, TypeII, TypeIII, and TypeIV.

[0056] The advanced encryption standard uses any one of AES-128, AES-192, and AES-256.

[0057] In a possible implementation, the step of generating a table Type II and a first matrix according to an encryption round key includes:

[0058] Using the CEJO framework, generate table TMC based on the encryption round key i ;

[0059] Select the random linear coding generation table Type ΙΙ in the CEJO framework;

[0060] Add the pre- and post-linear encoding and decoding of round i in table Type ΙΙ and combine with table TMC i Perform Advanced Encryption Standard loop with table Type ΙΙ;

[0061] The first matrix is ​​generated in a loop to achieve decoding between rounds.

[0062] This step is the encryption step. Each round of the advanced encryption standard is Roundi, 1≤i≤Nr. According to the encryption round key K of the i-th round i-1 Generate table TypeII and first matrix M i , using the CEJO framework according to the encryption round key K i-1 Generate table TMC i, modify the random nonlinear coding selected in the CEJO framework to select random linear coding to generate table TypeII, and add the pre- and post-linear coding and decoding of the i-th round to table TypeΙΙ ( and ) and then combine table TMC i And table Type ΙΙ perform the advanced encryption standard cycle, the cycle process is:

[0063]

[0064] This cycle shows a series of steps in the AES encryption process. The AES encryption process is divided into multiple rounds, and each round has specific steps to process the input data. This means that after the last round, the data has been completely encrypted and formed into ciphertext.

[0065] This expression shows the process of multiple rounds of linear encoding, where each round applies a different matrix multiplication, increasing the complexity and security of the cryptosystem.

[0066] Table TypeIII in the CEJO framework is replaced by the first matrix in the embodiment of the present application. The embodiment of the present application generates the first matrix in a loop to implement decoding between rounds:

[0067] Round 1:M i :=ShiftRows;

[0068]

[0069] This means that the first matrix of the first round is the row shift matrix (ShiftRows), and the first matrix of the i-th round is the decoded post-linear encoding of the previous round Sequentially through the row shift matrix (ShiftRows) and this round of post linear coding (L i-1 )The resulting matrix.

[0070] Step S2: After each round of the advanced encryption standard is cyclically multiplied by the first matrix, the second matrix is ​​obtained by looking up the table Type ΙΙ to complete the encryption of the advanced encryption standard.

[0071] For each round of the Advanced Encryption Standard, Roundi (i = 1, ..., Nr), multiply the first matrix M on the left i Then search for TypeII to complete the encryption process.

[0072] In a possible implementation, the method further includes:

[0073] For XOR, use the binary XOR operator in your programming language.

[0074] At a certain stage (Roundi), a matrix is ​​first multiplied by the first matrix M i , and then query according to a certain type of table (Type II). Different from the other method (CEJO framework), due to the use of random linear coding, after completing the operation of the lookup table Type II, when performing the XOR operation on the data with a length of 32 bits and 128 bits, the binary XOR operator provided by some programming languages ​​can be directly used, such as the ^ symbol in C++.

[0075] Considering the symmetry of AES encryption and decryption, decryption includes the following steps:

[0076] Step S3: performing key transformation on the encryption round key.

[0077] In a possible implementation, the step of performing key transformation on the encryption round key to obtain the decryption round key includes:

[0078] Use the first round encryption key as the last round decryption key;

[0079] Use the inverse operator InvMixColumns to transform the encryption round key of each intermediate round into the decryption round key of each intermediate round in reverse order;

[0080] The encryption round key of the last round is used as the decryption round key of the first round to obtain the decryption round key.

[0081] Assume that the encryption round key is K i , the decryption round key is K i ′, the formula for key transformation is:

[0082]

[0083] The first row represents the first round of decryption key K′ 0 Equal to the encryption round key of round Nr The second line indicates the number of rounds from 1 to N. r The key for round -1 is obtained by applying the inverse mixing column transformation to the key for the previous round. The last row represents the decryption round key for the last round. Equal to the first round encryption key K 0 .

[0084] Step S4, replace the encryption round key with the decryption round key, and perform steps S1 and S2 in sequence to obtain the second matrix, thereby completing the decryption of the Advanced Encryption Standard.

[0085] The following is a verification of the AES-based white box encryption and decryption method proposed in the embodiment of the present application. AES-128 is first used to compare it with the CEJO framework and the Xiao-Lai / Xiao-Lai solution.

[0086] Different from the CEJO framework, the embodiment of the present application does not require the generation (336kB) and search (2688 times) of TypeIV, and the overhead generated by the binary XOR operation instead is negligible.

[0087] Unlike the CEJO framework, considering the impracticality of external input / output encoding in actual product logic and the inconvenience of separate input / output encoding for each table in engineering implementation, the embodiment of the present application does not require the generation (128kB) and search (32 times) of Type Ia and TypeIb.

[0088] Different from the CEJO framework and similar to the Xiao-Lai scheme, the embodiment of the present application uses 10 matrix multiplications to implement decoding between rounds (20kB), and does not require Type III generation (144kB) and search (144 times).

[0089] Similar to the CEJO framework and different from the Xiao-Lai scheme which selects 8 16-bit to 32-bit tables TMC (a total of 20480 kB for 10 rounds), the embodiment of the present application uses 16 8-bit to 32-bit tables TMC (a total of 160 kB for 10 rounds).

[0090] Compared with the prior art, the beneficial effects proposed in the embodiments of the present application are:

[0091] First, in theory, compared with the CEJO framework (3008 table lookups, 752kB) and the Xiao-Lai scheme (80 table lookups, 40 XORs, 11 matrix multiplications, 20502kB), the embodiment of the present application (144 table lookups, 216 XORs, 11 matrix multiplications, 164kB) has the advantages of high efficiency and light weight, and is very close to the performance of the black box AES (160 table lookups, 152 XORs, 4kB).

[0092] Second, with the CEJO framework (2 22 ) and Xiao-Lai / Xiao-Lai scheme (2 32 ) compared to the present embodiment, the safety of the present application is about 2 12 To 2 22 It has weak security, but with the reinforcement of technology, it is sufficient to meet the needs of mobile terminals.

[0093] Third, after a large number of tests, the encryption / decryption time required for a single plaintext / ciphertext of 500kB, 1mB, and 2mB in the ECB mode is 79.1ms, 98.8ms, and 117.8ms, respectively, and the time required in the CBC mode is 76.8ms, 99.3ms, and 162.2ms, respectively, which will not cause visible delays in real-time data refresh.

[0094] In a second aspect, an embodiment of the present application further provides a white box encryption and decryption device based on AES, the device comprising:

[0095] A generating module, configured to generate a table Type ΙΙ and a first matrix according to an encryption round key in each cycle of the advanced encryption standard;

[0096] An encryption module, used for performing left multiplication of each round of the advanced encryption standard by the first matrix and then looking up the table Type ΙΙ to obtain a second matrix, thereby completing encryption of the advanced encryption standard;

[0097] A key conversion module, used to convert the encryption round key to obtain the decryption round key;

[0098] The decryption module is used to replace the encryption round key with the decryption round key, and sequentially execute the steps of the generation module and the encryption module to obtain the second matrix, thereby completing the decryption of the advanced encryption standard.

[0099] In a possible implementation, the generating module is further used for:

[0100] Using the CEJO framework, generate table TMC based on the encryption round key i ;

[0101] Select the random linear coding generation table Type ΙΙ in the CEJO framework;

[0102] Add the pre- and post-linear encoding and decoding of round i in table Type ΙΙ and combine with table TMC i Perform Advanced Encryption Standard loop with table Type ΙΙ;

[0103] The first matrix is ​​generated in a loop to achieve decoding between rounds.

[0104] In a possible implementation manner, the key transformation module is further used to:

[0105] Use the first round encryption key as the last round decryption key;

[0106] Use the inverse operator InvMixColumns to transform the encryption round key of each intermediate round into the decryption round key of each intermediate round in reverse order;

[0107] The encryption round key of the last round is used as the decryption round key of the first round to obtain the decryption round key.

[0108] This preferred embodiment provides a computer device, which can implement the steps in any embodiment of the AES-based white box encryption and decryption method provided in the embodiments of the present application. Therefore, the beneficial effects of the AES-based white box encryption and decryption method provided in the embodiments of the present application can be achieved. Please refer to the previous embodiments for details and will not be repeated here.

[0109] Those skilled in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructions, or by controlling related hardware through instructions, and the instructions can be stored in a computer-readable storage medium and loaded and executed by a processor. To this end, an embodiment of the present application provides a storage medium, which stores multiple instructions, and the instructions can be loaded by a processor to execute the steps of any embodiment of the AES-based white box encryption and decryption method provided in the embodiment of the present application.

[0110] The storage medium may include: a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0111] Since the instructions stored in the storage medium can execute the steps in any AES-based white-box encryption and decryption method embodiment provided in the embodiments of the present application, the beneficial effects that can be achieved by any AES-based white-box encryption and decryption method provided in the embodiments of the present application can be achieved. Please refer to the previous embodiments for details and will not be repeated here.

[0112] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any changes or substitutions that can be easily thought of by a person skilled in the art within the technical scope disclosed in the present application should be included in the protection scope of the present application. Therefore, the protection scope of the present application shall be based on the protection scope of the claims.

Claims

1. A white box encryption and decryption method based on AES, characterized in that: The method comprises: Step S1, based on each round of the Advanced Encryption Standard, generate a table Type ΙΙ and a first matrix according to the encryption round key; Step S2, after each round of the advanced encryption standard is cyclically multiplied by the first matrix, the second matrix is ​​obtained by looking up the table Type ΙΙ, thereby completing the encryption of the advanced encryption standard; Step S3, performing key transformation on the encryption round key to obtain the decryption round key; Step S4, replace the encryption round key with the decryption round key, and perform steps S1 and S2 in sequence to obtain the second matrix, thereby completing the decryption of the Advanced Encryption Standard.

2. The AES-based white box encryption and decryption method according to claim 1, characterized in that: The step of generating a table Type II and a first matrix according to an encryption round key includes: Using the CEJO framework, generate table TMC based on the encryption round key i ; Select the random linear coding generation table Type ΙΙ in the CEJO framework; Add the pre- and post-linear encoding and decoding of round i in table Type ΙΙ and combine with table TMC i Perform Advanced Encryption Standard loop with table Type ΙΙ; The first matrix is ​​generated in a loop to achieve decoding between rounds.

3. The AES-based white box encryption and decryption method according to claim 2, characterized in that: The method further comprises: For XOR, use the binary XOR operator in your programming language.

4. The AES-based white box encryption and decryption method according to claim 1, characterized in that: The Advanced Encryption Standard uses any one of AES-128, AES-192, and AES-256.

5. The AES-based white box encryption and decryption method according to claim 1, characterized in that: The step of performing key transformation on the encryption round key to obtain the decryption round key comprises: Use the first round encryption key as the last round decryption key; Use the inverse operator InvMixColumns to transform the encryption round key of each intermediate round into the decryption round key of each intermediate round in reverse order; The encryption round key of the last round is used as the decryption round key of the first round to obtain the decryption round key.

6. A white box encryption and decryption device based on AES, characterized in that: The device comprises: A generating module, configured to generate a table Type ΙΙ and a first matrix according to an encryption round key in each cycle of the advanced encryption standard; An encryption module, used for performing left multiplication of each round of the advanced encryption standard by the first matrix and then looking up the table Type ΙΙ to obtain a second matrix, thereby completing encryption of the advanced encryption standard; A key conversion module, used to convert the encryption round key to obtain the decryption round key; The decryption module is used to replace the encryption round key with the decryption round key, and sequentially execute the steps of the generation module and the encryption module to obtain the second matrix, thereby completing the decryption of the advanced encryption standard.

7. The AES-based white box encryption and decryption device according to claim 6, characterized in that: Generates modules, also used to: Using the CEJO framework, generate table TMC based on the encryption round key i ; Select the random linear coding generation table Type ΙΙ in the CEJO framework; Add the pre- and post-linear encoding and decoding of round i in table Type ΙΙ and combine with table TMC i Perform Advanced Encryption Standard loop with table Type ΙΙ; The first matrix is ​​generated in a loop to achieve decoding between rounds.

8. The AES-based white box encryption and decryption device according to claim 6, characterized in that: The key transformation module is also used to: Use the first round encryption key as the last round decryption key; Use the inverse operator InvMixColumns to transform the encryption round key of each intermediate round into the decryption round key of each intermediate round in reverse order; The encryption round key of the last round is used as the decryption round key of the first round to obtain the decryption round key.

9. A storage device, characterized in that: include: A processor, a memory and a bus, wherein the memory stores program instructions executable by the processor, and when the storage device is running, the processor communicates with the memory via the bus, and the processor executes the program instructions to perform the AES-based white box encryption and decryption method as described in any one of claims 1-5.

10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by the processor, the AES-based white-box encryption and decryption method according to any one of claims 1 to 5 is executed.

Citation Information

Patent Citations

  • Encryption and decryption method based on white box block cipher

    CN112199696A

  • Lightweight AES-128 dynamic encryption method based on UWB

    CN116722968A

  • White box AES implementation

    US20190305930A1

  • White-box encryption method for prevention of fault injection attack and apparatus therefor

    US20210152326A1