Crypto++
|
_ More...
#include <pubkey.h>
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 More... | |
size_t | SignatureLength () const |
size_t | MaxRecoverableLength () const |
size_t | MaxRecoverableLengthFromSignatureLength (size_t signatureLength) const |
bool | IsProbabilistic () const |
bool | AllowNonrecoverablePart () const |
bool | RecoverablePartFirst () const |
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, and delete messageAccumulator (even in case of exception thrown) | |
virtual bool | VerifyMessage (const byte *message, size_t messageLen, const byte *signature, size_t signatureLength) 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 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... | |
virtual size_t | MaxSignatureLength (size_t recoverablePartLength=0) const |
maximum signature length produced for a given length of recoverable message part | |
virtual bool | SignatureUpfront () const |
if this function returns true, during verification you must input the signature before the message, otherwise you can input it at anytime */ | |
CryptoMaterial & | AccessMaterial () |
returns a reference to the crypto material used by this object | |
const CryptoMaterial & | GetMaterial () const |
returns a const reference to the crypto material used by this object | |
virtual PublicKey & | AccessPublicKey ()=0 |
virtual const PublicKey & | GetPublicKey () const |
void | BERDecode (BufferedTransformation &bt) |
for backwards compatibility, calls AccessMaterial().Load(bt) | |
void | DEREncode (BufferedTransformation &bt) const |
for backwards compatibility, calls GetMaterial().Save(bt) | |
virtual std::string | AlgorithmName () const |
returns name of this algorithm, not universally implemented yet | |
virtual Clonable * | Clone () const |
this is not implemented by most classes yet | |
Protected Types | |
typedef DL_PublicKey< T > | KeyInterface |
typedef DL_PublicKey< T >::Element | Element |
Protected Member Functions | |
size_t | MessageRepresentativeLength () const |
size_t | MessageRepresentativeBitLength () const |
virtual const DL_ElgamalLikeSignatureAlgorithm < typename DL_PublicKey< T > ::Element > & | GetSignatureAlgorithm () const =0 |
virtual const PK_SignatureMessageEncodingMethod & | GetMessageEncodingInterface () const =0 |
virtual HashIdentifier | GetHashIdentifier () const =0 |
virtual size_t | GetDigestSize () const =0 |
const DL_GroupParameters < Element > & | GetAbstractGroupParameters () const |
DL_GroupParameters< Element > & | AccessAbstractGroupParameters () |
virtual KeyInterface & | AccessKeyInterface ()=0 |
virtual const KeyInterface & | GetKeyInterface () const =0 |
|
inlinevirtual |
recover a message from its signature
Implements PK_Verifier.
|
virtualinherited |
recover a message from its signature
|
virtualinherited |
recover a message from its signature