CN106850189A - The method and device of operand in a kind of reduction SM3 cryptographic Hash algorithms - Google Patents

The method and device of operand in a kind of reduction SM3 cryptographic Hash algorithms Download PDF

Info

Publication number
CN106850189A
CN106850189A CN201710073997.7A CN201710073997A CN106850189A CN 106850189 A CN106850189 A CN 106850189A CN 201710073997 A CN201710073997 A CN 201710073997A CN 106850189 A CN106850189 A CN 106850189A
Authority
CN
China
Prior art keywords
value
formula
iterative
cryptographic hash
bit
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.)
Pending
Application number
CN201710073997.7A
Other languages
Chinese (zh)
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.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
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 Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN201710073997.7A priority Critical patent/CN106850189A/en
Publication of CN106850189A publication Critical patent/CN106850189A/en
Pending legal-status Critical Current

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)
  • Error Detection And Correction (AREA)

Abstract

The embodiment of the invention discloses a kind of method and device of operand in reduction SM3 cryptographic Hash algorithms, more serial addition computing is substituted using parallel addition operations, serial addition number of calculations is reduced, so as to reduce computing time delay, SM3 cryptographic Hash algorithm arithmetic speeds is improved.

Description

The method and device of operand in a kind of reduction SM3 cryptographic Hash algorithms
Technical field
The present invention relates to internet of things intelligent household safety chip application field, more particularly to a kind of reduction SM3 cryptographic Hash The method and device of operand in algorithm.
Background technology
Smart home is in a kind of early stage of explosive growth, Internet of product be today's society most main flow product it One, live closely bound up with human world.Internet of product be also safely we need now consider it is most important because One of element.Core technology-the cryptographic technique of protection Internet of Things safety also highlights all the more its importance.Cryptographic technique one from ancient times to the present Directly all used widely, with the fast development of the cyber-net communication technology, increasing information needs to be subject to Strict secrecy, cryptography has also gradually come into the daily life of the public.Later 1970s, hash function is drawn Enter cryptography, it is indispensable at the aspect such as data integrity, construction digital signature and certificate scheme.
SM3 cryptographic Hash algorithms are the cryptographic Hash standards for business that State Commercial Cryptography Administration of China announces for 2010.Should By message filling, extension, Iteration Contraction and the several parts of Hash Value, wherein Iteration Contraction is cryptographic Hash algorithm to cryptographic algorithm In core the most part.The following is the partial routine of cipher algorithm iteration compression:
SS1j←((Aj-1< < < 12)+Ej-1+(Tj< < < j)) < < < 7
TT1j←FFj(Aj-1, Bj-1, Cj-1)+Dj-1+SS2j+W0
TT2j←GGj(Ej-1, Fj-1Gj-1)+Hj-1+SS1j+Wj
Dj←Cj-1
Cj←Bj-1< < < 9
Bj←Aj-1
Aj←TT1j
Hj←Gj-1
Gj←Fj-1< < < 19
Fj←Ej-1
Ej←P0(TT2j)
FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is, its function expression is respectively:
P0And P (X)1(X) permutation function
X in above formula is word.
WjWith W 'jFor message expands word
Wherein, < < < 12, < < < j, < < < 7, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12nd, the bit arithmetic of j, 7,15,9,19,It is 32 bit XORs, ∧ is 32 bits and computing, ∨ is 32 bits or computing,It is 32 bit inverses.
Used as the core of algorithm, the operation efficiency of the part of cipher algorithm iteration compression seems particularly heavy in the algorithm Will.Circuit as shown in Figure 1 is the close algorithm circuit diagram of existing state, often calculates an iterative process of A and E, is required for using 5 strings Row add operation.Each pair V carries out an iteration computing, is required for this 8 variable words to ABCDEFGH to carry out 64 interative computations, So the total time delay for producing is very big, the arithmetic speed of cryptographic algorithm is also had a strong impact on.
The content of the invention
A kind of method and device of operand in reduction SM3 cryptographic Hash algorithms is the embodiment of the invention provides, using simultaneously Row add operation substitutes more serial addition computing, reduces serial addition number of calculations, so as to reduce computing time delay, improves SM3 cryptographic Hash algorithm arithmetic speeds.
The method that the embodiment of the invention provides operand in a kind of reduction SM3 cryptographic Hash algorithms, including:
S1, B is grouped according to preset message(i), the first formula and the second formula determine the extension of message word of 32 bit lengths W0-W67, W '0-W′63, first formula isIt is described Second formula isWherein i is the first iterations,It is permutation function;
S2, respectively by the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z be initialized as A-1, B-1, C-1, D-1, Secondary iteration number of times j is simultaneously initialized as 0 by E-1, F-1, G-1, H-1, X-1, Y-1, Z-1;
S3, according to the 3rd preset formulaDetermine the constant Tj of 32 bit lengths;
S4, first interative computation is carried out according to preset iterative formula, determine intermediate variable word SS1, SS2, TT1, TT2, Iteration j value SS1j, SS2j of X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j, Xj, Yj, Zj, Aj, Bj、Cj、Dj、Ej、Fj、Gj、Hj;
The iterative formula is specifically included
SS1j←((Aj-1< < < 12)+Xj-1) < < < 7,
TT1j←FFj(Aj-1, Bj-1, Cj-1)+SS2j+Pj-1,
TT2j←GGj(Ej-1, Fj-1, Gj-1)+SS1j+Qj-1,
Dj←Cj-1,
Cj←Bj-1< < < 9,
Bj←Aj-1,
Aj←TT1j,
Hj←Gj-1,
Gj←Fj-1< < < 19,
Fj←Ej-1,
Ej←P0(TT2j),
Xj←Ej-1+(Tj+1< < < (j+1)),
Yj←Cj-1+W′j+1,
Zj←Gj-1+Wj+1,
Wherein, X-1=E-1+(T0< < < j), Y-1=D-1+W′0、Z-1=H-1+W0, Aj-1, Bj-1, Cj-1, Dj-1, Ej- 1st, Fj-1, Gj-1, Hj-1 are -1 iterative value of jth of relevant variable word;Xj-1, Yj-1, Z j-1 be respectively the jth of X, Y and Z- 1 iterative value, FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is,
P0(TT2j) be Permutation function,< < < 12, < < < j, < < < 7, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12, j, 7,15,9,19 bit arithmeticsIt is 32 ratios Special XOR, ∧ be 32 bits and computing, ∨ be 32 bits or computing,It is 32 bit inverses;
S5, judges whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step S3.
Preferably, also included before step S1:
S0, is initialized as the initial value of the first iterations i 0 and initializes and first iterations i pairs The 0th iterative value V (0) of the compression function V for answering.
Preferably, step S1 also includes:
B is grouped according to preset message(i)Determine parameter N.
Preferably, also include after step s 5:
S6, the group that puts in order using the sequencing of Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj as bit from high to low The variable that conjunction is obtained carries out XOR with the ith iteration value of the compression function V, obtains the i+1 of the compression function V Secondary iterative value V(i+1)
S7, judges whether i is equal to N-1;
If i is equal to N-1, V is exported(N)
If i is less than N-1, the value of i is added 1 and step S1 is performed.
A kind of device of operand in reduction SM3 cryptographic Hash algorithms is the embodiment of the invention provides, including:
First determining unit, for being grouped B according to preset message(i), the first formula and the second formula determine 32 bit longs The extension of message word W of degree0-W67, W '0-W′63, first formula is Second formula isWherein i is the first iterations,It is displacement Function;
First initialization unit, for being respectively initialized as the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z Secondary iteration number of times j is simultaneously initialized as 0 by A-1, B-1, C-1, D-1, E-1, F-1, G-1, H-1, X-1, Y-1, Z-1;
Second determining unit, for according to the 3rd preset formulaDetermine 32 bits The constant Tj of length;
3rd determining unit, for carrying out first interative computation according to preset iterative formula, determines intermediate variable word Iteration j value SS1j, SS2j of SS1, SS2, TT1, TT2, X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
The iterative formula is specifically included
SS1j←((Aj-1< < < 12)+Xj-1) < < < 7,
TT1j←FFj(Aj-1, Bj-1, Cj-1)+SS2j+Pj-1,
TT2j←GGj(Ej-1, Fj-1, Gj-1)+SS1j+Qj-1,
Dj←Cj-1,
Cj←Bj-1< < < 9,
Bj←Aj-1,
Aj←TT1j,
Hj←Gj-1,
Gj←Fj-1< < < 19,
Fj←Ej-1,
Ej←P0(TT2j),
Xj←Ej-1+(Tj+1< < < (j+1)),
Yj←Cj-1+W′j+1,
Zj←Gj-1+Wj+1,
Wherein, X-1=E-1+(T0< < < j), Y-1=D-1+W′0、Z-1=H-1+W0, Aj-1, Bj-1, Cj-1, Dj-1, Ej- 1st, Fj-1, Gj-1, Hj-1 are -1 iterative value of jth of relevant variable word;Xj-1, Yj-1, Z j-1 be respectively the jth of X, Y and Z- 1 iterative value, FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is,
P0(TT2j) be Permutation function,< < < 12, < < < j, < < < 7, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12, j, 7,15,9,19 bit arithmeticsIt is 32 ratios Special XOR, ∧ be 32 bits and computing, ∨ be 32 bits or computing,It is 32 bit inverses;
Judging unit, for judging whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step S3.
Preferably,
The device of operand also includes in the reduction SM3 cryptographic Hash algorithms:
Second initialization unit, for by the initial value of the first iterations i be initialized as 0 and initialize with it is described The 0th iterative value V (0) of the corresponding compression function V of the first iterations i.
Preferably,
First determining unit also includes:
4th determination subelement, for being grouped B according to preset message(i)Determine parameter N.
Preferably,
The device of operand also includes in the reduction SM3 cryptographic Hash algorithms:
Computing unit, for using the sequencing of Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj as bit from high to low The variable that the combination that puts in order is obtained carries out XOR with the ith iteration value of the compression function V, obtains the compression letter The i+1 time iterative value V of number V(i+1)
Second judging unit, for judging whether i is equal to N-1;
If i is equal to N-1, V is exported(N)
If i is less than N-1, the value of i is added 1 and step S1 is performed.
As can be seen from the above technical solutions, the embodiment of the present invention has advantages below:
A kind of method and device of operand in reduction SM3 cryptographic Hash algorithms is the embodiment of the invention provides, using simultaneously Row add operation substitutes more serial addition computing, reduces serial addition number of calculations, so as to reduce computing time delay, improves SM3 cryptographic Hash algorithm arithmetic speeds.
Brief description of the drawings
In order to illustrate more clearly about the embodiment of the present invention or technical scheme of the prior art, below will be to embodiment or existing The accompanying drawing to be used needed for having technology description is briefly described, it should be apparent that, drawings in the following description are only this Some embodiments of invention, for those of ordinary skill in the art, without having to pay creative labor, may be used also Other accompanying drawings are obtained with according to these accompanying drawings.
Fig. 1 is existing SM3 cryptographic Hash algorithm iteration Process circuitry figure;
Fig. 2 is the first reality of the method for operand in a kind of reduction SM3 cryptographic Hash algorithms provided in an embodiment of the present invention Apply the schematic flow sheet of example;
Fig. 3 is the second reality of the method for operand in a kind of reduction SM3 cryptographic Hash algorithms provided in an embodiment of the present invention Apply the schematic flow sheet of example;
Fig. 4 is the second reality of the method for operand in a kind of reduction SM3 cryptographic Hash algorithms provided in an embodiment of the present invention Apply the corresponding iterative process circuit diagram of example;
Fig. 5 is the first reality of the device of operand in a kind of reduction SM3 cryptographic Hash algorithms provided in an embodiment of the present invention Apply the structural representation of example;
Fig. 6 is the second reality of the device of operand in a kind of reduction SM3 cryptographic Hash algorithms provided in an embodiment of the present invention Apply the structural representation of example.
Specific embodiment
A kind of method and device of operand in reduction SM3 cryptographic Hash algorithms is the embodiment of the invention provides, using simultaneously Row add operation substitutes more serial addition computing, reduces serial addition number of calculations, so as to reduce computing time delay, improves SM3 cryptographic Hash algorithm arithmetic speeds.
To enable that goal of the invention of the invention, feature, advantage are more obvious and understandable, below in conjunction with the present invention Accompanying drawing in embodiment, is clearly and completely described, it is clear that disclosed below to the technical scheme in the embodiment of the present invention Embodiment be only a part of embodiment of the invention, and not all embodiment.Based on the embodiment in the present invention, this area All other embodiment that those of ordinary skill is obtained under the premise of creative work is not made, belongs to protection of the present invention Scope.
Fig. 2 is referred to, a kind of method first of operand in reduction SM3 cryptographic Hash algorithms is the embodiment of the invention provides Embodiment, including:
S1, B is grouped according to preset message(i), the first formula and the second formula determine the extension of message word of 32 bit lengths W0-W67, W '0-W′63, the first formula isSecond formula ForWherein i is the first iterations,It is permutation function;
In embodiments of the present invention, it is necessary first to which B is grouped according to preset message(i), the first formula and the second formula determine The extension of message word W of 32 bit lengths0-W67, W '0-W′63, the first formula isSecond formula isWherein i is the One iterations,It is permutation function, W0-W67, W '0-W′63Refer to W0To W67, W '0-W′63 Refer to W '0To W '63
S2, respectively by the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z be initialized as A-1, B-1, C-1, D-1, Secondary iteration number of times j is simultaneously initialized as 0 by E-1, F-1, G-1, H-1, X-1, Y-1, Z-1;
In embodiments of the present invention, B is being grouped according to preset message(i), the first formula and the second formula determine 32 bits The extension of message word W of length0-W67, W '0-W′63Afterwards, in addition it is also necessary to respectively by the first of variable word A, B, C, D, E, F, G, H, X, Y, Z Initial value is initialized as A-1, B-1, C-1, D-1, E-1, F-1, G-1, H-1, X-1, Y-1, Z-1 and secondary iteration number of times j is initial Turn to 0.
S3, according to the 3rd preset formulaDetermine the constant Tj of 32 bit lengths;
In embodiments of the present invention, the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z is being initialized as respectively Simultaneously be initialized as secondary iteration number of times j after 0 by A-1, B-1, C-1, D-1, E-1, F-1, G-1, H-1, X-1, Y-1, Z-1, also Need according to the 3rd preset formulaDetermine the constant Tj of 32 bit lengths.
S4, first interative computation is carried out according to preset iterative formula, determine intermediate variable word SS1, SS2, TT1, TT2, Iteration j value SS1j, SS2j of X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j, Xj, Yj, Zj, Aj, Bj、Cj、Dj、Ej、Fj、Gj、Hj;
Iterative formula is specifically included
SS1j←((Aj-1< < < 12)+Xj-1) < < < 7,
TT1j←FFj(Aj-1, Bj-1, Cj-1)+SS2j+Pj-1,
TT2j←GGj(Ej-1, Fj-1, Gj-1)+SS1j+Qj-1,
Dj←Cj-1,
Cj←Bj-1< < < 9,
Bj←Aj-1,
Aj←TT1j,
Hj←Gj-1,
Gj←Fj-1< < < 19,
Fj←Ej-1,
Ej←P0(TT2j),
Xj←Ej-1+(Tj+1< < < (j+1)),
Yj←Cj-1+W′j+1,
Zj←Gj-1+Wj+1,
Wherein, X-1=E-1+(T0< < < j), Y-1=D-1+W′0、Z-1=H-1+W0, Aj-1, Bj-1, Cj-1, Dj-1, Ej- 1st, Fj-1, Gj-1, Hj-1 are -1 iterative value of jth of relevant variable word;Xj-1, Yj-1, Z j-1 be respectively the jth of X, Y and Z- 1 iterative value, FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is,
P0(TT2j) be Permutation function,< < < 12, < < < j, < < < 7, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12, j, 7,15,9,19 bit arithmeticsIt is 32 ratios Special XOR, ∧ be 32 bits and computing, V be 32 bits or computing,It is 32 bit inverses;
In embodiments of the present invention, according to the 3rd preset formulaDetermine 32 ratios After the constant Tj of bit length, in addition it is also necessary to carry out first interative computation according to preset iterative formula, intermediate variable word is determined Iteration j value SS1j, SS2j of SS1, SS2, TT1, TT2, X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj。
S5, judges whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step S3;
In embodiments of the present invention, first interative computation is being carried out according to preset iterative formula, is determining intermediate variable word Iteration j value SS1j, SS2j of SS1, SS2, TT1, TT2, X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, After TT2j, Xj, Yj, Zj, Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj, in addition it is also necessary to judge whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step S3;
It should be noted that used as loop iteration procedure body part, step S1 to step S5 needs iteration 64 times.Every In secondary iterative process, intermediate variable word SS1, SS2, TT1, TT2, X, Y, Z and extension of message word W must be first calculated0-W67, W '0- W′63, intermediate variable word X, Y and the Z used required for the iteration j value Aj and Ej that determine variable word A and E be before once change Iterative value Xj-1, Yj-1, Zj-1 produced by generation, and determine iterative value Xj, Yj, Zj for calculating Aj+1 and Ej+1.Can see Iteration need to carry out an add operation each time to go out X, Y and Z.
The value that variable word A, B, C, D, E, F, G, H carry out j during 64 iteration is 63, and now Yj←Cj-1+W′j+1, now Y63 occurs overflow error can be stopped calculating, and obtain the iteration result A63 of each variable word, B63, C63, D63, E63, F63, G63、H63。
Fig. 3 and Fig. 4 is referred to, a kind of side of operand in reduction SM3 cryptographic Hash algorithms is the embodiment of the invention provides Method second embodiment, including:
101, the initial value of the first iterations i is initialized as 0 and compression corresponding with the first iterations i is initialized The 0th iterative value V (0) of function V;
In embodiments of the present invention, it is necessary first to the initial value of the first iterations i is initialized as 0 and is initialized and the The 0th iterative value V (0) of the corresponding compression function V of one iterations i, V(0)It is the 7380166f represented with 16 systems 4914b2b9 172442d7da8a0600a96f30bc 163138aa e38dee4d b0fb0e4e。
102, B is grouped according to preset message(i), the first formula and the second formula determine the extension of message word of 32 bit lengths W0-W67, W '0-W′63With parameter N, the first formula is Second formula isWherein i is the first iterations,It is permutation function;
In embodiments of the present invention, the initial value of the first iterations i is being initialized as 0 and is being initialized and the first iteration After the 0th iterative value V (0) of the corresponding compression function V of number of times i, in addition it is also necessary to be grouped B according to preset message(i), it is first public Formula and the second formula determine the extension of message word W of 32 bit lengths0-W67, W '0-W′63With parameter N, the first formula isSecond formula isWherein i is the One iterations,It is permutation function.
103, respectively by the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z be initialized as A-1, B-1, C-1, D-1, Secondary iteration number of times j is simultaneously initialized as 0 by E-1, F-1, G-1, H-1, X-1, Y-1, Z-1;
In embodiments of the present invention, B is being grouped according to preset message(i), the first formula and the second formula determine 32 bits The extension of message word W of length0-W67, W '0-W′63Afterwards, in addition it is also necessary to respectively by the first of variable word A, B, C, D, E, F, G, H, X, Y, Z Initial value is initialized as A-1, B-1, C-1, D-1, E-1, F-1, G-1, H-1, X-1, Y-1, Z-1 and secondary iteration number of times j is initial Turn to 0.
104, according to the 3rd preset formulaDetermine the constant Tj of 32 bit lengths;
In embodiments of the present invention, the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z is being initialized as respectively Simultaneously be initialized as secondary iteration number of times j after 0 by A-1, B-1, C-1, D-1, E-1, F-1, G-1, H-1, X-1, Y-1, Z-1, also Need according to the 3rd preset formulaDetermine the constant Tj of 32 bit lengths.
105, first interative computation is carried out according to preset iterative formula, determine intermediate variable word SS1, SS2, TT1, TT2, Iteration j value SS1j, SS2j of X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j, Xj, Yj, Zj, Aj, Bj、Cj、Dj、Ej、Fj、Gj、Hj;
Iterative formula is specifically included
SS1j←((Aj-1< < < 12)+Xj-1) < < < 7,
TT1j←FFj(Aj-1, Bj-1, Cj-1)+SS2j+Pj-1,
TT2j←GGj(Ej-1, Fj-1, Gj-1)+SS1j+Qj-1,
Dj←Cj-1,
Cj←Bj-1< < < 9,
Bj←Aj-1,
Aj←TT1j,
Hj←Gj-1,
Gj←Fj-1< < < 19,
Fj←Ej-1,
Ej←P0(TT2j),
Xj←Ej-1+(Tj+1< < < (j+1)),
Yj←Cj-1+W′j+1,
Zj←Gj-1+Wj+1,
Wherein, X-1=E-1+(T0< < < j), Y-1=D-1+W′0、Z-1=H-1+W0, Aj-1, Bj-1, Cj-1, Dj-1, Ej- 1st, Fj-1, Gj-1, Hj-1 are -1 iterative value of jth of relevant variable word;Xj-1, Yj-1, Z j-1 be respectively the jth of X, Y and Z- 1 iterative value, FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is,
P0(TT2j) be Permutation function,< < < 12, < < < j, < < < 7, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12, j, 7,15,9,19 bit arithmeticsIt is 32 ratios Special XOR, ∧ be 32 bits and computing, ∨ be 32 bits or computing,It is 32 bit inverses;
In embodiments of the present invention, according to the 3rd preset formulaDetermine 32 ratios After the constant Tj of bit length, in addition it is also necessary to carry out first interative computation according to preset iterative formula, intermediate variable word is determined Iteration j value SS1j, SS2j of SS1, SS2, TT1, TT2, X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj。
106, judge whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step 104.
In embodiments of the present invention, first interative computation is being carried out according to preset iterative formula, is determining intermediate variable word Iteration j value SS1j, SS2j of SS1, SS2, TT1, TT2, X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, After TT2j, Xj, Yj, Zj, Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj, in addition it is also necessary to judge whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step 104.
107, the group that puts in order using the sequencing of Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj as bit from high to low The variable that conjunction is obtained carries out XOR with the ith iteration value of compression function V, obtains the i+1 time iterative value of compression function V V(i+1)
In embodiments of the present invention, judge j whether be equal to 63 after, in addition it is also necessary to by Aj, Bj, Cj, Dj, Ej, Fj, Gj, Variable and the ith iteration of compression function V that put in order combination of the sequencing of Hj as bit from high to low is obtained Value carries out XOR, obtains the i+1 time iterative value V of compression function V(i+1)
108, judge whether i is equal to N-1;
If i is equal to N-1, V is exported(N)
If i is less than N-1, the value of i is added 1 and step 102 is performed;
In embodiments of the present invention, using the sequencing of Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj as bit by height The variable obtained to the low combination that puts in order carries out XOR with the ith iteration value of compression function V, obtains compression function The i+1 time iterative value V of V(i+1)Afterwards, in addition it is also necessary to judge whether i is equal to N-1;
If i is equal to N-1, V is exported(N)
If i is less than N-1, the value of i is added 1 and step 102 is performed.
In embodiments of the present invention, as shown in figure 4, Fig. 4 is a kind of reduction SM3 cryptographic Hash provided in an embodiment of the present invention The corresponding iterative process circuit diagram of the second embodiment of the method for operand in algorithm, comparison diagram 4 and Fig. 1 can be seen that this hair Bright not changed in adder quantity, present invention optimization is circuit structure, from 2 of path A and E common circuit Serial adder becomes parallel adder, respective original 3 serial adders is all become into parallel mode, by original key 5 serial adders on path have been reduced to 3 serial adders, greatly reduce serial addition computing in critical path Quantity, improve the efficiency of algorithm.
Fig. 5 is referred to, the of the device of operand in a kind of reduction SM3 cryptographic Hash algorithms is the embodiment of the invention provides One embodiment, including:
First determining unit 501, for being grouped B according to preset message(i), the first formula and the second formula determine 32 bit longs The extension of message word W of degree0-W67, W '0-W′63, the first formula is Second formula isWherein i is the first iterations,It is permutation function;
First initialization unit 502, for respectively initializing the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z 0 is initialized as A-1, B-1, C-1, D-1, E-1, F-1, G-1, H-1, X-1, Y-1, Z-1 and by secondary iteration number of times j;
Second determining unit 503, for according to the 3rd preset formulaDetermine 32 The constant Tj of bit length;
3rd determining unit 504, for carrying out first interative computation according to preset iterative formula, determines intermediate variable word Iteration j value SS1j, SS2j of SS1, SS2, TT1, TT2, X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
Iterative formula is specifically included
SS1j←((Aj-1< < < 12)+Xj-1) < < < 7,
TT1j←FFj(Aj-1, Bj-1, Cj-1)+SS2j+Pj-1,
TT2j←GGj(Ej-1, Ej-1, Gj-1)+SS1j+Qj-1,
Dj←Cj-1,
Cj←Bj-1< < < 9,
Bj←Aj-1,
Aj←TT1j,
Hj←Gj-1,
Gj←Fj-1< < < 19,
Fj←Ej-1,
Ej←P0(TT2j),
Xj←Ej-1+(Tj+1< < < (j+1)),
Yj←Cj-1+W′j+1,
Zj←Gj-1+Wj+1,
Wherein, X-1=E-1+(T0< < < j), Y-1=D-1+W′0、Z-1=H-1+W0, Aj-1, Bj-1, Cj-1, Dj-1, Ej- 1st, Fj-1, Gj-1, Hj-1 are -1 iterative value of jth of relevant variable word;Xj-1, Yj-1, Z j-1 be respectively the jth of X, Y and Z- 1 iterative value, FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is,
P0(TT2j) be Permutation function,< < < 12, < < < j, < < < 7, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12, j, 7,15,9,19 bit arithmeticsIt is 32 ratios Special XOR, ∧ be 32 bits and computing, ∨ be 32 bits or computing,It is 32 bit inverses;
Judging unit 505, for judging whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step S3.
Fig. 6 is referred to, the of the device of operand in a kind of reduction SM3 cryptographic Hash algorithms is the embodiment of the invention provides Two embodiments, including:
Second initialization unit 601, for the initial value of the first iterations i being initialized as into 0 and being initialized and first The 0th iterative value V (0) of the corresponding compression function V of iterations i.
First determining unit 602, for being grouped B according to preset message(i), the first formula and the second formula determine 32 bit longs The extension of message word W of degree0-W67, W '0-W′63, the first formula is Second formula isWherein i is the first iterations,It is permutation function;
First initialization unit 603, for respectively initializing the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z 0 is initialized as A-1, B-1, C-1, D-1, E-1, F-1, G-1, H-1, X-1, Y-1, Z-1 and by secondary iteration number of times j;
Second determining unit 604, for according to the 3rd preset formulaDetermine 32 The constant Tj of bit length;
3rd determining unit 605, for carrying out first interative computation according to preset iterative formula, determines intermediate variable word Iteration j value SS1j, SS2j of SS1, SS2, TT1, TT2, X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
Iterative formula is specifically included
SS1j←((Aj-1< < < 12)+Xj-1) < < < 7,
TT1j←FFj(Aj-1, Bj-1, Cj-1)+SS2j+Pj-1,
TT2j←GGj(Ej-1, Fj-1, Gj-1)SS1j+Qj-1,
Dj←Cj-1,
Cj←Bj-1< < < 9,
Bj←Aj-1,
Aj←TT1j,
Hj←Gj-1,
Gj←Fj-1< < < 19,
Fj←Ej-1,
Ej←P0(TT2j),
Xj←Ej-1+(Tj+1< < < (j+1)),
Yj←Cj-1+W′j+1,
Zj←Gj-1+Wj+1,
Wherein, X-1=E-1+(T0< < < j), Y-1=D-1+W′0、Z-1=H-1+W0, Aj-1, Bj-1, Cj-1, Dj-1, Ej- 1st, Fj-1, Gj-1, Hj-1 are -1 iterative value of jth of relevant variable word;Xj-1, Yj-1, Z j-1 be respectively the jth of X, Y and Z- 1 iterative value, FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is,
P0(TT2j) be Permutation function,< < < 12, < < < j, < < < 7, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12, j, 7,15,9,19 bit arithmeticsIt is 32 ratios Special XOR, ∧ be 32 bits and computing, ∨ be 32 bits or computing,It is 32 bit inverses;
Judging unit 606, for judging whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j、Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step S3.
First determining unit 602 also includes:
4th determination subelement 6021, for being grouped B according to preset message(i)Determine parameter N.
The device for reducing operand in SM3 cryptographic Hash algorithms also includes:
Computing unit 607, for using the sequencing of Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj as bit from high to low The variable that obtains of combination that puts in order carry out XOR with the ith iteration value of compression function V, obtain compression function V's I+1 time iterative value V(i+1)
Second judging unit 608, for judging whether i is equal to N-1;
If i is equal to N-1, V is exported(N)
If i is less than N-1, the value of i is added 1 and step S1 is performed.
It is apparent to those skilled in the art that, for convenience and simplicity of description, the system of foregoing description, The specific work process of device and unit, may be referred to the corresponding process in preceding method embodiment, will not be repeated here.
In several embodiments provided herein, it should be understood that disclosed system, apparatus and method can be with Realize by another way.For example, device embodiment described above is only schematical, for example, the unit Divide, only a kind of division of logic function there can be other dividing mode when actually realizing, for example multiple units or component Can combine or be desirably integrated into another system, or some features can be ignored, or do not perform.It is another, it is shown or The coupling each other for discussing or direct-coupling or communication connection can be the indirect couplings of device or unit by some interfaces Close or communicate to connect, can be electrical, mechanical or other forms.
The unit that is illustrated as separating component can be or may not be it is physically separate, it is aobvious as unit The part for showing can be or may not be physical location, you can with positioned at a place, or can also be distributed to multiple On NE.Some or all of unit therein can be according to the actual needs selected to realize the mesh of this embodiment scheme 's.
In addition, during each functional unit in each embodiment of the invention can be integrated in a processing unit, it is also possible to It is that unit is individually physically present, it is also possible to which two or more units are integrated in a unit.Above-mentioned integrated list Unit can both be realized in the form of hardware, it would however also be possible to employ the form of SFU software functional unit is realized.
If the integrated unit is to realize in the form of SFU software functional unit and as independent production marketing or use When, can store in a computer read/write memory medium.Based on such understanding, technical scheme is substantially The part for being contributed to prior art in other words or all or part of the technical scheme can be in the form of software products Embody, the computer software product is stored in a storage medium, including some instructions are used to so that a computer Equipment (can be personal computer, server, or network equipment etc.) performs the complete of each embodiment methods described of the invention Portion or part steps.And foregoing storage medium includes:USB flash disk, mobile hard disk, read-only storage (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disc or CD etc. are various can store journey The medium of sequence code.
The above, the above embodiments are merely illustrative of the technical solutions of the present invention, rather than its limitations;Although with reference to preceding Embodiment is stated to be described in detail the present invention, it will be understood by those within the art that:It still can be to preceding State the technical scheme described in each embodiment to modify, or equivalent is carried out to which part technical characteristic;And these Modification is replaced, and does not make the spirit and scope of the essence disengaging various embodiments of the present invention technical scheme of appropriate technical solution.

Claims (8)

1. in a kind of reduction SM3 cryptographic Hash algorithms operand method, it is characterised in that including:
S1, the extension of message word W that B (i), the first formula and the second formula determine 32 bit lengths is grouped according to preset message0- W67, W '0-W′63, first formula isDescribed Two formula areWherein i is the first iterations,It is permutation function;
S2, respectively by the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z be initialized as A-1, B-1, C-1, D-1, E-1, Secondary iteration number of times j is simultaneously initialized as 0 by F-1, G-1, H-1, X-1, Y-1, Z-1;
S3, according to the 3rd preset formulaDetermine the constant Tj of 32 bit lengths;
S4, first interative computation is carried out according to preset iterative formula, determines intermediate variable word SS1, SS2, TT1, TT2, X, Y, Z Iteration j value SS1j, SS2j, TT1j, TT2j, Xj, Yj, Zj, Aj, Bj, Cj with each variable word A, B, C, D, E, F, G, H, Dj、Ej、Fj、Gj、Hj;
The iterative formula is specifically included
SS1j←((Aj-1< < < 12)+Xj-1) < < < 7,
S S 2 j &RightArrow; S S 1 j &CirclePlus; ( A j - 1 < < < 12 ) ,
TT1j←FFj(Aj-1, Bj-1, Cj-1)+SS2j+Pj-1,
TT2j←GGj(Ej-1, Fj-1, Gj-1)+SS1j+Qj-1,
Dj←Cj-1,
Cj←Bj-1< < < 9,
Bj←Aj-1, Aj←TT1j,
Hj←Gj-1,
Gj←Fj-1< < < 19,
Fj←Ej-1,
Ej←P0(TT2j),
Xj←Ej-1+(Tj+1< < < (j+1)),
Yj←Cj-1+W′j+1,
Zj←Gj-1+Wj+1,
Wherein, X-1=E-1+(T0< < < j), Y-1=D-1+W′0、Z-1=H-1+W0, Aj-1, Bj-1, Cj-1, Dj-1, Ej-1, Fj-1, Gj-1, Hj-1 are -1 iterative value of jth of relevant variable word;Xj-1, Yj-1, Zj-1 are respectively the jth -1 time of X, Y and Z Iterative value, FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is,
P0(TT2j) it is displacement Function,< < < 12, < < < j, < < < 7th, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12, j, 7,15,9,19 bit arithmetics,For 32 than special Or computing, ∧ be 32 bits and computing, ∨ be 32 bits or computing,It is 32 bit inverses;
S5, judges whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j, Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step S3.
2. in reduction SM3 cryptographic Hash algorithms according to claim 1 operand method, it is characterised in that in step Also include before S1:
S0, is initialized as the initial value of the first iterations i 0 and initializes corresponding with the first iterations i The 0th iterative value V (0) of compression function V.
3. in reduction SM3 cryptographic Hash algorithms according to claim 2 operand method, it is characterised in that step S1 Also include:
B (i) is grouped according to preset message and determines parameter N.
4. in reduction SM3 cryptographic Hash algorithms according to claim 3 operand method, it is characterised in that in step Also include after S5:
S6, using the sequencing of Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj as bit putting in order and combine from high to low To variable carry out XOR with the ith iteration value of the compression function V, obtain the i+1 time of the compression function V repeatedly Generation value V(i+1)
S7, judges whether i is equal to N-1;
If i is equal to N-1, V is exported(N)
If i is less than N-1, the value of i is added 1 and step S1 is performed.
5. in a kind of reduction SM3 cryptographic Hash algorithms operand device, it is characterised in that including:
First determining unit, 32 bit lengths are determined for being grouped B (i), the first formula and the second formula according to preset message Extension of message word W0-W67, W '0-W′63, first formula is Second formula isWherein i is the first iterations,It is displacement Function;
First initialization unit, for respectively by the initial value of variable word A, B, C, D, E, F, G, H, X, Y, Z be initialized as A-1, Secondary iteration number of times j is simultaneously initialized as 0 by B-1, C-1, D-1, E-1, F-1, G-1, H-1, X-1, Y-1, Z-1;
Second determining unit, for according to the 3rd preset formulaDetermine 32 bit lengths Constant Tj;
3rd determining unit, for carrying out first interative computation according to preset iterative formula, determine intermediate variable word SS1, Iteration j value SS1j, SS2j of SS2, TT1, TT2, X, Y, Z and each variable word A, B, C, D, E, F, G, H, TT1j, TT2j, Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
The iterative formula is specifically included
SS1j←((Aj-1< < < 12)+Xj-1) < < < 7,
S S 2 j &RightArrow; S S 1 j &CirclePlus; ( A j - 1 < < < 12 ) ,
TT1j←FFj(Aj-1, Bj-1, Cj-1)+SS2j+Pj-1,
TT2j←GGj(Ej-1, Fj-1, Gj-1)+SS1j+Qj-1,
Dj←Cj-1,
Cj←Bj-1< < < 9,
Bj←Aj-1,
Aj←TT1j,
Hj←Gj-1,
Gj←Fj-1< < < 19,
Ej←Ej-1,
Ej←P0(TT2j),
Xj←Ej-1+(Tj+1< < < (j+1)),
Yj←Cj-1+W′j+1,
Zj←Gj-1+Wj+1,
Wherein, X-1=E-1+(T0< < < j), Y-1=D-1+W′0、Z-1=H-1+W0, Aj-1, Bj-1, Cj-1, Dj-1, Ej-1, Fj-1, Gj-1, Hj-1 are -1 iterative value of jth of relevant variable word;Xj-1, Yj-1, Zj-1 are respectively the jth -1 time of X, Y and Z Iterative value, FFj(Aj-1, Bj-1, Cj-1) and GGj(Ej-1, Fj-1, Gj-1) Boolean function is,
P0(TT2j) it is displacement Function,< < < 12, < < < j, < < < 7th, < < < 15, < < < 9, < < < 19 are respectively ring shift left 12, j, 7,15,9,19 bit arithmetics,For 32 than special Or computing, ∧ be 32 bits and computing, ∨ be 32 bits or computing,It is 32 bit inverses;
Judging unit, for judging whether j is equal to 63;
If j is equal to 63, export iteration j value SS1j, SS2j of each variable word A, B, C, D, E, F, G, H, TT1j, TT2j, Xj、Yj、Zj、Aj、Bj、Cj、Dj、Ej、Fj、Gj、Hj;
If values of the j less than 63, j increases by 1 and then performs step S3.
6. in reduction SM3 cryptographic Hash algorithms according to claim 5 operand device, it is characterised in that also include:
Second initialization unit, for the initial value of the first iterations i being initialized as into 0 and being initialized and described first The 0th iterative value V (0) of the corresponding compression function V of iterations i.
7. in reduction SM3 cryptographic Hash algorithms according to claim 6 operand device, it is characterised in that described One determining unit also includes:
4th determination subelement, parameter N is determined for being grouped B (i) according to preset message.
8. in reduction SM3 cryptographic Hash algorithms according to claim 7 operand device, it is characterised in that also include:
Computing unit, for the arrangement using the sequencing of Aj, Bj, Cj, Dj, Ej, Fj, Gj, Hj as bit from high to low The variable that sequential combination is obtained carries out XOR with the ith iteration value of the compression function V, obtains the compression function V I+1 time iterative value V(i+1)
Second judging unit, for judging whether i is equal to N-1;
If i is equal to N-1, V is exported(N)
If i is less than N-1, the value of i is added 1 and step S1 is performed.
CN201710073997.7A 2017-02-10 2017-02-10 The method and device of operand in a kind of reduction SM3 cryptographic Hash algorithms Pending CN106850189A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710073997.7A CN106850189A (en) 2017-02-10 2017-02-10 The method and device of operand in a kind of reduction SM3 cryptographic Hash algorithms

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710073997.7A CN106850189A (en) 2017-02-10 2017-02-10 The method and device of operand in a kind of reduction SM3 cryptographic Hash algorithms

Publications (1)

Publication Number Publication Date
CN106850189A true CN106850189A (en) 2017-06-13

Family

ID=59127280

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710073997.7A Pending CN106850189A (en) 2017-02-10 2017-02-10 The method and device of operand in a kind of reduction SM3 cryptographic Hash algorithms

Country Status (1)

Country Link
CN (1) CN106850189A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107579811A (en) * 2017-07-28 2018-01-12 广州星海集成电路基地有限公司 A kind of hardware optimization method based on SM3 cryptographic Hash algorithms
CN109547192A (en) * 2018-11-08 2019-03-29 北京大学 The parallelization optimization method of SM3 cryptographic Hash algorithm
CN112202546A (en) * 2020-09-29 2021-01-08 山东华翼微电子技术股份有限公司 SM3 cryptographic hash algorithm message expansion serial optimization system and method
CN113741972A (en) * 2021-08-20 2021-12-03 深圳市风云实业有限公司 Parallel processing method of SM3 algorithm and electronic equipment

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107579811A (en) * 2017-07-28 2018-01-12 广州星海集成电路基地有限公司 A kind of hardware optimization method based on SM3 cryptographic Hash algorithms
CN109547192A (en) * 2018-11-08 2019-03-29 北京大学 The parallelization optimization method of SM3 cryptographic Hash algorithm
CN109547192B (en) * 2018-11-08 2020-11-03 北京大学 Parallel optimization method of SM3 cryptographic hash algorithm
CN112202546A (en) * 2020-09-29 2021-01-08 山东华翼微电子技术股份有限公司 SM3 cryptographic hash algorithm message expansion serial optimization system and method
CN112202546B (en) * 2020-09-29 2023-06-23 山东华翼微电子技术股份有限公司 SM3 cipher hash algorithm message expansion serial optimization system and method
CN113741972A (en) * 2021-08-20 2021-12-03 深圳市风云实业有限公司 Parallel processing method of SM3 algorithm and electronic equipment
CN113741972B (en) * 2021-08-20 2023-08-25 深圳市风云实业有限公司 SM3 algorithm parallel processing method and electronic equipment

Similar Documents

Publication Publication Date Title
Reyhani-Masoleh et al. A new construction of Massey-Omura parallel multiplier over GF (2/sup m/)
CN106850189A (en) The method and device of operand in a kind of reduction SM3 cryptographic Hash algorithms
CN107135078B (en) PBKDF2 cryptographic algorithm acceleration method and device used thereby
CN111464308A (en) Method and system for realizing reconstruction of multiple Hash algorithms
US7308469B2 (en) Method for generating secure elliptic curves using an arithmetic-geometric mean iteration
CN104917608B (en) A kind of method of the anti-power consumption attack of key
CN113300831B (en) Method, system, medium and device for implementing secure hash algorithm
CN108768656B (en) Data verification method based on Hash algorithm
CN108959168B (en) SHA512 full-flow water circuit based on-chip memory and implementation method thereof
KR20200135440A (en) Cryptographic ASIC with combined functions
CN107992283B (en) Method and device for realizing finite field multiplication based on dimension reduction
CN112367158A (en) Method for accelerating SM3 algorithm, processor, chip and electronic equipment
US8683291B2 (en) High throughput frame check sequence module architecture
Reyhani-Masoleh et al. Efficient multiplication beyond optimal normal bases
Atiwa et al. Accelerated hardware implementation of blake2 cryptographic hash for blockchain
CN113193962B (en) SM2 digital signature generation and verifier based on lightweight modular multiplication
CN102412961B (en) Method and system for generating message digest
Bonet et al. No feasible interpolation for TC/sup 0/-Frege proofs
CN116318660B (en) Message expansion and compression method and related device
CN112491543A (en) IC card decryption method based on improved Montgomery modular exponentiation circuit
CN110515591A (en) Random digit generation method and device based on block chain
Opirskyy et al. Heuristic method of finding bitsliced-description of derivative cryptographic s-box
CN118525320A (en) Cryptographic processor for Fully Homomorphic Encryption (FHE) applications
CN111817847A (en) Bypass defense method and device based on SIKE algorithm, electronic equipment and readable medium
CN101202618A (en) Method and apparatus for generating message summary by ring iterative structure

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20170613

RJ01 Rejection of invention patent application after publication