summaryrefslogtreecommitdiff
path: root/bench1.cpp
diff options
context:
space:
mode:
authorJeffrey Walton <noloader@gmail.com>2017-03-11 15:56:55 -0500
committerJeffrey Walton <noloader@gmail.com>2017-03-11 15:56:55 -0500
commitc2efbae80a70ea17b039f8259d7a3c85fb181892 (patch)
tree0000c43416e2874a1c313ac7c831f23ddeaf6407 /bench1.cpp
parent76377f8219a8d96a9163c8d841040308df96e5f6 (diff)
downloadcryptopp-git-c2efbae80a70ea17b039f8259d7a3c85fb181892.tar.gz
Add AES/OFB RNG benchmark
Diffstat (limited to 'bench1.cpp')
-rw-r--r--bench1.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/bench1.cpp b/bench1.cpp
index 04f3745f..56317c6b 100644
--- a/bench1.cpp
+++ b/bench1.cpp
@@ -200,6 +200,16 @@ void BenchMark(const char *name, RandomNumberGenerator &rng, double timeTotal)
Test::GlobalRNG().GenerateBlock(buf, BUF_SIZE);
buf.SetMark(16);
+ SymmetricCipher * cipher = dynamic_cast<SymmetricCipher*>(&rng);
+ if (cipher != NULLPTR)
+ {
+ const size_t size = cipher->DefaultKeyLength();
+ if (cipher->IsResynchronizable())
+ cipher->SetKeyWithIV(buf, size, buf+size);
+ else
+ cipher->SetKey(buf, size);
+ }
+
unsigned long long blocks = 1;
double timeTaken;
@@ -406,6 +416,7 @@ void Benchmark1(double t, double hertz)
if (HasRDSEED())
BenchMarkByNameKeyLess<RandomNumberGenerator>("RDSEED");
#endif
+ BenchMarkByNameKeyLess<RandomNumberGenerator>("AES/OFB RNG");
BenchMarkByNameKeyLess<NIST_DRBG>("Hash_DRBG(SHA1)");
BenchMarkByNameKeyLess<NIST_DRBG>("Hash_DRBG(SHA256)");
BenchMarkByNameKeyLess<NIST_DRBG>("HMAC_DRBG(SHA1)");