void X917RNG_KnownAnswerTest( const char *key, const char *seed, const char *output, unsigned int deterministicTimeVector, CIPHER *dummy = NULL) { std::string decodedKey, decodedSeed; StringSource(key, true, new HexDecoder(new StringSink(decodedKey))); StringSource(seed, true, new HexDecoder(new StringSink(decodedSeed))); AutoSeededX917RNG<CIPHER> rng; rng.Reseed((const byte *)decodedKey.data(), decodedKey.size(), (const byte *)decodedSeed.data(), deterministicTimeVector); KnownAnswerTest(rng, output); }
void X917RNG_KnownAnswerTest( const char *key, const char *seed, const char *deterministicTimeVector, const char *output, CIPHER *dummy = NULL) { #ifdef OS_RNG_AVAILABLE std::string decodedKey, decodedSeed, decodedDeterministicTimeVector; StringSource(key, true, new HexDecoder(new StringSink(decodedKey))); StringSource(seed, true, new HexDecoder(new StringSink(decodedSeed))); StringSource(deterministicTimeVector, true, new HexDecoder(new StringSink(decodedDeterministicTimeVector))); AutoSeededX917RNG<CIPHER> rng; rng.Reseed((const byte *)decodedKey.data(), decodedKey.size(), (const byte *)decodedSeed.data(), (const byte *)decodedDeterministicTimeVector.data()); KnownAnswerTest(rng, output); #else throw 0; #endif }