linux/arch/arm64/crypto
Ard Biesheuvel d33a490770 crypto: arm64/aes-ce - fix for big endian
commit 1803b9a52c upstream.

The core AES cipher implementation that uses ARMv8 Crypto Extensions
instructions erroneously loads the round keys as 64-bit quantities,
which causes the algorithm to fail when built for big endian. In
addition, the key schedule generation routine fails to take endianness
into account as well, when loading the combining the input key with
the round constants. So fix both issues.

Fixes: 12ac3efe74 ("arm64/crypto: use crypto instructions to generate AES key schedule")
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2017-01-12 11:39:34 +01:00
..
aes-ce-ccm-core.S crypto: arm64/aes-ccm-ce: fix for big endian 2017-01-12 11:39:33 +01:00
aes-ce-ccm-glue.c crypto: aead - Remove CRYPTO_ALG_AEAD_NEW flag 2015-08-17 16:53:53 +08:00
aes-ce-cipher.c crypto: arm64/aes-ce - fix for big endian 2017-01-12 11:39:34 +01:00
aes-ce-setkey.h arm64/crypto: use crypto instructions to generate AES key schedule 2014-11-06 17:25:28 +00:00
aes-ce.S crypto: arm64/aes-xts-ce: fix for big endian 2017-01-12 11:39:34 +01:00
aes-glue.c crypto: arm64/aes-ctr - fix NULL dereference in tail processing 2016-09-13 18:44:59 +08:00
aes-modes.S crypto: arm64/aes-xts-ce: fix for big endian 2017-01-12 11:39:34 +01:00
aes-neon.S crypto: arm64/aes-neon - fix for big endian 2017-01-12 11:39:34 +01:00
crc32-arm64.c crypto: arm64/crc32 - bring in line with generic CRC32 2015-05-07 11:16:24 +08:00
ghash-ce-core.S crypto: arm64/ghash-ce - fix for big endian 2017-01-12 11:39:33 +01:00
ghash-ce-glue.c arm64/crypto: improve performance of GHASH algorithm 2014-06-18 12:40:54 +01:00
Kconfig Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 2014-12-13 13:33:26 -08:00
Makefile arm64: crypto: increase AES interleave to 4x 2015-02-26 18:31:46 +00:00
sha1-ce-core.S crypto: arm64/sha1-ce - fix for big endian 2017-01-12 11:39:34 +01:00
sha1-ce-glue.c crypto: arm64/sha1-ce - prevent asm code finalization in final() path 2015-05-07 11:16:25 +08:00
sha2-ce-core.S crypto: arm64/sha2-ce - fix for big endian 2017-01-12 11:39:33 +01:00
sha2-ce-glue.c crypto: arm64/sha2-ce - prevent asm code finalization in final() path 2015-05-07 11:16:26 +08:00