diff options
author | Eric Biggers <ebiggers@google.com> | 2018-12-05 01:20:01 -0500 |
---|---|---|
committer | Herbert Xu <herbert@gondor.apana.org.au> | 2018-12-13 05:24:57 -0500 |
commit | 0f961f9f670e7c07690bfde2f533b93c653569cc (patch) | |
tree | d54b424f9468c1cde6deacae580044748f9f7628 /crypto | |
parent | 012c82388c032cd4a9821e11bae336cf4a014822 (diff) |
crypto: x86/nhpoly1305 - add AVX2 accelerated NHPoly1305
Add a 64-bit AVX2 implementation of NHPoly1305, an ε-almost-∆-universal
hash function used in the Adiantum encryption mode. For now, only the
NH portion is actually AVX2-accelerated; the Poly1305 part is less
performance-critical so is just implemented in C.
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto')
-rw-r--r-- | crypto/Kconfig | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/crypto/Kconfig b/crypto/Kconfig index cd3d9cb3482c..d0bff6ea6b10 100644 --- a/crypto/Kconfig +++ b/crypto/Kconfig | |||
@@ -509,6 +509,14 @@ config CRYPTO_NHPOLY1305_SSE2 | |||
509 | SSE2 optimized implementation of the hash function used by the | 509 | SSE2 optimized implementation of the hash function used by the |
510 | Adiantum encryption mode. | 510 | Adiantum encryption mode. |
511 | 511 | ||
512 | config CRYPTO_NHPOLY1305_AVX2 | ||
513 | tristate "NHPoly1305 hash function (x86_64 AVX2 implementation)" | ||
514 | depends on X86 && 64BIT | ||
515 | select CRYPTO_NHPOLY1305 | ||
516 | help | ||
517 | AVX2 optimized implementation of the hash function used by the | ||
518 | Adiantum encryption mode. | ||
519 | |||
512 | config CRYPTO_ADIANTUM | 520 | config CRYPTO_ADIANTUM |
513 | tristate "Adiantum support" | 521 | tristate "Adiantum support" |
514 | select CRYPTO_CHACHA20 | 522 | select CRYPTO_CHACHA20 |