diff options
author | Rik Snel <rsnel@cube.dyndns.org> | 2006-11-26 09:43:10 +1100 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2006-12-06 18:38:56 -0800 |
commit | 64470f1b8510699dc357a44004dc924bc139c917 (patch) | |
tree | 188d414266091c2220bae155651b2aacc2c6b9aa /crypto/Kconfig | |
parent | c494e0705d670c51ac736c8c4d92750705fe3187 (diff) | |
download | linux-3.10-64470f1b8510699dc357a44004dc924bc139c917.tar.gz linux-3.10-64470f1b8510699dc357a44004dc924bc139c917.tar.bz2 linux-3.10-64470f1b8510699dc357a44004dc924bc139c917.zip |
[CRYPTO] lrw: Liskov Rivest Wagner, a tweakable narrow block cipher mode
Main module, this implements the Liskov Rivest Wagner block cipher mode
in the new blockcipher API. The implementation is based on ecb.c.
The LRW-32-AES specification I used can be found at:
http://grouper.ieee.org/groups/1619/email/pdf00017.pdf
It implements the optimization specified as optional in the
specification, and in addition it uses optimized multiplication
routines from gf128mul.c.
Since gf128mul.[ch] is not tested on bigendian, this cipher mode
may currently fail badly on bigendian machines.
Signed-off-by: Rik Snel <rsnel@cube.dyndns.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Diffstat (limited to 'crypto/Kconfig')
-rw-r--r-- | crypto/Kconfig | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/crypto/Kconfig b/crypto/Kconfig index f941ffb2a08..92ba249f3a5 100644 --- a/crypto/Kconfig +++ b/crypto/Kconfig @@ -168,6 +168,19 @@ config CRYPTO_CBC CBC: Cipher Block Chaining mode This block cipher algorithm is required for IPSec. +config CRYPTO_LRW + tristate "LRW support (EXPERIMENTAL)" + depends on EXPERIMENTAL + select CRYPTO_BLKCIPHER + select CRYPTO_MANAGER + select CRYPTO_GF128MUL + help + LRW: Liskov Rivest Wagner, a tweakable, non malleable, non movable + narrow block cipher mode for dm-crypt. Use it with cipher + specification string aes-lrw-benbi, the key must be 256, 320 or 384. + The first 128, 192 or 256 bits in the key are used for AES and the + rest is used to tie each cipher block to its logical position. + config CRYPTO_DES tristate "DES and Triple DES EDE cipher algorithms" select CRYPTO_ALGAPI |