mirror of
https://github.com/ukui/kernel.git
synced 2026-03-09 10:07:04 -07:00
crypto: chacha20poly1305 - Add a ChaCha20-Poly1305 AEAD construction, RFC7539
This AEAD uses a chacha20 ablkcipher and a poly1305 ahash to construct the ChaCha20-Poly1305 AEAD as defined in RFC7539. It supports both synchronous and asynchronous operations, even if we currently have no async chacha20 or poly1305 drivers. Signed-off-by: Martin Willi <martin@strongswan.org> Acked-by: Steffen Klassert <steffen.klassert@secunet.com> Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
This commit is contained in:
@@ -217,6 +217,18 @@ config CRYPTO_GCM
|
|||||||
Support for Galois/Counter Mode (GCM) and Galois Message
|
Support for Galois/Counter Mode (GCM) and Galois Message
|
||||||
Authentication Code (GMAC). Required for IPSec.
|
Authentication Code (GMAC). Required for IPSec.
|
||||||
|
|
||||||
|
config CRYPTO_CHACHA20POLY1305
|
||||||
|
tristate "ChaCha20-Poly1305 AEAD support"
|
||||||
|
select CRYPTO_CHACHA20
|
||||||
|
select CRYPTO_POLY1305
|
||||||
|
select CRYPTO_AEAD
|
||||||
|
help
|
||||||
|
ChaCha20-Poly1305 AEAD support, RFC7539.
|
||||||
|
|
||||||
|
Support for the AEAD wrapper using the ChaCha20 stream cipher combined
|
||||||
|
with the Poly1305 authenticator. It is defined in RFC7539 for use in
|
||||||
|
IETF protocols.
|
||||||
|
|
||||||
config CRYPTO_SEQIV
|
config CRYPTO_SEQIV
|
||||||
tristate "Sequence Number IV Generator"
|
tristate "Sequence Number IV Generator"
|
||||||
select CRYPTO_AEAD
|
select CRYPTO_AEAD
|
||||||
|
|||||||
@@ -59,6 +59,7 @@ obj-$(CONFIG_CRYPTO_XTS) += xts.o
|
|||||||
obj-$(CONFIG_CRYPTO_CTR) += ctr.o
|
obj-$(CONFIG_CRYPTO_CTR) += ctr.o
|
||||||
obj-$(CONFIG_CRYPTO_GCM) += gcm.o
|
obj-$(CONFIG_CRYPTO_GCM) += gcm.o
|
||||||
obj-$(CONFIG_CRYPTO_CCM) += ccm.o
|
obj-$(CONFIG_CRYPTO_CCM) += ccm.o
|
||||||
|
obj-$(CONFIG_CRYPTO_CHACHA20POLY1305) += chacha20poly1305.o
|
||||||
obj-$(CONFIG_CRYPTO_PCRYPT) += pcrypt.o
|
obj-$(CONFIG_CRYPTO_PCRYPT) += pcrypt.o
|
||||||
obj-$(CONFIG_CRYPTO_CRYPTD) += cryptd.o
|
obj-$(CONFIG_CRYPTO_CRYPTD) += cryptd.o
|
||||||
obj-$(CONFIG_CRYPTO_MCRYPTD) += mcryptd.o
|
obj-$(CONFIG_CRYPTO_MCRYPTD) += mcryptd.o
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user