unsigned int PK_Signer::SignMessageWithRecovery(RandomNumberGenerator &rng, const byte *recoverableMessage, unsigned int recoverableMessageLength, const byte *nonrecoverableMessage, unsigned int nonrecoverableMessageLength, byte *signature) const { std::auto_ptr<PK_MessageAccumulator> m(NewSignatureAccumulator(rng)); InputRecoverableMessage(*m, recoverableMessage, recoverableMessageLength); m->Update(nonrecoverableMessage, nonrecoverableMessageLength); return SignAndRestart(rng, *m, signature, false); }
unsigned int PK_Signer::SignMessage(RandomNumberGenerator &rng, const byte *message, unsigned int messageLen, byte *signature) const { std::auto_ptr<PK_MessageAccumulator> m(NewSignatureAccumulator(rng)); m->Update(message, messageLen); return SignAndRestart(rng, *m, signature, false); }
void PK_Signer::SignMessage(RandomNumberGenerator &rng, const byte *message, unsigned int messageLen, byte *signature) const { std::auto_ptr<HashTransformation> accumulator(NewSignatureAccumulator()); accumulator->Update(message, messageLen); SignAndRestart(rng, *accumulator, signature); }
unsigned int PK_Signer::Sign(RandomNumberGenerator &rng, PK_MessageAccumulator *messageAccumulator, byte *signature) const { std::auto_ptr<PK_MessageAccumulator> m(messageAccumulator); return SignAndRestart(rng, *m, signature, false); }
void PK_Signer::Sign(RandomNumberGenerator &rng, HashTransformation *messageAccumulator, byte *signature) const { std::auto_ptr<HashTransformation> m(messageAccumulator); SignAndRestart(rng, *m, signature); }