Skip to product information
1 of 5

PayPal, credit cards. Download editable-PDF and invoice in 1 second!

GB/T 32905-2016 English PDF (GBT32905-2016)

GB/T 32905-2016 English PDF (GBT32905-2016)

Regular price $245.00 USD
Regular price Sale price $245.00 USD
Sale Sold out
Shipping calculated at checkout.
Delivery: 3 seconds (Download full-editable-PDF + Invoice).
Quotation: Click GB/T 32905-2016>>Add to cart>>Quote
Editable-PDF Preview (Reload if blank, scroll for next page)

GB/T 32905-2016: Information security techniques -- SM3 cryptographic hash algorithm
This Standard specifies the calculation method and calculation steps of SM3 cryptographic hash algorithm, and gives examples of calculations. This Standard applies to digital signature and verification in commercial cryptographic applications, the generation and verification of message authentication codes, and the generation of random numbers. It can meet the security requirements of a variety of cryptographic applications.
GB/T 32905-2016
GB
NATIONAL STANDARD OF THE
PEOPLE’S REPUBLIC OF CHINA
ICS 35.040
L 80
Information security techniques - SM3 cryptographic
hash algorithm
ISSUED ON: AUGUST 29, 2016
IMPLEMENTED ON: MARCH 01, 2017
Issued by: General Administration of Quality Supervision, Inspection
and Quarantine;
Standardization Administration of the People’s Republic of
China.
Table of Contents
Foreword ... 3
1 Scope ... 4
2 Terms and definitions ... 4
3 Symbols ... 5
4 Constants and functions ... 5
5 Algorithm description ... 6
Appendix A (Informative) Calculation examples ... 9
Information security techniques - SM3 cryptographic
hash algorithm
1 Scope
This Standard specifies the calculation method and calculation steps of SM3 cryptographic hash algorithm, and gives examples of calculations.
This Standard applies to digital signature and verification in commercial cryptographic applications, the generation and verification of message
authentication codes, and the generation of random numbers. It can meet the security requirements of a variety of cryptographic applications.
2 Terms and definitions
The following terms and definitions are applicable to this document.
2.1 Bit string
A sequence of binary digits that has the value of 0 or 1.
2.2 Big-endian
A representation format of data in memory, which stipulates that the left side is the most significant bit and the right side is the least significant bit. That is, the high-order byte of the number is placed at the low address of the memory, and the low-order byte of the number is placed at the high address of the memory. 2.3 Message
Any bit string of finite length. In this Standard, message is used as the input data of the hash algorithm.
2.4 Hash value
The output message digest (bit string) when the hash algorithm is applied to a message.
2.5 Word
A group (string) whose length is 32 bits.
3 Symbols
The following symbols apply to this document.
ABCDEFGH: 8 word registers or concatenation of their values
B(i): the ith message group
CF: compression function
FFj: boolean function; take different expressions as j changes
GGj: boolean function; take different expressions as j changes
IV: initial value; it is used to determine the initial state of the compression function register
P0: permutation function in compression function
P1: permutation function in message expansion
Tj: algorithm constant; take different values as j changes
m: message
m': filled message
mod: modular arithmetic
n: number of message groups
˄: 32-bit AND operation
˅: 32-bit OR operation
⊕: 32-bit exclusive OR operation
¬: 32-bit NOT operation
+: mod 232 bit arithmetic addition operation
< < < k: 32-bit cyclic left shift k-bit operation
←: left assignment operator
4 Constants and functions
4.1 Initial value
5.3 Iterative compression
5.3.1 Iterative process
Group the filled message m’ according to 512 bits: m'=B(0)B(1)...B(n-1), where n = (l+k+65)/512. Iterate on m’ in the following way:
Where CF is the compression function; V(0) is the 256-bit initial value IV; B(i) is the filled message group; the iterative compression result is V(n).
5.3.2 Message extension
Extend the message group B(i) by the following method to generate 132
message words W0, W1, … W67, W’0, W’1, … W’63, which are used for the
compression function CF:
Step I, divide the message group B(i) into 16 words W0, W1, ... W15.
Step II,
Step III,
5.3.3 Compression function
Make A, B, C, D, E, F, G, H word registers, SS1, SS2, TT1, TT2 intermediate variables, and the compression function Vi+1 =CF(V(i), B(i)), 0 ≤ I ≤ n-1. The calculation process is described as follows:
433 bits 64 bits
Binary representation of l
View full details