Root/crypto/Kconfig

1#
2# Generic algorithms support
3#
4config XOR_BLOCKS
5    tristate
6
7#
8# async_tx api: hardware offloaded memory transfer/transform support
9#
10source "crypto/async_tx/Kconfig"
11
12#
13# Cryptographic API Configuration
14#
15menuconfig CRYPTO
16    tristate "Cryptographic API"
17    help
18      This option provides the core Cryptographic API.
19
20if CRYPTO
21
22comment "Crypto core or helper"
23
24config 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
32config CRYPTO_ALGAPI
33    tristate
34    select CRYPTO_ALGAPI2
35    help
36      This option provides the API for cryptographic algorithms.
37
38config CRYPTO_ALGAPI2
39    tristate
40
41config CRYPTO_AEAD
42    tristate
43    select CRYPTO_AEAD2
44    select CRYPTO_ALGAPI
45
46config CRYPTO_AEAD2
47    tristate
48    select CRYPTO_ALGAPI2
49
50config CRYPTO_BLKCIPHER
51    tristate
52    select CRYPTO_BLKCIPHER2
53    select CRYPTO_ALGAPI
54
55config CRYPTO_BLKCIPHER2
56    tristate
57    select CRYPTO_ALGAPI2
58    select CRYPTO_RNG2
59    select CRYPTO_WORKQUEUE
60
61config CRYPTO_HASH
62    tristate
63    select CRYPTO_HASH2
64    select CRYPTO_ALGAPI
65
66config CRYPTO_HASH2
67    tristate
68    select CRYPTO_ALGAPI2
69
70config CRYPTO_RNG
71    tristate
72    select CRYPTO_RNG2
73    select CRYPTO_ALGAPI
74
75config CRYPTO_RNG2
76    tristate
77    select CRYPTO_ALGAPI2
78
79config CRYPTO_PCOMP
80    tristate
81    select CRYPTO_ALGAPI2
82
83config CRYPTO_MANAGER
84    tristate "Cryptographic algorithm manager"
85    select CRYPTO_MANAGER2
86    help
87      Create default cryptographic template instantiations such as
88      cbc(aes).
89
90config CRYPTO_MANAGER2
91    def_tristate CRYPTO_MANAGER || (CRYPTO_MANAGER!=n && CRYPTO_ALGAPI=y)
92    select CRYPTO_AEAD2
93    select CRYPTO_HASH2
94    select CRYPTO_BLKCIPHER2
95    select CRYPTO_PCOMP
96
97config CRYPTO_GF128MUL
98    tristate "GF(2^128) multiplication functions (EXPERIMENTAL)"
99    depends on EXPERIMENTAL
100    help
101      Efficient table driven implementation of multiplications in the
102      field GF(2^128). This is needed by some cypher modes. This
103      option will be selected automatically if you select such a
104      cipher mode. Only select this option by hand if you expect to load
105      an external module that requires these functions.
106
107config CRYPTO_NULL
108    tristate "Null algorithms"
109    select CRYPTO_ALGAPI
110    select CRYPTO_BLKCIPHER
111    select CRYPTO_HASH
112    help
113      These are 'Null' algorithms, used by IPsec, which do nothing.
114
115config CRYPTO_WORKQUEUE
116       tristate
117
118config CRYPTO_CRYPTD
119    tristate "Software async crypto daemon"
120    select CRYPTO_BLKCIPHER
121    select CRYPTO_HASH
122    select CRYPTO_MANAGER
123    select CRYPTO_WORKQUEUE
124    help
125      This is a generic software asynchronous crypto daemon that
126      converts an arbitrary synchronous software crypto algorithm
127      into an asynchronous algorithm that executes in a kernel thread.
128
129config CRYPTO_AUTHENC
130    tristate "Authenc support"
131    select CRYPTO_AEAD
132    select CRYPTO_BLKCIPHER
133    select CRYPTO_MANAGER
134    select CRYPTO_HASH
135    help
136      Authenc: Combined mode wrapper for IPsec.
137      This is required for IPSec.
138
139config CRYPTO_TEST
140    tristate "Testing module"
141    depends on m
142    select CRYPTO_MANAGER
143    help
144      Quick & dirty crypto test module.
145
146comment "Authenticated Encryption with Associated Data"
147
148config CRYPTO_CCM
149    tristate "CCM support"
150    select CRYPTO_CTR
151    select CRYPTO_AEAD
152    help
153      Support for Counter with CBC MAC. Required for IPsec.
154
155config CRYPTO_GCM
156    tristate "GCM/GMAC support"
157    select CRYPTO_CTR
158    select CRYPTO_AEAD
159    select CRYPTO_GF128MUL
160    help
161      Support for Galois/Counter Mode (GCM) and Galois Message
162      Authentication Code (GMAC). Required for IPSec.
163
164config CRYPTO_SEQIV
165    tristate "Sequence Number IV Generator"
166    select CRYPTO_AEAD
167    select CRYPTO_BLKCIPHER
168    select CRYPTO_RNG
169    help
170      This IV generator generates an IV based on a sequence number by
171      xoring it with a salt. This algorithm is mainly useful for CTR
172
173comment "Block modes"
174
175config CRYPTO_CBC
176    tristate "CBC support"
177    select CRYPTO_BLKCIPHER
178    select CRYPTO_MANAGER
179    help
180      CBC: Cipher Block Chaining mode
181      This block cipher algorithm is required for IPSec.
182
183config CRYPTO_CTR
184    tristate "CTR support"
185    select CRYPTO_BLKCIPHER
186    select CRYPTO_SEQIV
187    select CRYPTO_MANAGER
188    help
189      CTR: Counter mode
190      This block cipher algorithm is required for IPSec.
191
192config CRYPTO_CTS
193    tristate "CTS support"
194    select CRYPTO_BLKCIPHER
195    help
196      CTS: Cipher Text Stealing
197      This is the Cipher Text Stealing mode as described by
198      Section 8 of rfc2040 and referenced by rfc3962.
199      (rfc3962 includes errata information in its Appendix A)
200      This mode is required for Kerberos gss mechanism support
201      for AES encryption.
202
203config CRYPTO_ECB
204    tristate "ECB support"
205    select CRYPTO_BLKCIPHER
206    select CRYPTO_MANAGER
207    help
208      ECB: Electronic CodeBook mode
209      This is the simplest block cipher algorithm. It simply encrypts
210      the input block by block.
211
212config CRYPTO_LRW
213    tristate "LRW support (EXPERIMENTAL)"
214    depends on EXPERIMENTAL
215    select CRYPTO_BLKCIPHER
216    select CRYPTO_MANAGER
217    select CRYPTO_GF128MUL
218    help
219      LRW: Liskov Rivest Wagner, a tweakable, non malleable, non movable
220      narrow block cipher mode for dm-crypt. Use it with cipher
221      specification string aes-lrw-benbi, the key must be 256, 320 or 384.
222      The first 128, 192 or 256 bits in the key are used for AES and the
223      rest is used to tie each cipher block to its logical position.
224
225config CRYPTO_PCBC
226    tristate "PCBC support"
227    select CRYPTO_BLKCIPHER
228    select CRYPTO_MANAGER
229    help
230      PCBC: Propagating Cipher Block Chaining mode
231      This block cipher algorithm is required for RxRPC.
232
233config CRYPTO_XTS
234    tristate "XTS support (EXPERIMENTAL)"
235    depends on EXPERIMENTAL
236    select CRYPTO_BLKCIPHER
237    select CRYPTO_MANAGER
238    select CRYPTO_GF128MUL
239    help
240      XTS: IEEE1619/D16 narrow block cipher use with aes-xts-plain,
241      key size 256, 384 or 512 bits. This implementation currently
242      can't handle a sectorsize which is not a multiple of 16 bytes.
243
244config CRYPTO_FPU
245    tristate
246    select CRYPTO_BLKCIPHER
247    select CRYPTO_MANAGER
248
249comment "Hash modes"
250
251config CRYPTO_HMAC
252    tristate "HMAC support"
253    select CRYPTO_HASH
254    select CRYPTO_MANAGER
255    help
256      HMAC: Keyed-Hashing for Message Authentication (RFC2104).
257      This is required for IPSec.
258
259config CRYPTO_XCBC
260    tristate "XCBC support"
261    depends on EXPERIMENTAL
262    select CRYPTO_HASH
263    select CRYPTO_MANAGER
264    help
265      XCBC: Keyed-Hashing with encryption algorithm
266        http://www.ietf.org/rfc/rfc3566.txt
267        http://csrc.nist.gov/encryption/modes/proposedmodes/
268         xcbc-mac/xcbc-mac-spec.pdf
269
270comment "Digest"
271
272config CRYPTO_CRC32C
273    tristate "CRC32c CRC algorithm"
274    select CRYPTO_HASH
275    help
276      Castagnoli, et al Cyclic Redundancy-Check Algorithm. Used
277      by iSCSI for header and data digests and by others.
278      See Castagnoli93. Module will be crc32c.
279
280config CRYPTO_CRC32C_INTEL
281    tristate "CRC32c INTEL hardware acceleration"
282    depends on X86
283    select CRYPTO_HASH
284    help
285      In Intel processor with SSE4.2 supported, the processor will
286      support CRC32C implementation using hardware accelerated CRC32
287      instruction. This option will create 'crc32c-intel' module,
288      which will enable any routine to use the CRC32 instruction to
289      gain performance compared with software implementation.
290      Module will be crc32c-intel.
291
292config CRYPTO_MD4
293    tristate "MD4 digest algorithm"
294    select CRYPTO_HASH
295    help
296      MD4 message digest algorithm (RFC1320).
297
298config CRYPTO_MD5
299    tristate "MD5 digest algorithm"
300    select CRYPTO_HASH
301    help
302      MD5 message digest algorithm (RFC1321).
303
304config CRYPTO_MICHAEL_MIC
305    tristate "Michael MIC keyed digest algorithm"
306    select CRYPTO_HASH
307    help
308      Michael MIC is used for message integrity protection in TKIP
309      (IEEE 802.11i). This algorithm is required for TKIP, but it
310      should not be used for other purposes because of the weakness
311      of the algorithm.
312
313config CRYPTO_RMD128
314    tristate "RIPEMD-128 digest algorithm"
315    select CRYPTO_HASH
316    help
317      RIPEMD-128 (ISO/IEC 10118-3:2004).
318
319      RIPEMD-128 is a 128-bit cryptographic hash function. It should only
320      to be used as a secure replacement for RIPEMD. For other use cases
321      RIPEMD-160 should be used.
322
323      Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel.
324      See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html>
325
326config CRYPTO_RMD160
327    tristate "RIPEMD-160 digest algorithm"
328    select CRYPTO_HASH
329    help
330      RIPEMD-160 (ISO/IEC 10118-3:2004).
331
332      RIPEMD-160 is a 160-bit cryptographic hash function. It is intended
333      to be used as a secure replacement for the 128-bit hash functions
334      MD4, MD5 and it's predecessor RIPEMD
335      (not to be confused with RIPEMD-128).
336
337      It's speed is comparable to SHA1 and there are no known attacks
338      against RIPEMD-160.
339
340      Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel.
341      See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html>
342
343config CRYPTO_RMD256
344    tristate "RIPEMD-256 digest algorithm"
345    select CRYPTO_HASH
346    help
347      RIPEMD-256 is an optional extension of RIPEMD-128 with a
348      256 bit hash. It is intended for applications that require
349      longer hash-results, without needing a larger security level
350      (than RIPEMD-128).
351
352      Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel.
353      See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html>
354
355config CRYPTO_RMD320
356    tristate "RIPEMD-320 digest algorithm"
357    select CRYPTO_HASH
358    help
359      RIPEMD-320 is an optional extension of RIPEMD-160 with a
360      320 bit hash. It is intended for applications that require
361      longer hash-results, without needing a larger security level
362      (than RIPEMD-160).
363
364      Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel.
365      See <http://home.esat.kuleuven.be/~bosselae/ripemd160.html>
366
367config CRYPTO_SHA1
368    tristate "SHA1 digest algorithm"
369    select CRYPTO_HASH
370    help
371      SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
372
373config CRYPTO_SHA256
374    tristate "SHA224 and SHA256 digest algorithm"
375    select CRYPTO_HASH
376    help
377      SHA256 secure hash standard (DFIPS 180-2).
378
379      This version of SHA implements a 256 bit hash with 128 bits of
380      security against collision attacks.
381
382      This code also includes SHA-224, a 224 bit hash with 112 bits
383      of security against collision attacks.
384
385config CRYPTO_SHA512
386    tristate "SHA384 and SHA512 digest algorithms"
387    select CRYPTO_HASH
388    help
389      SHA512 secure hash standard (DFIPS 180-2).
390
391      This version of SHA implements a 512 bit hash with 256 bits of
392      security against collision attacks.
393
394      This code also includes SHA-384, a 384 bit hash with 192 bits
395      of security against collision attacks.
396
397config CRYPTO_TGR192
398    tristate "Tiger digest algorithms"
399    select CRYPTO_HASH
400    help
401      Tiger hash algorithm 192, 160 and 128-bit hashes
402
403      Tiger is a hash function optimized for 64-bit processors while
404      still having decent performance on 32-bit processors.
405      Tiger was developed by Ross Anderson and Eli Biham.
406
407      See also:
408      <http://www.cs.technion.ac.il/~biham/Reports/Tiger/>.
409
410config CRYPTO_WP512
411    tristate "Whirlpool digest algorithms"
412    select CRYPTO_HASH
413    help
414      Whirlpool hash algorithm 512, 384 and 256-bit hashes
415
416      Whirlpool-512 is part of the NESSIE cryptographic primitives.
417      Whirlpool will be part of the ISO/IEC 10118-3:2003(E) standard
418
419      See also:
420      <http://planeta.terra.com.br/informatica/paulobarreto/WhirlpoolPage.html>
421
422comment "Ciphers"
423
424config CRYPTO_AES
425    tristate "AES cipher algorithms"
426    select CRYPTO_ALGAPI
427    help
428      AES cipher algorithms (FIPS-197). AES uses the Rijndael
429      algorithm.
430
431      Rijndael appears to be consistently a very good performer in
432      both hardware and software across a wide range of computing
433      environments regardless of its use in feedback or non-feedback
434      modes. Its key setup time is excellent, and its key agility is
435      good. Rijndael's very low memory requirements make it very well
436      suited for restricted-space environments, in which it also
437      demonstrates excellent performance. Rijndael's operations are
438      among the easiest to defend against power and timing attacks.
439
440      The AES specifies three key sizes: 128, 192 and 256 bits
441
442      See <http://csrc.nist.gov/CryptoToolkit/aes/> for more information.
443
444config CRYPTO_AES_586
445    tristate "AES cipher algorithms (i586)"
446    depends on (X86 || UML_X86) && !64BIT
447    select CRYPTO_ALGAPI
448    select CRYPTO_AES
449    help
450      AES cipher algorithms (FIPS-197). AES uses the Rijndael
451      algorithm.
452
453      Rijndael appears to be consistently a very good performer in
454      both hardware and software across a wide range of computing
455      environments regardless of its use in feedback or non-feedback
456      modes. Its key setup time is excellent, and its key agility is
457      good. Rijndael's very low memory requirements make it very well
458      suited for restricted-space environments, in which it also
459      demonstrates excellent performance. Rijndael's operations are
460      among the easiest to defend against power and timing attacks.
461
462      The AES specifies three key sizes: 128, 192 and 256 bits
463
464      See <http://csrc.nist.gov/encryption/aes/> for more information.
465
466config CRYPTO_AES_X86_64
467    tristate "AES cipher algorithms (x86_64)"
468    depends on (X86 || UML_X86) && 64BIT
469    select CRYPTO_ALGAPI
470    select CRYPTO_AES
471    help
472      AES cipher algorithms (FIPS-197). AES uses the Rijndael
473      algorithm.
474
475      Rijndael appears to be consistently a very good performer in
476      both hardware and software across a wide range of computing
477      environments regardless of its use in feedback or non-feedback
478      modes. Its key setup time is excellent, and its key agility is
479      good. Rijndael's very low memory requirements make it very well
480      suited for restricted-space environments, in which it also
481      demonstrates excellent performance. Rijndael's operations are
482      among the easiest to defend against power and timing attacks.
483
484      The AES specifies three key sizes: 128, 192 and 256 bits
485
486      See <http://csrc.nist.gov/encryption/aes/> for more information.
487
488config CRYPTO_AES_NI_INTEL
489    tristate "AES cipher algorithms (AES-NI)"
490    depends on (X86 || UML_X86) && 64BIT
491    select CRYPTO_AES_X86_64
492    select CRYPTO_CRYPTD
493    select CRYPTO_ALGAPI
494    select CRYPTO_FPU
495    help
496      Use Intel AES-NI instructions for AES algorithm.
497
498      AES cipher algorithms (FIPS-197). AES uses the Rijndael
499      algorithm.
500
501      Rijndael appears to be consistently a very good performer in
502      both hardware and software across a wide range of computing
503      environments regardless of its use in feedback or non-feedback
504      modes. Its key setup time is excellent, and its key agility is
505      good. Rijndael's very low memory requirements make it very well
506      suited for restricted-space environments, in which it also
507      demonstrates excellent performance. Rijndael's operations are
508      among the easiest to defend against power and timing attacks.
509
510      The AES specifies three key sizes: 128, 192 and 256 bits
511
512      See <http://csrc.nist.gov/encryption/aes/> for more information.
513
514      In addition to AES cipher algorithm support, the
515      acceleration for some popular block cipher mode is supported
516      too, including ECB, CBC, CTR, LRW, PCBC, XTS.
517
518config CRYPTO_ANUBIS
519    tristate "Anubis cipher algorithm"
520    select CRYPTO_ALGAPI
521    help
522      Anubis cipher algorithm.
523
524      Anubis is a variable key length cipher which can use keys from
525      128 bits to 320 bits in length. It was evaluated as a entrant
526      in the NESSIE competition.
527
528      See also:
529      <https://www.cosic.esat.kuleuven.ac.be/nessie/reports/>
530      <http://planeta.terra.com.br/informatica/paulobarreto/AnubisPage.html>
531
532config CRYPTO_ARC4
533    tristate "ARC4 cipher algorithm"
534    select CRYPTO_ALGAPI
535    help
536      ARC4 cipher algorithm.
537
538      ARC4 is a stream cipher using keys ranging from 8 bits to 2048
539      bits in length. This algorithm is required for driver-based
540      WEP, but it should not be for other purposes because of the
541      weakness of the algorithm.
542
543config CRYPTO_BLOWFISH
544    tristate "Blowfish cipher algorithm"
545    select CRYPTO_ALGAPI
546    help
547      Blowfish cipher algorithm, by Bruce Schneier.
548
549      This is a variable key length cipher which can use keys from 32
550      bits to 448 bits in length. It's fast, simple and specifically
551      designed for use on "large microprocessors".
552
553      See also:
554      <http://www.schneier.com/blowfish.html>
555
556config CRYPTO_CAMELLIA
557    tristate "Camellia cipher algorithms"
558    depends on CRYPTO
559    select CRYPTO_ALGAPI
560    help
561      Camellia cipher algorithms module.
562
563      Camellia is a symmetric key block cipher developed jointly
564      at NTT and Mitsubishi Electric Corporation.
565
566      The Camellia specifies three key sizes: 128, 192 and 256 bits.
567
568      See also:
569      <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
570
571config CRYPTO_CAST5
572    tristate "CAST5 (CAST-128) cipher algorithm"
573    select CRYPTO_ALGAPI
574    help
575      The CAST5 encryption algorithm (synonymous with CAST-128) is
576      described in RFC2144.
577
578config CRYPTO_CAST6
579    tristate "CAST6 (CAST-256) cipher algorithm"
580    select CRYPTO_ALGAPI
581    help
582      The CAST6 encryption algorithm (synonymous with CAST-256) is
583      described in RFC2612.
584
585config CRYPTO_DES
586    tristate "DES and Triple DES EDE cipher algorithms"
587    select CRYPTO_ALGAPI
588    help
589      DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
590
591config CRYPTO_FCRYPT
592    tristate "FCrypt cipher algorithm"
593    select CRYPTO_ALGAPI
594    select CRYPTO_BLKCIPHER
595    help
596      FCrypt algorithm used by RxRPC.
597
598config CRYPTO_KHAZAD
599    tristate "Khazad cipher algorithm"
600    select CRYPTO_ALGAPI
601    help
602      Khazad cipher algorithm.
603
604      Khazad was a finalist in the initial NESSIE competition. It is
605      an algorithm optimized for 64-bit processors with good performance
606      on 32-bit processors. Khazad uses an 128 bit key size.
607
608      See also:
609      <http://planeta.terra.com.br/informatica/paulobarreto/KhazadPage.html>
610
611config CRYPTO_SALSA20
612    tristate "Salsa20 stream cipher algorithm (EXPERIMENTAL)"
613    depends on EXPERIMENTAL
614    select CRYPTO_BLKCIPHER
615    help
616      Salsa20 stream cipher algorithm.
617
618      Salsa20 is a stream cipher submitted to eSTREAM, the ECRYPT
619      Stream Cipher Project. See <http://www.ecrypt.eu.org/stream/>
620
621      The Salsa20 stream cipher algorithm is designed by Daniel J.
622      Bernstein <djb@cr.yp.to>. See <http://cr.yp.to/snuffle.html>
623
624config CRYPTO_SALSA20_586
625    tristate "Salsa20 stream cipher algorithm (i586) (EXPERIMENTAL)"
626    depends on (X86 || UML_X86) && !64BIT
627    depends on EXPERIMENTAL
628    select CRYPTO_BLKCIPHER
629    help
630      Salsa20 stream cipher algorithm.
631
632      Salsa20 is a stream cipher submitted to eSTREAM, the ECRYPT
633      Stream Cipher Project. See <http://www.ecrypt.eu.org/stream/>
634
635      The Salsa20 stream cipher algorithm is designed by Daniel J.
636      Bernstein <djb@cr.yp.to>. See <http://cr.yp.to/snuffle.html>
637
638config CRYPTO_SALSA20_X86_64
639    tristate "Salsa20 stream cipher algorithm (x86_64) (EXPERIMENTAL)"
640    depends on (X86 || UML_X86) && 64BIT
641    depends on EXPERIMENTAL
642    select CRYPTO_BLKCIPHER
643    help
644      Salsa20 stream cipher algorithm.
645
646      Salsa20 is a stream cipher submitted to eSTREAM, the ECRYPT
647      Stream Cipher Project. See <http://www.ecrypt.eu.org/stream/>
648
649      The Salsa20 stream cipher algorithm is designed by Daniel J.
650      Bernstein <djb@cr.yp.to>. See <http://cr.yp.to/snuffle.html>
651
652config CRYPTO_SEED
653    tristate "SEED cipher algorithm"
654    select CRYPTO_ALGAPI
655    help
656      SEED cipher algorithm (RFC4269).
657
658      SEED is a 128-bit symmetric key block cipher that has been
659      developed by KISA (Korea Information Security Agency) as a
660      national standard encryption algorithm of the Republic of Korea.
661      It is a 16 round block cipher with the key size of 128 bit.
662
663      See also:
664      <http://www.kisa.or.kr/kisa/seed/jsp/seed_eng.jsp>
665
666config CRYPTO_SERPENT
667    tristate "Serpent cipher algorithm"
668    select CRYPTO_ALGAPI
669    help
670      Serpent cipher algorithm, by Anderson, Biham & Knudsen.
671
672      Keys are allowed to be from 0 to 256 bits in length, in steps
673      of 8 bits. Also includes the 'Tnepres' algorithm, a reversed
674      variant of Serpent for compatibility with old kerneli.org code.
675
676      See also:
677      <http://www.cl.cam.ac.uk/~rja14/serpent.html>
678
679config CRYPTO_TEA
680    tristate "TEA, XTEA and XETA cipher algorithms"
681    select CRYPTO_ALGAPI
682    help
683      TEA cipher algorithm.
684
685      Tiny Encryption Algorithm is a simple cipher that uses
686      many rounds for security. It is very fast and uses
687      little memory.
688
689      Xtendend Tiny Encryption Algorithm is a modification to
690      the TEA algorithm to address a potential key weakness
691      in the TEA algorithm.
692
693      Xtendend Encryption Tiny Algorithm is a mis-implementation
694      of the XTEA algorithm for compatibility purposes.
695
696config CRYPTO_TWOFISH
697    tristate "Twofish cipher algorithm"
698    select CRYPTO_ALGAPI
699    select CRYPTO_TWOFISH_COMMON
700    help
701      Twofish cipher algorithm.
702
703      Twofish was submitted as an AES (Advanced Encryption Standard)
704      candidate cipher by researchers at CounterPane Systems. It is a
705      16 round block cipher supporting key sizes of 128, 192, and 256
706      bits.
707
708      See also:
709      <http://www.schneier.com/twofish.html>
710
711config CRYPTO_TWOFISH_COMMON
712    tristate
713    help
714      Common parts of the Twofish cipher algorithm shared by the
715      generic c and the assembler implementations.
716
717config CRYPTO_TWOFISH_586
718    tristate "Twofish cipher algorithms (i586)"
719    depends on (X86 || UML_X86) && !64BIT
720    select CRYPTO_ALGAPI
721    select CRYPTO_TWOFISH_COMMON
722    help
723      Twofish cipher algorithm.
724
725      Twofish was submitted as an AES (Advanced Encryption Standard)
726      candidate cipher by researchers at CounterPane Systems. It is a
727      16 round block cipher supporting key sizes of 128, 192, and 256
728      bits.
729
730      See also:
731      <http://www.schneier.com/twofish.html>
732
733config CRYPTO_TWOFISH_X86_64
734    tristate "Twofish cipher algorithm (x86_64)"
735    depends on (X86 || UML_X86) && 64BIT
736    select CRYPTO_ALGAPI
737    select CRYPTO_TWOFISH_COMMON
738    help
739      Twofish cipher algorithm (x86_64).
740
741      Twofish was submitted as an AES (Advanced Encryption Standard)
742      candidate cipher by researchers at CounterPane Systems. It is a
743      16 round block cipher supporting key sizes of 128, 192, and 256
744      bits.
745
746      See also:
747      <http://www.schneier.com/twofish.html>
748
749comment "Compression"
750
751config CRYPTO_DEFLATE
752    tristate "Deflate compression algorithm"
753    select CRYPTO_ALGAPI
754    select ZLIB_INFLATE
755    select ZLIB_DEFLATE
756    help
757      This is the Deflate algorithm (RFC1951), specified for use in
758      IPSec with the IPCOMP protocol (RFC3173, RFC2394).
759
760      You will most probably want this if using IPSec.
761
762config CRYPTO_ZLIB
763    tristate "Zlib compression algorithm"
764    select CRYPTO_PCOMP
765    select ZLIB_INFLATE
766    select ZLIB_DEFLATE
767    select NLATTR
768    help
769      This is the zlib algorithm.
770
771config CRYPTO_UNLZMA
772    tristate "LZMA decompression"
773    select CRYPTO_PCOMP
774    help
775      This is the lzma decompression module.
776
777config CRYPTO_LZO
778    tristate "LZO compression algorithm"
779    select CRYPTO_ALGAPI
780    select LZO_COMPRESS
781    select LZO_DECOMPRESS
782    help
783      This is the LZO algorithm.
784
785comment "Random Number Generation"
786
787config CRYPTO_ANSI_CPRNG
788    tristate "Pseudo Random Number Generation for Cryptographic modules"
789    select CRYPTO_AES
790    select CRYPTO_RNG
791    select CRYPTO_FIPS
792    help
793      This option enables the generic pseudo random number generator
794      for cryptographic modules. Uses the Algorithm specified in
795      ANSI X9.31 A.2.4
796
797source "drivers/crypto/Kconfig"
798
799endif # if CRYPTO
800

Archive Download this file



interactive