mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-11-15 11:08:06 +00:00
In preparation for adding XChaCha12 support, rename/refactor
chacha20-generic to support different numbers of rounds. The
justification for needing XChaCha12 support is explained in more detail
in the patch "crypto: chacha - add XChaCha12 support".
The only difference between ChaCha{8,12,20} are the number of rounds
itself; all other parts of the algorithm are the same. Therefore,
remove the "20" from all definitions, structures, functions, files, etc.
that will be shared by all ChaCha versions.
Also make ->setkey() store the round count in the chacha_ctx (previously
chacha20_ctx). The generic code then passes the round count through to
chacha_block(). There will be a ->setkey() function for each explicitly
allowed round count; the encrypt/decrypt functions will be the same. I
decided not to do it the opposite way (same ->setkey() function for all
round counts, with different encrypt/decrypt functions) because that
would have required more boilerplate code in architecture-specific
implementations of ChaCha and XChaCha.
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: Martin Willi <martin@strongswan.org>
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
|
||
|---|---|---|
| .. | ||
| caamalg.c | ||
| caamalg_desc.c | ||
| caamalg_desc.h | ||
| caamalg_qi.c | ||
| caamalg_qi2.c | ||
| caamalg_qi2.h | ||
| caamhash.c | ||
| caamhash_desc.c | ||
| caamhash_desc.h | ||
| caampkc.c | ||
| caampkc.h | ||
| caamrng.c | ||
| compat.h | ||
| ctrl.c | ||
| ctrl.h | ||
| desc.h | ||
| desc_constr.h | ||
| dpseci.c | ||
| dpseci.h | ||
| dpseci_cmd.h | ||
| error.c | ||
| error.h | ||
| intern.h | ||
| jr.c | ||
| jr.h | ||
| Kconfig | ||
| key_gen.c | ||
| key_gen.h | ||
| Makefile | ||
| pdb.h | ||
| pkc_desc.c | ||
| qi.c | ||
| qi.h | ||
| regs.h | ||
| sg_sw_qm.h | ||
| sg_sw_qm2.h | ||
| sg_sw_sec4.h | ||