Crypto++ 8.7
Free C++ class library of cryptographic schemes
|
Encryption transformation. More...
#include <sm4.h>
Public Member Functions | |
std::string | AlgorithmProvider () const |
Public Member Functions inherited from BlockCipherImpl< SM4_Info > | |
unsigned int | BlockSize () const |
Provides the block size of the algorithm. More... | |
Public Member Functions inherited from AlgorithmImpl< SimpleKeyingInterfaceImpl< TwoBases< BlockCipher, SM4_Info > > > | |
std::string | AlgorithmName () const |
The algorithm name. More... | |
Public Member Functions inherited from SimpleKeyingInterfaceImpl< TwoBases< BlockCipher, SM4_Info > > | |
size_t | MinKeyLength () const |
The minimum key length used by the algorithm. More... | |
size_t | MaxKeyLength () const |
The maximum key length used by the algorithm. More... | |
size_t | DefaultKeyLength () const |
The default key length used by the algorithm. More... | |
size_t | GetValidKeyLength (size_t keylength) const |
Provides a valid key length for the algorithm. More... | |
SimpleKeyingInterface::IV_Requirement | IVRequirement () const |
The default IV requirements for the algorithm. More... | |
unsigned int | IVSize () const |
The initialization vector length for the algorithm. More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from AlgorithmImpl< SimpleKeyingInterfaceImpl< TwoBases< BlockCipher, SM4_Info > > > | |
static std::string | StaticAlgorithmName () |
The algorithm name. More... | |
Encryption transformation.
Enc provides implementation for encryption transformation. All key sizes are supported.
SM4 encryption is accelerated on machines with AES-NI. Decryption is not accelerated because it is not profitable. Thanks to Markku-Juhani Olavi Saarinen.