SM4 is a block cipher standard published by the government of the People's
Republic of China, and it was issued by the State Cryptography Administration
on March 21, 2012. The standard is GM/T 0002-2012 "SM4 block cipher algorithm".

SM4 algorithm is a symmetric cipher algorithm in ShangMi cryptosystems. The
block length and key length are both 128 bits. Both the encryption algorithm
and the key derivation algorithm use 32 rounds of non-linear iterative
structure, and the S box is a fixed 8 bits. The RFC 8998 specification
defines the usage of ShangMi algorithm suite in TLS 1.3, etc. According to
the State Cryptography Administration of China, its security and efficiency
are equivalent to AES-128.

Reference specification:
1. http://www.gmbz.org.cn/upload/2018-04-04/1522788048733065051.pdf
2. http://gmbz.org.cn/main/viewfile/20180108015408199368.html
3. https://tools.ietf.org/id/draft-ribose-cfrg-sm4-10.html
4. https://datatracker.ietf.org/doc/html/rfc8998

Tianjia Zhang (7):
  doc: Add Copyright of SM3 hash algorithm
  Introduce SM4 symmetric cipher algorithm
  testsuite: add test for SM4 symmetric algorithm
  nettle-benchmark: bench SM4 symmetric algorithm
  doc: documentation for SM4 cipher algorithm
  gcm: Add SM4 as the GCM underlying cipher
  doc: documentation for GCM using SM4 cipher

 Makefile.in                  |   2 +
 examples/nettle-benchmark.c  |   2 +
 gcm-sm4-meta.c               |  60 ++++++++++
 gcm-sm4.c                    |  81 +++++++++++++
 gcm.h                        |  25 +++-
 nettle-meta-aeads.c          |   1 +
 nettle-meta-ciphers.c        |   1 +
 nettle-meta.h                |   3 +
 nettle.texinfo               |  81 +++++++++++++
 sm4-meta.c                   |  49 ++++++++
 sm4.c                        | 225 +++++++++++++++++++++++++++++++++++
 sm4.h                        |  71 +++++++++++
 testsuite/.gitignore         |   1 +
 testsuite/Makefile.in        |   2 +-
 testsuite/gcm-test.c         |  18 +++
 testsuite/meta-aead-test.c   |   1 +
 testsuite/meta-cipher-test.c |   3 +-
 testsuite/sm4-test.c         |  19 +++
 18 files changed, 642 insertions(+), 3 deletions(-)
 create mode 100644 gcm-sm4-meta.c
 create mode 100644 gcm-sm4.c
 create mode 100644 sm4-meta.c
 create mode 100644 sm4.c
 create mode 100644 sm4.h
 create mode 100644 testsuite/sm4-test.c

-- 
2.32.0

_______________________________________________
nettle-bugs mailing list
[email protected]
http://lists.lysator.liu.se/mailman/listinfo/nettle-bugs

Reply via email to