6 #ifndef CRYPTOPP_PSSR_H 7 #define CRYPTOPP_PSSR_H 13 #ifdef CRYPTOPP_IS_DLL 26 virtual bool AllowRecovery()
const =0;
27 virtual size_t SaltLen(
size_t hashLen)
const =0;
28 virtual size_t MinPadLen(
size_t hashLen)
const =0;
32 size_t MinRepresentativeBitLength(
size_t hashIdentifierLength,
size_t digestLength)
const;
33 size_t MaxRecoverableLength(
size_t representativeBitLength,
size_t hashIdentifierLength,
size_t digestLength)
const;
34 bool IsProbabilistic()
const;
35 bool AllowNonrecoverablePart()
const;
36 bool RecoverablePartFirst()
const;
38 const byte *recoverableMessage,
size_t recoverableMessageLength,
40 byte *representative,
size_t representativeBitLength)
const;
43 byte *representative,
size_t representativeBitLength,
44 byte *recoverableMessage)
const;
68 template <
bool ALLOW_RECOVERY,
class MGF=
P1363_MGF1,
int SALT_LEN=-1,
int MIN_PAD_LEN=0,
bool USE_HASH_ID=
false>
72 virtual size_t SaltLen(
size_t hashLen)
const {
return SALT_LEN < 0 ? hashLen : SALT_LEN;}
73 virtual size_t MinPadLen(
size_t hashLen)
const {
return MIN_PAD_LEN < 0 ? hashLen : MIN_PAD_LEN;}
virtual size_t MinPadLen(size_t hashLen) const
Classes and functions for various padding schemes used in public key algorithms.
virtual const MaskGeneratingFunction & GetMGF() const
#define NAMESPACE_BEGIN(x)
Abstract base classes that provide a uniform interface to this library.
Interface for random number generators.
PSSR Message Encoding Method interface.
Base class for public key signature standard classes.
Returns a decoding results.
virtual size_t SaltLen(size_t hashLen) const
P1363 mask generation function.
PSSR_MEM< false > SignatureMessageEncodingMethod
virtual bool AllowRecovery() const
PSSR Message Encoding Method with Hash Identifier.
Mask generation function interface.
Classes for SHA-1 and SHA-2 family of message digests.
Probabilistic Signature Scheme with Recovery.
PSSR_MEM< true > SignatureMessageEncodingMethod
std::pair< const byte *, unsigned int > HashIdentifier
PSSR Message Encoding Method.
static std::string CRYPTOPP_API StaticAlgorithmName()
Interface for message encoding method for public key signature schemes.
Probabilistic Signature Scheme with Appendix.