xref: /linux/crypto/Kconfig (revision 5cde0af2a9825dd1edaca233bd9590566579ef21)
11da177e4SLinus Torvalds#
21da177e4SLinus Torvalds# Cryptographic API Configuration
31da177e4SLinus Torvalds#
41da177e4SLinus Torvalds
51da177e4SLinus Torvaldsmenu "Cryptographic options"
61da177e4SLinus Torvalds
71da177e4SLinus Torvaldsconfig CRYPTO
81da177e4SLinus Torvalds	bool "Cryptographic API"
91da177e4SLinus Torvalds	help
101da177e4SLinus Torvalds	  This option provides the core Cryptographic API.
111da177e4SLinus Torvalds
12cce9e06dSHerbert Xuif CRYPTO
13cce9e06dSHerbert Xu
14cce9e06dSHerbert Xuconfig CRYPTO_ALGAPI
15cce9e06dSHerbert Xu	tristate
16cce9e06dSHerbert Xu	help
17cce9e06dSHerbert Xu	  This option provides the API for cryptographic algorithms.
18cce9e06dSHerbert Xu
19*5cde0af2SHerbert Xuconfig CRYPTO_BLKCIPHER
20*5cde0af2SHerbert Xu	tristate
21*5cde0af2SHerbert Xu	select CRYPTO_ALGAPI
22*5cde0af2SHerbert Xu
232b8c19dbSHerbert Xuconfig CRYPTO_MANAGER
242b8c19dbSHerbert Xu	tristate "Cryptographic algorithm manager"
252b8c19dbSHerbert Xu	select CRYPTO_ALGAPI
262b8c19dbSHerbert Xu	default m
272b8c19dbSHerbert Xu	help
282b8c19dbSHerbert Xu	  Create default cryptographic template instantiations such as
292b8c19dbSHerbert Xu	  cbc(aes).
302b8c19dbSHerbert Xu
311da177e4SLinus Torvaldsconfig CRYPTO_HMAC
321da177e4SLinus Torvalds	bool "HMAC support"
331da177e4SLinus Torvalds	help
341da177e4SLinus Torvalds	  HMAC: Keyed-Hashing for Message Authentication (RFC2104).
351da177e4SLinus Torvalds	  This is required for IPSec.
361da177e4SLinus Torvalds
371da177e4SLinus Torvaldsconfig CRYPTO_NULL
381da177e4SLinus Torvalds	tristate "Null algorithms"
39cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
401da177e4SLinus Torvalds	help
411da177e4SLinus Torvalds	  These are 'Null' algorithms, used by IPsec, which do nothing.
421da177e4SLinus Torvalds
431da177e4SLinus Torvaldsconfig CRYPTO_MD4
441da177e4SLinus Torvalds	tristate "MD4 digest algorithm"
45cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
461da177e4SLinus Torvalds	help
471da177e4SLinus Torvalds	  MD4 message digest algorithm (RFC1320).
481da177e4SLinus Torvalds
491da177e4SLinus Torvaldsconfig CRYPTO_MD5
501da177e4SLinus Torvalds	tristate "MD5 digest algorithm"
51cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
521da177e4SLinus Torvalds	help
531da177e4SLinus Torvalds	  MD5 message digest algorithm (RFC1321).
541da177e4SLinus Torvalds
551da177e4SLinus Torvaldsconfig CRYPTO_SHA1
561da177e4SLinus Torvalds	tristate "SHA1 digest algorithm"
57cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
581da177e4SLinus Torvalds	help
591da177e4SLinus Torvalds	  SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
601da177e4SLinus Torvalds
61c1e26e1eSJan Glauberconfig CRYPTO_SHA1_S390
62c1e26e1eSJan Glauber	tristate "SHA1 digest algorithm (s390)"
63cce9e06dSHerbert Xu	depends on S390
64cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
651da177e4SLinus Torvalds	help
660a497c17SJan Glauber	  This is the s390 hardware accelerated implementation of the
671da177e4SLinus Torvalds	  SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
681da177e4SLinus Torvalds
691da177e4SLinus Torvaldsconfig CRYPTO_SHA256
701da177e4SLinus Torvalds	tristate "SHA256 digest algorithm"
71cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
721da177e4SLinus Torvalds	help
731da177e4SLinus Torvalds	  SHA256 secure hash standard (DFIPS 180-2).
741da177e4SLinus Torvalds
751da177e4SLinus Torvalds	  This version of SHA implements a 256 bit hash with 128 bits of
761da177e4SLinus Torvalds	  security against collision attacks.
771da177e4SLinus Torvalds
780a497c17SJan Glauberconfig CRYPTO_SHA256_S390
790a497c17SJan Glauber	tristate "SHA256 digest algorithm (s390)"
80cce9e06dSHerbert Xu	depends on S390
81cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
820a497c17SJan Glauber	help
830a497c17SJan Glauber	  This is the s390 hardware accelerated implementation of the
840a497c17SJan Glauber	  SHA256 secure hash standard (DFIPS 180-2).
850a497c17SJan Glauber
860a497c17SJan Glauber	  This version of SHA implements a 256 bit hash with 128 bits of
870a497c17SJan Glauber	  security against collision attacks.
880a497c17SJan Glauber
891da177e4SLinus Torvaldsconfig CRYPTO_SHA512
901da177e4SLinus Torvalds	tristate "SHA384 and SHA512 digest algorithms"
91cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
921da177e4SLinus Torvalds	help
931da177e4SLinus Torvalds	  SHA512 secure hash standard (DFIPS 180-2).
941da177e4SLinus Torvalds
951da177e4SLinus Torvalds	  This version of SHA implements a 512 bit hash with 256 bits of
961da177e4SLinus Torvalds	  security against collision attacks.
971da177e4SLinus Torvalds
981da177e4SLinus Torvalds	  This code also includes SHA-384, a 384 bit hash with 192 bits
991da177e4SLinus Torvalds	  of security against collision attacks.
1001da177e4SLinus Torvalds
1011da177e4SLinus Torvaldsconfig CRYPTO_WP512
1021da177e4SLinus Torvalds	tristate "Whirlpool digest algorithms"
103cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
1041da177e4SLinus Torvalds	help
1051da177e4SLinus Torvalds	  Whirlpool hash algorithm 512, 384 and 256-bit hashes
1061da177e4SLinus Torvalds
1071da177e4SLinus Torvalds	  Whirlpool-512 is part of the NESSIE cryptographic primitives.
1081da177e4SLinus Torvalds	  Whirlpool will be part of the ISO/IEC 10118-3:2003(E) standard
1091da177e4SLinus Torvalds
1101da177e4SLinus Torvalds	  See also:
1111da177e4SLinus Torvalds	  <http://planeta.terra.com.br/informatica/paulobarreto/WhirlpoolPage.html>
1121da177e4SLinus Torvalds
1131da177e4SLinus Torvaldsconfig CRYPTO_TGR192
1141da177e4SLinus Torvalds	tristate "Tiger digest algorithms"
115cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
1161da177e4SLinus Torvalds	help
1171da177e4SLinus Torvalds	  Tiger hash algorithm 192, 160 and 128-bit hashes
1181da177e4SLinus Torvalds
1191da177e4SLinus Torvalds	  Tiger is a hash function optimized for 64-bit processors while
1201da177e4SLinus Torvalds	  still having decent performance on 32-bit processors.
1211da177e4SLinus Torvalds	  Tiger was developed by Ross Anderson and Eli Biham.
1221da177e4SLinus Torvalds
1231da177e4SLinus Torvalds	  See also:
1241da177e4SLinus Torvalds	  <http://www.cs.technion.ac.il/~biham/Reports/Tiger/>.
1251da177e4SLinus Torvalds
1261da177e4SLinus Torvaldsconfig CRYPTO_DES
1271da177e4SLinus Torvalds	tristate "DES and Triple DES EDE cipher algorithms"
128cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
1291da177e4SLinus Torvalds	help
1301da177e4SLinus Torvalds	  DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
1311da177e4SLinus Torvalds
132c1e26e1eSJan Glauberconfig CRYPTO_DES_S390
133c1e26e1eSJan Glauber	tristate "DES and Triple DES cipher algorithms (s390)"
134cce9e06dSHerbert Xu	depends on S390
135cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
1361da177e4SLinus Torvalds	help
1371da177e4SLinus Torvalds	  DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
1381da177e4SLinus Torvalds
1391da177e4SLinus Torvaldsconfig CRYPTO_BLOWFISH
1401da177e4SLinus Torvalds	tristate "Blowfish cipher algorithm"
141cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
1421da177e4SLinus Torvalds	help
1431da177e4SLinus Torvalds	  Blowfish cipher algorithm, by Bruce Schneier.
1441da177e4SLinus Torvalds
1451da177e4SLinus Torvalds	  This is a variable key length cipher which can use keys from 32
1461da177e4SLinus Torvalds	  bits to 448 bits in length.  It's fast, simple and specifically
1471da177e4SLinus Torvalds	  designed for use on "large microprocessors".
1481da177e4SLinus Torvalds
1491da177e4SLinus Torvalds	  See also:
1501da177e4SLinus Torvalds	  <http://www.schneier.com/blowfish.html>
1511da177e4SLinus Torvalds
1521da177e4SLinus Torvaldsconfig CRYPTO_TWOFISH
1531da177e4SLinus Torvalds	tristate "Twofish cipher algorithm"
154cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
1552729bb42SJoachim Fritschi	select CRYPTO_TWOFISH_COMMON
1561da177e4SLinus Torvalds	help
1571da177e4SLinus Torvalds	  Twofish cipher algorithm.
1581da177e4SLinus Torvalds
1591da177e4SLinus Torvalds	  Twofish was submitted as an AES (Advanced Encryption Standard)
1601da177e4SLinus Torvalds	  candidate cipher by researchers at CounterPane Systems.  It is a
1611da177e4SLinus Torvalds	  16 round block cipher supporting key sizes of 128, 192, and 256
1621da177e4SLinus Torvalds	  bits.
1631da177e4SLinus Torvalds
1641da177e4SLinus Torvalds	  See also:
1651da177e4SLinus Torvalds	  <http://www.schneier.com/twofish.html>
1661da177e4SLinus Torvalds
1672729bb42SJoachim Fritschiconfig CRYPTO_TWOFISH_COMMON
1682729bb42SJoachim Fritschi	tristate
1692729bb42SJoachim Fritschi	help
1702729bb42SJoachim Fritschi	  Common parts of the Twofish cipher algorithm shared by the
1712729bb42SJoachim Fritschi	  generic c and the assembler implementations.
1722729bb42SJoachim Fritschi
173b9f535ffSJoachim Fritschiconfig CRYPTO_TWOFISH_586
174b9f535ffSJoachim Fritschi	tristate "Twofish cipher algorithms (i586)"
175cce9e06dSHerbert Xu	depends on (X86 || UML_X86) && !64BIT
176cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
177b9f535ffSJoachim Fritschi	select CRYPTO_TWOFISH_COMMON
178b9f535ffSJoachim Fritschi	help
179b9f535ffSJoachim Fritschi	  Twofish cipher algorithm.
180b9f535ffSJoachim Fritschi
181b9f535ffSJoachim Fritschi	  Twofish was submitted as an AES (Advanced Encryption Standard)
182b9f535ffSJoachim Fritschi	  candidate cipher by researchers at CounterPane Systems.  It is a
183b9f535ffSJoachim Fritschi	  16 round block cipher supporting key sizes of 128, 192, and 256
184b9f535ffSJoachim Fritschi	  bits.
185b9f535ffSJoachim Fritschi
186b9f535ffSJoachim Fritschi	  See also:
187b9f535ffSJoachim Fritschi	  <http://www.schneier.com/twofish.html>
188b9f535ffSJoachim Fritschi
189eaf44088SJoachim Fritschiconfig CRYPTO_TWOFISH_X86_64
190eaf44088SJoachim Fritschi	tristate "Twofish cipher algorithm (x86_64)"
191cce9e06dSHerbert Xu	depends on (X86 || UML_X86) && 64BIT
192cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
193eaf44088SJoachim Fritschi	select CRYPTO_TWOFISH_COMMON
194eaf44088SJoachim Fritschi	help
195eaf44088SJoachim Fritschi	  Twofish cipher algorithm (x86_64).
196eaf44088SJoachim Fritschi
197eaf44088SJoachim Fritschi	  Twofish was submitted as an AES (Advanced Encryption Standard)
198eaf44088SJoachim Fritschi	  candidate cipher by researchers at CounterPane Systems.  It is a
199eaf44088SJoachim Fritschi	  16 round block cipher supporting key sizes of 128, 192, and 256
200eaf44088SJoachim Fritschi	  bits.
201eaf44088SJoachim Fritschi
202eaf44088SJoachim Fritschi	  See also:
203eaf44088SJoachim Fritschi	  <http://www.schneier.com/twofish.html>
204eaf44088SJoachim Fritschi
2051da177e4SLinus Torvaldsconfig CRYPTO_SERPENT
2061da177e4SLinus Torvalds	tristate "Serpent cipher algorithm"
207cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
2081da177e4SLinus Torvalds	help
2091da177e4SLinus Torvalds	  Serpent cipher algorithm, by Anderson, Biham & Knudsen.
2101da177e4SLinus Torvalds
2111da177e4SLinus Torvalds	  Keys are allowed to be from 0 to 256 bits in length, in steps
2121da177e4SLinus Torvalds	  of 8 bits.  Also includes the 'Tnepres' algorithm, a reversed
2131da177e4SLinus Torvalds	  variant of Serpent for compatibility with old kerneli code.
2141da177e4SLinus Torvalds
2151da177e4SLinus Torvalds	  See also:
2161da177e4SLinus Torvalds	  <http://www.cl.cam.ac.uk/~rja14/serpent.html>
2171da177e4SLinus Torvalds
2181da177e4SLinus Torvaldsconfig CRYPTO_AES
2191da177e4SLinus Torvalds	tristate "AES cipher algorithms"
220cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
2211da177e4SLinus Torvalds	help
2221da177e4SLinus Torvalds	  AES cipher algorithms (FIPS-197). AES uses the Rijndael
2231da177e4SLinus Torvalds	  algorithm.
2241da177e4SLinus Torvalds
2251da177e4SLinus Torvalds	  Rijndael appears to be consistently a very good performer in
2261da177e4SLinus Torvalds	  both hardware and software across a wide range of computing
2271da177e4SLinus Torvalds	  environments regardless of its use in feedback or non-feedback
2281da177e4SLinus Torvalds	  modes. Its key setup time is excellent, and its key agility is
2291da177e4SLinus Torvalds	  good. Rijndael's very low memory requirements make it very well
2301da177e4SLinus Torvalds	  suited for restricted-space environments, in which it also
2311da177e4SLinus Torvalds	  demonstrates excellent performance. Rijndael's operations are
2321da177e4SLinus Torvalds	  among the easiest to defend against power and timing attacks.
2331da177e4SLinus Torvalds
2341da177e4SLinus Torvalds	  The AES specifies three key sizes: 128, 192 and 256 bits
2351da177e4SLinus Torvalds
2361da177e4SLinus Torvalds	  See <http://csrc.nist.gov/CryptoToolkit/aes/> for more information.
2371da177e4SLinus Torvalds
2381da177e4SLinus Torvaldsconfig CRYPTO_AES_586
2391da177e4SLinus Torvalds	tristate "AES cipher algorithms (i586)"
240cce9e06dSHerbert Xu	depends on (X86 || UML_X86) && !64BIT
241cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
2421da177e4SLinus Torvalds	help
2431da177e4SLinus Torvalds	  AES cipher algorithms (FIPS-197). AES uses the Rijndael
2441da177e4SLinus Torvalds	  algorithm.
2451da177e4SLinus Torvalds
2461da177e4SLinus Torvalds	  Rijndael appears to be consistently a very good performer in
2471da177e4SLinus Torvalds	  both hardware and software across a wide range of computing
2481da177e4SLinus Torvalds	  environments regardless of its use in feedback or non-feedback
2491da177e4SLinus Torvalds	  modes. Its key setup time is excellent, and its key agility is
2501da177e4SLinus Torvalds	  good. Rijndael's very low memory requirements make it very well
2511da177e4SLinus Torvalds	  suited for restricted-space environments, in which it also
2521da177e4SLinus Torvalds	  demonstrates excellent performance. Rijndael's operations are
2531da177e4SLinus Torvalds	  among the easiest to defend against power and timing attacks.
2541da177e4SLinus Torvalds
2551da177e4SLinus Torvalds	  The AES specifies three key sizes: 128, 192 and 256 bits
2561da177e4SLinus Torvalds
2571da177e4SLinus Torvalds	  See <http://csrc.nist.gov/encryption/aes/> for more information.
2581da177e4SLinus Torvalds
259a2a892a2SAndreas Steinmetzconfig CRYPTO_AES_X86_64
260a2a892a2SAndreas Steinmetz	tristate "AES cipher algorithms (x86_64)"
261cce9e06dSHerbert Xu	depends on (X86 || UML_X86) && 64BIT
262cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
263a2a892a2SAndreas Steinmetz	help
264a2a892a2SAndreas Steinmetz	  AES cipher algorithms (FIPS-197). AES uses the Rijndael
265a2a892a2SAndreas Steinmetz	  algorithm.
266a2a892a2SAndreas Steinmetz
267a2a892a2SAndreas Steinmetz	  Rijndael appears to be consistently a very good performer in
268a2a892a2SAndreas Steinmetz	  both hardware and software across a wide range of computing
269a2a892a2SAndreas Steinmetz	  environments regardless of its use in feedback or non-feedback
270a2a892a2SAndreas Steinmetz	  modes. Its key setup time is excellent, and its key agility is
271a2a892a2SAndreas Steinmetz	  good. Rijndael's very low memory requirements make it very well
272a2a892a2SAndreas Steinmetz	  suited for restricted-space environments, in which it also
273a2a892a2SAndreas Steinmetz	  demonstrates excellent performance. Rijndael's operations are
274a2a892a2SAndreas Steinmetz	  among the easiest to defend against power and timing attacks.
275a2a892a2SAndreas Steinmetz
276a2a892a2SAndreas Steinmetz	  The AES specifies three key sizes: 128, 192 and 256 bits
277a2a892a2SAndreas Steinmetz
278a2a892a2SAndreas Steinmetz	  See <http://csrc.nist.gov/encryption/aes/> for more information.
279a2a892a2SAndreas Steinmetz
280bf754ae8SJan Glauberconfig CRYPTO_AES_S390
281bf754ae8SJan Glauber	tristate "AES cipher algorithms (s390)"
282cce9e06dSHerbert Xu	depends on S390
283cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
284bf754ae8SJan Glauber	help
285bf754ae8SJan Glauber	  This is the s390 hardware accelerated implementation of the
286bf754ae8SJan Glauber	  AES cipher algorithms (FIPS-197). AES uses the Rijndael
287bf754ae8SJan Glauber	  algorithm.
288bf754ae8SJan Glauber
289bf754ae8SJan Glauber	  Rijndael appears to be consistently a very good performer in
290bf754ae8SJan Glauber	  both hardware and software across a wide range of computing
291bf754ae8SJan Glauber	  environments regardless of its use in feedback or non-feedback
292bf754ae8SJan Glauber	  modes. Its key setup time is excellent, and its key agility is
293bf754ae8SJan Glauber	  good. Rijndael's very low memory requirements make it very well
294bf754ae8SJan Glauber	  suited for restricted-space environments, in which it also
295bf754ae8SJan Glauber	  demonstrates excellent performance. Rijndael's operations are
296bf754ae8SJan Glauber	  among the easiest to defend against power and timing attacks.
297bf754ae8SJan Glauber
298bf754ae8SJan Glauber	  On s390 the System z9-109 currently only supports the key size
299bf754ae8SJan Glauber	  of 128 bit.
300bf754ae8SJan Glauber
3011da177e4SLinus Torvaldsconfig CRYPTO_CAST5
3021da177e4SLinus Torvalds	tristate "CAST5 (CAST-128) cipher algorithm"
303cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3041da177e4SLinus Torvalds	help
3051da177e4SLinus Torvalds	  The CAST5 encryption algorithm (synonymous with CAST-128) is
3061da177e4SLinus Torvalds	  described in RFC2144.
3071da177e4SLinus Torvalds
3081da177e4SLinus Torvaldsconfig CRYPTO_CAST6
3091da177e4SLinus Torvalds	tristate "CAST6 (CAST-256) cipher algorithm"
310cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3111da177e4SLinus Torvalds	help
3121da177e4SLinus Torvalds	  The CAST6 encryption algorithm (synonymous with CAST-256) is
3131da177e4SLinus Torvalds	  described in RFC2612.
3141da177e4SLinus Torvalds
3151da177e4SLinus Torvaldsconfig CRYPTO_TEA
316fb4f10edSAaron Grothe	tristate "TEA, XTEA and XETA cipher algorithms"
317cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3181da177e4SLinus Torvalds	help
3191da177e4SLinus Torvalds	  TEA cipher algorithm.
3201da177e4SLinus Torvalds
3211da177e4SLinus Torvalds	  Tiny Encryption Algorithm is a simple cipher that uses
3221da177e4SLinus Torvalds	  many rounds for security.  It is very fast and uses
3231da177e4SLinus Torvalds	  little memory.
3241da177e4SLinus Torvalds
3251da177e4SLinus Torvalds	  Xtendend Tiny Encryption Algorithm is a modification to
3261da177e4SLinus Torvalds	  the TEA algorithm to address a potential key weakness
3271da177e4SLinus Torvalds	  in the TEA algorithm.
3281da177e4SLinus Torvalds
329fb4f10edSAaron Grothe	  Xtendend Encryption Tiny Algorithm is a mis-implementation
330fb4f10edSAaron Grothe	  of the XTEA algorithm for compatibility purposes.
331fb4f10edSAaron Grothe
3321da177e4SLinus Torvaldsconfig CRYPTO_ARC4
3331da177e4SLinus Torvalds	tristate "ARC4 cipher algorithm"
334cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3351da177e4SLinus Torvalds	help
3361da177e4SLinus Torvalds	  ARC4 cipher algorithm.
3371da177e4SLinus Torvalds
3381da177e4SLinus Torvalds	  ARC4 is a stream cipher using keys ranging from 8 bits to 2048
3391da177e4SLinus Torvalds	  bits in length.  This algorithm is required for driver-based
3401da177e4SLinus Torvalds	  WEP, but it should not be for other purposes because of the
3411da177e4SLinus Torvalds	  weakness of the algorithm.
3421da177e4SLinus Torvalds
3431da177e4SLinus Torvaldsconfig CRYPTO_KHAZAD
3441da177e4SLinus Torvalds	tristate "Khazad cipher algorithm"
345cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3461da177e4SLinus Torvalds	help
3471da177e4SLinus Torvalds	  Khazad cipher algorithm.
3481da177e4SLinus Torvalds
3491da177e4SLinus Torvalds	  Khazad was a finalist in the initial NESSIE competition.  It is
3501da177e4SLinus Torvalds	  an algorithm optimized for 64-bit processors with good performance
3511da177e4SLinus Torvalds	  on 32-bit processors.  Khazad uses an 128 bit key size.
3521da177e4SLinus Torvalds
3531da177e4SLinus Torvalds	  See also:
3541da177e4SLinus Torvalds	  <http://planeta.terra.com.br/informatica/paulobarreto/KhazadPage.html>
3551da177e4SLinus Torvalds
3561da177e4SLinus Torvaldsconfig CRYPTO_ANUBIS
3571da177e4SLinus Torvalds	tristate "Anubis cipher algorithm"
358cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3591da177e4SLinus Torvalds	help
3601da177e4SLinus Torvalds	  Anubis cipher algorithm.
3611da177e4SLinus Torvalds
3621da177e4SLinus Torvalds	  Anubis is a variable key length cipher which can use keys from
3631da177e4SLinus Torvalds	  128 bits to 320 bits in length.  It was evaluated as a entrant
3641da177e4SLinus Torvalds	  in the NESSIE competition.
3651da177e4SLinus Torvalds
3661da177e4SLinus Torvalds	  See also:
3671da177e4SLinus Torvalds	  <https://www.cosic.esat.kuleuven.ac.be/nessie/reports/>
3681da177e4SLinus Torvalds	  <http://planeta.terra.com.br/informatica/paulobarreto/AnubisPage.html>
3691da177e4SLinus Torvalds
3701da177e4SLinus Torvalds
3711da177e4SLinus Torvaldsconfig CRYPTO_DEFLATE
3721da177e4SLinus Torvalds	tristate "Deflate compression algorithm"
373cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3741da177e4SLinus Torvalds	select ZLIB_INFLATE
3751da177e4SLinus Torvalds	select ZLIB_DEFLATE
3761da177e4SLinus Torvalds	help
3771da177e4SLinus Torvalds	  This is the Deflate algorithm (RFC1951), specified for use in
3781da177e4SLinus Torvalds	  IPSec with the IPCOMP protocol (RFC3173, RFC2394).
3791da177e4SLinus Torvalds
3801da177e4SLinus Torvalds	  You will most probably want this if using IPSec.
3811da177e4SLinus Torvalds
3821da177e4SLinus Torvaldsconfig CRYPTO_MICHAEL_MIC
3831da177e4SLinus Torvalds	tristate "Michael MIC keyed digest algorithm"
384cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3851da177e4SLinus Torvalds	help
3861da177e4SLinus Torvalds	  Michael MIC is used for message integrity protection in TKIP
3871da177e4SLinus Torvalds	  (IEEE 802.11i). This algorithm is required for TKIP, but it
3881da177e4SLinus Torvalds	  should not be used for other purposes because of the weakness
3891da177e4SLinus Torvalds	  of the algorithm.
3901da177e4SLinus Torvalds
3911da177e4SLinus Torvaldsconfig CRYPTO_CRC32C
3921da177e4SLinus Torvalds	tristate "CRC32c CRC algorithm"
393cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
3941da177e4SLinus Torvalds	select LIBCRC32C
3951da177e4SLinus Torvalds	help
3961da177e4SLinus Torvalds	  Castagnoli, et al Cyclic Redundancy-Check Algorithm.  Used
3971da177e4SLinus Torvalds	  by iSCSI for header and data digests and by others.
3981da177e4SLinus Torvalds	  See Castagnoli93.  This implementation uses lib/libcrc32c.
3991da177e4SLinus Torvalds          Module will be crc32c.
4001da177e4SLinus Torvalds
4011da177e4SLinus Torvaldsconfig CRYPTO_TEST
4021da177e4SLinus Torvalds	tristate "Testing module"
403cce9e06dSHerbert Xu	depends on m
404cce9e06dSHerbert Xu	select CRYPTO_ALGAPI
4051da177e4SLinus Torvalds	help
4061da177e4SLinus Torvalds	  Quick & dirty crypto test module.
4071da177e4SLinus Torvalds
4081da177e4SLinus Torvaldssource "drivers/crypto/Kconfig"
4091da177e4SLinus Torvalds
410cce9e06dSHerbert Xuendif	# if CRYPTO
411cce9e06dSHerbert Xu
412cce9e06dSHerbert Xuendmenu
413