Crypto++ 8.7
Free C++ class library of cryptographic schemes
Public Member Functions | Static Public Member Functions | List of all members
DL_Algorithm_GDSA< T > Class Template Reference

GDSA algorithm. More...

#include <gfpcrypt.h>

+ Inheritance diagram for DL_Algorithm_GDSA< T >:

Public Member Functions

void Sign (const DL_GroupParameters< T > &params, const Integer &x, const Integer &k, const Integer &e, Integer &r, Integer &s) const
 Sign a message using a private key. More...
 
bool Verify (const DL_GroupParameters< T > &params, const DL_PublicKey< T > &publicKey, const Integer &e, const Integer &r, const Integer &s) const
 Verify a message using a public key. More...
 
- Public Member Functions inherited from DL_ElgamalLikeSignatureAlgorithm< T >
virtual void Sign (const DL_GroupParameters< T > &params, const Integer &privateKey, const Integer &k, const Integer &e, Integer &r, Integer &s) const =0
 Sign a message using a private key. More...
 
virtual bool Verify (const DL_GroupParameters< T > &params, const DL_PublicKey< T > &publicKey, const Integer &e, const Integer &r, const Integer &s) const =0
 Verify a message using a public key. More...
 
virtual Integer RecoverPresignature (const DL_GroupParameters< T > &params, const DL_PublicKey< T > &publicKey, const Integer &r, const Integer &s) const
 Recover a Presignature. More...
 
virtual size_t RLen (const DL_GroupParameters< T > &params) const
 Retrieve R length. More...
 
virtual size_t SLen (const DL_GroupParameters< T > &params) const
 Retrieve S length. More...
 
virtual bool IsDeterministic () const
 Signature scheme flag. More...
 

Static Public Member Functions

static const char * StaticAlgorithmName ()
 

Detailed Description

template<class T>
class DL_Algorithm_GDSA< T >

GDSA algorithm.

Template Parameters
TFieldElement type or class

FieldElement T can be Integer, ECP or EC2N.

Definition at line 308 of file gfpcrypt.h.

Constructor & Destructor Documentation

◆ ~DL_Algorithm_GDSA()

template<class T >
virtual DL_Algorithm_GDSA< T >::~DL_Algorithm_GDSA ( )
inlinevirtual

Definition at line 313 of file gfpcrypt.h.

Member Function Documentation

◆ StaticAlgorithmName()

template<class T >
static const char * DL_Algorithm_GDSA< T >::StaticAlgorithmName ( )
inlinestatic

Definition at line 311 of file gfpcrypt.h.

◆ Sign()

template<class T >
void DL_Algorithm_GDSA< T >::Sign ( const DL_GroupParameters< T > &  params,
const Integer privateKey,
const Integer k,
const Integer e,
Integer r,
Integer s 
) const
inlinevirtual

Sign a message using a private key.

Parameters
paramsGroupParameters
privateKeyprivate key
ksigning exponent
eencoded message
rr part of signature
ss part of signature

Implements DL_ElgamalLikeSignatureAlgorithm< T >.

Definition at line 315 of file gfpcrypt.h.

◆ Verify()

template<class T >
bool DL_Algorithm_GDSA< T >::Verify ( const DL_GroupParameters< T > &  params,
const DL_PublicKey< T > &  publicKey,
const Integer e,
const Integer r,
const Integer s 
) const
inlinevirtual

Verify a message using a public key.

Parameters
paramsGroupParameters
publicKeypublic key
eencoded message
rr part of signature
ss part of signature

Implements DL_ElgamalLikeSignatureAlgorithm< T >.

Definition at line 324 of file gfpcrypt.h.


The documentation for this class was generated from the following file: