summaryrefslogtreecommitdiff
path: root/seckey.h
diff options
context:
space:
mode:
authorweidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0>2004-07-22 00:51:57 +0000
committerweidai <weidai@57ff6487-cd31-0410-9ec3-f628ee90f5f0>2004-07-22 00:51:57 +0000
commita2828f6ae67c3d7294118a8144b1b2ec431237c4 (patch)
treefaff40f3429fb7fb70249c83afd5378f92ebdb31 /seckey.h
parente87d537834e72b242b4c16b99f0a40586940104b (diff)
downloadcryptopp-a2828f6ae67c3d7294118a8144b1b2ec431237c4.tar.gz
fix documentation, fix PanamaMAC, fix algorithm names
git-svn-id: svn://svn.code.sf.net/p/cryptopp/code/trunk/c5@186 57ff6487-cd31-0410-9ec3-f628ee90f5f0
Diffstat (limited to 'seckey.h')
-rw-r--r--seckey.h35
1 files changed, 16 insertions, 19 deletions
diff --git a/seckey.h b/seckey.h
index aa315a3..7fcfe86 100644
--- a/seckey.h
+++ b/seckey.h
@@ -16,7 +16,7 @@ inline CipherDir ReverseCipherDir(CipherDir dir)
return (dir == ENCRYPTION) ? DECRYPTION : ENCRYPTION;
}
-//! .
+//! to be inherited by block ciphers with fixed block size
template <unsigned int N>
class FixedBlockSize
{
@@ -26,7 +26,7 @@ public:
// ************** rounds ***************
-//! .
+//! to be inherited by ciphers with fixed number of rounds
template <unsigned int R>
class FixedRounds
{
@@ -45,7 +45,7 @@ protected:
}
};
-//! .
+//! to be inherited by ciphers with variable number of rounds
template <unsigned int D, unsigned int N=1, unsigned int M=INT_MAX> // use INT_MAX here because enums are treated as signed ints
class VariableRounds
{
@@ -72,7 +72,7 @@ protected:
// ************** key length ***************
-//! .
+//! to be inherited by keyed algorithms with fixed key length
template <unsigned int N, unsigned int IV_REQ = SimpleKeyingInterface::NOT_RESYNCHRONIZABLE>
class FixedKeyLength
{
@@ -137,7 +137,7 @@ static inline void CheckedSetKey(T *obj, CipherDir dir, const byte *key, unsigne
obj->UncheckedSetKey(dir, key, length);
}
-//! .
+//! _
template <class BASE, class INFO = BASE>
class CRYPTOPP_NO_VTABLE SimpleKeyingInterfaceImpl : public BASE
{
@@ -153,13 +153,13 @@ protected:
};
template <class INFO, class BASE = BlockCipher>
-class CRYPTOPP_NO_VTABLE BlockCipherImpl : public AlgorithmImpl<SimpleKeyingInterfaceImpl<BASE, INFO>, INFO>, public INFO
+class CRYPTOPP_NO_VTABLE BlockCipherImpl : public AlgorithmImpl<SimpleKeyingInterfaceImpl<TwoBases<BASE, INFO> > >
{
public:
unsigned int BlockSize() const {return this->BLOCKSIZE;}
};
-//! .
+//! _
template <CipherDir DIR, class BASE>
class BlockCipherFinal : public ClonableImpl<BlockCipherFinal<DIR, BASE>, BASE>
{
@@ -180,23 +180,18 @@ public:
}
};
-//! .
+//! _
template <class BASE, class INFO = BASE>
-class MessageAuthenticationCodeImpl : public
-#ifdef CRYPTOPP_DOXYGEN_PROCESSING
- MessageAuthenticationCode
-#else
- AlgorithmImpl<SimpleKeyingInterfaceImpl<BASE, INFO>, INFO>
-#endif
+class MessageAuthenticationCodeImpl : public AlgorithmImpl<SimpleKeyingInterfaceImpl<BASE, INFO>, INFO>
{
public:
- void SetKey(const byte *key, unsigned int length, const NameValuePairs &param = g_nullNameValuePairs)
+ void SetKey(const byte *key, unsigned int length, const NameValuePairs &params = g_nullNameValuePairs)
{
- CheckedSetKey(this, Empty(), key, length, param);
+ CheckedSetKey(this, Empty(), key, length, params);
}
};
-//! .
+//! _
template <class BASE>
class MessageAuthenticationCodeFinal : public ClonableImpl<MessageAuthenticationCodeFinal<BASE>, MessageAuthenticationCodeImpl<BASE> >
{
@@ -222,8 +217,10 @@ struct BlockCipherDocumentation
};
/*! \brief Each class derived from this one defines two types, Encryption and Decryption,
- both of which implement the SymmetricCipher interface. See CipherModeDocumentation
- for information about using block ciphers. */
+ both of which implement the SymmetricCipher interface. Two types of classes derive
+ from this class: stream ciphers and block cipher modes. Stream ciphers can be used
+ alone, cipher mode classes need to be used with a block cipher. See CipherModeDocumentation
+ for more for information about using cipher modes and block ciphers. */
struct SymmetricCipherDocumentation
{
//! implements the SymmetricCipher interface