SM4 Class Reference

Classes for the SM4 block cipher. More...

`#include <sm4.h>`

Inheritance diagram for SM4:

## Classes

class | Base
| SM4 block cipher transformation functions. More...
class | Enc
| Encryption transformation. More...
class | Dec
| Decryption transformation. More...

## Public Types

typedef BlockCipherFinal< ENCRYPTION, Enc > | Encryption
typedef BlockCipherFinal< DECRYPTION, Dec > | Decryption
Public Types inherited from BlockCipherDocumentation
typedef BlockCipher | Encryption
| implements the BlockCipher interface
typedef BlockCipher | Decryption
| implements the BlockCipher interface

## Additional Inherited Members

Static Public Member Functions inherited from SM4_Info
static const std::string | StaticAlgorithmName ()
Static Public Member Functions inherited from FixedKeyLength< 16 >
static size_t | StaticGetValidKeyLength (size_t keylength)
| The default key length for the algorithm provided by a static function.
Static Public Attributes inherited from FixedBlockSize< 16 >
static const int | BLOCKSIZE
| The block size of the algorithm provided as a constant.
Static Public Attributes inherited from FixedKeyLength< 16 >
static const int | KEYLENGTH
| The default key length used by the algorithm provided as a constant.
static const int | MIN_KEYLENGTH
| The minimum key length used by the algorithm provided as a constant.
static const int | MAX_KEYLENGTH
| The maximum key length used by the algorithm provided as a constant.
static const int | DEFAULT_KEYLENGTH
| The default key length used by the algorithm provided as a constant.
static const int | IV_REQUIREMENT
| The default IV requirements for the algorithm provided as a constant.
static const int | IV_LENGTH
| The default IV length used by the algorithm provided as a constant.

## 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.

See also
  SMS4 Encryption Algorithm for Wireless Networks

Since
  Crypto++ 6.0

Definition at line 44 of file sm4.h.

## Member Typedef Documentation

## Encryption

typedef BlockCipherFinal<ENCRYPTION, Enc> SM4::Encryption

Definition at line 90 of file sm4.h.

## Decryption

typedef BlockCipherFinal<DECRYPTION, Dec> SM4::Decryption

Definition at line 91 of file sm4.h.

The documentation for this class was generated from the following file:

- sm4.h