From 1f054924b4ac0b6631a1a84c4882dab5108aa651 Mon Sep 17 00:00:00 2001 From: Jeffrey Walton Date: Tue, 18 Oct 2016 19:39:33 -0400 Subject: Updated documentation --- ec2n.h | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) (limited to 'ec2n.h') diff --git a/ec2n.h b/ec2n.h index da783734..b300644f 100644 --- a/ec2n.h +++ b/ec2n.h @@ -18,7 +18,8 @@ NAMESPACE_BEGIN(CryptoPP) -//! Elliptic Curve Point +//! \class EC2NPoint +//! \brief Elliptical Curve Point over GF(2^n) struct CRYPTOPP_DLL EC2NPoint { #ifndef CRYPTOPP_MAINTAIN_BACKWARDS_COMPATIBILITY_562 @@ -40,7 +41,8 @@ struct CRYPTOPP_DLL EC2NPoint CRYPTOPP_DLL_TEMPLATE_CLASS AbstractGroup; -//! Elliptic Curve over GF(2^n) +//! \class EC2N +//! \brief Elliptic Curve over GF(2^n) class CRYPTOPP_DLL EC2N : public AbstractGroup { public: @@ -52,14 +54,23 @@ public: virtual ~EC2N() {} #endif + //! \brief Construct an EC2N EC2N() {} + + //! \brief Construct an EC2N + //! \param field Field, GF2NP derived class + //! \param a Field::Element + //! \param b Field::Element EC2N(const Field &field, const Field::Element &a, const Field::Element &b) : m_field(field), m_a(a), m_b(b) {} - // construct from BER encoded parameters - // this constructor will decode and extract the the fields fieldID and curve of the sequence ECParameters + + //! \brief Construct an EC2N from BER encoded parameters + //! \param bt BufferedTransformation derived object + //! \details This constructor will decode and extract the the fields fieldID and curve of the sequence ECParameters EC2N(BufferedTransformation &bt); - // encode the fields fieldID and curve of the sequence ECParameters + //! \brief Encode the fields fieldID and curve of the sequence ECParameters + //! \param bt BufferedTransformation derived object void DEREncode(BufferedTransformation &bt) const; bool Equal(const Point &P, const Point &Q) const; @@ -105,9 +116,15 @@ private: CRYPTOPP_DLL_TEMPLATE_CLASS DL_FixedBasePrecomputationImpl; CRYPTOPP_DLL_TEMPLATE_CLASS DL_GroupPrecomputation; -template class EcPrecomputation; +//! \class EcPrecomputation +//! \brief Elliptic Curve precomputation +//! \tparam EC elliptic curve field +template class EcPrecomputation; -//! EC2N precomputation +//! \class EcPrecomputation +//! \brief EC2N precomputation specialization +//! \details Implementation of DL_GroupPrecomputation +//! \sa DL_GroupPrecomputation template<> class EcPrecomputation : public DL_GroupPrecomputation { public: -- cgit v1.2.1