Crypto++ 8.7
Free C++ class library of cryptographic schemes
|
Discrete Log (DL) verifier implementation. More...
#include <pubkey.h>
Public Member Functions | |
PK_MessageAccumulator * | NewVerificationAccumulator () const |
Create a new HashTransformation to accumulate the message to be verified. More... | |
Public Member Functions inherited from DL_ObjectImplBase< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey > | |
PrivateKey & | AccessPrivateKey () |
PublicKey & | AccessPublicKey () |
const SCHEME_OPTIONS::PublicKey & | GetKey () const |
SCHEME_OPTIONS::PublicKey & | AccessKey () |
Public Member Functions inherited from AlgorithmImpl< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS::AlgorithmInfo > | |
std::string | AlgorithmName () const |
The algorithm name. More... | |
Public Member Functions inherited from DL_VerifierBase< SCHEME_OPTIONS::Element > | |
void | InputSignature (PK_MessageAccumulator &messageAccumulator, const byte *signature, size_t signatureLength) const |
Input signature into a message accumulator. More... | |
bool | VerifyAndRestart (PK_MessageAccumulator &messageAccumulator) const |
Check whether messageAccumulator contains a valid signature and message, and restart messageAccumulator. More... | |
DecodingResult | RecoverAndRestart (byte *recoveredMessage, PK_MessageAccumulator &messageAccumulator) const |
Recover a message from its signature. More... | |
Public Member Functions inherited from DL_SignatureSchemeBase< PK_Verifier, DL_PublicKey< 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_Verifier | |
virtual PK_MessageAccumulator * | NewVerificationAccumulator () const =0 |
Create a new HashTransformation to accumulate the message to be verified. More... | |
virtual void | InputSignature (PK_MessageAccumulator &messageAccumulator, const byte *signature, size_t signatureLength) const =0 |
Input signature into a message accumulator. More... | |
virtual bool | Verify (PK_MessageAccumulator *messageAccumulator) const |
Check whether messageAccumulator contains a valid signature and message. More... | |
virtual bool | VerifyAndRestart (PK_MessageAccumulator &messageAccumulator) const =0 |
Check whether messageAccumulator contains a valid signature and message, and restart messageAccumulator. More... | |
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. More... | |
virtual DecodingResult | Recover (byte *recoveredMessage, PK_MessageAccumulator *messageAccumulator) const |
Recover a message from its signature. More... | |
virtual DecodingResult | RecoverAndRestart (byte *recoveredMessage, PK_MessageAccumulator &messageAccumulator) const =0 |
Recover a message from its signature. More... | |
virtual DecodingResult | RecoverMessage (byte *recoveredMessage, const byte *nonrecoverableMessage, size_t nonrecoverableMessageLength, const byte *signature, size_t signatureLength) const |
Recover a message from its signature. More... | |
Public Member Functions inherited from PK_SignatureScheme | |
virtual size_t | SignatureLength () const =0 |
Provides the signature length if it only depends on the key. More... | |
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 size_t | MaxRecoverableLength () const =0 |
Provides the length of longest message that can be recovered. More... | |
virtual size_t | MaxRecoverableLengthFromSignatureLength (size_t signatureLength) const =0 |
Provides the length of longest message that can be recovered from a signature of given length. More... | |
virtual bool | IsProbabilistic () const =0 |
Determines whether a signature scheme requires a random number generator. More... | |
virtual bool | AllowNonrecoverablePart () const =0 |
Determines whether the non-recoverable message part can be signed. More... | |
virtual bool | SignatureUpfront () const |
Determines whether the signature must be input before the message. More... | |
virtual bool | RecoverablePartFirst () const =0 |
Determines whether the recoverable part must be input before the non-recoverable part. More... | |
Public Member Functions inherited from PublicKeyAlgorithm | |
CryptoMaterial & | AccessMaterial () |
Retrieves a reference to a Public Key. More... | |
const CryptoMaterial & | GetMaterial () const |
Retrieves a reference to a Public Key. More... | |
virtual PublicKey & | AccessPublicKey ()=0 |
Retrieves a reference to a Public Key. More... | |
virtual const PublicKey & | GetPublicKey () const |
Retrieves a reference to a Public Key. More... | |
virtual CryptoMaterial & | AccessMaterial ()=0 |
Retrieves a reference to CryptoMaterial. More... | |
virtual const CryptoMaterial & | GetMaterial () const =0 |
Retrieves a reference to CryptoMaterial. More... | |
Public Member Functions inherited from Algorithm | |
Algorithm (bool checkSelfTestStatus=true) | |
Interface for all crypto algorithms. More... | |
virtual std::string | AlgorithmName () const |
Provides the name of this algorithm. More... | |
virtual std::string | AlgorithmProvider () const |
Retrieve the provider of this algorithm. More... | |
Public Member Functions inherited from Clonable | |
virtual Clonable * | Clone () const |
Copies this object. More... | |
Additional Inherited Members | |
Public Types inherited from DL_ObjectImpl< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey > | |
typedef KEY::Element | Element |
Public Types inherited from DL_ObjectImplBase< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS, SCHEME_OPTIONS::PublicKey > | |
typedef SCHEME_OPTIONS | SchemeOptions |
typedef KEY::Element | Element |
Static Public Member Functions inherited from AlgorithmImpl< DL_VerifierBase< SCHEME_OPTIONS::Element >, SCHEME_OPTIONS::AlgorithmInfo > | |
static std::string | StaticAlgorithmName () |
The algorithm name. More... | |
Discrete Log (DL) verifier implementation.
SCHEME_OPTIONS | options for the scheme |
|
inlinevirtual |
Create a new HashTransformation to accumulate the message to be verified.
NewVerificationAccumulator() can be used with all verification methods. Verify() will automatically delete the accumulator pointer. The caller is responsible for deletion if a method is called that takes a reference.
Implements PK_Verifier.