Valid

GB/T 32918.3-2016Information security technology - Public key cryptographic algorithm SM2 based on elliptic curves - Part 3: Key exchange protocol (English PDF)

信息安全技术 SM2椭圆曲线公钥密码算法 第3部分:密钥交换协议

Preview PDF

This is a limited preview

Buy now to download the full PDF (15 pages)

Need quotation for your management?

Get a formal quotation for GB/T 32918.3-2016 in 30 minutes.

Issued by

SAMR; SAC

Level / Type

National · Recommended

Issue date

August 29, 2016

Implementation date

March 1, 2017

Scope

GB/T 32918.3-2016 is the English-translated version of 信息安全技术 SM2椭圆曲线公钥密码算法 第3部分:密钥交换协议.

GB/T 32918.3-2016 is the Chinese standard "Information security technology - Public key cryptographic algorithm SM2 based on elliptic curves - Part 3: Key exchange protocol".

Its scope clause reads: This Part of GB/T 32918 specifies the key exchange protocol of public key cryptographic algorithm SM2 based on elliptic curves, and gives examples of key exchange and verification and their corresponding processes.

This Part is applicable to the key exchange in commercial cryptographic application. It can satisfy twice or optional three-times information transfer process of the communication parties; and calculate and obtain a shared secret key (session key) jointly determined by both parties. Its clauses include terms and definitions; symbols and abbreviations.

Found what you need?

Document preview — GB/T 32918.3-2016

National Standard of the People's Republic of China

ICS
35.040
Classification
L 80

Issued by: State Administration for Market Regulation; Standardization Administration of the PRC

Contents

  • Foreword3
  • Introduction4
  • 1 Scope6
  • 2 Normative references6
  • 3 Terms and definitions6
  • 4 Symbols and abbreviations7
  • 5 Algorithm parameters and auxiliary function8
  • 5.1 Overview8
  • 5.2 Elliptic curve's system parameters9
  • 5.3 User key pair9
  • 5.4 Auxiliary function9
  • 5.5 Other information of user10
  • 6 Key exchange protocol and process11
  • 6.1 Key exchange protocol11
  • 6.2 Key exchange protocol process13
  • Appendix A (Informative) Example of key exchange and verification15
  • A.1 Overview15
  • A.2 Elliptic curve's key exchange protocol on Fp15
  • A.3 Elliptic curve's key exchange protocol on F2m19
  • References23

1 Scope

This Part of GB/T 32918 specifies the key exchange protocol of public key cryptographic algorithm SM2 based on elliptic curves, and gives examples of key exchange and verification and their corresponding processes.

This Part is applicable to the key exchange in commercial cryptographic application. It can satisfy twice or optional three-times information transfer process of the communication parties; and calculate and obtain a shared secret key (session key) jointly determined by both parties.

2 Normative references

The following documents are indispensable for the application of this document.

For the dated references, only the versions with the dates indicated are applicable to this document. For the undated references, the latest version (including all the amendments) are applicable to this document.

GB/T 32918.1-2016 Information security technology - Public key cryptographic algorithm SM2 based on elliptic curves - Part 1: General

GB/T 32905-2016 Information security techniques - SM3 cryptographic hash algorithm

3 Terms and definitions

The following terms and definitions are applicable to this document.

3.1 Key confirmation from A to B

A guarantee which makes user B be convinced that user A has a specific secret key.

3.2 Key derivation function

The function of one or more shared secret keys generated by acting on the shared key and other parameters known to both parties.

3.3 Initiator

The user who sends the first round of exchange information during the operation of a protocol.

3.4 Responder

The user who does not send the first round of information exchange during the operation of a protocol.

3.5 Distinguishing identifier

Information which can distinguish an entity's identity without ambiguity.

4 Symbols and abbreviations

The following symbols apply to this document.

A, B - Two users using the public key cryptosystem.

dA - User A's private key.

dB - User B's private key.

E(Fq ) - A set of all rational points (including the point at infinity O) of the elliptic curve E on Fq .

Fq - A finite field which contains q elements.

G - A base point of elliptic curve, of which the order is prime number.

Hash( ) - Cryptographic hash algorithm.

Hv ( ) - A cryptographic hash algorithm with a message digest length of v bits.

h - The cofactor, h=#E(Fq )/n, where n is the order of the base point G.

IDA , IDB - Distinguishing identifiers of user A and user B.

K, KA , KB - The shared secret keys agreed upon by the key exchange protocol.

KDF( ) - Key derivation function.

modn - Modulo n operation. For example, 23 mod 7=2.

n - The order of the base point G [n is the prime factor of #E(Fq )].

5.2 Elliptic curve's system parameters

Elliptic curve's system parameters include the size q of the finite field F q (When q=2 m , it also includes the identification of element representation notation and the reduced polynomial). Two elements a, b which define the equation of the elliptic curve E(Fq ) shall in Fq . The base point G on E(Fq ) shall = (xG, yG) (G!=O), where xG and y G are two elements in Fq ; the order n of G and other alternatives (such as the cofactor h of n, etc.).

Elliptic curve's system parameters and their verification shall comply with the provisions of Clause 5 of GB/T 32918.1-2016.

5.3 User's key pair

User A's key pair includes its private key d A and public key PA =[dA ]G= (xA , yA).

User B's key pair includes its private key dB and public key PB =[dB ]G= (xB , yB ).

The generation algorithm of user's key pair and the public key verification algorithm shall be in accordance with the provisions of Clause 6 of GB/T 32918.1-2016.

5.4 Auxiliary function

5.4.1 Overview

In the elliptic curve's key exchange protocol specified in this Part, three types of auxiliary functions are involved: cryptographic hash algorithm, key derivation function, and random number generator. The strength of these three types of auxiliary functions directly affects the security of key exchange protocol.

5.4.2 Cryptographic hash algorithm

This Part specifies the use of cryptographic hash algorithms approved by the

State Cryptography Administration, such as the SM3 cryptographic hash algorithm.

5.4.3 Key derivation function

The key derivation function is used to derive key data from a shared secret bit string. In the key negotiation process, the key derivation function acts on the shared secret bit string obtained by key exchange, from which the required session key or the key data required for further encryption is generated.

The key derivation function needs to call the cryptographic hash algorithm.

A.1 Overview

This appendix selects the cryptographic hash algorithm given in GB/T 32905-

2016. The input is a message bit string of length less than 2

64

. The output is a hash value of 256 bits in length, which is recorded as H 256 ().

In this appendix, all numbers expressed in hexadecimal form are high on the left and low on the right.

Assume that user A's identity is: ALICE123@YAHOO.COM. USE the code in

GB/T 1988 to record IDA : 414C 49434531 32334059 41484F4F 2E434F4D.

ENTLA =0090.

Assume that user B's identity is: BILL456@YAHOO.COM. USE the code in

GB/T 1988 to record IDB : 42 494C4C34 35364059 41484F4F 2E434F4D.

ENTLB =0088.

A.2 Elliptic curve's key exchange protocol on Fp

The elliptic curve equation is: y

2

=x

3

+ax+b

Example 1: F p-256

Cofactor h: 1

Base point G= (xG, yG). Its order is recorded as n.

User A's public key P A= (xA, yA):

Prime number p

Factor a

Factor b

Coordinate xG

Coordinate yG

Order n

User A's private key d A […]

......
This preview omits tables, figures, formulas and parts of the technical clauses. The complete document — 15 pages — is available in the English PDF.

Referenced standards

Similar standards

How to Download GB/T 32918.3-2016

  1. 1

    Add to cart

    Click "Download PDF" on this page and choose "Buy this standard". You can add more standards before checkout.

  2. 2

    Checkout

    Enter your email and billing details. Payment is processed securely by Stripe (cards or bank transfer). Prefer bank details? Request a quotation (min. order $300).

  3. 3

    Instant delivery (0–9 sec)

    Delivery is automatic: within seconds of payment you'll receive an email with a secure download link. The link stays valid for 72 hours.

  4. 4

    Invoice included

    A tax invoice is attached to the confirmation email. Need a custom invoice? Contact us.

Related Standards

English PDF
15 pages
Instant delivery (0–9 sec)
Invoice included
View Cart

Secure payment via Stripe

Payments accepted

VisaMastercardAmerican ExpressApple PayGoogle PayStripe

GB/T 32918.3-2016

$125.00