Crypto++ 8.9 Free C++ class library of cryptographic schemes

Classes | Macros
sm4.h File Reference

Classes for the SM4 block cipher. More...

Go to the source code of this file.

## Classes
struct | SM4_Info
| SM4 block cipher information. More...
class | SM4
| Classes for the SM4 block cipher. More...
class | SM4::Base
| SM4 block cipher transformation functions. More...
class | SM4::Enc
| Encryption transformation. More...
class | SM4::Dec
| Decryption transformation. More...

## Macros
#define | CRYPTOPP_SM4_ADVANCED_PROCESS_BLOCKS 1

## Detailed Description

Classes for the SM4 block cipher.

SM4 is a block cipher designed by Xiaoyun Wang, et al. The block cipher is part of the Chinese State Cryptography Administration portfolio. The cipher was formerly known as SMS4.

SM4 encryption is accelerated on machines with AES-NI. Decryption is not accelerated because it is not profitable. Thanks to Markku-Juhani Olavi Saarinen for help and the code.

See also
  SMS4 Encryption Algorithm for Wireless Networks, Reference implementation using OpenSSL and Markku-Juhani Olavi Saarinen GitHub.

Since
  Crypto++ 6.0

Definition in file sm4.h.