1 Scope
This part of GM/T 32918 specifies the necessary mathematical basics and related cryptographic techniques involved in public key cryptographic algorithm SM2 based on elliptic curves to help implement the cryptographic mechanisms specified in other parts.
This part applies to the elliptic curve public key cryptography algorithm with the base field being the prime field and the binary extension field.
2 Symbols and abbreviations
For purpose this part, the following symbols and abbreviations apply.
B: MOV threshold. Positive B, so that the obtaining the discrete logarithm of the number on is at least as difficult as obtaining the discrete logarithm of elliptic curve on Fq.
deg (f): the power of the polynomial f(x).
E: An elliptic curve defined by a and b on the finite field.
E (Fq): a set of all rational points of the elliptic curve E on Fq (including the infinity point O).
ECDLP: Elliptic curve discrete logarithm problem.
Fp: a prime field containing p elements.
Fq: a finite field containing q elements.
: a multiplicative group consisting of all non-zero elements in Fq.
: a binary extension containing 2 m elements.
G: A base point of an elliptic curve whose order is a prime.
gcd (x,y): the greatest common factor of x and y.
h: cofactor, h - E(Fq)/n, where n is the order of the base point G.
LeftRotate (): Looped left shift operation.
lmax: the upper bound of the largest prime factor of the cofactor h.
m: the number of extensions of binary extension regarding F2 .
mod f(x): the operation of modulus polynomial f(x). If f(x) is a polynomial on a binary field, then all coefficients perform modulo-2 operation.
mod n: modulo-n operation. For example, 23 mod 7-2:
n: the order of the base point G (n is the prime element of E (Fq)).
Foreword i
Introduction ii
1 Scope
2 Symbols and abbreviations
3 Field and elliptic curve
3.1 Limited field
3.2 Elliptic curve on definite field
4 Data types and their conversion
4.1 Data type
4.2 Data type conversion
5 Elliptic curve system parameters and their verification
5.1 General requirements
5.2 System parameters of elliptic curves on Fp and their verification
5.3 System parameter of elliptic curves on and their verification
6 Key pair generation and public key verification
6.1 Key pair generation
6.2 Public key verification
Annex A (Informative) Background knowledge about elliptic curves
A.1 Prime field Fp
A.2 Binary extension field
A.3 Calculation of elliptic curve multiplication points
A.4 Solution to discrete logarithm problem of elliptic curve
A.5 Compression of points on elliptic curves
Annex B (Informative) Number-theoretic algorithm
B.1 Finite field and modulo operation
B.2 Polynomials over a finite field
B.3 Elliptic curve algorithm
Annex C (Informative) Curve example
C.1 General requirements
C.2 Elliptic curve over Fp
C.3 Elliptic curve over
Annex D (Informative) Quasi-random generation and verification of elliptic curve equation parameters
D.1 Quasi-random generation of elliptic curve equation parameters
D.2 Verification of elliptic curve equation parameters
Bibliography
1 Scope
This part of GM/T 32918 specifies the necessary mathematical basics and related cryptographic techniques involved in public key cryptographic algorithm SM2 based on elliptic curves to help implement the cryptographic mechanisms specified in other parts.
This part applies to the elliptic curve public key cryptography algorithm with the base field being the prime field and the binary extension field.
2 Symbols and abbreviations
For purpose this part, the following symbols and abbreviations apply.
B: MOV threshold. Positive B, so that the obtaining the discrete logarithm of the number on is at least as difficult as obtaining the discrete logarithm of elliptic curve on Fq.
deg (f): the power of the polynomial f(x).
E: An elliptic curve defined by a and b on the finite field.
E (Fq): a set of all rational points of the elliptic curve E on Fq (including the infinity point O).
ECDLP: Elliptic curve discrete logarithm problem.
Fp: a prime field containing p elements.
Fq: a finite field containing q elements.
: a multiplicative group consisting of all non-zero elements in Fq.
: a binary extension containing 2 m elements.
G: A base point of an elliptic curve whose order is a prime.
gcd (x,y): the greatest common factor of x and y.
h: cofactor, h - E(Fq)/n, where n is the order of the base point G.
LeftRotate (): Looped left shift operation.
lmax: the upper bound of the largest prime factor of the cofactor h.
m: the number of extensions of binary extension regarding F2 .
mod f(x): the operation of modulus polynomial f(x). If f(x) is a polynomial on a binary field, then all coefficients perform modulo-2 operation.
mod n: modulo-n operation. For example, 23 mod 7-2:
n: the order of the base point G (n is the prime element of E (Fq)).
Contents of GB/T 32918.1-2016
Foreword i
Introduction ii
1 Scope
2 Symbols and abbreviations
3 Field and elliptic curve
3.1 Limited field
3.2 Elliptic curve on definite field
4 Data types and their conversion
4.1 Data type
4.2 Data type conversion
5 Elliptic curve system parameters and their verification
5.1 General requirements
5.2 System parameters of elliptic curves on Fp and their verification
5.3 System parameter of elliptic curves on and their verification
6 Key pair generation and public key verification
6.1 Key pair generation
6.2 Public key verification
Annex A (Informative) Background knowledge about elliptic curves
A.1 Prime field Fp
A.2 Binary extension field
A.3 Calculation of elliptic curve multiplication points
A.4 Solution to discrete logarithm problem of elliptic curve
A.5 Compression of points on elliptic curves
Annex B (Informative) Number-theoretic algorithm
B.1 Finite field and modulo operation
B.2 Polynomials over a finite field
B.3 Elliptic curve algorithm
Annex C (Informative) Curve example
C.1 General requirements
C.2 Elliptic curve over Fp
C.3 Elliptic curve over
Annex D (Informative) Quasi-random generation and verification of elliptic curve equation parameters
D.1 Quasi-random generation of elliptic curve equation parameters
D.2 Verification of elliptic curve equation parameters
Bibliography