Update documentation

pull/484/merge
Jeffrey Walton 2017-09-28 04:06:59 -04:00
parent 9099dc0625
commit 7ef1c47c6d
No known key found for this signature in database
GPG Key ID: B36AB348921B1838
1 changed files with 49 additions and 12 deletions

View File

@ -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>
{