Updated documentation
parent
b6a32c063a
commit
f8ff9e2c7f
20
ccm.h
20
ccm.h
|
|
@ -1,7 +1,6 @@
|
||||||
// ccm.h - written and placed in the public domain by Wei Dai
|
// ccm.h - written and placed in the public domain by Wei Dai
|
||||||
|
|
||||||
//! \file
|
//! \file ccm.h
|
||||||
//! \headerfile ccm.h
|
|
||||||
//! \brief CCM block cipher mode of operation
|
//! \brief CCM block cipher mode of operation
|
||||||
|
|
||||||
#ifndef CRYPTOPP_CCM_H
|
#ifndef CRYPTOPP_CCM_H
|
||||||
|
|
@ -12,6 +11,9 @@
|
||||||
|
|
||||||
NAMESPACE_BEGIN(CryptoPP)
|
NAMESPACE_BEGIN(CryptoPP)
|
||||||
|
|
||||||
|
//! \class CCM_Base
|
||||||
|
//! \brief CCM block cipher base implementation
|
||||||
|
//! \details Base implementation of the AuthenticatedSymmetricCipher interface
|
||||||
class CRYPTOPP_DLL CRYPTOPP_NO_VTABLE CCM_Base : public AuthenticatedSymmetricCipherBase
|
class CRYPTOPP_DLL CRYPTOPP_NO_VTABLE CCM_Base : public AuthenticatedSymmetricCipherBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -77,6 +79,11 @@ protected:
|
||||||
CTR_Mode_ExternalCipher::Encryption m_ctr;
|
CTR_Mode_ExternalCipher::Encryption m_ctr;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//! \class CCM_Final
|
||||||
|
//! \brief CCM block cipher final implementation
|
||||||
|
//! \tparam T_BlockCipher block cipher
|
||||||
|
//! \tparam T_DefaultDigestSize default digest size, in bytes
|
||||||
|
//! \tparam T_IsEncryption direction in which to operate the cipher
|
||||||
template <class T_BlockCipher, int T_DefaultDigestSize, bool T_IsEncryption>
|
template <class T_BlockCipher, int T_DefaultDigestSize, bool T_IsEncryption>
|
||||||
class CCM_Final : public CCM_Base
|
class CCM_Final : public CCM_Base
|
||||||
{
|
{
|
||||||
|
|
@ -92,8 +99,13 @@ private:
|
||||||
typename T_BlockCipher::Encryption m_cipher;
|
typename T_BlockCipher::Encryption m_cipher;
|
||||||
};
|
};
|
||||||
|
|
||||||
/// <a href="http://www.cryptolounge.org/wiki/CCM">CCM</a>
|
//! \class CCM
|
||||||
//! \brief CCM mode of operation
|
//! \brief CCM block cipher mode of operation
|
||||||
|
//! \tparam T_BlockCipher block cipher
|
||||||
|
//! \tparam T_DefaultDigestSize default digest size, in bytes
|
||||||
|
//! \details \p CCM provides the \p Encryption and \p Decryption typedef. See GCM_Base
|
||||||
|
//! and GCM_Final for the AuthenticatedSymmetricCipher implementation.
|
||||||
|
//! \sa <a href="http://www.cryptolounge.org/wiki/CCM">CCM</a> at the Crypto Lounge
|
||||||
template <class T_BlockCipher, int T_DefaultDigestSize = 16>
|
template <class T_BlockCipher, int T_DefaultDigestSize = 16>
|
||||||
struct CCM : public AuthenticatedSymmetricCipherDocumentation
|
struct CCM : public AuthenticatedSymmetricCipherDocumentation
|
||||||
{
|
{
|
||||||
|
|
|
||||||
20
eax.h
20
eax.h
|
|
@ -1,7 +1,6 @@
|
||||||
// eax.h - written and placed in the public domain by Wei Dai
|
// eax.h - written and placed in the public domain by Wei Dai
|
||||||
|
|
||||||
//! \file
|
//! \file eax.h
|
||||||
//! \headerfile eax.h
|
|
||||||
//! \brief EAX block cipher mode of operation
|
//! \brief EAX block cipher mode of operation
|
||||||
|
|
||||||
#ifndef CRYPTOPP_EAX_H
|
#ifndef CRYPTOPP_EAX_H
|
||||||
|
|
@ -14,8 +13,8 @@
|
||||||
NAMESPACE_BEGIN(CryptoPP)
|
NAMESPACE_BEGIN(CryptoPP)
|
||||||
|
|
||||||
//! \class EAX_Base
|
//! \class EAX_Base
|
||||||
//! \brief EAX block cipher mode of operation
|
//! \brief EAX block cipher base implementation
|
||||||
//! \details Implementations and overrides in \p EAX_Base apply to both \p ENCRYPTION and \p DECRYPTION directions
|
//! \details Base implementation of the AuthenticatedSymmetricCipher interface
|
||||||
class CRYPTOPP_NO_VTABLE EAX_Base : public AuthenticatedSymmetricCipherBase
|
class CRYPTOPP_NO_VTABLE EAX_Base : public AuthenticatedSymmetricCipherBase
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
@ -68,12 +67,9 @@ protected:
|
||||||
};
|
};
|
||||||
|
|
||||||
//! \class EAX_Final
|
//! \class EAX_Final
|
||||||
//! \brief Class specific methods used to operate the cipher.
|
//! \brief EAX block cipher final implementation
|
||||||
//! \tparam T_BlockCipher block cipher
|
//! \tparam T_BlockCipher block cipher
|
||||||
//! \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 EAX_Final does not use inner classes \p Enc and \p Dec.
|
|
||||||
template <class T_BlockCipher, bool T_IsEncryption>
|
template <class T_BlockCipher, bool T_IsEncryption>
|
||||||
class EAX_Final : public EAX_Base
|
class EAX_Final : public EAX_Base
|
||||||
{
|
{
|
||||||
|
|
@ -93,12 +89,10 @@ private:
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
//! \class EAX
|
//! \class EAX
|
||||||
//! \brief The EAX block cipher mode of operation
|
//! \brief EAX block cipher mode of operation
|
||||||
//! \details EAX is an Authenticated Encryption with Associated Data (AEAD) block
|
|
||||||
//! cipher mode of operation designed to simultaneously provide both authentication
|
|
||||||
//! and privacy of the message.
|
|
||||||
//! \tparam T_BlockCipher block cipher
|
//! \tparam T_BlockCipher block cipher
|
||||||
//! \details \p EAX provides the \p Encryption and \p Decryption typedef.
|
//! \details \p EAX provides the \p Encryption and \p Decryption typedef. See EAX_Base
|
||||||
|
//! and EAX_Final for the AuthenticatedSymmetricCipher implementation.
|
||||||
//! \sa <a href="http://www.cryptolounge.org/wiki/EAX">EAX</a> at the Crypto Lounge
|
//! \sa <a href="http://www.cryptolounge.org/wiki/EAX">EAX</a> at the Crypto Lounge
|
||||||
template <class T_BlockCipher>
|
template <class T_BlockCipher>
|
||||||
struct EAX : public AuthenticatedSymmetricCipherDocumentation
|
struct EAX : public AuthenticatedSymmetricCipherDocumentation
|
||||||
|
|
|
||||||
3
gcm.h
3
gcm.h
|
|
@ -113,7 +113,8 @@ private:
|
||||||
//! \brief GCM block cipher 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. See GCM_Base
|
||||||
|
//! and GCM_Final for the AuthenticatedSymmetricCipher implementation.
|
||||||
//! \sa <a href="http://www.cryptolounge.org/wiki/GCM">GCM</a> at the Crypto Lounge
|
//! \sa <a href="http://www.cryptolounge.org/wiki/GCM">GCM</a> at the Crypto Lounge
|
||||||
template <class T_BlockCipher, GCM_TablesOption T_TablesOption=GCM_2K_Tables>
|
template <class T_BlockCipher, GCM_TablesOption T_TablesOption=GCM_2K_Tables>
|
||||||
struct GCM : public AuthenticatedSymmetricCipherDocumentation
|
struct GCM : public AuthenticatedSymmetricCipherDocumentation
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue