diff options
Diffstat (limited to 'crypto/Kconfig')
-rw-r--r-- | crypto/Kconfig | 127 |
1 files changed, 84 insertions, 43 deletions
diff --git a/crypto/Kconfig b/crypto/Kconfig index d83185915eee..39dbd8e4dde1 100644 --- a/crypto/Kconfig +++ b/crypto/Kconfig | |||
@@ -21,6 +21,14 @@ if CRYPTO | |||
21 | 21 | ||
22 | comment "Crypto core or helper" | 22 | comment "Crypto core or helper" |
23 | 23 | ||
24 | config CRYPTO_FIPS | ||
25 | bool "FIPS 200 compliance" | ||
26 | help | ||
27 | This options enables the fips boot option which is | ||
28 | required if you want to system to operate in a FIPS 200 | ||
29 | certification. You should say no unless you know what | ||
30 | this is. | ||
31 | |||
24 | config CRYPTO_ALGAPI | 32 | config CRYPTO_ALGAPI |
25 | tristate | 33 | tristate |
26 | help | 34 | help |
@@ -33,14 +41,21 @@ config CRYPTO_AEAD | |||
33 | config CRYPTO_BLKCIPHER | 41 | config CRYPTO_BLKCIPHER |
34 | tristate | 42 | tristate |
35 | select CRYPTO_ALGAPI | 43 | select CRYPTO_ALGAPI |
44 | select CRYPTO_RNG | ||
36 | 45 | ||
37 | config CRYPTO_HASH | 46 | config CRYPTO_HASH |
38 | tristate | 47 | tristate |
39 | select CRYPTO_ALGAPI | 48 | select CRYPTO_ALGAPI |
40 | 49 | ||
50 | config CRYPTO_RNG | ||
51 | tristate | ||
52 | select CRYPTO_ALGAPI | ||
53 | |||
41 | config CRYPTO_MANAGER | 54 | config CRYPTO_MANAGER |
42 | tristate "Cryptographic algorithm manager" | 55 | tristate "Cryptographic algorithm manager" |
43 | select CRYPTO_ALGAPI | 56 | select CRYPTO_AEAD |
57 | select CRYPTO_HASH | ||
58 | select CRYPTO_BLKCIPHER | ||
44 | help | 59 | help |
45 | Create default cryptographic template instantiations such as | 60 | Create default cryptographic template instantiations such as |
46 | cbc(aes). | 61 | cbc(aes). |
@@ -85,9 +100,7 @@ config CRYPTO_AUTHENC | |||
85 | config CRYPTO_TEST | 100 | config CRYPTO_TEST |
86 | tristate "Testing module" | 101 | tristate "Testing module" |
87 | depends on m | 102 | depends on m |
88 | select CRYPTO_ALGAPI | 103 | select CRYPTO_MANAGER |
89 | select CRYPTO_AEAD | ||
90 | select CRYPTO_BLKCIPHER | ||
91 | help | 104 | help |
92 | Quick & dirty crypto test module. | 105 | Quick & dirty crypto test module. |
93 | 106 | ||
@@ -113,6 +126,7 @@ config CRYPTO_SEQIV | |||
113 | tristate "Sequence Number IV Generator" | 126 | tristate "Sequence Number IV Generator" |
114 | select CRYPTO_AEAD | 127 | select CRYPTO_AEAD |
115 | select CRYPTO_BLKCIPHER | 128 | select CRYPTO_BLKCIPHER |
129 | select CRYPTO_RNG | ||
116 | help | 130 | help |
117 | This IV generator generates an IV based on a sequence number by | 131 | This IV generator generates an IV based on a sequence number by |
118 | xoring it with a salt. This algorithm is mainly useful for CTR | 132 | xoring it with a salt. This algorithm is mainly useful for CTR |
@@ -219,7 +233,19 @@ config CRYPTO_CRC32C | |||
219 | Castagnoli, et al Cyclic Redundancy-Check Algorithm. Used | 233 | Castagnoli, et al Cyclic Redundancy-Check Algorithm. Used |
220 | by iSCSI for header and data digests and by others. | 234 | by iSCSI for header and data digests and by others. |
221 | See Castagnoli93. This implementation uses lib/libcrc32c. | 235 | See Castagnoli93. This implementation uses lib/libcrc32c. |
222 | Module will be crc32c. | 236 | Module will be crc32c. |
237 | |||
238 | config CRYPTO_CRC32C_INTEL | ||
239 | tristate "CRC32c INTEL hardware acceleration" | ||
240 | depends on X86 | ||
241 | select CRYPTO_HASH | ||
242 | help | ||
243 | In Intel processor with SSE4.2 supported, the processor will | ||
244 | support CRC32C implementation using hardware accelerated CRC32 | ||
245 | instruction. This option will create 'crc32c-intel' module, | ||
246 | which will enable any routine to use the CRC32 instruction to | ||
247 | gain performance compared with software implementation. | ||
248 | Module will be crc32c-intel. | ||
223 | 249 | ||
224 | config CRYPTO_MD4 | 250 | config CRYPTO_MD4 |
225 | tristate "MD4 digest algorithm" | 251 | tristate "MD4 digest algorithm" |
@@ -243,55 +269,58 @@ config CRYPTO_MICHAEL_MIC | |||
243 | of the algorithm. | 269 | of the algorithm. |
244 | 270 | ||
245 | config CRYPTO_RMD128 | 271 | config CRYPTO_RMD128 |
246 | tristate "RIPEMD-128 digest algorithm" | 272 | tristate "RIPEMD-128 digest algorithm" |
247 | select CRYPTO_ALGAPI | 273 | select CRYPTO_ALGAPI |
248 | help | 274 | help |
249 | RIPEMD-128 (ISO/IEC 10118-3:2004). | 275 | RIPEMD-128 (ISO/IEC 10118-3:2004). |
250 | 276 | ||
251 | RIPEMD-128 is a 128-bit cryptographic hash function. It should only | 277 | RIPEMD-128 is a 128-bit cryptographic hash function. It should only |
252 | to be used as a secure replacement for RIPEMD. For other use cases | 278 | to be used as a secure replacement for RIPEMD. For other use cases |
253 | RIPEMD-160 should be used. | 279 | RIPEMD-160 should be used. |
254 | 280 | ||
255 | Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. | 281 | Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. |
256 | See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html> | 282 | See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html> |
257 | 283 | ||
258 | config CRYPTO_RMD160 | 284 | config CRYPTO_RMD160 |
259 | tristate "RIPEMD-160 digest algorithm" | 285 | tristate "RIPEMD-160 digest algorithm" |
260 | select CRYPTO_ALGAPI | 286 | select CRYPTO_ALGAPI |
261 | help | 287 | help |
262 | RIPEMD-160 (ISO/IEC 10118-3:2004). | 288 | RIPEMD-160 (ISO/IEC 10118-3:2004). |
263 | 289 | ||
264 | RIPEMD-160 is a 160-bit cryptographic hash function. It is intended | 290 | RIPEMD-160 is a 160-bit cryptographic hash function. It is intended |
265 | to be used as a secure replacement for the 128-bit hash functions | 291 | to be used as a secure replacement for the 128-bit hash functions |
266 | MD4, MD5 and it's predecessor RIPEMD (not to be confused with RIPEMD-128). | 292 | MD4, MD5 and it's predecessor RIPEMD |
293 | (not to be confused with RIPEMD-128). | ||
267 | 294 | ||
268 | It's speed is comparable to SHA1 and there are no known attacks against | 295 | It's speed is comparable to SHA1 and there are no known attacks |
269 | RIPEMD-160. | 296 | against RIPEMD-160. |
270 | 297 | ||
271 | Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. | 298 | Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. |
272 | See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html> | 299 | See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html> |
273 | 300 | ||
274 | config CRYPTO_RMD256 | 301 | config CRYPTO_RMD256 |
275 | tristate "RIPEMD-256 digest algorithm" | 302 | tristate "RIPEMD-256 digest algorithm" |
276 | select CRYPTO_ALGAPI | 303 | select CRYPTO_ALGAPI |
277 | help | 304 | help |
278 | RIPEMD-256 is an optional extension of RIPEMD-128 with a 256 bit hash. | 305 | RIPEMD-256 is an optional extension of RIPEMD-128 with a |
279 | It is intended for applications that require longer hash-results, without | 306 | 256 bit hash. It is intended for applications that require |
280 | needing a larger security level (than RIPEMD-128). | 307 | longer hash-results, without needing a larger security level |
308 | (than RIPEMD-128). | ||
281 | 309 | ||
282 | Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. | 310 | Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. |
283 | See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html> | 311 | See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html> |
284 | 312 | ||
285 | config CRYPTO_RMD320 | 313 | config CRYPTO_RMD320 |
286 | tristate "RIPEMD-320 digest algorithm" | 314 | tristate "RIPEMD-320 digest algorithm" |
287 | select CRYPTO_ALGAPI | 315 | select CRYPTO_ALGAPI |
288 | help | 316 | help |
289 | RIPEMD-320 is an optional extension of RIPEMD-160 with a 320 bit hash. | 317 | RIPEMD-320 is an optional extension of RIPEMD-160 with a |
290 | It is intended for applications that require longer hash-results, without | 318 | 320 bit hash. It is intended for applications that require |
291 | needing a larger security level (than RIPEMD-160). | 319 | longer hash-results, without needing a larger security level |
320 | (than RIPEMD-160). | ||
292 | 321 | ||
293 | Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. | 322 | Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel. |
294 | See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html> | 323 | See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html> |
295 | 324 | ||
296 | config CRYPTO_SHA1 | 325 | config CRYPTO_SHA1 |
297 | tristate "SHA1 digest algorithm" | 326 | tristate "SHA1 digest algorithm" |
@@ -308,8 +337,8 @@ config CRYPTO_SHA256 | |||
308 | This version of SHA implements a 256 bit hash with 128 bits of | 337 | This version of SHA implements a 256 bit hash with 128 bits of |
309 | security against collision attacks. | 338 | security against collision attacks. |
310 | 339 | ||
311 | This code also includes SHA-224, a 224 bit hash with 112 bits | 340 | This code also includes SHA-224, a 224 bit hash with 112 bits |
312 | of security against collision attacks. | 341 | of security against collision attacks. |
313 | 342 | ||
314 | config CRYPTO_SHA512 | 343 | config CRYPTO_SHA512 |
315 | tristate "SHA384 and SHA512 digest algorithms" | 344 | tristate "SHA384 and SHA512 digest algorithms" |
@@ -666,6 +695,18 @@ config CRYPTO_LZO | |||
666 | help | 695 | help |
667 | This is the LZO algorithm. | 696 | This is the LZO algorithm. |
668 | 697 | ||
698 | comment "Random Number Generation" | ||
699 | |||
700 | config CRYPTO_ANSI_CPRNG | ||
701 | tristate "Pseudo Random Number Generation for Cryptographic modules" | ||
702 | select CRYPTO_AES | ||
703 | select CRYPTO_RNG | ||
704 | select CRYPTO_FIPS | ||
705 | help | ||
706 | This option enables the generic pseudo random number generator | ||
707 | for cryptographic modules. Uses the Algorithm specified in | ||
708 | ANSI X9.31 A.2.4 | ||
709 | |||
669 | source "drivers/crypto/Kconfig" | 710 | source "drivers/crypto/Kconfig" |
670 | 711 | ||
671 | endif # if CRYPTO | 712 | endif # if CRYPTO |