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

Public Types | List of all members
Rabbit Struct Reference

Rabbit stream cipher. More...

Inheritance diagram for Rabbit:

## Public Types
typedef SymmetricCipherFinal< ConcretePolicyHolder< RabbitPolicy, AdditiveCipherTemplate<> >, RabbitInfo > | Encryption
typedef Encryption | Decryption
Public Types inherited from SymmetricCipherDocumentation
typedef SymmetricCipher | Encryption
| implements the SymmetricCipher interface
typedef SymmetricCipher | Decryption
| implements the SymmetricCipher interface

## Additional Inherited Members
Static Public Member Functions inherited from RabbitInfo
static const char * | StaticAlgorithmName ()
Static Public Member Functions inherited from FixedKeyLength< 16, SimpleKeyingInterface::NOT_RESYNCHRONIZABLE >
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< 16, SimpleKeyingInterface::NOT_RESYNCHRONIZABLE >
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...

## Detailed Description

Rabbit stream cipher.

Rabbit is a stream cipher developed by Martin Boesgaard, Mette Vesterager, Thomas Pedersen, Jesper Christiansen and Ove Scavenius. Rabbit is one of the final four Profile 1 (software) ciphers selected for the eSTREAM portfolio.

Crypto++ provides Rabbit and RabbitWithIV classes. Two classes are necessary because the library lacks the means to describe and manage optional IVs.

See also
  RabbitWithIV, The eSTREAM Project | Rabbit and Crypto++ Wiki | Rabbit.

Since
  Crypto++ 8.0

Definition at line 88 of file rabbit.h.

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

- rabbit.h