Crypto++  8.3
Free C++ class library of cryptographic schemes
Public Member Functions | List of all members
DL_SignerImpl< SCHEME_OPTIONS > Class Template Reference

Discrete Log (DL) signer implementation. More...

+ Inheritance diagram for DL_SignerImpl< SCHEME_OPTIONS >:

Public Member Functions

PK_MessageAccumulatorNewSignatureAccumulator (RandomNumberGenerator &rng) const
 Create a new HashTransformation to accumulate the message to be signed. More...
 
- Public Member Functions inherited from DL_ObjectImplBase< DL_SignerBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PrivateKey >
PrivateKeyAccessPrivateKey ()
 
PublicKeyAccessPublicKey ()
 
const SCHEME_OPTIONS::PrivateKey & GetKey () const
 
SCHEME_OPTIONS::PrivateKey & AccessKey ()
 
- Public Member Functions inherited from AlgorithmImpl< DL_SignerBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS::AlgorithmInfo >
std::string AlgorithmName () const
 The algorithm name. More...
 
- Public Member Functions inherited from DL_SignerBase< SCHEME_OPTIONS::Element >
void RawSign (const Integer &k, const Integer &e, Integer &r, Integer &s) const
 Testing interface. More...
 
void InputRecoverableMessage (PK_MessageAccumulator &messageAccumulator, const byte *recoverableMessage, size_t recoverableMessageLength) const
 Input a recoverable message to an accumulator. More...
 
size_t SignAndRestart (RandomNumberGenerator &rng, PK_MessageAccumulator &messageAccumulator, byte *signature, bool restart) const
 Sign and restart messageAccumulator. More...
 
- Public Member Functions inherited from DL_SignatureSchemeBase< PK_Signer, DL_PrivateKey< SCHEME_OPTIONS::Element > >
size_t SignatureLength () const
 Provides the signature length. More...
 
size_t MaxRecoverableLength () const
 Provides the maximum recoverable length. More...
 
size_t MaxRecoverableLengthFromSignatureLength (size_t signatureLength) const
 Provides the maximum recoverable length. More...
 
bool IsProbabilistic () const
 Determines if the scheme is probabilistic. More...
 
bool AllowNonrecoverablePart () const
 Determines if the scheme has non-recoverable part. More...
 
bool RecoverablePartFirst () const
 Determines if the scheme allows recoverable part first. More...
 
- Public Member Functions inherited from PK_Signer
virtual size_t Sign (RandomNumberGenerator &rng, PK_MessageAccumulator *messageAccumulator, byte *signature) const
 Sign and delete the messageAccumulator. More...
 
virtual size_t SignMessage (RandomNumberGenerator &rng, const byte *message, size_t messageLen, byte *signature) const
 Sign a message. More...
 
virtual size_t SignMessageWithRecovery (RandomNumberGenerator &rng, const byte *recoverableMessage, size_t recoverableMessageLength, const byte *nonrecoverableMessage, size_t nonrecoverableMessageLength, byte *signature) const
 Sign a recoverable message. More...
 
- Public Member Functions inherited from PK_SignatureScheme
virtual size_t MaxSignatureLength (size_t recoverablePartLength=0) const
 Provides the maximum signature length produced given the length of the recoverable message part. More...
 
virtual bool SignatureUpfront () const
 Determines whether the signature must be input before the message. More...
 
- Public Member Functions inherited from PrivateKeyAlgorithm
CryptoMaterialAccessMaterial ()
 Retrieves a reference to a Private Key. More...
 
const CryptoMaterialGetMaterial () const
 Retrieves a reference to a Private Key. More...
 
virtual const PrivateKeyGetPrivateKey () const
 Retrieves a reference to a Private Key. More...
 
- Public Member Functions inherited from Algorithm
 Algorithm (bool checkSelfTestStatus=true)
 Interface for all crypto algorithms. More...
 
virtual std::string AlgorithmProvider () const
 Retrieve the provider of this algorithm. More...
 
- Public Member Functions inherited from Clonable
virtual ClonableClone () const
 Copies this object. More...
 

Additional Inherited Members

- Public Types inherited from DL_ObjectImpl< DL_SignerBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PrivateKey >
typedef SCHEME_OPTIONS::PrivateKey ::Element Element
 
- Public Types inherited from DL_ObjectImplBase< DL_SignerBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PrivateKey >
typedef SCHEME_OPTIONS SchemeOptions
 
typedef SCHEME_OPTIONS::PrivateKey ::Element Element
 
- Static Public Member Functions inherited from AlgorithmImpl< DL_SignerBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS::AlgorithmInfo >
static std::string StaticAlgorithmName ()
 The algorithm name. More...
 

Detailed Description

template<class SCHEME_OPTIONS>
class DL_SignerImpl< SCHEME_OPTIONS >

Discrete Log (DL) signer implementation.

Template Parameters
SCHEME_OPTIONSoptions for the scheme

Definition at line 2011 of file pubkey.h.

Member Function Documentation

◆ NewSignatureAccumulator()

template<class SCHEME_OPTIONS >
PK_MessageAccumulator* DL_SignerImpl< SCHEME_OPTIONS >::NewSignatureAccumulator ( RandomNumberGenerator rng) const
inlinevirtual

Create a new HashTransformation to accumulate the message to be signed.

Parameters
rnga RandomNumberGenerator derived class
Returns
a pointer to a PK_MessageAccumulator

NewSignatureAccumulator() can be used with all signing methods. Sign() will autimatically delete the accumulator pointer. The caller is responsible for deletion if a method is called that takes a reference.

Implements PK_Signer.

Definition at line 2014 of file pubkey.h.


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