summaryrefslogtreecommitdiff
path: root/pubkey.h
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2017-09-28 04:06:59 -0400
committerJeffrey Walton <noloader@gmail.com>2017-09-28 04:06:59 -0400
commit7ef1c47c6d85ed505721de20e9d90d1450f8e389 (patch)
tree27494d83ce79da25919f244941ff3bef3225757b /pubkey.h
parent9099dc0625d71e53a3bf47a6a0a31515f59cff19 (diff)
downloadcryptopp-git-7ef1c47c6d85ed505721de20e9d90d1450f8e389.tar.gz
Update documentation
Diffstat (limited to 'pubkey.h')
-rw-r--r--pubkey.h61
1 files changed, 49 insertions, 12 deletions
diff --git a/pubkey.h b/pubkey.h
index d24d67d9..5e5fba0a 100644
--- a/pubkey.h
+++ b/pubkey.h
@@ -480,7 +480,10 @@ public:
HashTransformation & AccessHash() {return this->m_object;}
};
-//! _
+//! \class TF_SignatureSchemeBase
+//! \brief Trapdoor Function (TF) Signature Scheme base class
+//! \tparam INTFACE interface
+//! \tparam BASE base class
template <class INTFACE, class BASE>
class CRYPTOPP_NO_VTABLE TF_SignatureSchemeBase : public INTFACE, protected BASE
{
@@ -509,7 +512,8 @@ protected:
virtual size_t GetDigestSize() const =0;
};
-//! _
+//! \class TF_SignerBase
+//! \brief Trapdoor Function (TF) Signer base class
class CRYPTOPP_DLL CRYPTOPP_NO_VTABLE TF_SignerBase : public TF_SignatureSchemeBase<PK_Signer, TF_Base<RandomizedTrapdoorFunctionInverse, PK_SignatureMessageEncodingMethod> >
{
public:
@@ -519,7 +523,8 @@ public:
size_t SignAndRestart(RandomNumberGenerator &rng, PK_MessageAccumulator &messageAccumulator, byte *signature, bool restart=true) const;
};
-//! _
+//! \class TF_VerifierBase
+//! \brief Trapdoor Function (TF) Verifier base class
class CRYPTOPP_DLL CRYPTOPP_NO_VTABLE TF_VerifierBase : public TF_SignatureSchemeBase<PK_Verifier, TF_Base<TrapdoorFunction, PK_SignatureMessageEncodingMethod> >
{
public:
@@ -532,7 +537,11 @@ public:
// ********************************************************
-//! _
+//! \class TF_CryptoSchemeOptions
+//! \brief Trapdoor Function (TF) scheme options
+//! \tparam T1 algorithm info class
+//! \tparam T2 keys class with public and private key
+//! \tparam T3 message encoding class
template <class T1, class T2, class T3>
struct TF_CryptoSchemeOptions
{
@@ -543,14 +552,23 @@ struct TF_CryptoSchemeOptions
typedef T3 MessageEncodingMethod;
};
-//! _
+//! \class TF_SignatureSchemeOptions
+//! \brief Trapdoor Function (TF) signature scheme options
+//! \tparam T1 algorithm info class
+//! \tparam T2 keys class with public and private key
+//! \tparam T3 message encoding class
+//! \tparam T4 HashTransformation class
template <class T1, class T2, class T3, class T4>
struct TF_SignatureSchemeOptions : public TF_CryptoSchemeOptions<T1, T2, T3>
{
typedef T4 HashFunction;
};
-//! _
+//! \class TF_ObjectImplBase
+//! \brief Trapdoor Function (TF) base implementation
+//! \tparam BASE base class
+//! \tparam SCHEME_OPTIONS scheme options class
+//! \tparam KEY_CLASS key class
template <class BASE, class SCHEME_OPTIONS, class KEY_CLASS>
class CRYPTOPP_NO_VTABLE TF_ObjectImplBase : public AlgorithmImpl<BASE, typename SCHEME_OPTIONS::AlgorithmInfo>
{
@@ -602,7 +620,12 @@ protected:
}
};
-//! _
+//! \class TF_ObjectImplExtRef
+//! \brief Trapdoor Function (TF) signature with external reference
+//! \tparam BASE base class
+//! \tparam SCHEME_OPTIONS scheme options class
+//! \tparam KEY_CLASS key class
+//! \details TF_ObjectImplExtRef() holds a pointer to an external key structure
template <class BASE, class SCHEME_OPTIONS, class KEY>
class TF_ObjectImplExtRef : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY>
{
@@ -619,7 +642,12 @@ private:
const KEY * m_pKey;
};
-//! _
+//! \class TF_ObjectImpl
+//! \brief Trapdoor Function (TF) signature scheme options
+//! \tparam BASE base class
+//! \tparam SCHEME_OPTIONS scheme options class
+//! \tparam KEY_CLASS key class
+//! \details TF_ObjectImpl() holds a reference to a trapdoor function
template <class BASE, class SCHEME_OPTIONS, class KEY_CLASS>
class CRYPTOPP_NO_VTABLE TF_ObjectImpl : public TF_ObjectImplBase<BASE, SCHEME_OPTIONS, KEY_CLASS>
{
@@ -635,25 +663,34 @@ private:
KeyClass m_trapdoorFunction;
};
-//! _
+//! \class TF_DecryptorImpl
+//! \brief Trapdoor Function (TF) decryptor options
+//! \tparam SCHEME_OPTIONS scheme options class
+template <class BASE, class SCHEME_OPTIONS, class KEY_CLASS>
template <class SCHEME_OPTIONS>
class TF_DecryptorImpl : public TF_ObjectImpl<TF_DecryptorBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PrivateKey>
{
};
-//! _
+//! \class TF_EncryptorImpl
+//! \brief Trapdoor Function (TF) encryptor options
+//! \tparam SCHEME_OPTIONS scheme options class
template <class SCHEME_OPTIONS>
class TF_EncryptorImpl : public TF_ObjectImpl<TF_EncryptorBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PublicKey>
{
};
-//! _
+//! \class TF_SignerImpl
+//! \brief Trapdoor Function (TF) encryptor options
+//! \tparam SCHEME_OPTIONS scheme options class
template <class SCHEME_OPTIONS>
class TF_SignerImpl : public TF_ObjectImpl<TF_SignerBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PrivateKey>
{
};
-//! _
+//! \class TF_VerifierImpl
+//! \brief Trapdoor Function (TF) encryptor options
+//! \tparam SCHEME_OPTIONS scheme options class
template <class SCHEME_OPTIONS>
class TF_VerifierImpl : public TF_ObjectImpl<TF_VerifierBase, SCHEME_OPTIONS, typename SCHEME_OPTIONS::PublicKey>
{