You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
49 lines
1.4 KiB
49 lines
1.4 KiB
14 years ago
|
//////////////////////////////////////////////////////////////////////////////////
|
||
|
// Name: actIBlockCipherKey.h
|
||
|
// Product: cv act library
|
||
|
// Purpose: The class IBlockCipherKey extends the interface of the class IKey
|
||
|
// and supports the peculiarities of symmetric keys.
|
||
|
//
|
||
|
//
|
||
|
// Copyright: (c) 2000 cv cryptovision GmbH
|
||
|
// all rights reserved
|
||
|
// Licence: The conditions for the use of this software are regulated
|
||
|
// in the cv act library licence agreement.
|
||
|
//////////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
#ifndef ACT_IBlockCipherKey_h
|
||
|
#define ACT_IBlockCipherKey_h
|
||
|
|
||
|
#include "actIKey.h"
|
||
|
|
||
|
namespace act
|
||
|
{
|
||
|
class IPadding;
|
||
|
class IBlockCipher;
|
||
|
class IBlockCipherMode;
|
||
|
class IDerivator;
|
||
|
|
||
|
class IBlockCipherKey : public IKey
|
||
|
{
|
||
|
public:
|
||
|
virtual void SetPadding(IPadding* padding) = 0;
|
||
|
virtual const IPadding* GetPadding() const = 0;
|
||
|
virtual IPadding* GetPadding() = 0;
|
||
|
|
||
|
virtual void SetCipher(IBlockCipher* cipher) = 0;
|
||
|
virtual const IBlockCipher* GetCipher() const = 0;
|
||
|
virtual IBlockCipher* GetCipher() = 0;
|
||
|
|
||
|
virtual void SetMode(IBlockCipherMode* mode) = 0;
|
||
|
virtual const IBlockCipherMode* GetMode() const = 0;
|
||
|
virtual IBlockCipherMode* GetMode() = 0;
|
||
|
|
||
|
virtual void SetDerivator(IDerivator* derive) = 0;
|
||
|
virtual const IDerivator* GetDerivator() const = 0;
|
||
|
virtual IDerivator* GetDerivator() = 0;
|
||
|
};
|
||
|
|
||
|
} //namespace act
|
||
|
|
||
|
#endif // ACT_IBlockCipherKey_h
|