DL_SignerImpl< SCHEME_OPTIONS > Class Template Reference

_ More...

`#include <pubkey.h>`

Inheritance diagram for DL_SignerImpl< SCHEME_OPTIONS >:

## Public Types

typedef SCHEME_OPTIONS::PrivateKey::Element | Element
typedef SCHEME_OPTIONS | SchemeOptions

## Public Member Functions

PK_MessageAccumulator * | NewSignatureAccumulator (RandomNumberGenerator &rng) const
| create a new HashTransformation to accumulate the message to be signed
PrivateKey & | AccessPrivateKey ()
PublicKey & | AccessPublicKey ()
const SCHEME_OPTIONS::PrivateKey & | GetKey () const
SCHEME_OPTIONS::PrivateKey & | AccessKey ()
std::string | AlgorithmName () const
void | RawSign (const Integer &k, const Integer &e, Integer &r, Integer &s) const
void | InputRecoverableMessage (PK_MessageAccumulator &messageAccumulator, const byte *recoverableMessage, size_t recoverableMessageLength) const
size_t | SignAndRestart (RandomNumberGenerator &rng, PK_MessageAccumulator &messageAccumulator, byte *signature, bool restart) const
| sign and restart messageAccumulator 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 size_t | Sign (RandomNumberGenerator &rng, PK_MessageAccumulator *messageAccumulator, byte *signature) const
| sign and delete messageAccumulator (even in case of exception thrown) More...
virtual size_t | SignMessage (RandomNumberGenerator &rng, const byte *message, size_t messageLen, byte *signature) const
| sign a message More...
virtual size_t | SignMessageWithRecovery (RandomNumberGenerator &rng, const byte *recoverableMessage, size_t recoverableMessageLength, const byte *nonrecoverableMessage, size_t nonrecoverableMessageLength, byte *signature) const
| sign a recoverable message 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 const PrivateKey & | GetPrivateKey () 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 Clonable * | Clone () const
| this is not implemented by most classes yet

## Static Public Member Functions

static std::string | StaticAlgorithmName ()

## Protected Types

typedef DL_PrivateKey < SCHEME_OPTIONS::Element > | KeyInterface

## Protected Member Functions

const DL_ElgamalLikeSignatureAlgorithm < Element > & | GetSignatureAlgorithm () const
const DL_KeyAgreementAlgorithm < Element > & | GetKeyAgreementAlgorithm () const
const DL_KeyDerivationAlgorithm < Element > & | GetKeyDerivationAlgorithm () const
const DL_SymmetricEncryptionAlgorithm & | GetSymmetricEncryptionAlgorithm () const
HashIdentifier | GetHashIdentifier () const
const PK_SignatureMessageEncodingMethod & | GetMessageEncodingInterface () const
DL_SignerBase < SCHEME_OPTIONS::Element > ::KeyInterface & | AccessKeyInterface ()
const DL_SignerBase < SCHEME_OPTIONS::Element > ::KeyInterface & | GetKeyInterface () const
size_t | GetDigestSize () const
void | RestartMessageAccumulator (RandomNumberGenerator &rng, PK_MessageAccumulatorBase &ma) const
size_t | MessageRepresentativeLength () const
size_t | MessageRepresentativeBitLength () const
const DL_GroupParameters < Element > & | GetAbstractGroupParameters () const
DL_GroupParameters< Element > & | AccessAbstractGroupParameters ()

## Detailed Description

### template<class SCHEME_OPTIONS>
class DL_SignerImpl< SCHEME_OPTIONS >

_

Definition at line 1338 of file pubkey.h.

## Member Function Documentation

size_t DL_SignerBase< SCHEME_OPTIONS::Element >::SignAndRestart | ( | RandomNumberGenerator & | rng,
|  | PK_MessageAccumulator & | messageAccumulator,
|  | byte * | signature,
|  | bool | restart
| ) |  | const

inline virtual inherited

sign and restart messageAccumulator

Precondition
  size of signature == MaxSignatureLength()

Returns
  actual signature length

Implements PK_Signer.

Definition at line 1018 of file pubkey.h.

References RandomNumberGenerator::CanIncorporateEntropy(), and RandomNumberGenerator::IncorporateEntropy().

virtual size_t PK_Signer::Sign | ( | RandomNumberGenerator & | rng,
|  | PK_MessageAccumulator * | messageAccumulator,
|  | byte * | signature
| ) |  | const

virtual inherited

sign and delete messageAccumulator (even in case of exception thrown)

Precondition
  size of signature == MaxSignatureLength()

Returns
  actual signature length

virtual size_t PK_Signer::SignMessage | ( | RandomNumberGenerator & | rng,
|  | const byte * | message,
|  | size_t | messageLen,
|  | byte * | signature
| ) |  | const

virtual inherited

sign a message

Precondition
  size of signature == MaxSignatureLength()

Returns
  actual signature length

virtual size_t PK_Signer::SignMessageWithRecovery | ( | RandomNumberGenerator & | rng,
|  | const byte * | recoverableMessage,
|  | size_t | recoverableMessageLength,
|  | const byte * | nonrecoverableMessage,
|  | size_t | nonrecoverableMessageLength,
|  | byte * | signature
| ) |  | const

virtual inherited

sign a recoverable message

Precondition
  size of signature == MaxSignatureLength(recoverableMessageLength)

Returns
  actual signature length

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

- pubkey.h