Updated documentation
parent
47cf7aca3e
commit
b6a32c063a
22
gcm.h
22
gcm.h
|
|
@ -1,7 +1,6 @@
|
||||||
// gcm.h - written and placed in the public domain by Wei Dai
|
// gcm.h - written and placed in the public domain by Wei Dai
|
||||||
|
|
||||||
//! \file
|
//! \file gcm.h
|
||||||
//! \headerfile gcm.h
|
|
||||||
//! \brief GCM block cipher mode of operation
|
//! \brief GCM block cipher mode of operation
|
||||||
|
|
||||||
#ifndef CRYPTOPP_GCM_H
|
#ifndef CRYPTOPP_GCM_H
|
||||||
|
|
@ -13,12 +12,16 @@
|
||||||
NAMESPACE_BEGIN(CryptoPP)
|
NAMESPACE_BEGIN(CryptoPP)
|
||||||
|
|
||||||
//! \enum GCM_TablesOption
|
//! \enum GCM_TablesOption
|
||||||
//! \brief Use either 2K or 64K size tables.
|
//! \brief GCM table size options
|
||||||
enum GCM_TablesOption {GCM_2K_Tables, GCM_64K_Tables};
|
enum GCM_TablesOption {
|
||||||
|
//! \brief Use a table with 2K entries
|
||||||
|
GCM_2K_Tables,
|
||||||
|
//! \brief Use a table with 64K entries
|
||||||
|
GCM_64K_Tables};
|
||||||
|
|
||||||
//! \class GCM_Base
|
//! \class GCM_Base
|
||||||
//! \brief CCM block cipher mode of operation.
|
//! \brief GCM block cipher base implementation
|
||||||
//! \details Implementations and overrides in \p GCM_Base apply to both \p ENCRYPTION and \p DECRYPTION directions
|
//! \details Base implementation of the AuthenticatedSymmetricCipher interface
|
||||||
class CRYPTOPP_DLL CRYPTOPP_NO_VTABLE GCM_Base : public AuthenticatedSymmetricCipherBase
|
class CRYPTOPP_DLL CRYPTOPP_NO_VTABLE GCM_Base : public AuthenticatedSymmetricCipherBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -87,13 +90,10 @@ protected:
|
||||||
};
|
};
|
||||||
|
|
||||||
//! \class GCM_Final
|
//! \class GCM_Final
|
||||||
//! \brief Class specific methods used to operate the cipher.
|
//! \brief GCM block cipher final implementation
|
||||||
//! \tparam T_BlockCipher block cipher
|
//! \tparam T_BlockCipher block cipher
|
||||||
//! \tparam T_TablesOption table size, either \p GCM_2K_Tables or \p GCM_64K_Tables
|
//! \tparam T_TablesOption table size, either \p GCM_2K_Tables or \p GCM_64K_Tables
|
||||||
//! \tparam T_IsEncryption direction in which to operate the cipher
|
//! \tparam T_IsEncryption direction in which to operate the cipher
|
||||||
//! \details Implementations and overrides in \p GCM_Final apply to either
|
|
||||||
//! \p ENCRYPTION or \p DECRYPTION, depending on the template parameter \p T_IsEncryption.
|
|
||||||
//! \details \p GCM_Final does not use inner classes \p Enc and \p Dec.
|
|
||||||
template <class T_BlockCipher, GCM_TablesOption T_TablesOption, bool T_IsEncryption>
|
template <class T_BlockCipher, GCM_TablesOption T_TablesOption, bool T_IsEncryption>
|
||||||
class GCM_Final : public GCM_Base
|
class GCM_Final : public GCM_Base
|
||||||
{
|
{
|
||||||
|
|
@ -110,7 +110,7 @@ private:
|
||||||
};
|
};
|
||||||
|
|
||||||
//! \class GCM
|
//! \class GCM
|
||||||
//! \brief The GCM mode of operation
|
//! \brief GCM block cipher mode of operation
|
||||||
//! \tparam T_BlockCipher block cipher
|
//! \tparam T_BlockCipher block cipher
|
||||||
//! \tparam T_TablesOption table size, either \p GCM_2K_Tables or \p GCM_64K_Tables
|
//! \tparam T_TablesOption table size, either \p GCM_2K_Tables or \p GCM_64K_Tables
|
||||||
//! \details \p GCM provides the \p Encryption and \p Decryption typedef.
|
//! \details \p GCM provides the \p Encryption and \p Decryption typedef.
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue