454 lines · 12.9 KB · Text
RawDownload
## Cryptographic API Configuration# menu "Cryptographic options" config CRYPTO	bool "Cryptographic API"	help	  This option provides the core Cryptographic API. if CRYPTO config CRYPTO_ALGAPI	tristate	help	  This option provides the API for cryptographic algorithms. config CRYPTO_BLKCIPHER	tristate	select CRYPTO_ALGAPI config CRYPTO_HASH	tristate	select CRYPTO_ALGAPI config CRYPTO_MANAGER	tristate "Cryptographic algorithm manager"	select CRYPTO_ALGAPI	help	  Create default cryptographic template instantiations such as	  cbc(aes). config CRYPTO_HMAC	tristate "HMAC support"	select CRYPTO_HASH	select CRYPTO_MANAGER	help	  HMAC: Keyed-Hashing for Message Authentication (RFC2104).	  This is required for IPSec. config CRYPTO_XCBC	tristate "XCBC support"	depends on EXPERIMENTAL	select CRYPTO_HASH	select CRYPTO_MANAGER	help	  XCBC: Keyed-Hashing with encryption algorithm		http://www.ietf.org/rfc/rfc3566.txt		http://csrc.nist.gov/encryption/modes/proposedmodes/		 xcbc-mac/xcbc-mac-spec.pdf config CRYPTO_NULL	tristate "Null algorithms"	select CRYPTO_ALGAPI	help	  These are 'Null' algorithms, used by IPsec, which do nothing. config CRYPTO_MD4	tristate "MD4 digest algorithm"	select CRYPTO_ALGAPI	help	  MD4 message digest algorithm (RFC1320). config CRYPTO_MD5	tristate "MD5 digest algorithm"	select CRYPTO_ALGAPI	help	  MD5 message digest algorithm (RFC1321). config CRYPTO_SHA1	tristate "SHA1 digest algorithm"	select CRYPTO_ALGAPI	help	  SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2). config CRYPTO_SHA256	tristate "SHA256 digest algorithm"	select CRYPTO_ALGAPI	help	  SHA256 secure hash standard (DFIPS 180-2).	  	  This version of SHA implements a 256 bit hash with 128 bits of	  security against collision attacks. config CRYPTO_SHA512	tristate "SHA384 and SHA512 digest algorithms"	select CRYPTO_ALGAPI	help	  SHA512 secure hash standard (DFIPS 180-2).	  	  This version of SHA implements a 512 bit hash with 256 bits of	  security against collision attacks. 	  This code also includes SHA-384, a 384 bit hash with 192 bits	  of security against collision attacks. config CRYPTO_WP512	tristate "Whirlpool digest algorithms"	select CRYPTO_ALGAPI	help	  Whirlpool hash algorithm 512, 384 and 256-bit hashes 	  Whirlpool-512 is part of the NESSIE cryptographic primitives.	  Whirlpool will be part of the ISO/IEC 10118-3:2003(E) standard 	  See also:	  <http://planeta.terra.com.br/informatica/paulobarreto/WhirlpoolPage.html> config CRYPTO_TGR192	tristate "Tiger digest algorithms"	select CRYPTO_ALGAPI	help	  Tiger hash algorithm 192, 160 and 128-bit hashes 	  Tiger is a hash function optimized for 64-bit processors while	  still having decent performance on 32-bit processors.	  Tiger was developed by Ross Anderson and Eli Biham. 	  See also:	  <http://www.cs.technion.ac.il/~biham/Reports/Tiger/>. config CRYPTO_GF128MUL	tristate "GF(2^128) multiplication functions (EXPERIMENTAL)"	depends on EXPERIMENTAL	help	  Efficient table driven implementation of multiplications in the	  field GF(2^128).  This is needed by some cypher modes. This	  option will be selected automatically if you select such a	  cipher mode.  Only select this option by hand if you expect to load	  an external module that requires these functions. config CRYPTO_ECB	tristate "ECB support"	select CRYPTO_BLKCIPHER	select CRYPTO_MANAGER	default m	help	  ECB: Electronic CodeBook mode	  This is the simplest block cipher algorithm.  It simply encrypts	  the input block by block. config CRYPTO_CBC	tristate "CBC support"	select CRYPTO_BLKCIPHER	select CRYPTO_MANAGER	default m	help	  CBC: Cipher Block Chaining mode	  This block cipher algorithm is required for IPSec. config CRYPTO_PCBC	tristate "PCBC support"	select CRYPTO_BLKCIPHER	select CRYPTO_MANAGER	default m	help	  PCBC: Propagating Cipher Block Chaining mode	  This block cipher algorithm is required for RxRPC. 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	help	  DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3). config CRYPTO_FCRYPT	tristate "FCrypt cipher algorithm"	select CRYPTO_ALGAPI	select CRYPTO_BLKCIPHER	help	  FCrypt algorithm used by RxRPC. config CRYPTO_BLOWFISH	tristate "Blowfish cipher algorithm"	select CRYPTO_ALGAPI	help	  Blowfish cipher algorithm, by Bruce Schneier.	  	  This is a variable key length cipher which can use keys from 32	  bits to 448 bits in length.  It's fast, simple and specifically	  designed for use on "large microprocessors".	  	  See also:	  <http://www.schneier.com/blowfish.html> config CRYPTO_TWOFISH	tristate "Twofish cipher algorithm"	select CRYPTO_ALGAPI	select CRYPTO_TWOFISH_COMMON	help	  Twofish cipher algorithm.	  	  Twofish was submitted as an AES (Advanced Encryption Standard)	  candidate cipher by researchers at CounterPane Systems.  It is a	  16 round block cipher supporting key sizes of 128, 192, and 256	  bits.	  	  See also:	  <http://www.schneier.com/twofish.html> config CRYPTO_TWOFISH_COMMON	tristate	help	  Common parts of the Twofish cipher algorithm shared by the	  generic c and the assembler implementations. config CRYPTO_TWOFISH_586	tristate "Twofish cipher algorithms (i586)"	depends on (X86 || UML_X86) && !64BIT	select CRYPTO_ALGAPI	select CRYPTO_TWOFISH_COMMON	help	  Twofish cipher algorithm. 	  Twofish was submitted as an AES (Advanced Encryption Standard)	  candidate cipher by researchers at CounterPane Systems.  It is a	  16 round block cipher supporting key sizes of 128, 192, and 256	  bits. 	  See also:	  <http://www.schneier.com/twofish.html> config CRYPTO_TWOFISH_X86_64	tristate "Twofish cipher algorithm (x86_64)"	depends on (X86 || UML_X86) && 64BIT	select CRYPTO_ALGAPI	select CRYPTO_TWOFISH_COMMON	help	  Twofish cipher algorithm (x86_64). 	  Twofish was submitted as an AES (Advanced Encryption Standard)	  candidate cipher by researchers at CounterPane Systems.  It is a	  16 round block cipher supporting key sizes of 128, 192, and 256	  bits. 	  See also:	  <http://www.schneier.com/twofish.html> config CRYPTO_SERPENT	tristate "Serpent cipher algorithm"	select CRYPTO_ALGAPI	help	  Serpent cipher algorithm, by Anderson, Biham & Knudsen. 	  Keys are allowed to be from 0 to 256 bits in length, in steps	  of 8 bits.  Also includes the 'Tnepres' algorithm, a reversed	  variant of Serpent for compatibility with old kerneli code. 	  See also:	  <http://www.cl.cam.ac.uk/~rja14/serpent.html> config CRYPTO_AES	tristate "AES cipher algorithms"	select CRYPTO_ALGAPI	help	  AES cipher algorithms (FIPS-197). AES uses the Rijndael 	  algorithm. 	  Rijndael appears to be consistently a very good performer in	  both hardware and software across a wide range of computing 	  environments regardless of its use in feedback or non-feedback 	  modes. Its key setup time is excellent, and its key agility is 	  good. Rijndael's very low memory requirements make it very well 	  suited for restricted-space environments, in which it also 	  demonstrates excellent performance. Rijndael's operations are 	  among the easiest to defend against power and timing attacks.	 	  The AES specifies three key sizes: 128, 192 and 256 bits	   	  See <http://csrc.nist.gov/CryptoToolkit/aes/> for more information. config CRYPTO_AES_586	tristate "AES cipher algorithms (i586)"	depends on (X86 || UML_X86) && !64BIT	select CRYPTO_ALGAPI	help	  AES cipher algorithms (FIPS-197). AES uses the Rijndael 	  algorithm. 	  Rijndael appears to be consistently a very good performer in	  both hardware and software across a wide range of computing 	  environments regardless of its use in feedback or non-feedback 	  modes. Its key setup time is excellent, and its key agility is 	  good. Rijndael's very low memory requirements make it very well 	  suited for restricted-space environments, in which it also 	  demonstrates excellent performance. Rijndael's operations are 	  among the easiest to defend against power and timing attacks.	 	  The AES specifies three key sizes: 128, 192 and 256 bits	   	  See <http://csrc.nist.gov/encryption/aes/> for more information. config CRYPTO_AES_X86_64	tristate "AES cipher algorithms (x86_64)"	depends on (X86 || UML_X86) && 64BIT	select CRYPTO_ALGAPI	help	  AES cipher algorithms (FIPS-197). AES uses the Rijndael 	  algorithm. 	  Rijndael appears to be consistently a very good performer in	  both hardware and software across a wide range of computing 	  environments regardless of its use in feedback or non-feedback 	  modes. Its key setup time is excellent, and its key agility is 	  good. Rijndael's very low memory requirements make it very well 	  suited for restricted-space environments, in which it also 	  demonstrates excellent performance. Rijndael's operations are 	  among the easiest to defend against power and timing attacks.	 	  The AES specifies three key sizes: 128, 192 and 256 bits	   	  See <http://csrc.nist.gov/encryption/aes/> for more information. config CRYPTO_CAST5	tristate "CAST5 (CAST-128) cipher algorithm"	select CRYPTO_ALGAPI	help	  The CAST5 encryption algorithm (synonymous with CAST-128) is	  described in RFC2144. config CRYPTO_CAST6	tristate "CAST6 (CAST-256) cipher algorithm"	select CRYPTO_ALGAPI	help	  The CAST6 encryption algorithm (synonymous with CAST-256) is	  described in RFC2612. config CRYPTO_TEA	tristate "TEA, XTEA and XETA cipher algorithms"	select CRYPTO_ALGAPI	help	  TEA cipher algorithm. 	  Tiny Encryption Algorithm is a simple cipher that uses	  many rounds for security.  It is very fast and uses	  little memory. 	  Xtendend Tiny Encryption Algorithm is a modification to	  the TEA algorithm to address a potential key weakness	  in the TEA algorithm. 	  Xtendend Encryption Tiny Algorithm is a mis-implementation 	  of the XTEA algorithm for compatibility purposes. config CRYPTO_ARC4	tristate "ARC4 cipher algorithm"	select CRYPTO_ALGAPI	help	  ARC4 cipher algorithm. 	  ARC4 is a stream cipher using keys ranging from 8 bits to 2048	  bits in length.  This algorithm is required for driver-based 	  WEP, but it should not be for other purposes because of the	  weakness of the algorithm. config CRYPTO_KHAZAD	tristate "Khazad cipher algorithm"	select CRYPTO_ALGAPI	help	  Khazad cipher algorithm. 	  Khazad was a finalist in the initial NESSIE competition.  It is	  an algorithm optimized for 64-bit processors with good performance	  on 32-bit processors.  Khazad uses an 128 bit key size. 	  See also:	  <http://planeta.terra.com.br/informatica/paulobarreto/KhazadPage.html> config CRYPTO_ANUBIS	tristate "Anubis cipher algorithm"	select CRYPTO_ALGAPI	help	  Anubis cipher algorithm. 	  Anubis is a variable key length cipher which can use keys from 	  128 bits to 320 bits in length.  It was evaluated as a entrant	  in the NESSIE competition.	  	  See also:	  <https://www.cosic.esat.kuleuven.ac.be/nessie/reports/>	  <http://planeta.terra.com.br/informatica/paulobarreto/AnubisPage.html>  config CRYPTO_DEFLATE	tristate "Deflate compression algorithm"	select CRYPTO_ALGAPI	select ZLIB_INFLATE	select ZLIB_DEFLATE	help	  This is the Deflate algorithm (RFC1951), specified for use in	  IPSec with the IPCOMP protocol (RFC3173, RFC2394).	  	  You will most probably want this if using IPSec. config CRYPTO_MICHAEL_MIC	tristate "Michael MIC keyed digest algorithm"	select CRYPTO_ALGAPI	help	  Michael MIC is used for message integrity protection in TKIP	  (IEEE 802.11i). This algorithm is required for TKIP, but it	  should not be used for other purposes because of the weakness	  of the algorithm. config CRYPTO_CRC32C	tristate "CRC32c CRC algorithm"	select CRYPTO_ALGAPI	select LIBCRC32C	help	  Castagnoli, et al Cyclic Redundancy-Check Algorithm.  Used	  by iSCSI for header and data digests and by others.	  See Castagnoli93.  This implementation uses lib/libcrc32c.          Module will be crc32c. config CRYPTO_CAMELLIA	tristate "Camellia cipher algorithms"	depends on CRYPTO	select CRYPTO_ALGAPI	help	  Camellia cipher algorithms module. 	  Camellia is a symmetric key block cipher developed jointly	  at NTT and Mitsubishi Electric Corporation. 	  The Camellia specifies three key sizes: 128, 192 and 256 bits. 	  See also:	  <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html> config CRYPTO_TEST	tristate "Testing module"	depends on m	select CRYPTO_ALGAPI	help	  Quick & dirty crypto test module. source "drivers/crypto/Kconfig" endif	# if CRYPTO endmenu