linux/crypto
Herbert Xu 50b6544e13 [CRYPTO] cbc: Require block size to be a power of 2
All common block ciphers have a block size that's a power of 2.  In fact,
all of our block ciphers obey this rule.

If we require this then CBC can be optimised to avoid an expensive divide
on in-place decryption.

I've also changed the saving of the first IV in the in-place decryption
case to the last IV because that lets us use walk->iv (which is already
aligned) for the xor operation where alignment is required.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2008-01-11 08:16:19 +11:00
..
async_tx async_tx: fix dma_wait_for_async_tx 2007-09-24 10:26:26 -07:00
ablkcipher.c [CRYPTO] ablkcipher: Remove queue pointer from common alg object 2007-10-10 16:55:41 -07:00
aead.c [CRYPTO] api: Add aead crypto type 2007-10-10 16:55:39 -07:00
aes_generic.c [CRYPTO] aes-generic: Make key generation exportable 2008-01-11 08:16:09 +11:00
algapi.c [CRYPTO] api: Add crypto_inc and crypto_xor 2008-01-11 08:16:17 +11:00
anubis.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
api.c crypto: convert "crypto" subdirectory to UTF-8 2007-10-19 23:06:17 +02:00
arc4.c [CRYPTO] api: Get rid of flags argument to setkey 2006-09-21 11:41:02 +10:00
authenc.c [CRYPTO] ablkcipher: Add distinct ABLKCIPHER type 2008-01-11 08:16:15 +11:00
blkcipher.c [CRYPTO] ablkcipher: Add distinct ABLKCIPHER type 2008-01-11 08:16:15 +11:00
blowfish.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
camellia.c [CRYPTO] camellia: De-unrolling 2008-01-11 08:16:08 +11:00
cast5.c [CRYPTO] api: Get rid of flags argument to setkey 2006-09-21 11:41:02 +10:00
cast6.c [CRYPTO] api: Get rid of flags argument to setkey 2006-09-21 11:41:02 +10:00
cbc.c [CRYPTO] cbc: Require block size to be a power of 2 2008-01-11 08:16:19 +11:00
cipher.c [CRYPTO] api: Add missing headers for setkey_unaligned 2007-10-10 16:55:40 -07:00
compress.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
crc32c.c [CRYPTO] api: Get rid of flags argument to setkey 2006-09-21 11:41:02 +10:00
cryptd.c [CRYPTO] ablkcipher: Add distinct ABLKCIPHER type 2008-01-11 08:16:15 +11:00
crypto_null.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
cryptomgr.c [CRYPTO] cryptomgr: Fix parsing of recursive algorithms 2007-10-10 16:55:45 -07:00
ctr.c [CRYPTO] ctr: Add countersize 2008-01-11 08:16:08 +11:00
deflate.c [CRYPTO] api: Added cra_init/cra_exit 2006-06-26 17:34:40 +10:00
des_generic.c [CRYPTO] hifn_795x: Detect weak keys 2008-01-11 08:16:03 +11:00
digest.c [CRYPTO] scatterwalk: Use generic scatterlist chaining 2008-01-11 08:16:14 +11:00
ecb.c [CRYPTO] templates: Pass type/mask when creating instances 2007-05-02 14:38:31 +10:00
fcrypt.c crypto: convert "crypto" subdirectory to UTF-8 2007-10-19 23:06:17 +02:00
gf128mul.c [CRYPTO] xts: XTS blockcipher mode implementation without partial blocks 2007-10-10 16:55:45 -07:00
hash.c [CRYPTO] api: Add missing headers for setkey_unaligned 2007-10-10 16:55:40 -07:00
hmac.c [CRYPTO] scatterwalk: Use generic scatterlist chaining 2008-01-11 08:16:14 +11:00
internal.h [CRYPTO] api: Kill crypto_km_types 2007-10-10 16:55:44 -07:00
Kconfig [CRYPTO] salsa20: Salsa20 stream cipher 2008-01-11 08:16:15 +11:00
khazad.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
lrw.c [CRYPTO] templates: Pass type/mask when creating instances 2007-05-02 14:38:31 +10:00
Makefile [CRYPTO] salsa20: Salsa20 stream cipher 2008-01-11 08:16:15 +11:00
md4.c [CRYPTO] all: Pass tfm instead of ctx to algorithms 2006-06-26 17:34:39 +10:00
md5.c [CRYPTO] all: Pass tfm instead of ctx to algorithms 2006-06-26 17:34:39 +10:00
michael_mic.c [PATCH] Update my email address from jkmaline@cc.hut.fi to j@w1.fi 2007-04-28 11:01:01 -04:00
pcbc.c [CRYPTO] templates: Pass type/mask when creating instances 2007-05-02 14:38:31 +10:00
proc.c Make crypto API use seq_list_xxx helpers 2007-07-16 09:05:42 -07:00
salsa20_generic.c [CRYPTO] salsa20: Salsa20 stream cipher 2008-01-11 08:16:15 +11:00
scatterwalk.c [CRYPTO] scatterwalk: Use generic scatterlist chaining 2008-01-11 08:16:14 +11:00
scatterwalk.h [CRYPTO] scatterwalk: Use generic scatterlist chaining 2008-01-11 08:16:14 +11:00
seed.c [CRYPTO] seed: New cipher algorithm 2007-10-10 16:55:38 -07:00
serpent.c [PATCH] serpent: fix endian warnings 2006-10-10 16:15:33 -07:00
sha1_generic.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
sha256_generic.c [CRYPTO] sha256-generic: Extend sha256_generic.c to support SHA-224 2008-01-11 08:16:12 +11:00
sha512.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
tcrypt.c [CRYPTO] salsa20: Salsa20 stream cipher 2008-01-11 08:16:15 +11:00
tcrypt.h [CRYPTO] salsa20: Salsa20 stream cipher 2008-01-11 08:16:15 +11:00
tea.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
tgr192.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
twofish_common.c [CRYPTO] twofish: Do not unroll big stuff in twofish key setup 2008-01-11 08:16:06 +11:00
twofish.c [CRYPTO] twofish: Fix the priority 2006-09-21 11:16:28 +10:00
wp512.c cleanup asm/scatterlist.h includes 2007-11-02 08:47:06 +01:00
xcbc.c [SG] Update crypto/ to sg helpers 2007-10-22 19:40:16 +02:00
xor.c async_tx: add the async_tx api 2007-07-13 08:06:14 -07:00
xts.c [CRYPTO] xts: XTS blockcipher mode implementation without partial blocks 2007-10-10 16:55:45 -07:00