| 184 | |
| 185 | template <class SCHEME> |
| 186 | void SignatureKnownAnswerTest(const char *key, const char *message, const char *signature) |
| 187 | { |
| 188 | typename SCHEME::Signer signer(StringSource(key, true, new HexDecoder).Ref()); |
| 189 | typename SCHEME::Verifier verifier(signer); |
| 190 | |
| 191 | RandomPool rng; |
| 192 | EqualityComparisonFilter comparison; |
| 193 | |
| 194 | StringSource(message, true, new SignerFilter(rng, signer, new ChannelSwitch(comparison, "0"))); |
| 195 | StringSource(signature, true, new HexDecoder(new ChannelSwitch(comparison, "1"))); |
| 196 | |
| 197 | comparison.ChannelMessageSeriesEnd("0"); |
| 198 | comparison.ChannelMessageSeriesEnd("1"); |
| 199 | |
| 200 | VerifierFilter verifierFilter(verifier, NULL, VerifierFilter::SIGNATURE_AT_BEGIN | VerifierFilter::THROW_EXCEPTION); |
| 201 | StringSource(signature, true, new HexDecoder(new Redirector(verifierFilter, Redirector::DATA_ONLY))); |
| 202 | StringSource(message, true, new Redirector(verifierFilter)); |
| 203 | } |
| 204 | |
| 205 | void EncryptionPairwiseConsistencyTest(const PK_Encryptor &encryptor, const PK_Decryptor &decryptor) |
| 206 | { |
nothing calls this directly
no test coverage detected