diff options
| author | Eric Biggers <ebiggers@kernel.org> | 2025-12-10 17:18:38 -0800 |
|---|---|---|
| committer | Eric Biggers <ebiggers@kernel.org> | 2026-01-12 11:07:50 -0800 |
| commit | 76987479c1a66f60126afe28e3cff01f3fc0f1ae (patch) | |
| tree | dae93cedc048a9d3a645af467d33f08f95520151 /crypto/Kconfig | |
| parent | a229d83235c7627c490deb7dd4744a72567cea12 (diff) | |
| download | linux-next-76987479c1a66f60126afe28e3cff01f3fc0f1ae.tar.gz linux-next-76987479c1a66f60126afe28e3cff01f3fc0f1ae.zip | |
crypto: adiantum - Convert to use NH library
Reimplement the Adiantum message hashing using the nh() library
function, combined with some code which directly handles the Poly1305
stage. The latter code is derived from crypto/nhpoly1305.c.
This eliminates the dependency on the "nhpoly1305" crypto_shash
algorithm, which existed only to fit Adiantum message hashing into the
traditional Linux crypto API paradigm. Now that simple,
architecture-optimized library functions are a well-established option
too, we can switch to this simpler implementation.
Note: I've dropped the support for the optional third parameter of the
adiantum template, which specified the nhpoly1305 implementation. We
could keep accepting some strings in this parameter for backwards
compatibility, but I don't think it's being used. I believe only
"adiantum(xchacha12,aes)" and "adiantum(xchacha20,aes)" are used.
Link: https://lore.kernel.org/r/20251211011846.8179-7-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
Diffstat (limited to 'crypto/Kconfig')
| -rw-r--r-- | crypto/Kconfig | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/crypto/Kconfig b/crypto/Kconfig index 2e5b195b1b06..89d1ccaa1fa0 100644 --- a/crypto/Kconfig +++ b/crypto/Kconfig @@ -601,9 +601,9 @@ menu "Length-preserving ciphers and modes" config CRYPTO_ADIANTUM tristate "Adiantum" select CRYPTO_CHACHA20 + select CRYPTO_LIB_NH select CRYPTO_LIB_POLY1305 select CRYPTO_LIB_POLY1305_GENERIC - select CRYPTO_NHPOLY1305 select CRYPTO_MANAGER help Adiantum tweakable, length-preserving encryption mode |
