DL_VerifierBase< T > Class Template Reference

Discret Log (DL) Verifier base class. More...

`#include <pubkey.h>`

Inheritance diagram for DL_VerifierBase< T >:

## Public Member Functions

void | InputSignature (PK_MessageAccumulator &messageAccumulator, const byte *signature, size_t signatureLength) const
| Input signature into a message accumulator.
bool | VerifyAndRestart (PK_MessageAccumulator &messageAccumulator) const
| Check whether messageAccumulator contains a valid signature and message, and restart messageAccumulator.
DecodingResult | RecoverAndRestart (byte *recoveredMessage, PK_MessageAccumulator &messageAccumulator) const
| Recover a message from its signature.
Public Member Functions inherited from DL_SignatureSchemeBase< PK_Verifier, DL_PublicKey< T > >
size_t | SignatureLength () const
| Provides the signature length.
size_t | MaxRecoverableLength () const
| Provides the maximum recoverable length.
size_t | MaxRecoverableLengthFromSignatureLength (size_t signatureLength) const
| Provides the maximum recoverable length.
bool | IsProbabilistic () const
| Determines if the scheme is probabilistic.
bool | AllowNonrecoverablePart () const
| Determines if the scheme has non-recoverable part.
bool | RecoverablePartFirst () const
| Determines if the scheme allows recoverable part first.
Public Member Functions inherited from PK_Verifier
virtual PK_MessageAccumulator * | NewVerificationAccumulator () const =0
| Create a new HashTransformation to accumulate the message to be verified.
virtual bool | Verify (PK_MessageAccumulator *messageAccumulator) const
| Check whether messageAccumulator contains a valid signature and message.
virtual bool | VerifyMessage (const byte *message, size_t messageLen, const byte *signature, size_t signatureLen) const
| Check whether input signature is a valid signature for input message.
virtual DecodingResult | Recover (byte *recoveredMessage, PK_MessageAccumulator *messageAccumulator) const
| Recover a message from its signature.
virtual DecodingResult | RecoverMessage (byte *recoveredMessage, const byte *nonrecoverableMessage, size_t nonrecoverableMessageLength, const byte *signature, size_t signatureLength) const
| Recover a message from its signature.
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.
virtual bool | SignatureUpfront () const
| Determines whether the signature must be input before the message.
Public Member Functions inherited from PublicKeyAlgorithm
CryptoMaterial & | AccessMaterial ()
| Retrieves a reference to a Public Key.
const CryptoMaterial & | GetMaterial () const
| Retrieves a reference to a Public Key.
virtual PublicKey & | AccessPublicKey ()=0
| Retrieves a reference to a Public Key.
virtual const PublicKey & | GetPublicKey () const
| Retrieves a reference to a Public Key.
Public Member Functions inherited from Algorithm
| Algorithm (bool checkSelfTestStatus=true)
| Interface for all crypto algorithms.
virtual std::string | AlgorithmName () const
| Provides the name of this algorithm.
virtual std::string | AlgorithmProvider () const
| Retrieve the provider of this algorithm.
Public Member Functions inherited from Clonable
virtual Clonable * | Clone () const
| Copies this object.

## Detailed Description

template<class T>
class DL_VerifierBase< T >

Discret Log (DL) Verifier base class.

Template Parameters

  T | Field element type or class

Field element `T` can be Integer, ECP or EC2N.

Definition at line 1718 of file pubkey.h.

## Constructor & Destructor Documentation

## ~DL_VerifierBase()

template<class T >

virtual DL_VerifierBase< T >::~DL_VerifierBase | ( |  | ) |

inline virtual

Definition at line 1721 of file pubkey.h.

## Member Function Documentation

## InputSignature()

template<class T >

void DL_VerifierBase< T >::InputSignature | ( | PK_MessageAccumulator & | messageAccumulator,
|  | const byte * | signature,
|  | size_t | signatureLength
| ) |  | const

inline virtual

Input signature into a message accumulator.

Parameters

  messageAccumulator | a pointer to a PK_MessageAccumulator derived class
  signature | the signature on the message
  signatureLength | the size of the signature

Implements PK_Verifier.

Definition at line 1723 of file pubkey.h.

## VerifyAndRestart()

template<class T >

bool DL_VerifierBase< T >::VerifyAndRestart | ( | PK_MessageAccumulator & | messageAccumulator | ) | const

inline virtual

Check whether messageAccumulator contains a valid signature and message, and restart messageAccumulator.

Parameters

  messageAccumulator | a reference to a PK_MessageAccumulator derived class

Returns
  true if the signature is valid, false otherwise

VerifyAndRestart() restarts the messageAccumulator

Implements PK_Verifier.

Definition at line 1744 of file pubkey.h.

## RecoverAndRestart()

template<class T >

DecodingResult DL_VerifierBase< T >::RecoverAndRestart | ( | byte * | recoveredMessage,
|  | PK_MessageAccumulator & | messageAccumulator
| ) |  | const

inline virtual

Recover a message from its signature.

Parameters

  recoveredMessage | a pointer to the recoverable message part to be verified
  messageAccumulator | a pointer to a PK_MessageAccumulator derived class

Returns
  the result of the verification operation

RecoverAndRestart() restarts the messageAccumulator

Precondition
  `COUNTOF(recoveredMessage) == MaxRecoverableLengthFromSignatureLength(signatureLength)`

Implements PK_Verifier.

Definition at line 1764 of file pubkey.h.

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

- pubkey.h