SymmetricCipherFinal< BASE, INFO > Class Template Reference

SymmetricCipher implementation. More...

Inheritance diagram for SymmetricCipherFinal< BASE, INFO >:

## Public Member Functions

| SymmetricCipherFinal ()
| Construct a stream cipher.
| SymmetricCipherFinal (const byte *key)
| Construct a stream cipher. More...
| SymmetricCipherFinal (const byte *key, size_t length)
| Construct a stream cipher. More...
| SymmetricCipherFinal (const byte *key, size_t length, const byte *iv)
| Construct a stream cipher. More...
Clonable * | Clone () const
| Clone a SymmetricCipher. More...
Public Member Functions inherited from AlgorithmImpl< SimpleKeyingInterfaceImpl< BASE, INFO >, INFO >
std::string | AlgorithmName () const
Public Member Functions inherited from SimpleKeyingInterfaceImpl< BASE, 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 default initialization vector length for the algorithm. More...

## Additional Inherited Members

Static Public Member Functions inherited from AlgorithmImpl< SimpleKeyingInterfaceImpl< BASE, INFO >, INFO >
static std::string | StaticAlgorithmName ()

## Detailed Description

### template<class BASE, class INFO = BASE>
class SymmetricCipherFinal< BASE, INFO >

SymmetricCipher implementation.

Template Parameters

  BASE | AbstractPolicyHolder derived base class
  INFO | AbstractPolicyHolder derived information class

See also
  Weak::ARC4, ChaCha8, ChaCha12, ChaCha20, Salsa20, SEAL, Sosemanuk, WAKE

Definition at line 582 of file strciphr.h.

## Constructor & Destructor Documentation

## SymmetricCipherFinal() [1/3]

template<class BASE, class INFO = BASE>

SymmetricCipherFinal< BASE, INFO >::SymmetricCipherFinal | ( | const byte * | key | ) |

inline

Construct a stream cipher.

Parameters

  key | a byte array used to key the cipher

This overload uses DEFAULT_KEYLENGTH

Definition at line 591 of file strciphr.h.

## SymmetricCipherFinal() [2/3]

template<class BASE, class INFO = BASE>

SymmetricCipherFinal< BASE, INFO >::SymmetricCipherFinal | ( | const byte * | key,
|  | size_t | length
| ) |  |

inline

Construct a stream cipher.

Parameters

  key | a byte array used to key the cipher
  length | the size of the key array

Definition at line 597 of file strciphr.h.

## SymmetricCipherFinal() [3/3]

template<class BASE, class INFO = BASE>

SymmetricCipherFinal< BASE, INFO >::SymmetricCipherFinal | ( | const byte * | key,
|  | size_t | length,
|  | const byte * | iv
| ) |  |

inline

Construct a stream cipher.

Parameters

  key | a byte array used to key the cipher
  length | the size of the key array
  iv | a byte array used as an initialization vector

Definition at line 604 of file strciphr.h.

## Member Function Documentation

## Clone()

template<class BASE, class INFO = BASE>

Clonable* SymmetricCipherFinal< BASE, INFO >::Clone | ( |  | ) | const

inline

Clone a SymmetricCipher.

Returns
  a new SymmetricCipher based on this object

Definition at line 609 of file strciphr.h.

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

- strciphr.h