aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/mac/mac.cpp
diff options
context:
space:
mode:
authorJack Lloyd <[email protected]>2017-10-17 18:30:40 -0400
committerJack Lloyd <[email protected]>2017-10-18 11:13:42 -0400
commiteab327defc290e21b36591a09d93609d6deca940 (patch)
tree75d8c372dfbd90e37203a7600ef513654d895fd1 /src/lib/mac/mac.cpp
parentf01f37d142ef230b03ca6af46f1e1a0615e4879a (diff)
GCM and CTR optimizations
In CTR, special case for counter widths of special interest. In GHASH, uses a 4x reduction technique suggested by Intel. Split out GHASH to its own source file and header. With these changes GCM is over twice as fast on Skylake and about 50% faster on Westmere.
Diffstat (limited to 'src/lib/mac/mac.cpp')
-rw-r--r--src/lib/mac/mac.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/lib/mac/mac.cpp b/src/lib/mac/mac.cpp
index 053e36b6f..65107470b 100644
--- a/src/lib/mac/mac.cpp
+++ b/src/lib/mac/mac.cpp
@@ -19,10 +19,12 @@
#if defined(BOTAN_HAS_GMAC)
#include <botan/gmac.h>
+ #include <botan/block_cipher.h>
#endif
#if defined(BOTAN_HAS_HMAC)
#include <botan/hmac.h>
+ #include <botan/hash.h>
#endif
#if defined(BOTAN_HAS_POLY1305)