VServer 1.9.2 (patch-2.6.8.1-vs1.9.2.diff)
[linux-2.6.git] / crypto / Kconfig
1 #
2 # Cryptographic API Configuration
3 #
4
5 menu "Cryptographic options"
6
7 config CRYPTO
8         bool "Cryptographic API"
9         help
10           This option provides the core Cryptographic API.
11
12 config CRYPTO_HMAC
13         bool "HMAC support"
14         depends on CRYPTO
15         help
16           HMAC: Keyed-Hashing for Message Authentication (RFC2104).
17           This is required for IPSec.
18
19 config CRYPTO_NULL
20         tristate "Null algorithms"
21         depends on CRYPTO
22         help
23           These are 'Null' algorithms, used by IPsec, which do nothing.
24
25 config CRYPTO_MD4
26         tristate "MD4 digest algorithm"
27         depends on CRYPTO
28         help
29           MD4 message digest algorithm (RFC1320).
30
31 config CRYPTO_MD5
32         tristate "MD5 digest algorithm"
33         depends on CRYPTO
34         help
35           MD5 message digest algorithm (RFC1321).
36
37 config CRYPTO_SHA1
38         tristate "SHA1 digest algorithm"
39         depends on CRYPTO
40         help
41           SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
42
43 config CRYPTO_SHA1_Z990
44         tristate "SHA1 digest algorithm for IBM zSeries z990"
45         depends on CRYPTO && ARCH_S390
46         help
47           SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
48
49 config CRYPTO_SHA256
50         tristate "SHA256 digest algorithm"
51         depends on CRYPTO
52         help
53           SHA256 secure hash standard (DFIPS 180-2).
54           
55           This version of SHA implements a 256 bit hash with 128 bits of
56           security against collision attacks.
57
58 config CRYPTO_SHA512
59         tristate "SHA384 and SHA512 digest algorithms"
60         depends on CRYPTO
61         help
62           SHA512 secure hash standard (DFIPS 180-2).
63           
64           This version of SHA implements a 512 bit hash with 256 bits of
65           security against collision attacks.
66
67           This code also includes SHA-384, a 384 bit hash with 192 bits
68           of security against collision attacks.
69
70 config CRYPTO_DES
71         tristate "DES and Triple DES EDE cipher algorithms"
72         depends on CRYPTO
73         help
74           DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
75
76 config CRYPTO_DES_Z990
77         tristate "DES and Triple DES cipher algorithms for IBM zSeries z990"
78         depends on CRYPTO && ARCH_S390
79         help
80           DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
81
82 config CRYPTO_BLOWFISH
83         tristate "Blowfish cipher algorithm"
84         depends on CRYPTO
85         help
86           Blowfish cipher algorithm, by Bruce Schneier.
87           
88           This is a variable key length cipher which can use keys from 32
89           bits to 448 bits in length.  It's fast, simple and specifically
90           designed for use on "large microprocessors".
91           
92           See also:
93           http://www.schneier.com/blowfish.html
94
95 config CRYPTO_TWOFISH
96         tristate "Twofish cipher algorithm"
97         depends on CRYPTO
98         help
99           Twofish cipher algorithm.
100           
101           Twofish was submitted as an AES (Advanced Encryption Standard)
102           candidate cipher by researchers at CounterPane Systems.  It is a
103           16 round block cipher supporting key sizes of 128, 192, and 256
104           bits.
105           
106           See also:
107           http://www.schneier.com/twofish.html
108
109 config CRYPTO_SERPENT
110         tristate "Serpent cipher algorithm"
111         depends on CRYPTO
112         help
113           Serpent cipher algorithm, by Anderson, Biham & Knudsen.
114
115           Keys are allowed to be from 0 to 256 bits in length, in steps
116           of 8 bits.
117
118           See also:
119           http://www.cl.cam.ac.uk/~rja14/serpent.html
120
121 config CRYPTO_AES
122         tristate "AES cipher algorithms"
123         depends on CRYPTO && !(X86 && !X86_64)
124         help
125           AES cipher algorithms (FIPS-197). AES uses the Rijndael 
126           algorithm.
127
128           Rijndael appears to be consistently a very good performer in
129           both hardware and software across a wide range of computing 
130           environments regardless of its use in feedback or non-feedback 
131           modes. Its key setup time is excellent, and its key agility is 
132           good. Rijndael's very low memory requirements make it very well 
133           suited for restricted-space environments, in which it also 
134           demonstrates excellent performance. Rijndael's operations are 
135           among the easiest to defend against power and timing attacks. 
136
137           The AES specifies three key sizes: 128, 192 and 256 bits        
138
139           See http://csrc.nist.gov/CryptoToolkit/aes/ for more information.
140
141 config CRYPTO_AES_586
142         tristate "AES cipher algorithms (i586)"
143         depends on CRYPTO && (X86 && !X86_64)
144         help
145           AES cipher algorithms (FIPS-197). AES uses the Rijndael 
146           algorithm.
147
148           Rijndael appears to be consistently a very good performer in
149           both hardware and software across a wide range of computing 
150           environments regardless of its use in feedback or non-feedback 
151           modes. Its key setup time is excellent, and its key agility is 
152           good. Rijndael's very low memory requirements make it very well 
153           suited for restricted-space environments, in which it also 
154           demonstrates excellent performance. Rijndael's operations are 
155           among the easiest to defend against power and timing attacks. 
156
157           The AES specifies three key sizes: 128, 192 and 256 bits        
158
159           See http://csrc.nist.gov/encryption/aes/ for more information.
160
161 config CRYPTO_CAST5
162         tristate "CAST5 (CAST-128) cipher algorithm"
163         depends on CRYPTO
164         help
165           The CAST5 encryption algorithm (synonymous with CAST-128) is
166           described in RFC2144.
167
168 config CRYPTO_CAST6
169         tristate "CAST6 (CAST-256) cipher algorithm"
170         depends on CRYPTO
171         help
172           The CAST6 encryption algorithm (synonymous with CAST-256) is
173           described in RFC2612.
174
175 config CRYPTO_TEA
176         tristate "TEA and XTEA cipher algorithms"
177         depends on CRYPTO
178         help
179           TEA cipher algorithm.
180
181           Tiny Encryption Algorithm is a simple cipher that uses
182           many rounds for security.  It is very fast and uses
183           little memory.
184
185           Xtendend Tiny Encryption Algorithm is a modifcation to
186           the TEA algorithm to address a potential key weakness
187           in the TEA algorithm.
188
189 config CRYPTO_ARC4
190         tristate "ARC4 cipher algorithm"
191         depends on CRYPTO
192         help
193           ARC4 cipher algorithm.
194
195           ARC4 is a stream cipher using keys ranging from 8 bits to 2048
196           bits in length.  This algorithm is required for driver-based 
197           WEP, but it should not be for other purposes because of the
198           weakness of the algorithm.
199
200 config CRYPTO_KHAZAD
201         tristate "Khazad cipher algorithm"
202         depends on CRYPTO
203         help
204           Khazad cipher algorithm.
205
206           Khazad was a finalist in the initial NESSIE competition.  It is
207           an algorithm optimized for 64-bit processors with good performance
208           on 32-bit processors.  Khazad uses an 128 bit key size.
209
210           See also:
211           http://planeta.terra.com.br/informatica/paulobarreto/KhazadPage.html
212
213 config CRYPTO_DEFLATE
214         tristate "Deflate compression algorithm"
215         depends on CRYPTO
216         select ZLIB_INFLATE
217         select ZLIB_DEFLATE
218         help
219           This is the Deflate algorithm (RFC1951), specified for use in
220           IPSec with the IPCOMP protocol (RFC3173, RFC2394).
221           
222           You will most probably want this if using IPSec.
223
224 config CRYPTO_MICHAEL_MIC
225         tristate "Michael MIC keyed digest algorithm"
226         depends on CRYPTO
227         help
228           Michael MIC is used for message integrity protection in TKIP
229           (IEEE 802.11i). This algorithm is required for TKIP, but it
230           should not be used for other purposes because of the weakness
231           of the algorithm.
232
233 config CRYPTO_CRC32C
234         tristate "CRC32c CRC algorithm"
235         depends on CRYPTO
236         select LIBCRC32C
237         help
238           Castagnoli, et al Cyclic Redundancy-Check Algorithm.  Used
239           by iSCSI for header and data digests and by others.
240           See Castagnoli93.  This implementation uses lib/libcrc32c.
241           Module will be crc32c.
242
243 config CRYPTO_TEST
244         tristate "Testing module"
245         depends on CRYPTO
246         help
247           Quick & dirty crypto test module.
248
249 endmenu
250