CN110166223A - A kind of Fast Software implementation method of the close SM4 of state - Google Patents

A kind of Fast Software implementation method of the close SM4 of state Download PDF

Info

Publication number
CN110166223A
CN110166223A CN201910428748.4A CN201910428748A CN110166223A CN 110166223 A CN110166223 A CN 110166223A CN 201910428748 A CN201910428748 A CN 201910428748A CN 110166223 A CN110166223 A CN 110166223A
Authority
CN
China
Prior art keywords
bit
data
close
software implementation
transformation
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
CN201910428748.4A
Other languages
Chinese (zh)
Other versions
CN110166223B (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.)
Beihang University
Original Assignee
Beihang 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 Beihang University filed Critical Beihang University
Priority to CN201910428748.4A priority Critical patent/CN110166223B/en
Publication of CN110166223A publication Critical patent/CN110166223A/en
Application granted granted Critical
Publication of CN110166223B publication Critical patent/CN110166223B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • H04L2209/125Parallelization or pipelining, e.g. for accelerating processing of cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Complex Calculations (AREA)

Abstract

The present invention provides the Fast Software implementation methods of the close SM4 of state a kind of, this method comprises: data layout step, key schedule step, iterate to calculate step, data deformat step, inverted sequence calculates step.The present invention uses bit microtomy, SIMD technology and compound field technique, realize the parallel encryption of 256 groups of clear-text messages, nonlinear transformation in SM4 is realized in compositum, and merge nonlinear transformation and linear transformation compression, so that the calculating of the synthesis displacement T in SM4 Encryption Algorithm is by an original GF (28) on inversion operation, affine transformation, 4 ring shift lefts and 4 XOR operation are reduced to a GF (2 twice4) on inversion operation, affine transformation, three times finite field gf (2 twice4) on multiplying and 4 times after operation, reduce computation complexity, improve execution efficiency.

Description

A kind of Fast Software implementation method of the close SM4 of state
Technical field
The present invention relates to computer security technical field, especially a kind of SM4 encryption method
Background technique
The basic task of cryptographic system when data encryption.By the relationship of encryption key and decruption key, current various numbers Two major classes can be divided into according to encryption system: symmetric password encryption system and public key cryptography encryption system.Common symmetric cryptography side Method has DES, AES, IDEA, RC6 etc..
SM4 is a block cipher, and plaintext, key, ciphertext are all 128 bits, and encryption and decryption keys are identical.It is logical The nonlinear iteration round function of 32 circulations is crossed to realize encryption and decryption.Including nonlinear transformation s box, and by recycling The linear transformation that exclusive or is constituted.Other than the s box of 256 bytes, other two groups of parameters FK and cK (specific data are also defined Reference password number board web).Basic process is that 128 bit keys are divided into 4 groups for one group according to 32 bit first, then according to key Expansion algorithm generates 32 group of 32 bit round key;Again 128 bit datas of input also according to one group of 32 bit be divided into 4 groups into Row loop computation.
Summary of the invention
The present invention proposes following improved optimization method for software for the defects of current software implementation method.
A kind of Fast Software implementation method of the close SM4 of state, comprising:
The data of 256 group of 128 bit are expressed as X by data layout step[256][128], X[i]Indicate i-th group of data, i= 0,1 .., 255, there are bit matrix transposed transform TRANS256 (): X[128][256]=TRANS (X[256][128]), feature exists In inputting as 256*128 bit, export as 128*256 bit, realize and the same bit of 256 groups of data is gathered in same In counterfoil;
Kth wheel encryption key is denoted as RK by key schedule stepK, [32], k=0,1 ..., 31, there are transformation TRANS32 (): TRKK, [32] [256]=TRANS32 (RKK, [32]), which is characterized in that it defines { }256It indicates that element is repeated 256 times and spelled It is connected together, then TRKK, [i]={ RKK, [i]}256, realize and i-th of bit of key RK replicated into 256 i-th for being stored in TRK;
Step is iterated to calculate, the data after data layout are denoted asX256It indicates Two-dimensional array X[128][256],It is directed toward X[128][256]The i-th * 32, i=0,1,2,3, by the kth wheel after key schedule Encryption key is denoted asCarry out 32 iterative calculation: Wherein,For XOR operation;
Data deformat step, there are identical bit matrix transposition TRANS256 (): X[256][128]=TRANS256 (X[1286][256]), which is characterized in that by the data after iterative calculation from 128 group of 256 bit data organizer after slice Formula is restored to normal 256 group of 128 bit data;
Inverted sequence calculates step, enables256 group of 128 bit then exported Encryption data be expressed as
Wherein, outputting and inputting for T of synthesis displacement is all 32*256 bit, compound by nonlinear transformation τ and linear transformation L Into T ()=L (τ ()).
Further, regard 256 group of 128 bit data as two 128 groups of 128 bit datas, simultaneously using SIMD thought Row realizes data layout and data deformat, completes bit matrix transposition using 7 groups of masks.16 systems of 7 groups of masks indicate are as follows:
MASK0=55555555555555555555555555555555555555555555555555 55555555555555
MASK1=33333333333333333333333333333333333333333333333333 33333333333333
MASK2=0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F 0F0F0F0F0F0F0F
MASK3=00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00 FF00FF00FF00FF
MASK4=0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF00 00FFFF0000FFFF
MASK5=00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00 000000FFFFFFFF
MASK6=0000000000000000FFFFFFFFFFFFFFFF0000000000000000FF FFFFFFFFFFFFFF
Every group of mask is 128 bits.
Further, 256 group of 32 bit input data is expressed as:Wherein,It is 8*256 bit, then
Further, the function s () in the nonlinear transformation τ in synthesis transformation T are as follows: s (x256)=I (x256*A1+ C1)*A2+C2, wherein I () is compositum GF ((24)2) on inversion operation, x256For the row vector of 8*256 bit, A1, C1, A2, C2Form it is as follows:
C1={ 10001110 }
C2={ 11010011 }
Further,
Select h, g ∈ GF ((24)2), h=(h1* x+h0) it is g=(g1* x+g0) inverse element, wherein h1, h0, g1, g0∈ GF(24).So have
Wherein, the size of h, g are 8*256 bits,For XOR operation, multiplication and invert as finite field gf (24) on operation, Thus by compositum GF ((24)2) on invert and be converted to finite field gf (24) on multiplication and invert.
Definition < < < indicates ring shift left operation,Indicate XOR operation;It is known It enablesThenEnable B256=τ (A256), then It can obtain:
Wherein,For exclusive or plus, so as to which linear transformation optimization is fallen.
Further, a is enabled256, b256, c256∈GF(24), and c256=a256*b256Then (2 GF4) on multiplying are as follows:
Wherein,For exclusive or addition, with the default expression of operation.
Further, a is enabled256, c256∈GF(24), and c256=(a256)-1Then (2 GF4) on inversion operation are as follows:
Wherein ,+be or or operation ,~be inverse, with the default expression of operation.
Technical effect of the invention are as follows: handled using bit microtomy using AVX2 parallel instructions in conjunction with SIMD thought 256 groups of data are decomposed the calculating in SM4 in synthesis displacement T, using compositum decomposition technique so that SM4 Encryption Algorithm In nonlinear transformation calculating inverted by an original GF (2^8), twice affine transformation be reduced to a GF (2^4) invert, Affine transformation, the three times multiplying on GF (2^4) twice, reduce computation complexity, maximize parallel data processing, improve Execution efficiency.
Detailed description of the invention
Fig. 1 is the system architecture diagram for the SM4 encryption method that the present invention designs;
Fig. 2 is the diagram of compositum inversion algorithms in the present invention.
Specific embodiment
It 1 and 2 is specifically described with reference to the accompanying drawing
Fig. 1 shows the SM4 encryption method that the present invention designs, this method comprises:
The data of 256 group of 128 bit are expressed as X by data layout step[256][128], X[i]Indicate i-th group of data, i= 0,1 .., 255, there are bit matrix transposed transform TRANS256 (): X[128][256]=TRANS (X[256][128]), feature exists In inputting as 256*128 bit, export as 128*256 bit, realize and the same bit of 256 groups of data is gathered in same In counterfoil;
Kth wheel encryption key is denoted as RK by key schedule stepK, [32], k=0,1 ..., 31, there are transformation TRANS32 (): TRKK, [32] [256]=TRANS32 (RKK, [32]), which is characterized in that it defines { }256It indicates that element is repeated 256 times and spelled It is connected together, then TRKK, [i]={ RKK, [i]}256, realize and i-th of bit of key RK replicated into 256 i-th for being stored in TRK;
Step is iterated to calculate, the data after data layout are denoted asX256It indicates Two-dimensional array X[128][256],It is directed toward X[128][256]The i-th * 32, i=0,1,2,3, by the kth wheel after key schedule Encryption key is denoted asCarry out 32 iterative calculation: Wherein,For XOR operation;
Data deformat step, there are identical bit matrix transposition TRANS256 (): X[256][128]=TRANS256 (X[1286][256]), which is characterized in that by the data after iterative calculation from 128 group of 256 bit data organizer after slice Formula is restored to normal 256 group of 128 bit data;
Inverted sequence calculates step, enables256 group of 128 bit then exported Encryption data be expressed as
Wherein, outputting and inputting for T of synthesis displacement is all 32*256 bit, compound by nonlinear transformation τ and linear transformation L Into T ()=L (τ ()).
In data layout step, need to complete bit matrix transposition by 7 groups of masks.256 group of 128 bit data is seen Two 128 groups of 128 bit datas are done, it is complete using 7 groups of masks using the Parallel Implementation data layout of SIMD thought and data deformat At bit matrix transposition.16 systems of 7 groups of masks indicate are as follows:
MASK0=55555555555555555555555555555555555555555555555555 55555555555555
MASK1=33333333333333333333333333333333333333333333333333 33333333333333
MASK2=0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F0F 0F0F0F0F0F0F0F
MASK3=00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00FF00 FF00FF00FF00FF
MASK4=0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF0000FFFF00 00FFFF0000FFFF
MASK5=00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00 000000FFFFFFFF
MASK6=0000000000000000FFFFFFFFFFFFFFFF0000000000000000FF FFFFFFFFFFFFFF
Every group of mask is 128 bits.
In actual encrypted calculating, 256 group of 32 bit input data is expressed as:Its In,It is 8*256 bit, then
Here is emphasis of the invention, by finite field gf (28) on invert and be converted to compositum GF ((24)2) on ask It is inverse, reduce computation complexity.The function s () in nonlinear transformation τ in synthesis transformation T are as follows: s (x256)=I (x256*A1+ C1)*A2+C2, wherein I () is compositum GF ((24)2) on inversion operation, x256For the row vector of 8*256 bit, A1, C1, A2, C2Form it is as follows:
C1={ 10001110 }
C2={ 11010011 }
Further,
Select h, g ∈ GF ((24)2), h=(h1* x+h0) it is g=(g1* x+g0) inverse element, wherein h1, h0, g1, g0∈ GF(24).So have
Wherein, the size of h, g are 8*256 bits,For XOR operation, multiplication and invert as finite field gf (24) on operation, Thus by compositum GF ((24)2) on invert and be converted to finite field gf (24) on multiplication and invert.
It, can be directly different with target by the result of linear displacement or, to which optimization is fallen to move due to using bit to be sliced Bit manipulation.Definition< < < indicates ring shift left operation,Indicate XOR operation;It is known It enablesThenEnable B256=τ (A256), then It can obtain:
Further, a is enabled256, b256, c256∈GF(24), and c256=a256*b256Then (2 GF4) on multiplying are as follows:
Wherein,For exclusive or addition, with the default expression of operation.
Enable a256, c256∈GF(24), and c256=(a256)-1Then (2 GF4) on inversion operation are as follows:
Wherein ,+be or or operation ,~be inverse, with the default expression of operation.
A kind of shortcut technique of software realization block cipher algorithm is compound domain decomposition method: the complicated finite field of S box is transported It calculates isomorphism to be mapped in compositum and realizes, result is obtained by operation is opened so as to avoid memory without tabling look-up when encryption and decryption operation Pin.The input data of S box inquiring arithmetic is 8 bits, and output data is also 8 bits, and the software checking book algorithm of SM4 algorithm needs 8 bit of 256x=2048 bit sizes space is occupied in memory.S box operation is mapped in compositum and realizes by the present invention, nothing Any look-up table need to be stored in advance, the operation of S box is completed by logical operation, computation complexity is greatly reduced, improves execution Efficiency.
It should be noted last that: above embodiments only illustrate and not to limitation technical solution of the present invention, although reference Above-described embodiment describes the invention in detail, those skilled in the art should understand that: it still can be to this hair Bright the latter's equivalent replacement of modifying without departing from the spirit or scope of the invention, or any substitutions should all It is included within the scope of the claims of the present invention.

Claims (9)

1. a kind of Fast Software implementation method of the close SM4 of state characterized by comprising
Data layout step:
The data of 256 group of 128 bit are expressed as X[256][128], X[i]Indicate i-th group of data, i=0,1 ..., 255, there are ratios Special matrix transposed transform TRANS256 (): so that X[128][256]=TRANS (X[256][128]), it inputs as 256*128 bit, it is defeated It is out 128*256 bit, the same bit of 256 groups of data is gathered in same memory block by realization;
Key schedule step:
Kth wheel encryption key is denoted as RKK, [32], k=0,1 ..., 31, there are transformation TRANS32 (): TRKK, [32] [256]= TRANS32(RKK, [32]), it defines { }256It indicates that element is repeated 256 times and is stitched together, then TRKK, [i]= {RKK, [i]}256, realize and i-th of bit of key RK replicated into 256 i-th for being stored in TRK;
Iterate to calculate step:
Data after data layout are denoted asX256Indicate two-dimensional array X[128][256],It is directed toward X[128][256]The i-th * 32, i=0,1,2,3, the kth wheel encryption key after key schedule is denoted asCarry out 32 iterative calculation: Wherein,For XOR operation;
Data deformat step:
There are bit matrix transposition TRANS256 (): X[256][128]=TRANS256 (X[128][256]), it will be after iterative calculation Data be restored to normal 256 group of 128 bit data from 128 group of 256 bit data organizational form after slice;
Inverted sequence calculates step:
It enablesThe encryption data of 256 group of 128 bit then exported is expressed as
Wherein, outputting and inputting for T of synthesis displacement is all 32*256 bit, is combined by nonlinear transformation τ and linear transformation L T ()=L (τ ()).
2. the Fast Software implementation method of the close SM4 of state according to claim 1, which is characterized in that by 256 group of 128 bit Data regard two 128 groups of 128 bit datas as, realize data layout and data deformat, complete bit matrix using 7 groups of masks Transposition;16 systems of 7 groups of masks indicate are as follows:
MASK0=55555555555555555555555555555555555555555555555555 55555555555555
MASK1=33333333333333333333333333333333333333333333333333 33333333333333
MASK2=OFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOFOF OFOFOFOFOFOFOF
MASK3=OOFFOOFFOOFFOOFFOOFFOOFFOOFFOOFFOOFFOOFFOOFFOOFFOO FFOOFFOOFFOOFF
MASK4=OOOOFFFFOOOOFFFFOOOOFFFFOOOOFFFFOOOOFFFFOOOOFFFFOO OOFFFFOOOOFFFF
MASK5=OOOOOOOOFFFFFFFFOOOOOOOOFFFFFFFFOOOOOOOOFFFFFFFFOO OOOOOOFFFFFFFF
MASK6=OOOOOOOOOOOOOOOOFFFFFFFFFFFFFFFFOOOOOOOOOOOOOOOOFF FFFFFFFFFFFFFF
Every group of mask is 128 bits.
3. the Fast Software implementation method of the close SM4 of state according to claim 1, which is characterized in that in iterative calculation step In: 256 group of 32 bit input data is expressed as:Wherein,It is 8* 256 bits, then
4. the Fast Software implementation method of the close SM4 of state according to claim 3, which is characterized in that by finite field gf (28) on Affine transformation in conjunction with isomorphism mapping matrix, thus by finite field gf (28) on affine transformation twice be transformed to compositum GF ((24)2) on affine transformation, synthesis transformation T in nonlinear transformation τ in function S () are as follows: S (x256)=I (x256*A1+ C1)*A2+C2, wherein I () is compositum GF ((24)2) on inversion operation, x256For the row vector of 8*256 bit, A1, C1, A2, C2Form it is as follows:
C1={ 10001110 }
C2={ 11010011 }.
5. according to right want 4 described in the close SM4 of state Fast Software implementation method, which is characterized in that
6. the Fast Software implementation method of the close SM4 of state according to claim 4, which is characterized in that selection h, g ∈ GF ((24)2), h =(h1* x+h0) it is g=(g1* x+g0) inverse element, wherein h1, h0, g1, g0∈GF(24);So have
Wherein, the size of h, g are 8*256 bits,For XOR operation, multiplication and invert as finite field gf (24) on operation, from And further by compositum GF ((24)2) on once invert and be converted to finite field gf (24) on once invert and multiplication three times.
7. the Fast Software implementation method of the close SM4 of state according to claim 5, which is characterized in that definition < < < indicates ring shift left operation, Indicate XOR operation;It is knownIt enables Then Enable B256=τ (A256), thenWherein, 0≤k≤ 31, it can obtain:
Wherein,Plus, by sectioning, it may be implemented linear transformation by four times original ring shift lefts and four times for exclusive or Excluslve-OR simpllfy is four exclusive or, and ring shift left can optimize to fall by direct index.
8. the Fast Software implementation method of the close SM4 of state according to claim 6, which is characterized in that enable a256, b256, c256∈GF (24) and c256=a256*b256, then (2 GF4) on multiplying are as follows:
Wherein,For exclusive or addition, with the default expression of operation.
9. the Fast Software implementation method of the close SM4 of state according to claim 6, which is characterized in that enable a256, c256∈GF(24), and c256=(a256)-1, then GF (24) on inversion operation are as follows:
Wherein ,+be or or operation ,~be inverse, with the default expression of operation.
CN201910428748.4A 2019-05-22 2019-05-22 Rapid implementation method of cryptographic block cipher algorithm SM4 Active CN110166223B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910428748.4A CN110166223B (en) 2019-05-22 2019-05-22 Rapid implementation method of cryptographic block cipher algorithm SM4

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910428748.4A CN110166223B (en) 2019-05-22 2019-05-22 Rapid implementation method of cryptographic block cipher algorithm SM4

Publications (2)

Publication Number Publication Date
CN110166223A true CN110166223A (en) 2019-08-23
CN110166223B CN110166223B (en) 2021-08-13

Family

ID=67631792

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910428748.4A Active CN110166223B (en) 2019-05-22 2019-05-22 Rapid implementation method of cryptographic block cipher algorithm SM4

Country Status (1)

Country Link
CN (1) CN110166223B (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111736902A (en) * 2020-07-16 2020-10-02 北京炼石网络技术有限公司 Parallel computing method and device of SM4 based on SIMD (Single instruction multiple data) instructions and readable storage medium
CN111865559A (en) * 2020-06-16 2020-10-30 郑州信大捷安信息技术股份有限公司 Rapid realization method and device for SM4 algorithm
CN112507644A (en) * 2020-12-03 2021-03-16 湖北大学 Optimized SM4 algorithm linear layer circuit
CN113922948A (en) * 2021-10-13 2022-01-11 中国人民解放军国防科技大学 Compound domain round function-based SM4 cryptographic algorithm data encryption method and system
CN114091086A (en) * 2022-01-14 2022-02-25 麒麟软件有限公司 Rapid realization method of SM4 algorithm based on bit slice
CN114143413A (en) * 2021-11-26 2022-03-04 佛山芯珠微电子有限公司 Image data PUF (physical unclonable function) security encryption system and encryption method
CN114244496A (en) * 2021-12-01 2022-03-25 华南师范大学 SM4 encryption and decryption algorithm parallelization realization method based on tower domain optimization S box
CN114710285A (en) * 2022-05-19 2022-07-05 北京大学 High-performance SM4 bit slice optimization method for heterogeneous parallel architecture

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1719766A (en) * 2005-07-21 2006-01-11 北京中星微电子有限公司 Sbox module optimizing method and circuit in AES encryption and decryption circuit
CN104639314A (en) * 2014-12-31 2015-05-20 深圳先进技术研究院 Device based on AES (advanced encryption standard) encryption/decryption algorithm and pipelining control method
CN105490802A (en) * 2015-11-27 2016-04-13 桂林电子科技大学 Improved SM4 parallel encryption and decryption communication method based on GPU (Graphics Processing Unit)
CN105515758A (en) * 2015-11-27 2016-04-20 桂林电子科技大学 Data parallel cryptographic communication method and system based on Modbus protocol
US20160231991A1 (en) * 2015-02-05 2016-08-11 Weng Tianxiang Systematic method of coding wave-pipelined circuits in HDL
CN106712930A (en) * 2017-01-24 2017-05-24 北京炼石网络技术有限公司 SM4 encryption method and device
CN108650072A (en) * 2018-03-28 2018-10-12 杭州朔天科技有限公司 It is a kind of to support a variety of symmetric cryptographic algorithm chips and its anti-attack circuit implementation method

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1719766A (en) * 2005-07-21 2006-01-11 北京中星微电子有限公司 Sbox module optimizing method and circuit in AES encryption and decryption circuit
CN104639314A (en) * 2014-12-31 2015-05-20 深圳先进技术研究院 Device based on AES (advanced encryption standard) encryption/decryption algorithm and pipelining control method
US20160231991A1 (en) * 2015-02-05 2016-08-11 Weng Tianxiang Systematic method of coding wave-pipelined circuits in HDL
CN105490802A (en) * 2015-11-27 2016-04-13 桂林电子科技大学 Improved SM4 parallel encryption and decryption communication method based on GPU (Graphics Processing Unit)
CN105515758A (en) * 2015-11-27 2016-04-20 桂林电子科技大学 Data parallel cryptographic communication method and system based on Modbus protocol
CN106712930A (en) * 2017-01-24 2017-05-24 北京炼石网络技术有限公司 SM4 encryption method and device
CN108650072A (en) * 2018-03-28 2018-10-12 杭州朔天科技有限公司 It is a kind of to support a variety of symmetric cryptographic algorithm chips and its anti-attack circuit implementation method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
李军 等: "SM4分组密码算法可编程实现研究", 《通信技术》 *
梁浩 等: "基于复合域的SM4算法的设计与实现", 《微电子学与计算机》 *
郎欢 等: "SM4的快速软件实现技术", 《中国科学院大学学报》 *

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111865559B (en) * 2020-06-16 2022-02-18 郑州信大捷安信息技术股份有限公司 Rapid realization method and device for SM4 algorithm
CN111865559A (en) * 2020-06-16 2020-10-30 郑州信大捷安信息技术股份有限公司 Rapid realization method and device for SM4 algorithm
CN111736902B (en) * 2020-07-16 2022-04-19 北京炼石网络技术有限公司 Parallel computing method and device of SM4 based on SIMD (Single instruction multiple data) instructions and readable storage medium
CN111736902A (en) * 2020-07-16 2020-10-02 北京炼石网络技术有限公司 Parallel computing method and device of SM4 based on SIMD (Single instruction multiple data) instructions and readable storage medium
CN112507644B (en) * 2020-12-03 2021-05-14 湖北大学 Optimized SM4 algorithm linear layer circuit
CN112507644A (en) * 2020-12-03 2021-03-16 湖北大学 Optimized SM4 algorithm linear layer circuit
CN113922948A (en) * 2021-10-13 2022-01-11 中国人民解放军国防科技大学 Compound domain round function-based SM4 cryptographic algorithm data encryption method and system
CN113922948B (en) * 2021-10-13 2023-10-03 中国人民解放军国防科技大学 SM4 data encryption method and system based on composite domain round function
CN114143413A (en) * 2021-11-26 2022-03-04 佛山芯珠微电子有限公司 Image data PUF (physical unclonable function) security encryption system and encryption method
CN114143413B (en) * 2021-11-26 2023-11-03 佛山芯珠微电子有限公司 Image data PUF (physical unclonable function) secure encryption system and encryption method
CN114244496A (en) * 2021-12-01 2022-03-25 华南师范大学 SM4 encryption and decryption algorithm parallelization realization method based on tower domain optimization S box
CN114244496B (en) * 2021-12-01 2023-07-18 华南师范大学 SM4 encryption and decryption algorithm parallelization realization method based on tower domain optimization S box
CN114091086A (en) * 2022-01-14 2022-02-25 麒麟软件有限公司 Rapid realization method of SM4 algorithm based on bit slice
CN114710285A (en) * 2022-05-19 2022-07-05 北京大学 High-performance SM4 bit slice optimization method for heterogeneous parallel architecture

Also Published As

Publication number Publication date
CN110166223B (en) 2021-08-13

Similar Documents

Publication Publication Date Title
CN110166223A (en) A kind of Fast Software implementation method of the close SM4 of state
CN106788974B (en) Mask S box, grouping key calculation unit, device and corresponding construction method
Zhou et al. Quantum image encryption based on generalized Arnold transform and double random-phase encoding
CN106921487B (en) Reconfigurable S-box circuit structure
CN106685663B (en) The encryption method and circuit of error problem concerning study in a kind of annulus
Chen et al. High performance data encryption with AES implementation on FPGA
CN106712930A (en) SM4 encryption method and device
Belazi et al. Algebraic analysis of a RGB image encryption algorithm based on DNA encoding and chaotic map
CN104639314A (en) Device based on AES (advanced encryption standard) encryption/decryption algorithm and pipelining control method
Das et al. Programmable cellular automata based efficient parallel AES encryption algorithm
KR20180081559A (en) Generate key sequence for encryption operation
CN110880967B (en) Method for parallel encryption and decryption of multiple messages by adopting packet symmetric key algorithm
CN107181586B (en) Reconfigurable S-box circuit structure
CN111736902B (en) Parallel computing method and device of SM4 based on SIMD (Single instruction multiple data) instructions and readable storage medium
KR100800468B1 (en) Hardware cryptographic engine and method improving power consumption and operation speed
Coron et al. Side-channel masking with pseudo-random generator
CN109033892B (en) Round conversion multiplexing circuit based on synthetic matrix and AES decryption circuit
Singh et al. An efficient hardware design and implementation of advanced encryption standard (AES) algorithm
JP5689826B2 (en) Secret calculation system, encryption apparatus, secret calculation apparatus and method, program
GADED et al. Composite field arithematic based s-box for aes algorithm
Acharya Image encryption using a new chaos based encryption algorithm
Buell Modern symmetric ciphers—Des and Aes
KR20050092698A (en) A small hardware implementation of the subbyte function of rijndael
CN110266481A (en) Rear quantum Encrypt and Decrypt method and decryption device based on matrix
Bajaj et al. AES algorithm for encryption

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