| 
| virtual PK_MessageAccumulator *  | NewVerificationAccumulator () const =0 | 
|   | Create a new HashTransformation to accumulate the message to be verified.  
  | 
|   | 
| virtual void  | InputSignature (PK_MessageAccumulator &messageAccumulator, const byte *signature, size_t signatureLength) const =0 | 
|   | Input signature into a message accumulator.  
  | 
|   | 
| virtual bool  | Verify (PK_MessageAccumulator *messageAccumulator) const | 
|   | Check whether messageAccumulator contains a valid signature and message.  
  | 
|   | 
| virtual bool  | VerifyAndRestart (PK_MessageAccumulator &messageAccumulator) const =0 | 
|   | Check whether messageAccumulator contains a valid signature and message, and restart messageAccumulator.  
  | 
|   | 
| 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  | RecoverAndRestart (byte *recoveredMessage, PK_MessageAccumulator &messageAccumulator) const =0 | 
|   | 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.  
  | 
|   | 
| virtual size_t  | SignatureLength () const =0 | 
|   | Provides the signature length if it only depends on the key.  
  | 
|   | 
| virtual size_t  | MaxSignatureLength (size_t recoverablePartLength=0) const | 
|   | Provides the maximum signature length produced given the length of the recoverable message part.  
  | 
|   | 
| virtual size_t  | MaxRecoverableLength () const =0 | 
|   | Provides the length of longest message that can be recovered.  
  | 
|   | 
| 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.  
  | 
|   | 
| virtual bool  | IsProbabilistic () const =0 | 
|   | Determines whether a signature scheme requires a random number generator.  
  | 
|   | 
| virtual bool  | AllowNonrecoverablePart () const =0 | 
|   | Determines whether the non-recoverable message part can be signed.  
  | 
|   | 
| virtual bool  | SignatureUpfront () const | 
|   | Determines whether the signature must be input before the message.  
  | 
|   | 
| virtual bool  | RecoverablePartFirst () const =0 | 
|   | Determines whether the recoverable part must be input before the non-recoverable part.  
  | 
|   | 
| 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.  
  | 
|   | 
|   | 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.  
  | 
|   | 
| virtual Clonable *  | Clone () const | 
|   | Copies this object.  
  | 
|   | 
Interface for public-key signature verifiers. 
The Recover* functions throw NotImplemented if the signature scheme does not support message recovery.
The Verify* functions throw InvalidDataFormat if the scheme does support message recovery and the signature contains a non-empty recoverable message part. The Recover* functions should be used in that case. 
Definition at line 2945 of file cryptlib.h.