BlockCipherFinal< DIR, BASE > Class Template Reference

Provides class member functions to key a block cipher. More...

`#include <seckey.h>`

Inheritance diagram for BlockCipherFinal< DIR, BASE >:

## Public Member Functions

| BlockCipherFinal ()
| Construct a default BlockCipherFinal.
| BlockCipherFinal (const byte *key)
| Construct a BlockCipherFinal.
| BlockCipherFinal (const byte *key, size_t length)
| Construct a BlockCipherFinal.
| BlockCipherFinal (const byte *key, size_t length, unsigned int rounds)
| Construct a BlockCipherFinal.
bool | IsForwardTransformation () const
| Provides the direction of the cipher.
Public Member Functions inherited from ClonableImpl< BlockCipherFinal< DIR, BASE >, BASE >
Clonable * | Clone () const
| Create a copy of this object.

## Detailed Description

template<CipherDir DIR, class BASE>
class BlockCipherFinal< DIR, BASE >

Provides class member functions to key a block cipher.

Template Parameters

  DIR | a CipherDir
  BASE | a BlockCipherImpl derived class

Definition at line 317 of file seckey.h.

## Constructor & Destructor Documentation

## BlockCipherFinal() [1/4]

template<CipherDir DIR, class BASE >

BlockCipherFinal< DIR, BASE >::BlockCipherFinal | ( |  | ) |

inline

Construct a default BlockCipherFinal.

The cipher is not keyed.

Definition at line 322 of file seckey.h.

## BlockCipherFinal() [2/4]

template<CipherDir DIR, class BASE >

BlockCipherFinal< DIR, BASE >::BlockCipherFinal | ( | const byte * | key | ) |

inline

Construct a BlockCipherFinal.

Parameters

  key | a byte array used to key the cipher

key must be at least DEFAULT_KEYLENGTH in length. Internally, the function calls SimpleKeyingInterface::SetKey.

Definition at line 328 of file seckey.h.

## BlockCipherFinal() [3/4]

template<CipherDir DIR, class BASE >

BlockCipherFinal< DIR, BASE >::BlockCipherFinal | ( | const byte * | key,
|  | size_t | length
| ) |  |

inline

Construct a BlockCipherFinal.

Parameters

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

key must be at least DEFAULT_KEYLENGTH in length. Internally, the function calls SimpleKeyingInterface::SetKey.

Definition at line 336 of file seckey.h.

## BlockCipherFinal() [4/4]

template<CipherDir DIR, class BASE >

BlockCipherFinal< DIR, BASE >::BlockCipherFinal | ( | const byte * | key,
|  | size_t | length,
|  | unsigned int | rounds
| ) |  |

inline

Construct a BlockCipherFinal.

Parameters

  key | a byte array used to key the cipher
  length | the length of the byte array
  rounds | the number of rounds

key must be at least DEFAULT_KEYLENGTH in length. Internally, the function calls SimpleKeyingInterface::SetKeyWithRounds.

Definition at line 345 of file seckey.h.

## Member Function Documentation

## IsForwardTransformation()

template<CipherDir DIR, class BASE >

bool BlockCipherFinal< DIR, BASE >::IsForwardTransformation | ( |  | ) | const

inline

Provides the direction of the cipher.

Returns
  true if DIR is ENCRYPTION, false otherwise

See also
  GetCipherDirection(), IsPermutation()

Definition at line 351 of file seckey.h.

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

- seckey.h