Crypto++ 8.7
Free C++ class library of cryptographic schemes
|
IETF ChaCha20 stream cipher. More...
#include <chacha.h>
Public Types | |
typedef SymmetricCipherFinal< ConcretePolicyHolder< ChaChaTLS_Policy, AdditiveCipherTemplate<> >, ChaChaTLS_Info > | Encryption |
ChaCha-TLS Encryption. More... | |
typedef Encryption | Decryption |
ChaCha-TLS Decryption. More... | |
Public Types inherited from SymmetricCipherDocumentation | |
typedef SymmetricCipher | Encryption |
implements the SymmetricCipher interface More... | |
typedef SymmetricCipher | Decryption |
implements the SymmetricCipher interface More... | |
Additional Inherited Members | |
Static Public Member Functions inherited from ChaChaTLS_Info | |
static const char * | StaticAlgorithmName () |
The algorithm name. More... | |
Static Public Member Functions inherited from FixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 12 > | |
static size_t | StaticGetValidKeyLength (size_t keylength) |
The default key length for the algorithm provided by a static function. More... | |
Static Public Attributes inherited from FixedKeyLength< 32, SimpleKeyingInterface::UNIQUE_IV, 12 > | |
static const int | KEYLENGTH |
The default key length used by the algorithm provided as a constant. More... | |
static const int | MIN_KEYLENGTH |
The minimum key length used by the algorithm provided as a constant. More... | |
static const int | MAX_KEYLENGTH |
The maximum key length used by the algorithm provided as a constant. More... | |
static const int | DEFAULT_KEYLENGTH |
The default key length used by the algorithm provided as a constant. More... | |
static const int | IV_REQUIREMENT |
The default IV requirements for the algorithm provided as a constant. More... | |
static const int | IV_LENGTH |
The default IV length used by the algorithm provided as a constant. More... | |
Static Public Attributes inherited from FixedRounds< 20 > | |
static const int | ROUNDS |
The number of rounds for the algorithm provided as a constant. More... | |
IETF ChaCha20 stream cipher.
This is the IETF's variant of Bernstein's ChaCha from RFC 8439. IETF ChaCha is called ChaChaTLS in the Crypto++ library. It is _slightly_ different from the Bernstein implementation. ChaCha-TLS can be used for cipher suites TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
, TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
, and TLS_DHE_RSA_WITH_CHACHA20_POLY1305_SHA256
.
typedef Encryption ChaChaTLS::Decryption |