CN112199696A - Encryption and decryption method based on white-box block cipher - Google Patents

Encryption and decryption method based on white-box block cipher Download PDF

Info

Publication number
CN112199696A
CN112199696A CN202011068447.4A CN202011068447A CN112199696A CN 112199696 A CN112199696 A CN 112199696A CN 202011068447 A CN202011068447 A CN 202011068447A CN 112199696 A CN112199696 A CN 112199696A
Authority
CN
China
Prior art keywords
round
input
bit
encryption
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202011068447.4A
Other languages
Chinese (zh)
Other versions
CN112199696B (en
Inventor
刘君
陈杰
原梓清
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xidian University
Original Assignee
Xidian University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xidian University filed Critical Xidian University
Priority to CN202011068447.4A priority Critical patent/CN112199696B/en
Publication of CN112199696A publication Critical patent/CN112199696A/en
Application granted granted Critical
Publication of CN112199696B publication Critical patent/CN112199696B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms

Abstract

The invention discloses an encryption and decryption method based on a white-box block cipher, which mainly solves the problem of low encryption and decryption efficiency in the prior art. The method comprises key generation, block encryption and block decryption. The key generation is to convert the main key into a round key, generate a lookup table by the round key, and generate a random matrix by a random number; the block encryption is to process plaintext blocks by using round keys and random matrixes, circulate 7 rounds, and obtain output as ciphertext blocks; and the block decryption is to process ciphertext blocks by using a lookup table and a random matrix, and circulate for 7 rounds, so that the obtained output is decrypted plaintext blocks. The invention ensures that the encryption and decryption method does not reveal the secret key, has higher operation efficiency than the prior method, and can be used for copyright protection and mobile payment scenes of video and audio digital contents.

Description

Encryption and decryption method based on white-box block cipher
Technical Field
The invention belongs to the technical field of network and information security, and particularly relates to an encryption and decryption method based on a white-box block cipher, which can be used for copyright protection and mobile payment scenes of video and audio digital contents.
Background
In the field of network and information security, an encryption algorithm is a core technology for ensuring information confidentiality. Generally, an encryption algorithm is public, but a key used therein needs to be kept secret, and therefore, the security of the key is important. Conventional encryption algorithms were designed at the beginning, assuming that an adversary could only obtain the input and output of the algorithm when running, i.e., the encrypted message and the message after encryption, without knowing its intermediate state. Therefore, if the adversary cannot recover the key, the encryption algorithm is called safe. Such an adversary model is called a black box model. However, with the popularity of the internet and the internet of things, terminal platforms that execute cryptographic algorithms are often located in potentially malicious environments. In this case, the adversary can observe or change the intermediate state of the algorithm in operation, thereby helping himself to extract the key. This adversary model is called the white-box model, and it is the white-box cryptography that studies how to protect the security of cryptographic algorithms under the white-box model.
At present, the design of white-box cryptographic schemes includes two major categories, which are the white-box implementation of the design of the existing block cipher algorithm and the design of the new white-box block cipher algorithm. Among them, white-box implementations mainly target packet cryptographic standard algorithms such as the advanced encryption standard AES, the data encryption standard DES, and the national commercial cryptographic standard SM4, but many white-box implementations face various attacks. Until now, there has been no well-established white-box implementation of security for the three block cipher standard algorithms AES, DES and SM 4. The new white-box block cipher algorithm adopts different ideas, namely, a white-box model is considered at the beginning of design.
In recent years, some White-Box Block cipher algorithms have been proposed in succession, the two most competitive methods of encrypting and decrypting White-Box Block Ciphers being SPNbox and WEM, respectively from an article entitled "upward Practical Whitebox Cryptography: Optimizing Efficiency and Space Hardness" published by Andrey Bogdannov et al at ASIACRYPT in 2016 and an article entitled "WEM: A New Family of White-Box Block Ciphers Based on the Even-Man cipher Construction" published by Jihon Cho et al at CT-RSA in 2017. The SPNbox adopts a small-size AES component as an encryption method and adopts a lookup table as a decryption method; both the encryption method and the decryption method of WEM use lookup tables.
Although SPNbox and WEM are provably secure, the practical efficiency of these two approaches is limited. For example, the SPNbox encryption method requires 320 rounds of small AES components and 10 rounds of maximum distance separable MDS matrix multiplication; the decryption method of WEM requires the use of a 12-round AES component. This higher number of rounds and the use of the AES component limit the efficiency of operation of the two encryption and decryption methods.
Disclosure of Invention
The present invention is directed to overcome the above-mentioned deficiencies in the prior art, and to provide an encryption and decryption method based on a white-box block cipher, so as to improve the efficiency of encrypting and decrypting a message under a white-box model.
In order to achieve the purpose, the technical scheme of the invention is as follows:
(1) and (3) key generation:
(1a) the server takes a 128-bit master key as input, outputs 25 16-bit round keys through key derivation function KDF transformation, namely, the round keys are generated by using the master key;
(1b) the server takes 65536 16-bit strings 0, 1, 10, … and 11111111111111111 as input, applies 25 round keys to sequentially execute an initial round key addition operation and a cycle operation of 24-round group encryption and round key addition on each input bit string, and outputs a lookup table containing 65536 16-bit strings, namely the lookup table is generated by the round keys;
(1c) the server takes an 8 x 8 diagonal matrix formed by 8 random numbers as input, and outputs an 8 x 8 random matrix by using the input matrix preselected by a left-multiplying system;
(2) grouping encryption:
(2a) the server takes a 128-bit plaintext block as input, divides the plaintext block into small blocks, sequentially executes initial round key addition operation and cyclic operation of 24-round group encryption and round key addition on each small block, and then cascades the small blocks;
(2b) performing linear replacement on the cascaded small blocks by using a random matrix, performing exclusive-or operation on the small blocks and a bit string determined by an encryption cycle, and taking an exclusive-or result as the output of the encryption operation of the current round and the input of the encryption operation of the next round;
(2c) circularly executing (2a) to (2b) for 7 times, and taking the output of the last round of encryption operation as the final output 128-bit ciphertext block;
(3) and (3) packet decryption:
(3a) the user equipment takes the 128-bit cipher text packet as input, carries out XOR operation on the input and a bit string determined by the decryption cycle, then carries out linear permutation on the XOR result by applying a random matrix, and divides the result of the linear permutation into a plurality of small packets;
(3b) taking each small group divided in the step (3a) as an index, searching the content corresponding to the index in a lookup table, cascading the content, and taking the cascaded content as the output of the decryption operation of the current round and the input of the decryption operation of the next round;
(3c) and (3a) to (3b) are circularly executed for 7 times, and the output of the last round of decryption operation is used as the final output decrypted 128-bit plaintext packet.
Compared with the prior art, the invention has the following advantages:
1) the generated round key and the random matrix are applied in encryption, and different operations of modular addition, cyclic shift and exclusive or are adopted, so that compared with the prior art, the efficiency of encrypting messages is effectively improved;
2) the invention uses the generated lookup table and random matrix in decryption, and adopts lower round number than the prior art, thereby effectively improving the efficiency of decryption information.
Drawings
FIG. 1 is a flow chart of an implementation of the present invention;
FIG. 2 is a key generation sub-flow diagram of the present invention;
FIG. 3 is a block cipher sub-flow diagram of the present invention;
fig. 4 is a sub-flow diagram of packet decryption in the present invention.
Detailed Description
The invention is described in further detail below with reference to the figures and the specific embodiments.
Referring to fig. 1, the implementation steps of this example are as follows:
step 1: and generating a key.
Referring to fig. 2, the steps are specifically implemented as follows:
(1.1) generating a round key using the master key: the server takes a 128-bit master key as input, and transforms the 128-bit master key through a key derivation function KDF, namely, an output extensible function SHAKE128 in a secure hash algorithm family is adopted to transform the 128-bit master key, and 25 16-bit round keys are output;
(1.2) generating a lookup table with round keys:
the server takes 65536 16-bit strings 0, 1, 10, … and 11111111111111111 as input, applies 25 round keys to sequentially execute initial round key addition operation and 24-round group encryption and round key addition cyclic operation on each input bit string, and outputs a lookup table containing 65536 16-bit strings, which is specifically implemented as follows:
(1.2.1) initial round key plus: the server carries out exclusive or operation on the xth input bit string and the 1 st round key, wherein x is the cycle of generating a lookup table to obtain a 16-bit intermediate bit string;
(1.2.2) group encryption:
the server regards the 16-bit intermediate bit string obtained in the step (1.2.1) as input, keeps the lower 8 bits of the input unchanged, circularly right shifts the upper 8 bits by 7 bits, then performs addition operation with the lower 8 bits with the modulus of 256, and takes the addition operation result as the upper 8 bits and the lower 8 bits of a new 16-bit intermediate value unchanged;
the server keeps the high 8 bits of the new 16-bit middle bit string unchanged, circularly shifts the low 8 bits by 2 bits to the left, then carries out XOR operation with the high 8 bits, and takes the XOR result as the output low 8 bits of the final group encryption, and the high 8 bits are unchanged;
(1.2.3) round keys plus: the server takes the output of (1.2.2) as input, and performs exclusive OR operation on the input and the (i + 1) th round key, wherein i is the round of the group encryption and round key adding circulation operation, and then takes the exclusive OR result as the output of the current round of circulation operation and the input of the next round of circulation operation;
(1.2.4) circularly executing (1.2.2) to (1.2.3) for 24 times, and outputting 1 16-bit string;
(1.2.5) executing (1.2.1) to (1.2.4) circularly for 65536 times, and finally outputting a lookup table containing 65536 16-bit strings;
(1.3) generating a random matrix using the preselected matrix:
(1.3.1) Server from finite Domain space GF (2)16) 8 non-zero random numbers rc are selected0,rc1,…,rc7Form an 8 x 8 diagonal matrix
Figure BDA0002714586890000041
(1.3.2) Server in finite Domain space GF (2)16) Selecting an 8-by-8 maximum distance separable MDS matrix as a preselected matrix;
(1.3.3) the server considers the diagonal matrix obtained in (1.3.1) as input, and uses the input to pre-multiply (1.3.2) the obtained pre-selected matrix, and finally outputs a random matrix of 8 x 8.
Step 2: and (4) encrypting the packets.
Referring to fig. 3, the steps are specifically implemented as follows:
(2.1) the server considers a 128-bit plaintext packet as input and divides the plaintext packet into 8 small blocks of 16 bits from the upper bit to the lower bit;
(2.2) the server takes 8 16-bit tiles as input, and performs an initial round key addition operation and a loop operation of 24-round group encryption and round key addition in parallel on each tile, outputting 8 new 16-bit tiles:
(2.2.1) initial round key plus: the server carries out XOR operation on one small block and the 1 st round key to obtain a 16-bit temporary bit string;
(2.2.2) group encryption:
the server regards the 16-bit temporary bit string obtained in the step (2.2.1) as input, keeps the lower 8 bits of the input unchanged, circularly right shifts the upper 8 bits by 7 bits, then performs addition operation with the lower 8 bits with the modulus of 256, and takes the addition operation result as the upper 8 bits and the lower 8 bits of a new 16-bit temporary bit string unchanged;
the server keeps the high 8 bits of the new 16-bit temporary bit string unchanged, circularly shifts the low 8 bits to the left by 2 bits, then performs exclusive OR operation with the high 8 bits, and uses the exclusive OR result as the output low 8 bits of the final group encryption, and the high 8 bits are unchanged;
(2.2.3) round keys plus: the server takes the output of (2.2.2) as an input, and performs exclusive-or operation on the input of the output and the m +1 th round key, wherein m is the round of the group encryption and round key adding circulation operation, and then the exclusive-or result is taken as the output of the current round of circulation operation and the input of the next round of circulation operation;
(2.2.4) performing the loop from (2.2.2) to (2.2.3) for 24 times, and outputting 1 new 16-bit small block;
(2.3) the server cascades the 8 new 16-bit small blocks obtained in the step (2.2);
(2.4) the server multiplies the cascaded small blocks by the transposition of the random matrix to obtain a new 128-bit string;
(2.5) the server performs exclusive or operation on the new 128-bit string and an encryption round constant (8(j-1) +1| |8(j-1) +2| |. | -8 (j-1) +8), and then takes an exclusive or result as the output of the encryption round operation and the input of the next round encryption operation, wherein j is the encryption cycle number and | is a cascade symbol;
and (2.6) circularly executing the steps from (2.1) to (2.5) for 7 times, and taking the output of the last round of encryption operation as a final output 128-bit ciphertext block.
And step 3: and (6) decrypting the packet.
Referring to fig. 4, the steps are specifically implemented as follows:
(3.1) the user equipment takes the 128-bit ciphertext block as an input, and performs exclusive or operation on the input and a decryption round constant (8(7-k) +1| |8(7-k) +2| | |. | | |8(7-k) +8), wherein k is a decryption round and | | | is a concatenation symbol;
(3.2) the user equipment multiplies the result of the exclusive or of (3.1) by the transpose of the inverse matrix of the random matrix to obtain a 128-bit string after linear permutation;
(3.3) the user equipment divides the linear permuted 128-bit string into 8 small packets with 16 bits from the high order to the low order;
(3.4) the user equipment regards each small packet divided in (3.3) as an index, and searches the content corresponding to the index in a lookup table in parallel to obtain 8 new 16-bit small packets;
(3.5) the user equipment cascades the 8 new 16-bit small packets obtained in the step (3.4), and takes the cascading result as the output of the current round of decryption operation and the input of the next round of decryption operation;
and (3.6) circularly executing (3.1) to (3.5) for 7 times, and taking the output of the last round of decryption operation as the final output of the decrypted 128-bit plaintext packet.
The effects of the present invention can be further illustrated by the following test results:
content of test
Test 1: the number of encryption rounds and the number of clock cycles per byte cpb of this example were tested on an Intel platform and compared with two prior art methods SPNbox and WEM described in the background section, with the results shown in table 1. The Intel platform refers to a notebook computer configured as a 1.6GHz Intel Core i5 CPU.
TABLE 1 comparison of encryption efficiency under Intel platform
Figure BDA0002714586890000051
As can be seen from table 1, this embodiment has a lower number of encryption rounds and cpb compared with the other two encryption methods, indicating that this embodiment has higher encryption efficiency.
And (3) testing 2: the number of decryption rounds and the number of clock cycles per byte cpb of this embodiment were tested on different platforms and compared with the two methods SPNbox and WEM described in the background section, the results of which are shown in table 2. The ARM platform is a QEMU 5.0ARMv8 virtual machine configured with a Cortex-A53 CPU, and the size of the lookup table is the size of a memory occupied by the lookup table.
TABLE 2 comparison of decryption efficiency under Intel and ARM platforms
Figure BDA0002714586890000061
As can be seen from table 2, this embodiment has a lower number of decryption rounds compared to the other two decryption methods, and has a lower cpb on both platforms in the case that the size of the lookup table is the same, which indicates that this embodiment has a higher decryption efficiency.
The foregoing description is only an example of the present invention and is not intended to limit the invention, so that it will be apparent to those skilled in the art that various changes and modifications in form and detail may be made therein without departing from the spirit and scope of the invention.

Claims (9)

1. An encryption and decryption method based on white-box block cipher is characterized by comprising the following steps:
(1) and (3) key generation:
(1a) the server takes a 128-bit master key as input, outputs 25 16-bit round keys through key derivation function KDF transformation, namely, the round keys are generated by using the master key;
(1b) the server takes 65536 16-bit strings 0, 1, 10, … and 11111111111111111 as input, applies 25 round keys to sequentially execute an initial round key addition operation and a cycle operation of 24-round group encryption and round key addition on each input bit string, and outputs a lookup table containing 65536 16-bit strings, namely the lookup table is generated by the round keys;
(1c) the server takes an 8 x 8 diagonal matrix formed by 8 random numbers as input, and outputs an 8 x 8 random matrix by using the input matrix preselected by a left-multiplying system;
(2) grouping encryption:
(2a) the server takes a 128-bit plaintext block as input, divides the plaintext block into small blocks, sequentially executes initial round key addition operation and cyclic operation of 24-round group encryption and round key addition on each small block, and then cascades the small blocks;
(2b) performing linear replacement on the cascaded small blocks by using a random matrix, performing exclusive-or operation on the small blocks and a bit string determined by an encryption cycle, and taking an exclusive-or result as the output of the encryption operation of the current round and the input of the encryption operation of the next round;
(2c) circularly executing (2a) to (2b) for 7 times, and taking the output of the last round of encryption operation as the final output 128-bit ciphertext block;
(3) and (3) packet decryption:
(3a) the user equipment takes the 128-bit cipher text packet as input, carries out XOR operation on the input and a bit string determined by the decryption cycle, then carries out linear permutation on the XOR result by applying a random matrix, and divides the result of the linear permutation into a plurality of small packets;
(3b) taking each small group divided in the step (3a) as an index, searching the content corresponding to the index in a lookup table, cascading the content, and taking the cascaded content as the output of the decryption operation of the current round and the input of the decryption operation of the next round;
(3c) and (3a) to (3b) are circularly executed for 7 times, and the output of the last round of decryption operation is used as the final output decrypted 128-bit plaintext packet.
2. The method according to claim 1, wherein the step (1a) of transforming by the key derivation function KDF to output 25 round keys with 16 bits is to transform the 128-bit master key by using an output scalable function shift 128 in the secure hash algorithm family to output 25 round keys with 16 bits.
3. The method of claim 1, wherein in (1b) 25 round keys generated by the master key are applied, and the initial round key addition operation and the round-robin operation of the 24 round group encryption and the round key addition are sequentially performed on each input bit string, and are implemented as follows:
(1b1) initial round key plus: the server performs exclusive or operation on the input of the server and the 1 st round key to obtain a 16-bit intermediate bit string;
(1b2) group encryption:
the server regards the 16-bit intermediate bit string obtained in (1b1) as input, keeps the lower 8 bits of the input unchanged, circularly right shifts the upper 8 bits by 7 bits, then performs addition operation with the lower 8 bits of the input with the modulus of 256, and takes the addition operation result as the upper 8 bits and the lower 8 bits of a new 16-bit string to be unchanged;
the server keeps the high 8 bits of the new 16-bit string unchanged, circularly shifts the low 8 bits by 2 bits to the left, then carries out XOR operation with the high 8 bits, and takes the XOR result as the output low 8 bits of the final group encryption, and the high 8 bits are unchanged;
(1b3) round keys plus: the server takes the output of (1b2) as input, and performs exclusive-or operation on the input of the input and the (i + 1) th round key, wherein i is the round of circulation, and then the exclusive-or result is taken as the output of the round of circulation operation and the input of the next round of circulation operation;
(1b4) the loop is executed 24 times in total (1b2) to (1b3), and the output of the last round of loop operation is taken as the final output 16-bit string.
4. The method according to claim 1, wherein the 8 x 8 diagonal matrix of 8 random numbers in (1c) means that the server first derives from the finite field space GF (2)16) 8 non-zero random numbers rc are selected0,rc1,…,rc7Re-use rc0,rc1,…,rc7Form an 8 x 8 diagonal matrix
Figure FDA0002714586880000021
5. The method according to claim 1, wherein the preselected matrix in (1c) is finite field space GF (2)16) The maximum distance of 8 x 8 defined above may divide the MDS matrix.
6. The method according to claim 1, wherein the server dividing the 128-bit plaintext block into small blocks in (2a) means that the server divides the 128-bit plaintext block into 8 bit strings of 16 bits from upper to lower, i.e. 8 small blocks of 16 bits.
7. The method according to claim 1, wherein the linear permutation of the concatenated small blocks by applying the random matrix in (2b) means that the server regards the concatenated small blocks as input, multiplies the input by the transpose of the random matrix, and takes the result of the multiplication as the output of the linear permutation of the concatenated small blocks.
8. The method according to claim 1, wherein the bit string determined by the round of encryption in (2b) refers to a 128-bit string (8(j-1) +1| |8(j-1) +2| |.
9. The method according to claim 1, wherein the linear permutation of the xor result by applying the random matrix in (3a) means that the server considers the xor result as an input, multiplies the input by the transpose of the inverse matrix of the random matrix, and takes the result of the multiplication by the left as an output after the linear permutation of the xor result.
CN202011068447.4A 2020-10-09 2020-10-09 Encryption and decryption method based on white-box block cipher Active CN112199696B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011068447.4A CN112199696B (en) 2020-10-09 2020-10-09 Encryption and decryption method based on white-box block cipher

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011068447.4A CN112199696B (en) 2020-10-09 2020-10-09 Encryption and decryption method based on white-box block cipher

Publications (2)

Publication Number Publication Date
CN112199696A true CN112199696A (en) 2021-01-08
CN112199696B CN112199696B (en) 2022-12-06

Family

ID=74012988

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011068447.4A Active CN112199696B (en) 2020-10-09 2020-10-09 Encryption and decryption method based on white-box block cipher

Country Status (1)

Country Link
CN (1) CN112199696B (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112910630A (en) * 2021-02-02 2021-06-04 浙江大华技术股份有限公司 Method and device for replacing expanded key
CN113541942A (en) * 2021-07-12 2021-10-22 西安电子科技大学 Digital content encryption and decryption method based on ARX white-box block cipher
CN113656810A (en) * 2021-07-16 2021-11-16 五八同城信息技术有限公司 Application program encryption method and device, electronic equipment and storage medium
CN114491587A (en) * 2022-01-13 2022-05-13 西安电子科技大学 White-box password encryption and decryption method based on SM 4-like structure

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100080395A1 (en) * 2006-11-17 2010-04-01 Koninklijke Philips Electronics N.V. Cryptographic method for a white-box implementation
WO2011025361A1 (en) * 2009-08-26 2011-03-03 Mimos Berhad Method for enhancing cryptography operation
CN109450632A (en) * 2019-01-11 2019-03-08 西安电子科技大学 Key recovery method based on whitepack block cipher CLEFIA analysis
CN109981256A (en) * 2019-04-03 2019-07-05 华南师范大学 Whitepack block cipher building method and system based on FeisitelBox structure
CN110278072A (en) * 2019-07-11 2019-09-24 北京电子科技学院 One kind 16 takes turns SM4-128/128 whitepack password implementation method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100080395A1 (en) * 2006-11-17 2010-04-01 Koninklijke Philips Electronics N.V. Cryptographic method for a white-box implementation
WO2011025361A1 (en) * 2009-08-26 2011-03-03 Mimos Berhad Method for enhancing cryptography operation
CN109450632A (en) * 2019-01-11 2019-03-08 西安电子科技大学 Key recovery method based on whitepack block cipher CLEFIA analysis
CN109981256A (en) * 2019-04-03 2019-07-05 华南师范大学 Whitepack block cipher building method and system based on FeisitelBox structure
CN110278072A (en) * 2019-07-11 2019-09-24 北京电子科技学院 One kind 16 takes turns SM4-128/128 whitepack password implementation method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Y. JIA等: "《2016 International Conference on Computer, Information and Telecommunication Systems (CITS)》", 18 August 2016 *
姚思等: "SM4算法的一种新型白盒实现", 《密码学报》 *
陈明: "白盒密码安全性分析与研究", 《网络安全技术与应用》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112910630A (en) * 2021-02-02 2021-06-04 浙江大华技术股份有限公司 Method and device for replacing expanded key
CN112910630B (en) * 2021-02-02 2022-12-06 浙江大华技术股份有限公司 Method and device for replacing expanded key
CN113541942A (en) * 2021-07-12 2021-10-22 西安电子科技大学 Digital content encryption and decryption method based on ARX white-box block cipher
CN113541942B (en) * 2021-07-12 2022-06-07 西安电子科技大学 Digital content encryption and decryption method based on ARX white-box block cipher
CN113656810A (en) * 2021-07-16 2021-11-16 五八同城信息技术有限公司 Application program encryption method and device, electronic equipment and storage medium
CN114491587A (en) * 2022-01-13 2022-05-13 西安电子科技大学 White-box password encryption and decryption method based on SM 4-like structure
CN114491587B (en) * 2022-01-13 2024-03-19 西安电子科技大学 White-box password encryption and decryption method based on SM 4-like structure

Also Published As

Publication number Publication date
CN112199696B (en) 2022-12-06

Similar Documents

Publication Publication Date Title
CN110677237B (en) File encryption method with chaos-like characteristic
Zhu et al. Cryptanalyzing and improving a novel color image encryption algorithm using RT-enhanced chaotic tent maps
CN112199696B (en) Encryption and decryption method based on white-box block cipher
CN105681025B (en) A kind of safe whitepack implementation method and device of country password standard algorithm SM4
Alenezi et al. Symmetric encryption algorithms: Review and evaluation study
Goyal et al. Modified caesar cipher for better security enhancement
Seyedzade et al. A novel image encryption algorithm based on hash function
CN107147487B (en) Symmetric key random block cipher
JPH1075240A (en) Method for protecting data transmission and device for ciphering or deciphering data
Wong et al. Embedding compression in chaos-based cryptography
Saraswathi et al. A block cipher algorithm for multimedia content protection with random substitution using binary tree traversal
US20080243977A1 (en) Pseudorandom number generator and encrytion device using the same
Joshy et al. Text to image encryption technique using RGB substitution and AES
Natarajan et al. A novel approach for data security enhancement using multi level encryption scheme
US20030165242A1 (en) Confusion encryption
CN114826560B (en) Lightweight block cipher CREF implementation method and system
Subramanian et al. Adaptive counter clock gated S-Box transformation based AES algorithm of low power consumption and dissipation in VLSI system design
CN112507357B (en) Multi-stage interface design method based on key generator
Bajaj et al. AES algorithm for encryption
Singh et al. Study & analysis of cryptography algorithms: RSA, AES, DES, T-DES, blowfish
CN111314052B (en) Data encryption and decryption method
Patro et al. Text-to-Image Encryption and Decryption Using Piece Wise Linear Chaotic Maps
Sharma et al. Comparative analysis of block key encryption algorithms
Jian-dong et al. A fast new one-way cryptographic hash function
CN117134914B (en) One-time-pad random key stream encryption algorithm and system based on hardware characteristics

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant