linux/arch/x86/crypto
Ard Biesheuvel 9ae433bc79 crypto: chacha20 - convert generic and x86 versions to skcipher
This converts the ChaCha20 code from a blkcipher to a skcipher, which
is now the preferred way to implement symmetric block and stream ciphers.

This ports the generic and x86 versions at the same time because the
latter reuses routines of the former.

Note that the skcipher_walk() API guarantees that all presented blocks
except the final one are a multiple of the chunk size, so we can simplify
the encrypt() routine somewhat.

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2016-12-27 17:47:31 +08:00
..
sha1-mb crypto: sha-mb - Fix total_len for correct hash when larger than 512MB 2016-11-17 23:35:00 +08:00
sha256-mb crypto: sha-mb - Fix total_len for correct hash when larger than 512MB 2016-11-17 23:35:00 +08:00
sha512-mb crypto: sha-mb - Fix total_len for correct hash when larger than 512MB 2016-11-17 23:35:00 +08:00
aes-i586-asm_32.S
aes-x86_64-asm_64.S
aes_ctrby8_avx-x86_64.S crypto: aesni - fix "by8" variant for 128 bit keys 2015-01-05 21:35:02 +11:00
aes_glue.c crypto: prefix module autoloading with "crypto-" 2014-11-24 22:43:57 +08:00
aesni-intel_asm.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
aesni-intel_avx-x86_64.S
aesni-intel_glue.c Merge branch 'linus' of git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2016-12-14 13:31:29 -08:00
blowfish-x86_64-asm_64.S
blowfish_glue.c crypto: prefix module autoloading with "crypto-" 2014-11-24 22:43:57 +08:00
camellia-aesni-avx-asm_64.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
camellia-aesni-avx2-asm_64.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
camellia-x86_64-asm_64.S
camellia_aesni_avx2_glue.c x86/cpufeature: Replace cpu_has_avx with boot_cpu_has() usage 2016-04-13 11:37:40 +02:00
camellia_aesni_avx_glue.c x86/cpufeature: Replace cpu_has_avx with boot_cpu_has() usage 2016-04-13 11:37:40 +02:00
camellia_glue.c crypto: xts - consolidate sanity check for keys 2016-02-17 04:07:51 +08:00
cast5-avx-x86_64-asm_64.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
cast5_avx_glue.c x86/fpu: Rename XSAVE macros 2015-09-14 12:21:46 +02:00
cast6-avx-x86_64-asm_64.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
cast6_avx_glue.c crypto: xts - consolidate sanity check for keys 2016-02-17 04:07:51 +08:00
chacha20-avx2-x86_64.S crypto: chacha20 - Add an eight block AVX2 variant for x86_64 2015-07-17 21:20:25 +08:00
chacha20-ssse3-x86_64.S crypto: chacha20-ssse3 - Align stack pointer to 64 bytes 2016-01-25 21:47:45 +08:00
chacha20_glue.c crypto: chacha20 - convert generic and x86 versions to skcipher 2016-12-27 17:47:31 +08:00
crc32-pclmul_asm.S
crc32-pclmul_glue.c x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
crc32c-intel_glue.c x86/fpu: Remove use_eager_fpu() 2016-10-07 11:14:36 +02:00
crc32c-pcl-intel-asm_64.S x86/asm/crypto: Move jump_table to .rodata section 2016-02-24 08:35:42 +01:00
crct10dif-pcl-asm_64.S
crct10dif-pclmul_glue.c x86/cpufeature: Carve out X86_FEATURE_* 2016-01-30 11:22:17 +01:00
des3_ede-asm_64.S
des3_ede_glue.c crypto: x86/des3_ede - drop bogus module aliases 2015-01-13 22:30:52 +11:00
fpu.c crypto: aesni - Convert to skcipher 2016-11-28 21:23:20 +08:00
ghash-clmulni-intel_asm.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
ghash-clmulni-intel_glue.c crypto: ghash-clmulni - Fix cryptd reordering 2016-06-23 18:29:53 +08:00
glue_helper-asm-avx.S
glue_helper-asm-avx2.S
glue_helper.c crypto: glue_helper - Add skcipher xts helpers 2016-11-28 21:23:20 +08:00
Makefile crypto: sha512-mb - SHA512 multibuffer job manager and glue code 2016-06-28 16:06:35 +08:00
poly1305-avx2-x86_64.S crypto: poly1305 - Add a four block AVX2 variant for x86_64 2015-07-17 21:20:29 +08:00
poly1305-sse2-x86_64.S crypto: poly1305 - Add a two block SSE2 variant for x86_64 2015-07-17 21:20:28 +08:00
poly1305_glue.c x86/cpufeature: Replace cpu_has_avx with boot_cpu_has() usage 2016-04-13 11:37:40 +02:00
salsa20-i586-asm_32.S
salsa20-x86_64-asm_64.S
salsa20_glue.c crypto: prefix module autoloading with "crypto-" 2014-11-24 22:43:57 +08:00
serpent-avx-x86_64-asm_64.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
serpent-avx2-asm_64.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
serpent-sse2-i586-asm_32.S
serpent-sse2-x86_64-asm_64.S
serpent_avx2_glue.c x86/cpufeature: Replace cpu_has_avx2 with boot_cpu_has() usage 2016-04-13 11:37:39 +02:00
serpent_avx_glue.c crypto: xts - consolidate sanity check for keys 2016-02-17 04:07:51 +08:00
serpent_sse2_glue.c x86/cpufeature: Remove cpu_has_xmm2 2016-03-31 13:35:09 +02:00
sha1_avx2_x86_64_asm.S
sha1_ni_asm.S crypto: x86/sha - Intel SHA Extensions optimized SHA1 transform function 2015-09-21 22:01:05 +08:00
sha1_ssse3_asm.S
sha1_ssse3_glue.c crypto: sha-ssse3 - add MODULE_ALIAS 2016-05-31 16:41:46 +08:00
sha256-avx-asm.S crypto: x86/sha256_ssse3 - move SHA-224/256 SSSE3 implementation to base layer 2015-04-10 21:39:47 +08:00
sha256-avx2-asm.S crypto: x86/sha256_ssse3 - move SHA-224/256 SSSE3 implementation to base layer 2015-04-10 21:39:47 +08:00
sha256-ssse3-asm.S crypto: x86/sha256_ssse3 - move SHA-224/256 SSSE3 implementation to base layer 2015-04-10 21:39:47 +08:00
sha256_ni_asm.S crypto: x86/sha - Intel SHA Extensions optimized SHA256 transform function 2015-09-21 22:01:06 +08:00
sha256_ssse3_glue.c crypto: sha-ssse3 - add MODULE_ALIAS 2016-05-31 16:41:46 +08:00
sha512-avx-asm.S crypto: x86/sha512_ssse3 - move SHA-384/512 SSSE3 implementation to base layer 2015-04-10 21:39:48 +08:00
sha512-avx2-asm.S crypto: x86/sha512_ssse3 - fixup for asm function prototype change 2015-04-24 20:09:01 +08:00
sha512-ssse3-asm.S crypto: x86/sha512_ssse3 - move SHA-384/512 SSSE3 implementation to base layer 2015-04-10 21:39:48 +08:00
sha512_ssse3_glue.c crypto: sha-ssse3 - add MODULE_ALIAS 2016-05-31 16:41:46 +08:00
twofish-avx-x86_64-asm_64.S x86/asm/crypto: Create stack frames in crypto functions 2016-02-24 08:35:43 +01:00
twofish-i586-asm_32.S
twofish-x86_64-asm_64-3way.S
twofish-x86_64-asm_64.S x86/asm: Replace "MOVQ $imm, %reg" with MOVL 2015-04-01 13:17:39 +02:00
twofish_avx_glue.c x86/fpu: Fixup uninitialized feature_name warning 2015-09-24 09:21:20 +02:00
twofish_glue.c crypto: prefix module autoloading with "crypto-" 2014-11-24 22:43:57 +08:00
twofish_glue_3way.c crypto: xts - consolidate sanity check for keys 2016-02-17 04:07:51 +08:00