~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/crypto/Kconfig

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /crypto/Kconfig (Version linux-6.12-rc7) and /crypto/Kconfig (Version linux-5.18.19)


  1 # SPDX-License-Identifier: GPL-2.0                  1 # SPDX-License-Identifier: GPL-2.0
  2 #                                                   2 #
  3 # Generic algorithms support                        3 # Generic algorithms support
  4 #                                                   4 #
  5 config XOR_BLOCKS                                   5 config XOR_BLOCKS
  6         tristate                                    6         tristate
  7                                                     7 
  8 #                                                   8 #
  9 # async_tx api: hardware offloaded memory tran      9 # async_tx api: hardware offloaded memory transfer/transform support
 10 #                                                  10 #
 11 source "crypto/async_tx/Kconfig"                   11 source "crypto/async_tx/Kconfig"
 12                                                    12 
 13 #                                                  13 #
 14 # Cryptographic API Configuration                  14 # Cryptographic API Configuration
 15 #                                                  15 #
 16 menuconfig CRYPTO                                  16 menuconfig CRYPTO
 17         tristate "Cryptographic API"               17         tristate "Cryptographic API"
 18         select CRYPTO_LIB_UTILS                !!  18         select LIB_MEMNEQ
 19         help                                       19         help
 20           This option provides the core Crypto     20           This option provides the core Cryptographic API.
 21                                                    21 
 22 if CRYPTO                                          22 if CRYPTO
 23                                                    23 
 24 menu "Crypto core or helper"                   !!  24 comment "Crypto core or helper"
 25                                                    25 
 26 config CRYPTO_FIPS                                 26 config CRYPTO_FIPS
 27         bool "FIPS 200 compliance"                 27         bool "FIPS 200 compliance"
 28         depends on (CRYPTO_ANSI_CPRNG || CRYPT     28         depends on (CRYPTO_ANSI_CPRNG || CRYPTO_DRBG) && !CRYPTO_MANAGER_DISABLE_TESTS
 29         depends on (MODULE_SIG || !MODULES)        29         depends on (MODULE_SIG || !MODULES)
 30         help                                       30         help
 31           This option enables the fips boot op     31           This option enables the fips boot option which is
 32           required if you want the system to o     32           required if you want the system to operate in a FIPS 200
 33           certification.  You should say no un     33           certification.  You should say no unless you know what
 34           this is.                                 34           this is.
 35                                                    35 
 36 config CRYPTO_FIPS_NAME                        << 
 37         string "FIPS Module Name"              << 
 38         default "Linux Kernel Cryptographic AP << 
 39         depends on CRYPTO_FIPS                 << 
 40         help                                   << 
 41           This option sets the FIPS Module nam << 
 42           the /proc/sys/crypto/fips_name file. << 
 43                                                << 
 44 config CRYPTO_FIPS_CUSTOM_VERSION              << 
 45         bool "Use Custom FIPS Module Version"  << 
 46         depends on CRYPTO_FIPS                 << 
 47         default n                              << 
 48                                                << 
 49 config CRYPTO_FIPS_VERSION                     << 
 50         string "FIPS Module Version"           << 
 51         default "(none)"                       << 
 52         depends on CRYPTO_FIPS_CUSTOM_VERSION  << 
 53         help                                   << 
 54           This option provides the ability to  << 
 55           By default the KERNELRELEASE value i << 
 56                                                << 
 57 config CRYPTO_ALGAPI                               36 config CRYPTO_ALGAPI
 58         tristate                                   37         tristate
 59         select CRYPTO_ALGAPI2                      38         select CRYPTO_ALGAPI2
 60         help                                       39         help
 61           This option provides the API for cry     40           This option provides the API for cryptographic algorithms.
 62                                                    41 
 63 config CRYPTO_ALGAPI2                              42 config CRYPTO_ALGAPI2
 64         tristate                                   43         tristate
 65                                                    44 
 66 config CRYPTO_AEAD                                 45 config CRYPTO_AEAD
 67         tristate                                   46         tristate
 68         select CRYPTO_AEAD2                        47         select CRYPTO_AEAD2
 69         select CRYPTO_ALGAPI                       48         select CRYPTO_ALGAPI
 70                                                    49 
 71 config CRYPTO_AEAD2                                50 config CRYPTO_AEAD2
 72         tristate                                   51         tristate
 73         select CRYPTO_ALGAPI2                      52         select CRYPTO_ALGAPI2
 74                                                !!  53         select CRYPTO_NULL2
 75 config CRYPTO_SIG                              !!  54         select CRYPTO_RNG2
 76         tristate                               << 
 77         select CRYPTO_SIG2                     << 
 78         select CRYPTO_ALGAPI                   << 
 79                                                << 
 80 config CRYPTO_SIG2                             << 
 81         tristate                               << 
 82         select CRYPTO_ALGAPI2                  << 
 83                                                    55 
 84 config CRYPTO_SKCIPHER                             56 config CRYPTO_SKCIPHER
 85         tristate                                   57         tristate
 86         select CRYPTO_SKCIPHER2                    58         select CRYPTO_SKCIPHER2
 87         select CRYPTO_ALGAPI                       59         select CRYPTO_ALGAPI
 88         select CRYPTO_ECB                      << 
 89                                                    60 
 90 config CRYPTO_SKCIPHER2                            61 config CRYPTO_SKCIPHER2
 91         tristate                                   62         tristate
 92         select CRYPTO_ALGAPI2                      63         select CRYPTO_ALGAPI2
                                                   >>  64         select CRYPTO_RNG2
 93                                                    65 
 94 config CRYPTO_HASH                                 66 config CRYPTO_HASH
 95         tristate                                   67         tristate
 96         select CRYPTO_HASH2                        68         select CRYPTO_HASH2
 97         select CRYPTO_ALGAPI                       69         select CRYPTO_ALGAPI
 98                                                    70 
 99 config CRYPTO_HASH2                                71 config CRYPTO_HASH2
100         tristate                                   72         tristate
101         select CRYPTO_ALGAPI2                      73         select CRYPTO_ALGAPI2
102                                                    74 
103 config CRYPTO_RNG                                  75 config CRYPTO_RNG
104         tristate                                   76         tristate
105         select CRYPTO_RNG2                         77         select CRYPTO_RNG2
106         select CRYPTO_ALGAPI                       78         select CRYPTO_ALGAPI
107                                                    79 
108 config CRYPTO_RNG2                                 80 config CRYPTO_RNG2
109         tristate                                   81         tristate
110         select CRYPTO_ALGAPI2                      82         select CRYPTO_ALGAPI2
111                                                    83 
112 config CRYPTO_RNG_DEFAULT                          84 config CRYPTO_RNG_DEFAULT
113         tristate                                   85         tristate
114         select CRYPTO_DRBG_MENU                    86         select CRYPTO_DRBG_MENU
115                                                    87 
116 config CRYPTO_AKCIPHER2                            88 config CRYPTO_AKCIPHER2
117         tristate                                   89         tristate
118         select CRYPTO_ALGAPI2                      90         select CRYPTO_ALGAPI2
119                                                    91 
120 config CRYPTO_AKCIPHER                             92 config CRYPTO_AKCIPHER
121         tristate                                   93         tristate
122         select CRYPTO_AKCIPHER2                    94         select CRYPTO_AKCIPHER2
123         select CRYPTO_ALGAPI                       95         select CRYPTO_ALGAPI
124                                                    96 
125 config CRYPTO_KPP2                                 97 config CRYPTO_KPP2
126         tristate                                   98         tristate
127         select CRYPTO_ALGAPI2                      99         select CRYPTO_ALGAPI2
128                                                   100 
129 config CRYPTO_KPP                                 101 config CRYPTO_KPP
130         tristate                                  102         tristate
131         select CRYPTO_ALGAPI                      103         select CRYPTO_ALGAPI
132         select CRYPTO_KPP2                        104         select CRYPTO_KPP2
133                                                   105 
134 config CRYPTO_ACOMP2                              106 config CRYPTO_ACOMP2
135         tristate                                  107         tristate
136         select CRYPTO_ALGAPI2                     108         select CRYPTO_ALGAPI2
137         select SGL_ALLOC                          109         select SGL_ALLOC
138                                                   110 
139 config CRYPTO_ACOMP                               111 config CRYPTO_ACOMP
140         tristate                                  112         tristate
141         select CRYPTO_ALGAPI                      113         select CRYPTO_ALGAPI
142         select CRYPTO_ACOMP2                      114         select CRYPTO_ACOMP2
143                                                   115 
144 config CRYPTO_MANAGER                             116 config CRYPTO_MANAGER
145         tristate "Cryptographic algorithm mana    117         tristate "Cryptographic algorithm manager"
146         select CRYPTO_MANAGER2                    118         select CRYPTO_MANAGER2
147         help                                      119         help
148           Create default cryptographic templat    120           Create default cryptographic template instantiations such as
149           cbc(aes).                               121           cbc(aes).
150                                                   122 
151 config CRYPTO_MANAGER2                            123 config CRYPTO_MANAGER2
152         def_tristate CRYPTO_MANAGER || (CRYPTO    124         def_tristate CRYPTO_MANAGER || (CRYPTO_MANAGER!=n && CRYPTO_ALGAPI=y)
153         select CRYPTO_ACOMP2                   << 
154         select CRYPTO_AEAD2                       125         select CRYPTO_AEAD2
155         select CRYPTO_AKCIPHER2                << 
156         select CRYPTO_SIG2                     << 
157         select CRYPTO_HASH2                       126         select CRYPTO_HASH2
158         select CRYPTO_KPP2                     << 
159         select CRYPTO_RNG2                     << 
160         select CRYPTO_SKCIPHER2                   127         select CRYPTO_SKCIPHER2
                                                   >> 128         select CRYPTO_AKCIPHER2
                                                   >> 129         select CRYPTO_KPP2
                                                   >> 130         select CRYPTO_ACOMP2
161                                                   131 
162 config CRYPTO_USER                                132 config CRYPTO_USER
163         tristate "Userspace cryptographic algo    133         tristate "Userspace cryptographic algorithm configuration"
164         depends on NET                            134         depends on NET
165         select CRYPTO_MANAGER                     135         select CRYPTO_MANAGER
166         help                                      136         help
167           Userspace configuration for cryptogr    137           Userspace configuration for cryptographic instantiations such as
168           cbc(aes).                               138           cbc(aes).
169                                                   139 
170 config CRYPTO_MANAGER_DISABLE_TESTS               140 config CRYPTO_MANAGER_DISABLE_TESTS
171         bool "Disable run-time self tests"        141         bool "Disable run-time self tests"
172         default y                                 142         default y
173         help                                      143         help
174           Disable run-time self tests that nor    144           Disable run-time self tests that normally take place at
175           algorithm registration.                 145           algorithm registration.
176                                                   146 
177 config CRYPTO_MANAGER_EXTRA_TESTS                 147 config CRYPTO_MANAGER_EXTRA_TESTS
178         bool "Enable extra run-time crypto sel    148         bool "Enable extra run-time crypto self tests"
179         depends on DEBUG_KERNEL && !CRYPTO_MAN    149         depends on DEBUG_KERNEL && !CRYPTO_MANAGER_DISABLE_TESTS && CRYPTO_MANAGER
180         help                                      150         help
181           Enable extra run-time self tests of     151           Enable extra run-time self tests of registered crypto algorithms,
182           including randomized fuzz tests.        152           including randomized fuzz tests.
183                                                   153 
184           This is intended for developer use o    154           This is intended for developer use only, as these tests take much
185           longer to run than the normal self t    155           longer to run than the normal self tests.
186                                                   156 
                                                   >> 157 config CRYPTO_GF128MUL
                                                   >> 158         tristate
                                                   >> 159 
187 config CRYPTO_NULL                                160 config CRYPTO_NULL
188         tristate "Null algorithms"                161         tristate "Null algorithms"
189         select CRYPTO_NULL2                       162         select CRYPTO_NULL2
190         help                                      163         help
191           These are 'Null' algorithms, used by    164           These are 'Null' algorithms, used by IPsec, which do nothing.
192                                                   165 
193 config CRYPTO_NULL2                               166 config CRYPTO_NULL2
194         tristate                                  167         tristate
195         select CRYPTO_ALGAPI2                     168         select CRYPTO_ALGAPI2
196         select CRYPTO_SKCIPHER2                   169         select CRYPTO_SKCIPHER2
197         select CRYPTO_HASH2                       170         select CRYPTO_HASH2
198                                                   171 
199 config CRYPTO_PCRYPT                              172 config CRYPTO_PCRYPT
200         tristate "Parallel crypto engine"         173         tristate "Parallel crypto engine"
201         depends on SMP                            174         depends on SMP
202         select PADATA                             175         select PADATA
203         select CRYPTO_MANAGER                     176         select CRYPTO_MANAGER
204         select CRYPTO_AEAD                        177         select CRYPTO_AEAD
205         help                                      178         help
206           This converts an arbitrary crypto al    179           This converts an arbitrary crypto algorithm into a parallel
207           algorithm that executes in kernel th    180           algorithm that executes in kernel threads.
208                                                   181 
209 config CRYPTO_CRYPTD                              182 config CRYPTO_CRYPTD
210         tristate "Software async crypto daemon    183         tristate "Software async crypto daemon"
211         select CRYPTO_SKCIPHER                    184         select CRYPTO_SKCIPHER
212         select CRYPTO_HASH                        185         select CRYPTO_HASH
213         select CRYPTO_MANAGER                     186         select CRYPTO_MANAGER
214         help                                      187         help
215           This is a generic software asynchron    188           This is a generic software asynchronous crypto daemon that
216           converts an arbitrary synchronous so    189           converts an arbitrary synchronous software crypto algorithm
217           into an asynchronous algorithm that     190           into an asynchronous algorithm that executes in a kernel thread.
218                                                   191 
219 config CRYPTO_AUTHENC                             192 config CRYPTO_AUTHENC
220         tristate "Authenc support"                193         tristate "Authenc support"
221         select CRYPTO_AEAD                        194         select CRYPTO_AEAD
222         select CRYPTO_SKCIPHER                    195         select CRYPTO_SKCIPHER
223         select CRYPTO_MANAGER                     196         select CRYPTO_MANAGER
224         select CRYPTO_HASH                        197         select CRYPTO_HASH
225         select CRYPTO_NULL                        198         select CRYPTO_NULL
226         help                                      199         help
227           Authenc: Combined mode wrapper for I    200           Authenc: Combined mode wrapper for IPsec.
228                                                !! 201           This is required for IPSec.
229           This is required for IPSec ESP (XFRM << 
230                                                   202 
231 config CRYPTO_TEST                                203 config CRYPTO_TEST
232         tristate "Testing module"                 204         tristate "Testing module"
233         depends on m || EXPERT                    205         depends on m || EXPERT
234         select CRYPTO_MANAGER                     206         select CRYPTO_MANAGER
235         help                                      207         help
236           Quick & dirty crypto test module.       208           Quick & dirty crypto test module.
237                                                   209 
238 config CRYPTO_SIMD                                210 config CRYPTO_SIMD
239         tristate                                  211         tristate
240         select CRYPTO_CRYPTD                      212         select CRYPTO_CRYPTD
241                                                   213 
242 config CRYPTO_ENGINE                              214 config CRYPTO_ENGINE
243         tristate                                  215         tristate
244                                                   216 
245 endmenu                                        !! 217 comment "Public-key cryptography"
246                                                << 
247 menu "Public-key cryptography"                 << 
248                                                   218 
249 config CRYPTO_RSA                                 219 config CRYPTO_RSA
250         tristate "RSA (Rivest-Shamir-Adleman)" !! 220         tristate "RSA algorithm"
251         select CRYPTO_AKCIPHER                    221         select CRYPTO_AKCIPHER
252         select CRYPTO_MANAGER                     222         select CRYPTO_MANAGER
253         select MPILIB                             223         select MPILIB
254         select ASN1                               224         select ASN1
255         help                                      225         help
256           RSA (Rivest-Shamir-Adleman) public k !! 226           Generic implementation of the RSA public key algorithm.
257                                                   227 
258 config CRYPTO_DH                                  228 config CRYPTO_DH
259         tristate "DH (Diffie-Hellman)"         !! 229         tristate "Diffie-Hellman algorithm"
260         select CRYPTO_KPP                         230         select CRYPTO_KPP
261         select MPILIB                             231         select MPILIB
262         help                                      232         help
263           DH (Diffie-Hellman) key exchange alg !! 233           Generic implementation of the Diffie-Hellman algorithm.
264                                                   234 
265 config CRYPTO_DH_RFC7919_GROUPS                   235 config CRYPTO_DH_RFC7919_GROUPS
266         bool "RFC 7919 FFDHE groups"           !! 236         bool "Support for RFC 7919 FFDHE group parameters"
267         depends on CRYPTO_DH                      237         depends on CRYPTO_DH
268         select CRYPTO_RNG_DEFAULT                 238         select CRYPTO_RNG_DEFAULT
269         help                                      239         help
270           FFDHE (Finite-Field-based Diffie-Hel !! 240           Provide support for RFC 7919 FFDHE group parameters. If unsure, say N.
271           defined in RFC7919.                  << 
272                                                << 
273           Support these finite-field groups in << 
274           - ffdhe2048, ffdhe3072, ffdhe4096, f << 
275                                                << 
276           If unsure, say N.                    << 
277                                                   241 
278 config CRYPTO_ECC                                 242 config CRYPTO_ECC
279         tristate                                  243         tristate
280         select CRYPTO_RNG_DEFAULT                 244         select CRYPTO_RNG_DEFAULT
281                                                   245 
282 config CRYPTO_ECDH                                246 config CRYPTO_ECDH
283         tristate "ECDH (Elliptic Curve Diffie- !! 247         tristate "ECDH algorithm"
284         select CRYPTO_ECC                         248         select CRYPTO_ECC
285         select CRYPTO_KPP                         249         select CRYPTO_KPP
286         help                                      250         help
287           ECDH (Elliptic Curve Diffie-Hellman) !! 251           Generic implementation of the ECDH algorithm
288           using curves P-192, P-256, and P-384 << 
289                                                   252 
290 config CRYPTO_ECDSA                               253 config CRYPTO_ECDSA
291         tristate "ECDSA (Elliptic Curve Digita !! 254         tristate "ECDSA (NIST P192, P256 etc.) algorithm"
292         select CRYPTO_ECC                         255         select CRYPTO_ECC
293         select CRYPTO_AKCIPHER                    256         select CRYPTO_AKCIPHER
294         select ASN1                               257         select ASN1
295         help                                      258         help
296           ECDSA (Elliptic Curve Digital Signat !! 259           Elliptic Curve Digital Signature Algorithm (NIST P192, P256 etc.)
297           ISO/IEC 14888-3)                     !! 260           is A NIST cryptographic standard algorithm. Only signature verification
298           using curves P-192, P-256, and P-384 !! 261           is implemented.
299                                                << 
300           Only signature verification is imple << 
301                                                   262 
302 config CRYPTO_ECRDSA                              263 config CRYPTO_ECRDSA
303         tristate "EC-RDSA (Elliptic Curve Russ !! 264         tristate "EC-RDSA (GOST 34.10) algorithm"
304         select CRYPTO_ECC                         265         select CRYPTO_ECC
305         select CRYPTO_AKCIPHER                    266         select CRYPTO_AKCIPHER
306         select CRYPTO_STREEBOG                    267         select CRYPTO_STREEBOG
307         select OID_REGISTRY                       268         select OID_REGISTRY
308         select ASN1                               269         select ASN1
309         help                                      270         help
310           Elliptic Curve Russian Digital Signa    271           Elliptic Curve Russian Digital Signature Algorithm (GOST R 34.10-2012,
311           RFC 7091, ISO/IEC 14888-3)           !! 272           RFC 7091, ISO/IEC 14888-3:2018) is one of the Russian cryptographic
                                                   >> 273           standard algorithms (called GOST algorithms). Only signature verification
                                                   >> 274           is implemented.
                                                   >> 275 
                                                   >> 276 config CRYPTO_SM2
                                                   >> 277         tristate "SM2 algorithm"
                                                   >> 278         select CRYPTO_LIB_SM3
                                                   >> 279         select CRYPTO_AKCIPHER
                                                   >> 280         select CRYPTO_MANAGER
                                                   >> 281         select MPILIB
                                                   >> 282         select ASN1
                                                   >> 283         help
                                                   >> 284           Generic implementation of the SM2 public key algorithm. It was
                                                   >> 285           published by State Encryption Management Bureau, China.
                                                   >> 286           as specified by OSCCA GM/T 0003.1-2012 -- 0003.5-2012.
312                                                   287 
313           One of the Russian cryptographic sta !! 288           References:
314           algorithms). Only signature verifica !! 289           https://tools.ietf.org/html/draft-shen-sm2-ecdsa-02
                                                   >> 290           http://www.oscca.gov.cn/sca/xxgk/2010-12/17/content_1002386.shtml
                                                   >> 291           http://www.gmbz.org.cn/main/bzlb.html
315                                                   292 
316 config CRYPTO_CURVE25519                          293 config CRYPTO_CURVE25519
317         tristate "Curve25519"                  !! 294         tristate "Curve25519 algorithm"
318         select CRYPTO_KPP                         295         select CRYPTO_KPP
319         select CRYPTO_LIB_CURVE25519_GENERIC      296         select CRYPTO_LIB_CURVE25519_GENERIC
320         help                                   << 
321           Curve25519 elliptic curve (RFC7748)  << 
322                                                << 
323 endmenu                                        << 
324                                                << 
325 menu "Block ciphers"                           << 
326                                                << 
327 config CRYPTO_AES                              << 
328         tristate "AES (Advanced Encryption Sta << 
329         select CRYPTO_ALGAPI                   << 
330         select CRYPTO_LIB_AES                  << 
331         help                                   << 
332           AES cipher algorithms (Rijndael)(FIP << 
333                                                << 
334           Rijndael appears to be consistently  << 
335           both hardware and software across a  << 
336           environments regardless of its use i << 
337           modes. Its key setup time is excelle << 
338           good. Rijndael's very low memory req << 
339           suited for restricted-space environm << 
340           demonstrates excellent performance.  << 
341           among the easiest to defend against  << 
342                                                << 
343           The AES specifies three key sizes: 1 << 
344                                                << 
345 config CRYPTO_AES_TI                           << 
346         tristate "AES (Advanced Encryption Sta << 
347         select CRYPTO_ALGAPI                   << 
348         select CRYPTO_LIB_AES                  << 
349         help                                   << 
350           AES cipher algorithms (Rijndael)(FIP << 
351                                                << 
352           This is a generic implementation of  << 
353           data dependent latencies as much as  << 
354           performance too much. It is intended << 
355           and GCM drivers, and other CTR or CM << 
356           solely on encryption (although decry << 
357           with a more dramatic performance hit << 
358                                                << 
359           Instead of using 16 lookup tables of << 
360           8 for decryption), this implementati << 
361           256 bytes each, and attempts to elim << 
362           prefetching the entire table into th << 
363           block. Interrupts are also disabled  << 
364           are evicted when the CPU is interrup << 
365                                                << 
366 config CRYPTO_ANUBIS                           << 
367         tristate "Anubis"                      << 
368         depends on CRYPTO_USER_API_ENABLE_OBSO << 
369         select CRYPTO_ALGAPI                   << 
370         help                                   << 
371           Anubis cipher algorithm              << 
372                                                   297 
373           Anubis is a variable key length ciph !! 298 config CRYPTO_CURVE25519_X86
374           128 bits to 320 bits in length.  It  !! 299         tristate "x86_64 accelerated Curve25519 scalar multiplication library"
375           in the NESSIE competition.           !! 300         depends on X86 && 64BIT
376                                                !! 301         select CRYPTO_LIB_CURVE25519_GENERIC
377           See https://web.archive.org/web/2016 !! 302         select CRYPTO_ARCH_HAVE_LIB_CURVE25519
378           for further information.             << 
379                                                << 
380 config CRYPTO_ARIA                             << 
381         tristate "ARIA"                        << 
382         select CRYPTO_ALGAPI                   << 
383         help                                   << 
384           ARIA cipher algorithm (RFC5794)      << 
385                                                << 
386           ARIA is a standard encryption algori << 
387           The ARIA specifies three key sizes a << 
388           128-bit: 12 rounds.                  << 
389           192-bit: 14 rounds.                  << 
390           256-bit: 16 rounds.                  << 
391                                                   303 
392           See:                                 !! 304 comment "Authenticated Encryption with Associated Data"
393           https://seed.kisa.or.kr/kisa/algorit << 
394                                                   305 
395 config CRYPTO_BLOWFISH                         !! 306 config CRYPTO_CCM
396         tristate "Blowfish"                    !! 307         tristate "CCM support"
397         select CRYPTO_ALGAPI                   !! 308         select CRYPTO_CTR
398         select CRYPTO_BLOWFISH_COMMON          !! 309         select CRYPTO_HASH
                                                   >> 310         select CRYPTO_AEAD
                                                   >> 311         select CRYPTO_MANAGER
399         help                                      312         help
400           Blowfish cipher algorithm, by Bruce  !! 313           Support for Counter with CBC MAC. Required for IPsec.
401                                                << 
402           This is a variable key length cipher << 
403           bits to 448 bits in length.  It's fa << 
404           designed for use on "large microproc << 
405                                                << 
406           See https://www.schneier.com/blowfis << 
407                                                   314 
408 config CRYPTO_BLOWFISH_COMMON                  !! 315 config CRYPTO_GCM
409         tristate                               !! 316         tristate "GCM/GMAC support"
                                                   >> 317         select CRYPTO_CTR
                                                   >> 318         select CRYPTO_AEAD
                                                   >> 319         select CRYPTO_GHASH
                                                   >> 320         select CRYPTO_NULL
                                                   >> 321         select CRYPTO_MANAGER
410         help                                      322         help
411           Common parts of the Blowfish cipher  !! 323           Support for Galois/Counter Mode (GCM) and Galois Message
412           generic c and the assembler implemen !! 324           Authentication Code (GMAC). Required for IPSec.
413                                                   325 
414 config CRYPTO_CAMELLIA                         !! 326 config CRYPTO_CHACHA20POLY1305
415         tristate "Camellia"                    !! 327         tristate "ChaCha20-Poly1305 AEAD support"
416         select CRYPTO_ALGAPI                   !! 328         select CRYPTO_CHACHA20
                                                   >> 329         select CRYPTO_POLY1305
                                                   >> 330         select CRYPTO_AEAD
                                                   >> 331         select CRYPTO_MANAGER
417         help                                      332         help
418           Camellia cipher algorithms (ISO/IEC  !! 333           ChaCha20-Poly1305 AEAD support, RFC7539.
419                                                   334 
420           Camellia is a symmetric key block ci !! 335           Support for the AEAD wrapper using the ChaCha20 stream cipher combined
421           at NTT and Mitsubishi Electric Corpo !! 336           with the Poly1305 authenticator. It is defined in RFC7539 for use in
422                                                !! 337           IETF protocols.
423           The Camellia specifies three key siz << 
424                                                << 
425           See https://info.isl.ntt.co.jp/crypt << 
426                                                << 
427 config CRYPTO_CAST_COMMON                      << 
428         tristate                               << 
429         help                                   << 
430           Common parts of the CAST cipher algo << 
431           generic c and the assembler implemen << 
432                                                   338 
433 config CRYPTO_CAST5                            !! 339 config CRYPTO_AEGIS128
434         tristate "CAST5 (CAST-128)"            !! 340         tristate "AEGIS-128 AEAD algorithm"
435         select CRYPTO_ALGAPI                   !! 341         select CRYPTO_AEAD
436         select CRYPTO_CAST_COMMON              !! 342         select CRYPTO_AES  # for AES S-box tables
437         help                                      343         help
438           CAST5 (CAST-128) cipher algorithm (R !! 344          Support for the AEGIS-128 dedicated AEAD algorithm.
439                                                   345 
440 config CRYPTO_CAST6                            !! 346 config CRYPTO_AEGIS128_SIMD
441         tristate "CAST6 (CAST-256)"            !! 347         bool "Support SIMD acceleration for AEGIS-128"
442         select CRYPTO_ALGAPI                   !! 348         depends on CRYPTO_AEGIS128 && ((ARM || ARM64) && KERNEL_MODE_NEON)
443         select CRYPTO_CAST_COMMON              !! 349         default y
444         help                                   << 
445           CAST6 (CAST-256) encryption algorith << 
446                                                   350 
447 config CRYPTO_DES                              !! 351 config CRYPTO_AEGIS128_AESNI_SSE2
448         tristate "DES and Triple DES EDE"      !! 352         tristate "AEGIS-128 AEAD algorithm (x86_64 AESNI+SSE2 implementation)"
449         select CRYPTO_ALGAPI                   !! 353         depends on X86 && 64BIT
450         select CRYPTO_LIB_DES                  !! 354         select CRYPTO_AEAD
                                                   >> 355         select CRYPTO_SIMD
451         help                                      356         help
452           DES (Data Encryption Standard)(FIPS  !! 357          AESNI+SSE2 implementation of the AEGIS-128 dedicated AEAD algorithm.
453           Triple DES EDE (Encrypt/Decrypt/Encr << 
454           cipher algorithms                    << 
455                                                   358 
456 config CRYPTO_FCRYPT                           !! 359 config CRYPTO_SEQIV
457         tristate "FCrypt"                      !! 360         tristate "Sequence Number IV Generator"
458         select CRYPTO_ALGAPI                   !! 361         select CRYPTO_AEAD
459         select CRYPTO_SKCIPHER                    362         select CRYPTO_SKCIPHER
460         help                                   !! 363         select CRYPTO_NULL
461           FCrypt algorithm used by RxRPC       !! 364         select CRYPTO_RNG_DEFAULT
462                                                << 
463           See https://ota.polyonymo.us/fcrypt- << 
464                                                << 
465 config CRYPTO_KHAZAD                           << 
466         tristate "Khazad"                      << 
467         depends on CRYPTO_USER_API_ENABLE_OBSO << 
468         select CRYPTO_ALGAPI                   << 
469         help                                   << 
470           Khazad cipher algorithm              << 
471                                                << 
472           Khazad was a finalist in the initial << 
473           an algorithm optimized for 64-bit pr << 
474           on 32-bit processors.  Khazad uses a << 
475                                                << 
476           See https://web.archive.org/web/2017 << 
477           for further information.             << 
478                                                << 
479 config CRYPTO_SEED                             << 
480         tristate "SEED"                        << 
481         depends on CRYPTO_USER_API_ENABLE_OBSO << 
482         select CRYPTO_ALGAPI                   << 
483         help                                   << 
484           SEED cipher algorithm (RFC4269, ISO/ << 
485                                                << 
486           SEED is a 128-bit symmetric key bloc << 
487           developed by KISA (Korea Information << 
488           national standard encryption algorit << 
489           It is a 16 round block cipher with t << 
490                                                << 
491           See https://seed.kisa.or.kr/kisa/alg << 
492           for further information.             << 
493                                                << 
494 config CRYPTO_SERPENT                          << 
495         tristate "Serpent"                     << 
496         select CRYPTO_ALGAPI                   << 
497         help                                   << 
498           Serpent cipher algorithm, by Anderso << 
499                                                << 
500           Keys are allowed to be from 0 to 256 << 
501           of 8 bits.                           << 
502                                                << 
503           See https://www.cl.cam.ac.uk/~rja14/ << 
504                                                << 
505 config CRYPTO_SM4                              << 
506         tristate                               << 
507                                                << 
508 config CRYPTO_SM4_GENERIC                      << 
509         tristate "SM4 (ShangMi 4)"             << 
510         select CRYPTO_ALGAPI                   << 
511         select CRYPTO_SM4                      << 
512         help                                   << 
513           SM4 cipher algorithms (OSCCA GB/T 32 << 
514           ISO/IEC 18033-3:2010/Amd 1:2021)     << 
515                                                << 
516           SM4 (GBT.32907-2016) is a cryptograp << 
517           Organization of State Commercial Adm << 
518           as an authorized cryptographic algor << 
519                                                << 
520           SMS4 was originally created for use  << 
521           networks, and is mandated in the Chi << 
522           Wireless LAN WAPI (Wired Authenticat << 
523           (GB.15629.11-2003).                  << 
524                                                << 
525           The latest SM4 standard (GBT.32907-2 << 
526           standardized through TC 260 of the S << 
527           of the People's Republic of China (S << 
528                                                << 
529           The input, output, and key of SMS4 a << 
530                                                << 
531           See https://eprint.iacr.org/2008/329 << 
532                                                << 
533           If unsure, say N.                    << 
534                                                << 
535 config CRYPTO_TEA                              << 
536         tristate "TEA, XTEA and XETA"          << 
537         depends on CRYPTO_USER_API_ENABLE_OBSO << 
538         select CRYPTO_ALGAPI                   << 
539         help                                   << 
540           TEA (Tiny Encryption Algorithm) ciph << 
541                                                << 
542           Tiny Encryption Algorithm is a simpl << 
543           many rounds for security.  It is ver << 
544           little memory.                       << 
545                                                << 
546           Xtendend Tiny Encryption Algorithm i << 
547           the TEA algorithm to address a poten << 
548           in the TEA algorithm.                << 
549                                                << 
550           Xtendend Encryption Tiny Algorithm i << 
551           of the XTEA algorithm for compatibil << 
552                                                << 
553 config CRYPTO_TWOFISH                          << 
554         tristate "Twofish"                     << 
555         select CRYPTO_ALGAPI                   << 
556         select CRYPTO_TWOFISH_COMMON           << 
557         help                                   << 
558           Twofish cipher algorithm             << 
559                                                << 
560           Twofish was submitted as an AES (Adv << 
561           candidate cipher by researchers at C << 
562           16 round block cipher supporting key << 
563           bits.                                << 
564                                                << 
565           See https://www.schneier.com/twofish << 
566                                                << 
567 config CRYPTO_TWOFISH_COMMON                   << 
568         tristate                               << 
569         help                                   << 
570           Common parts of the Twofish cipher a << 
571           generic c and the assembler implemen << 
572                                                << 
573 endmenu                                        << 
574                                                << 
575 menu "Length-preserving ciphers and modes"     << 
576                                                << 
577 config CRYPTO_ADIANTUM                         << 
578         tristate "Adiantum"                    << 
579         select CRYPTO_CHACHA20                 << 
580         select CRYPTO_LIB_POLY1305_GENERIC     << 
581         select CRYPTO_NHPOLY1305               << 
582         select CRYPTO_MANAGER                     365         select CRYPTO_MANAGER
583         help                                      366         help
584           Adiantum tweakable, length-preservin !! 367           This IV generator generates an IV based on a sequence number by
585                                                !! 368           xoring it with a salt.  This algorithm is mainly useful for CTR
586           Designed for fast and secure disk en << 
587           CPUs without dedicated crypto instru << 
588           each sector using the XChaCha12 stre << 
589           an ε-almost-∆-universal hash func << 
590           the AES-256 block cipher on a single << 
591           without AES instructions, Adiantum i << 
592           AES-XTS.                             << 
593                                                << 
594           Adiantum's security is provably redu << 
595           underlying stream and block ciphers, << 
596           bound.  Unlike XTS, Adiantum is a tr << 
597           mode, so it actually provides an eve << 
598           security than XTS, subject to the se << 
599                                                << 
600           If unsure, say N.                    << 
601                                                   369 
602 config CRYPTO_ARC4                             !! 370 config CRYPTO_ECHAINIV
603         tristate "ARC4 (Alleged Rivest Cipher  !! 371         tristate "Encrypted Chain IV Generator"
604         depends on CRYPTO_USER_API_ENABLE_OBSO !! 372         select CRYPTO_AEAD
605         select CRYPTO_SKCIPHER                 !! 373         select CRYPTO_NULL
606         select CRYPTO_LIB_ARC4                 !! 374         select CRYPTO_RNG_DEFAULT
                                                   >> 375         select CRYPTO_MANAGER
607         help                                      376         help
608           ARC4 cipher algorithm                !! 377           This IV generator generates an IV based on the encryption of
                                                   >> 378           a sequence number xored with a salt.  This is the default
                                                   >> 379           algorithm for CBC.
609                                                   380 
610           ARC4 is a stream cipher using keys r !! 381 comment "Block modes"
611           bits in length.  This algorithm is r << 
612           WEP, but it should not be for other  << 
613           weakness of the algorithm.           << 
614                                                   382 
615 config CRYPTO_CHACHA20                         !! 383 config CRYPTO_CBC
616         tristate "ChaCha"                      !! 384         tristate "CBC support"
617         select CRYPTO_LIB_CHACHA_GENERIC       << 
618         select CRYPTO_SKCIPHER                    385         select CRYPTO_SKCIPHER
                                                   >> 386         select CRYPTO_MANAGER
619         help                                      387         help
620           The ChaCha20, XChaCha20, and XChaCha !! 388           CBC: Cipher Block Chaining mode
621                                                !! 389           This block cipher algorithm is required for IPSec.
622           ChaCha20 is a 256-bit high-speed str << 
623           Bernstein and further specified in R << 
624           This is the portable C implementatio << 
625           https://cr.yp.to/chacha/chacha-20080 << 
626                                                << 
627           XChaCha20 is the application of the  << 
628           rather than to Salsa20.  XChaCha20 e << 
629           from 64 bits (or 96 bits using the R << 
630           while provably retaining ChaCha20's  << 
631           https://cr.yp.to/snuffle/xsalsa-2008 << 
632                                                << 
633           XChaCha12 is XChaCha20 reduced to 12 << 
634           reduced security margin but increase << 
635           in some performance-sensitive scenar << 
636                                                   390 
637 config CRYPTO_CBC                              !! 391 config CRYPTO_CFB
638         tristate "CBC (Cipher Block Chaining)" !! 392         tristate "CFB support"
639         select CRYPTO_SKCIPHER                    393         select CRYPTO_SKCIPHER
640         select CRYPTO_MANAGER                     394         select CRYPTO_MANAGER
641         help                                      395         help
642           CBC (Cipher Block Chaining) mode (NI !! 396           CFB: Cipher FeedBack mode
643                                                !! 397           This block cipher algorithm is required for TPM2 Cryptography.
644           This block cipher mode is required f << 
645                                                   398 
646 config CRYPTO_CTR                                 399 config CRYPTO_CTR
647         tristate "CTR (Counter)"               !! 400         tristate "CTR support"
648         select CRYPTO_SKCIPHER                    401         select CRYPTO_SKCIPHER
649         select CRYPTO_MANAGER                     402         select CRYPTO_MANAGER
650         help                                      403         help
651           CTR (Counter) mode (NIST SP800-38A)  !! 404           CTR: Counter mode
                                                   >> 405           This block cipher algorithm is required for IPSec.
652                                                   406 
653 config CRYPTO_CTS                                 407 config CRYPTO_CTS
654         tristate "CTS (Cipher Text Stealing)"  !! 408         tristate "CTS support"
655         select CRYPTO_SKCIPHER                    409         select CRYPTO_SKCIPHER
656         select CRYPTO_MANAGER                     410         select CRYPTO_MANAGER
657         help                                      411         help
658           CBC-CS3 variant of CTS (Cipher Text  !! 412           CTS: Cipher Text Stealing
659           Addendum to SP800-38A (October 2010) !! 413           This is the Cipher Text Stealing mode as described by
660                                                !! 414           Section 8 of rfc2040 and referenced by rfc3962
                                                   >> 415           (rfc3962 includes errata information in its Appendix A) or
                                                   >> 416           CBC-CS3 as defined by NIST in Sp800-38A addendum from Oct 2010.
661           This mode is required for Kerberos g    417           This mode is required for Kerberos gss mechanism support
662           for AES encryption.                     418           for AES encryption.
663                                                   419 
664 config CRYPTO_ECB                              !! 420           See: https://csrc.nist.gov/publications/detail/sp/800-38a/addendum/final
665         tristate "ECB (Electronic Codebook)"   << 
666         select CRYPTO_SKCIPHER2                << 
667         select CRYPTO_MANAGER                  << 
668         help                                   << 
669           ECB (Electronic Codebook) mode (NIST << 
670                                                << 
671 config CRYPTO_HCTR2                            << 
672         tristate "HCTR2"                       << 
673         select CRYPTO_XCTR                     << 
674         select CRYPTO_POLYVAL                  << 
675         select CRYPTO_MANAGER                  << 
676         help                                   << 
677           HCTR2 length-preserving encryption m << 
678                                                << 
679           A mode for storage encryption that i << 
680           instructions to accelerate AES and c << 
681           x86 processors with AES-NI and CLMUL << 
682           ARMv8 crypto extensions.             << 
683                                                << 
684           See https://eprint.iacr.org/2021/144 << 
685                                                   421 
686 config CRYPTO_KEYWRAP                          !! 422 config CRYPTO_ECB
687         tristate "KW (AES Key Wrap)"           !! 423         tristate "ECB support"
688         select CRYPTO_SKCIPHER                    424         select CRYPTO_SKCIPHER
689         select CRYPTO_MANAGER                     425         select CRYPTO_MANAGER
690         help                                      426         help
691           KW (AES Key Wrap) authenticated encr !! 427           ECB: Electronic CodeBook mode
692           and RFC3394) without padding.        !! 428           This is the simplest block cipher algorithm.  It simply encrypts
                                                   >> 429           the input block by block.
693                                                   430 
694 config CRYPTO_LRW                                 431 config CRYPTO_LRW
695         tristate "LRW (Liskov Rivest Wagner)"  !! 432         tristate "LRW support"
696         select CRYPTO_LIB_GF128MUL             << 
697         select CRYPTO_SKCIPHER                    433         select CRYPTO_SKCIPHER
698         select CRYPTO_MANAGER                     434         select CRYPTO_MANAGER
                                                   >> 435         select CRYPTO_GF128MUL
699         select CRYPTO_ECB                         436         select CRYPTO_ECB
700         help                                      437         help
701           LRW (Liskov Rivest Wagner) mode      !! 438           LRW: Liskov Rivest Wagner, a tweakable, non malleable, non movable
702                                                << 
703           A tweakable, non malleable, non mova << 
704           narrow block cipher mode for dm-cryp    439           narrow block cipher mode for dm-crypt.  Use it with cipher
705           specification string aes-lrw-benbi,     440           specification string aes-lrw-benbi, the key must be 256, 320 or 384.
706           The first 128, 192 or 256 bits in th    441           The first 128, 192 or 256 bits in the key are used for AES and the
707           rest is used to tie each cipher bloc    442           rest is used to tie each cipher block to its logical position.
708                                                   443 
709           See https://people.csail.mit.edu/riv !! 444 config CRYPTO_OFB
710                                                !! 445         tristate "OFB support"
711 config CRYPTO_PCBC                             << 
712         tristate "PCBC (Propagating Cipher Blo << 
713         select CRYPTO_SKCIPHER                    446         select CRYPTO_SKCIPHER
714         select CRYPTO_MANAGER                     447         select CRYPTO_MANAGER
715         help                                      448         help
716           PCBC (Propagating Cipher Block Chain !! 449           OFB: the Output Feedback mode makes a block cipher into a synchronous
717                                                !! 450           stream cipher. It generates keystream blocks, which are then XORed
718           This block cipher mode is required f !! 451           with the plaintext blocks to get the ciphertext. Flipping a bit in the
                                                   >> 452           ciphertext produces a flipped bit in the plaintext at the same
                                                   >> 453           location. This property allows many error correcting codes to function
                                                   >> 454           normally even when applied before encryption.
719                                                   455 
720 config CRYPTO_XCTR                             !! 456 config CRYPTO_PCBC
721         tristate                               !! 457         tristate "PCBC support"
722         select CRYPTO_SKCIPHER                    458         select CRYPTO_SKCIPHER
723         select CRYPTO_MANAGER                     459         select CRYPTO_MANAGER
724         help                                      460         help
725           XCTR (XOR Counter) mode for HCTR2    !! 461           PCBC: Propagating Cipher Block Chaining mode
726                                                !! 462           This block cipher algorithm is required for RxRPC.
727           This blockcipher mode is a variant o << 
728           addition rather than big-endian arit << 
729                                                << 
730           XCTR mode is used to implement HCTR2 << 
731                                                   463 
732 config CRYPTO_XTS                                 464 config CRYPTO_XTS
733         tristate "XTS (XOR Encrypt XOR with ci !! 465         tristate "XTS support"
734         select CRYPTO_SKCIPHER                    466         select CRYPTO_SKCIPHER
735         select CRYPTO_MANAGER                     467         select CRYPTO_MANAGER
736         select CRYPTO_ECB                         468         select CRYPTO_ECB
737         help                                      469         help
738           XTS (XOR Encrypt XOR with ciphertext !! 470           XTS: IEEE1619/D16 narrow block cipher use with aes-xts-plain,
739           and IEEE 1619)                       !! 471           key size 256, 384 or 512 bits. This implementation currently
                                                   >> 472           can't handle a sectorsize which is not a multiple of 16 bytes.
740                                                   473 
741           Use with aes-xts-plain, key size 256 !! 474 config CRYPTO_KEYWRAP
742           implementation currently can't handl !! 475         tristate "Key wrapping support"
743           multiple of 16 bytes.                !! 476         select CRYPTO_SKCIPHER
                                                   >> 477         select CRYPTO_MANAGER
                                                   >> 478         help
                                                   >> 479           Support for key wrapping (NIST SP800-38F / RFC3394) without
                                                   >> 480           padding.
744                                                   481 
745 config CRYPTO_NHPOLY1305                          482 config CRYPTO_NHPOLY1305
746         tristate                                  483         tristate
747         select CRYPTO_HASH                        484         select CRYPTO_HASH
748         select CRYPTO_LIB_POLY1305_GENERIC        485         select CRYPTO_LIB_POLY1305_GENERIC
749                                                   486 
750 endmenu                                        !! 487 config CRYPTO_NHPOLY1305_SSE2
751                                                !! 488         tristate "NHPoly1305 hash function (x86_64 SSE2 implementation)"
752 menu "AEAD (authenticated encryption with asso !! 489         depends on X86 && 64BIT
753                                                !! 490         select CRYPTO_NHPOLY1305
754 config CRYPTO_AEGIS128                         << 
755         tristate "AEGIS-128"                   << 
756         select CRYPTO_AEAD                     << 
757         select CRYPTO_AES  # for AES S-box tab << 
758         help                                      491         help
759           AEGIS-128 AEAD algorithm             !! 492           SSE2 optimized implementation of the hash function used by the
                                                   >> 493           Adiantum encryption mode.
760                                                   494 
761 config CRYPTO_AEGIS128_SIMD                    !! 495 config CRYPTO_NHPOLY1305_AVX2
762         bool "AEGIS-128 (arm NEON, arm64 NEON) !! 496         tristate "NHPoly1305 hash function (x86_64 AVX2 implementation)"
763         depends on CRYPTO_AEGIS128 && ((ARM || !! 497         depends on X86 && 64BIT
764         default y                              !! 498         select CRYPTO_NHPOLY1305
765         help                                      499         help
766           AEGIS-128 AEAD algorithm             !! 500           AVX2 optimized implementation of the hash function used by the
                                                   >> 501           Adiantum encryption mode.
767                                                   502 
768           Architecture: arm or arm64 using:    !! 503 config CRYPTO_ADIANTUM
769           - NEON (Advanced SIMD) extension     !! 504         tristate "Adiantum support"
770                                                << 
771 config CRYPTO_CHACHA20POLY1305                 << 
772         tristate "ChaCha20-Poly1305"           << 
773         select CRYPTO_CHACHA20                    505         select CRYPTO_CHACHA20
774         select CRYPTO_POLY1305                 !! 506         select CRYPTO_LIB_POLY1305_GENERIC
775         select CRYPTO_AEAD                     !! 507         select CRYPTO_NHPOLY1305
776         select CRYPTO_MANAGER                  << 
777         help                                   << 
778           ChaCha20 stream cipher and Poly1305  << 
779           mode (RFC8439)                       << 
780                                                << 
781 config CRYPTO_CCM                              << 
782         tristate "CCM (Counter with Cipher Blo << 
783         select CRYPTO_CTR                      << 
784         select CRYPTO_HASH                     << 
785         select CRYPTO_AEAD                     << 
786         select CRYPTO_MANAGER                  << 
787         help                                   << 
788           CCM (Counter with Cipher Block Chain << 
789           authenticated encryption mode (NIST  << 
790                                                << 
791 config CRYPTO_GCM                              << 
792         tristate "GCM (Galois/Counter Mode) an << 
793         select CRYPTO_CTR                      << 
794         select CRYPTO_AEAD                     << 
795         select CRYPTO_GHASH                    << 
796         select CRYPTO_NULL                     << 
797         select CRYPTO_MANAGER                  << 
798         help                                   << 
799           GCM (Galois/Counter Mode) authentica << 
800           (GCM Message Authentication Code) (N << 
801                                                << 
802           This is required for IPSec ESP (XFRM << 
803                                                << 
804 config CRYPTO_GENIV                            << 
805         tristate                               << 
806         select CRYPTO_AEAD                     << 
807         select CRYPTO_NULL                     << 
808         select CRYPTO_MANAGER                     508         select CRYPTO_MANAGER
809         select CRYPTO_RNG_DEFAULT              << 
810                                                << 
811 config CRYPTO_SEQIV                            << 
812         tristate "Sequence Number IV Generator << 
813         select CRYPTO_GENIV                    << 
814         help                                      509         help
815           Sequence Number IV generator         !! 510           Adiantum is a tweakable, length-preserving encryption mode
816                                                !! 511           designed for fast and secure disk encryption, especially on
817           This IV generator generates an IV ba !! 512           CPUs without dedicated crypto instructions.  It encrypts
818           xoring it with a salt.  This algorit !! 513           each sector using the XChaCha12 stream cipher, two passes of
819                                                !! 514           an ε-almost-∆-universal hash function, and an invocation of
820           This is required for IPsec ESP (XFRM !! 515           the AES-256 block cipher on a single 16-byte block.  On CPUs
                                                   >> 516           without AES instructions, Adiantum is much faster than
                                                   >> 517           AES-XTS.
821                                                   518 
822 config CRYPTO_ECHAINIV                         !! 519           Adiantum's security is provably reducible to that of its
823         tristate "Encrypted Chain IV Generator !! 520           underlying stream and block ciphers, subject to a security
824         select CRYPTO_GENIV                    !! 521           bound.  Unlike XTS, Adiantum is a true wide-block encryption
825         help                                   !! 522           mode, so it actually provides an even stronger notion of
826           Encrypted Chain IV generator         !! 523           security than XTS, subject to the security bound.
827                                                   524 
828           This IV generator generates an IV ba !! 525           If unsure, say N.
829           a sequence number xored with a salt. << 
830           algorithm for CBC.                   << 
831                                                   526 
832 config CRYPTO_ESSIV                               527 config CRYPTO_ESSIV
833         tristate "Encrypted Salt-Sector IV Gen !! 528         tristate "ESSIV support for block encryption"
834         select CRYPTO_AUTHENC                     529         select CRYPTO_AUTHENC
835         help                                      530         help
836           Encrypted Salt-Sector IV generator   !! 531           Encrypted salt-sector initialization vector (ESSIV) is an IV
837                                                !! 532           generation method that is used in some cases by fscrypt and/or
838           This IV generator is used in some ca << 
839           dm-crypt. It uses the hash of the bl    533           dm-crypt. It uses the hash of the block encryption key as the
840           symmetric key for a block encryption    534           symmetric key for a block encryption pass applied to the input
841           IV, making low entropy IV sources mo    535           IV, making low entropy IV sources more suitable for block
842           encryption.                             536           encryption.
843                                                   537 
844           This driver implements a crypto API     538           This driver implements a crypto API template that can be
845           instantiated either as an skcipher o    539           instantiated either as an skcipher or as an AEAD (depending on the
846           type of the first template argument)    540           type of the first template argument), and which defers encryption
847           and decryption requests to the encap    541           and decryption requests to the encapsulated cipher after applying
848           ESSIV to the input IV. Note that in     542           ESSIV to the input IV. Note that in the AEAD case, it is assumed
849           that the keys are presented in the s    543           that the keys are presented in the same format used by the authenc
850           template, and that the IV appears at    544           template, and that the IV appears at the end of the authenticated
851           associated data (AAD) region (which     545           associated data (AAD) region (which is how dm-crypt uses it.)
852                                                   546 
853           Note that the use of ESSIV is not re    547           Note that the use of ESSIV is not recommended for new deployments,
854           and so this only needs to be enabled    548           and so this only needs to be enabled when interoperability with
855           existing encrypted volumes of filesy    549           existing encrypted volumes of filesystems is required, or when
856           building for a particular system tha    550           building for a particular system that requires it (e.g., when
857           the SoC in question has accelerated     551           the SoC in question has accelerated CBC but not XTS, making CBC
858           combined with ESSIV the only feasibl    552           combined with ESSIV the only feasible mode for h/w accelerated
859           block encryption)                       553           block encryption)
860                                                   554 
861 endmenu                                        !! 555 comment "Hash modes"
                                                   >> 556 
                                                   >> 557 config CRYPTO_CMAC
                                                   >> 558         tristate "CMAC support"
                                                   >> 559         select CRYPTO_HASH
                                                   >> 560         select CRYPTO_MANAGER
                                                   >> 561         help
                                                   >> 562           Cipher-based Message Authentication Code (CMAC) specified by
                                                   >> 563           The National Institute of Standards and Technology (NIST).
862                                                   564 
863 menu "Hashes, digests, and MACs"               !! 565           https://tools.ietf.org/html/rfc4493
                                                   >> 566           http://csrc.nist.gov/publications/nistpubs/800-38B/SP_800-38B.pdf
864                                                   567 
865 config CRYPTO_BLAKE2B                          !! 568 config CRYPTO_HMAC
866         tristate "BLAKE2b"                     !! 569         tristate "HMAC support"
                                                   >> 570         select CRYPTO_HASH
                                                   >> 571         select CRYPTO_MANAGER
                                                   >> 572         help
                                                   >> 573           HMAC: Keyed-Hashing for Message Authentication (RFC2104).
                                                   >> 574           This is required for IPSec.
                                                   >> 575 
                                                   >> 576 config CRYPTO_XCBC
                                                   >> 577         tristate "XCBC support"
                                                   >> 578         select CRYPTO_HASH
                                                   >> 579         select CRYPTO_MANAGER
                                                   >> 580         help
                                                   >> 581           XCBC: Keyed-Hashing with encryption algorithm
                                                   >> 582                 https://www.ietf.org/rfc/rfc3566.txt
                                                   >> 583                 http://csrc.nist.gov/encryption/modes/proposedmodes/
                                                   >> 584                  xcbc-mac/xcbc-mac-spec.pdf
                                                   >> 585 
                                                   >> 586 config CRYPTO_VMAC
                                                   >> 587         tristate "VMAC support"
                                                   >> 588         select CRYPTO_HASH
                                                   >> 589         select CRYPTO_MANAGER
                                                   >> 590         help
                                                   >> 591           VMAC is a message authentication algorithm designed for
                                                   >> 592           very high speed on 64-bit architectures.
                                                   >> 593 
                                                   >> 594           See also:
                                                   >> 595           <https://fastcrypto.org/vmac>
                                                   >> 596 
                                                   >> 597 comment "Digest"
                                                   >> 598 
                                                   >> 599 config CRYPTO_CRC32C
                                                   >> 600         tristate "CRC32c CRC algorithm"
                                                   >> 601         select CRYPTO_HASH
                                                   >> 602         select CRC32
                                                   >> 603         help
                                                   >> 604           Castagnoli, et al Cyclic Redundancy-Check Algorithm.  Used
                                                   >> 605           by iSCSI for header and data digests and by others.
                                                   >> 606           See Castagnoli93.  Module will be crc32c.
                                                   >> 607 
                                                   >> 608 config CRYPTO_CRC32C_INTEL
                                                   >> 609         tristate "CRC32c INTEL hardware acceleration"
                                                   >> 610         depends on X86
                                                   >> 611         select CRYPTO_HASH
                                                   >> 612         help
                                                   >> 613           In Intel processor with SSE4.2 supported, the processor will
                                                   >> 614           support CRC32C implementation using hardware accelerated CRC32
                                                   >> 615           instruction. This option will create 'crc32c-intel' module,
                                                   >> 616           which will enable any routine to use the CRC32 instruction to
                                                   >> 617           gain performance compared with software implementation.
                                                   >> 618           Module will be crc32c-intel.
                                                   >> 619 
                                                   >> 620 config CRYPTO_CRC32C_VPMSUM
                                                   >> 621         tristate "CRC32c CRC algorithm (powerpc64)"
                                                   >> 622         depends on PPC64 && ALTIVEC
                                                   >> 623         select CRYPTO_HASH
                                                   >> 624         select CRC32
                                                   >> 625         help
                                                   >> 626           CRC32c algorithm implemented using vector polynomial multiply-sum
                                                   >> 627           (vpmsum) instructions, introduced in POWER8. Enable on POWER8
                                                   >> 628           and newer processors for improved performance.
                                                   >> 629 
                                                   >> 630 
                                                   >> 631 config CRYPTO_CRC32C_SPARC64
                                                   >> 632         tristate "CRC32c CRC algorithm (SPARC64)"
                                                   >> 633         depends on SPARC64
                                                   >> 634         select CRYPTO_HASH
                                                   >> 635         select CRC32
                                                   >> 636         help
                                                   >> 637           CRC32c CRC algorithm implemented using sparc64 crypto instructions,
                                                   >> 638           when available.
                                                   >> 639 
                                                   >> 640 config CRYPTO_CRC32
                                                   >> 641         tristate "CRC32 CRC algorithm"
                                                   >> 642         select CRYPTO_HASH
                                                   >> 643         select CRC32
                                                   >> 644         help
                                                   >> 645           CRC-32-IEEE 802.3 cyclic redundancy-check algorithm.
                                                   >> 646           Shash crypto api wrappers to crc32_le function.
                                                   >> 647 
                                                   >> 648 config CRYPTO_CRC32_PCLMUL
                                                   >> 649         tristate "CRC32 PCLMULQDQ hardware acceleration"
                                                   >> 650         depends on X86
867         select CRYPTO_HASH                        651         select CRYPTO_HASH
                                                   >> 652         select CRC32
                                                   >> 653         help
                                                   >> 654           From Intel Westmere and AMD Bulldozer processor with SSE4.2
                                                   >> 655           and PCLMULQDQ supported, the processor will support
                                                   >> 656           CRC32 PCLMULQDQ implementation using hardware accelerated PCLMULQDQ
                                                   >> 657           instruction. This option will create 'crc32-pclmul' module,
                                                   >> 658           which will enable any routine to use the CRC-32-IEEE 802.3 checksum
                                                   >> 659           and gain better performance as compared with the table implementation.
                                                   >> 660 
                                                   >> 661 config CRYPTO_CRC32_MIPS
                                                   >> 662         tristate "CRC32c and CRC32 CRC algorithm (MIPS)"
                                                   >> 663         depends on MIPS_CRC_SUPPORT
                                                   >> 664         select CRYPTO_HASH
                                                   >> 665         help
                                                   >> 666           CRC32c and CRC32 CRC algorithms implemented using mips crypto
                                                   >> 667           instructions, when available.
                                                   >> 668 
                                                   >> 669 
                                                   >> 670 config CRYPTO_XXHASH
                                                   >> 671         tristate "xxHash hash algorithm"
                                                   >> 672         select CRYPTO_HASH
                                                   >> 673         select XXHASH
868         help                                      674         help
869           BLAKE2b cryptographic hash function  !! 675           xxHash non-cryptographic hash algorithm. Extremely fast, working at
                                                   >> 676           speeds close to RAM limits.
870                                                   677 
871           BLAKE2b is optimized for 64-bit plat !! 678 config CRYPTO_BLAKE2B
872           of any size between 1 and 64 bytes.  !! 679         tristate "BLAKE2b digest algorithm"
                                                   >> 680         select CRYPTO_HASH
                                                   >> 681         help
                                                   >> 682           Implementation of cryptographic hash function BLAKE2b (or just BLAKE2),
                                                   >> 683           optimized for 64bit platforms and can produce digests of any size
                                                   >> 684           between 1 to 64.  The keyed hash is also implemented.
873                                                   685 
874           This module provides the following a    686           This module provides the following algorithms:
                                                   >> 687 
875           - blake2b-160                           688           - blake2b-160
876           - blake2b-256                           689           - blake2b-256
877           - blake2b-384                           690           - blake2b-384
878           - blake2b-512                           691           - blake2b-512
879                                                   692 
880           Used by the btrfs filesystem.        << 
881                                                << 
882           See https://blake2.net for further i    693           See https://blake2.net for further information.
883                                                   694 
884 config CRYPTO_CMAC                             !! 695 config CRYPTO_BLAKE2S_X86
885         tristate "CMAC (Cipher-based MAC)"     !! 696         bool "BLAKE2s digest algorithm (x86 accelerated version)"
                                                   >> 697         depends on X86 && 64BIT
                                                   >> 698         select CRYPTO_LIB_BLAKE2S_GENERIC
                                                   >> 699         select CRYPTO_ARCH_HAVE_LIB_BLAKE2S
                                                   >> 700 
                                                   >> 701 config CRYPTO_CRCT10DIF
                                                   >> 702         tristate "CRCT10DIF algorithm"
                                                   >> 703         select CRYPTO_HASH
                                                   >> 704         help
                                                   >> 705           CRC T10 Data Integrity Field computation is being cast as
                                                   >> 706           a crypto transform.  This allows for faster crc t10 diff
                                                   >> 707           transforms to be used if they are available.
                                                   >> 708 
                                                   >> 709 config CRYPTO_CRCT10DIF_PCLMUL
                                                   >> 710         tristate "CRCT10DIF PCLMULQDQ hardware acceleration"
                                                   >> 711         depends on X86 && 64BIT && CRC_T10DIF
                                                   >> 712         select CRYPTO_HASH
                                                   >> 713         help
                                                   >> 714           For x86_64 processors with SSE4.2 and PCLMULQDQ supported,
                                                   >> 715           CRC T10 DIF PCLMULQDQ computation can be hardware
                                                   >> 716           accelerated PCLMULQDQ instruction. This option will create
                                                   >> 717           'crct10dif-pclmul' module, which is faster when computing the
                                                   >> 718           crct10dif checksum as compared with the generic table implementation.
                                                   >> 719 
                                                   >> 720 config CRYPTO_CRCT10DIF_VPMSUM
                                                   >> 721         tristate "CRC32T10DIF powerpc64 hardware acceleration"
                                                   >> 722         depends on PPC64 && ALTIVEC && CRC_T10DIF
886         select CRYPTO_HASH                        723         select CRYPTO_HASH
887         select CRYPTO_MANAGER                  << 
888         help                                      724         help
889           CMAC (Cipher-based Message Authentic !! 725           CRC10T10DIF algorithm implemented using vector polynomial
890           mode (NIST SP800-38B and IETF RFC449 !! 726           multiply-sum (vpmsum) instructions, introduced in POWER8. Enable on
                                                   >> 727           POWER8 and newer processors for improved performance.
                                                   >> 728 
                                                   >> 729 config CRYPTO_CRC64_ROCKSOFT
                                                   >> 730         tristate "Rocksoft Model CRC64 algorithm"
                                                   >> 731         depends on CRC64
                                                   >> 732         select CRYPTO_HASH
                                                   >> 733 
                                                   >> 734 config CRYPTO_VPMSUM_TESTER
                                                   >> 735         tristate "Powerpc64 vpmsum hardware acceleration tester"
                                                   >> 736         depends on CRYPTO_CRCT10DIF_VPMSUM && CRYPTO_CRC32C_VPMSUM
                                                   >> 737         help
                                                   >> 738           Stress test for CRC32c and CRC-T10DIF algorithms implemented with
                                                   >> 739           POWER8 vpmsum instructions.
                                                   >> 740           Unless you are testing these algorithms, you don't need this.
891                                                   741 
892 config CRYPTO_GHASH                               742 config CRYPTO_GHASH
893         tristate "GHASH"                       !! 743         tristate "GHASH hash function"
                                                   >> 744         select CRYPTO_GF128MUL
894         select CRYPTO_HASH                        745         select CRYPTO_HASH
895         select CRYPTO_LIB_GF128MUL             << 
896         help                                      746         help
897           GCM GHASH function (NIST SP800-38D)  !! 747           GHASH is the hash function used in GCM (Galois/Counter Mode).
                                                   >> 748           It is not a general-purpose cryptographic hash function.
898                                                   749 
899 config CRYPTO_HMAC                             !! 750 config CRYPTO_POLY1305
900         tristate "HMAC (Keyed-Hash MAC)"       !! 751         tristate "Poly1305 authenticator algorithm"
901         select CRYPTO_HASH                        752         select CRYPTO_HASH
902         select CRYPTO_MANAGER                  !! 753         select CRYPTO_LIB_POLY1305_GENERIC
903         help                                      754         help
904           HMAC (Keyed-Hash Message Authenticat !! 755           Poly1305 authenticator algorithm, RFC7539.
905           RFC2104)                             !! 756 
                                                   >> 757           Poly1305 is an authenticator algorithm designed by Daniel J. Bernstein.
                                                   >> 758           It is used for the ChaCha20-Poly1305 AEAD, specified in RFC7539 for use
                                                   >> 759           in IETF protocols. This is the portable C implementation of Poly1305.
906                                                   760 
907           This is required for IPsec AH (XFRM_ !! 761 config CRYPTO_POLY1305_X86_64
                                                   >> 762         tristate "Poly1305 authenticator algorithm (x86_64/SSE2/AVX2)"
                                                   >> 763         depends on X86 && 64BIT
                                                   >> 764         select CRYPTO_LIB_POLY1305_GENERIC
                                                   >> 765         select CRYPTO_ARCH_HAVE_LIB_POLY1305
                                                   >> 766         help
                                                   >> 767           Poly1305 authenticator algorithm, RFC7539.
                                                   >> 768 
                                                   >> 769           Poly1305 is an authenticator algorithm designed by Daniel J. Bernstein.
                                                   >> 770           It is used for the ChaCha20-Poly1305 AEAD, specified in RFC7539 for use
                                                   >> 771           in IETF protocols. This is the x86_64 assembler implementation using SIMD
                                                   >> 772           instructions.
                                                   >> 773 
                                                   >> 774 config CRYPTO_POLY1305_MIPS
                                                   >> 775         tristate "Poly1305 authenticator algorithm (MIPS optimized)"
                                                   >> 776         depends on MIPS
                                                   >> 777         select CRYPTO_ARCH_HAVE_LIB_POLY1305
908                                                   778 
909 config CRYPTO_MD4                                 779 config CRYPTO_MD4
910         tristate "MD4"                         !! 780         tristate "MD4 digest algorithm"
911         select CRYPTO_HASH                        781         select CRYPTO_HASH
912         help                                      782         help
913           MD4 message digest algorithm (RFC132 !! 783           MD4 message digest algorithm (RFC1320).
914                                                   784 
915 config CRYPTO_MD5                                 785 config CRYPTO_MD5
916         tristate "MD5"                         !! 786         tristate "MD5 digest algorithm"
917         select CRYPTO_HASH                        787         select CRYPTO_HASH
918         help                                      788         help
919           MD5 message digest algorithm (RFC132 !! 789           MD5 message digest algorithm (RFC1321).
920                                                   790 
921 config CRYPTO_MICHAEL_MIC                      !! 791 config CRYPTO_MD5_OCTEON
922         tristate "Michael MIC"                 !! 792         tristate "MD5 digest algorithm (OCTEON)"
                                                   >> 793         depends on CPU_CAVIUM_OCTEON
                                                   >> 794         select CRYPTO_MD5
923         select CRYPTO_HASH                        795         select CRYPTO_HASH
924         help                                      796         help
925           Michael MIC (Message Integrity Code) !! 797           MD5 message digest algorithm (RFC1321) implemented
926                                                !! 798           using OCTEON crypto instructions, when available.
927           Defined by the IEEE 802.11i TKIP (Te << 
928           known as WPA (Wif-Fi Protected Acces << 
929                                                << 
930           This algorithm is required for TKIP, << 
931           other purposes because of the weakne << 
932                                                   799 
933 config CRYPTO_POLYVAL                          !! 800 config CRYPTO_MD5_PPC
934         tristate                               !! 801         tristate "MD5 digest algorithm (PPC)"
                                                   >> 802         depends on PPC
935         select CRYPTO_HASH                        803         select CRYPTO_HASH
936         select CRYPTO_LIB_GF128MUL             << 
937         help                                      804         help
938           POLYVAL hash function for HCTR2      !! 805           MD5 message digest algorithm (RFC1321) implemented
939                                                !! 806           in PPC assembler.
940           This is used in HCTR2.  It is not a  << 
941           cryptographic hash function.         << 
942                                                   807 
943 config CRYPTO_POLY1305                         !! 808 config CRYPTO_MD5_SPARC64
944         tristate "Poly1305"                    !! 809         tristate "MD5 digest algorithm (SPARC64)"
                                                   >> 810         depends on SPARC64
                                                   >> 811         select CRYPTO_MD5
945         select CRYPTO_HASH                        812         select CRYPTO_HASH
946         select CRYPTO_LIB_POLY1305_GENERIC     << 
947         help                                      813         help
948           Poly1305 authenticator algorithm (RF !! 814           MD5 message digest algorithm (RFC1321) implemented
                                                   >> 815           using sparc64 crypto instructions, when available.
949                                                   816 
950           Poly1305 is an authenticator algorit !! 817 config CRYPTO_MICHAEL_MIC
951           It is used for the ChaCha20-Poly1305 !! 818         tristate "Michael MIC keyed digest algorithm"
952           in IETF protocols. This is the porta !! 819         select CRYPTO_HASH
                                                   >> 820         help
                                                   >> 821           Michael MIC is used for message integrity protection in TKIP
                                                   >> 822           (IEEE 802.11i). This algorithm is required for TKIP, but it
                                                   >> 823           should not be used for other purposes because of the weakness
                                                   >> 824           of the algorithm.
953                                                   825 
954 config CRYPTO_RMD160                              826 config CRYPTO_RMD160
955         tristate "RIPEMD-160"                  !! 827         tristate "RIPEMD-160 digest algorithm"
956         select CRYPTO_HASH                        828         select CRYPTO_HASH
957         help                                      829         help
958           RIPEMD-160 hash function (ISO/IEC 10 !! 830           RIPEMD-160 (ISO/IEC 10118-3:2004).
959                                                   831 
960           RIPEMD-160 is a 160-bit cryptographi    832           RIPEMD-160 is a 160-bit cryptographic hash function. It is intended
961           to be used as a secure replacement f    833           to be used as a secure replacement for the 128-bit hash functions
962           MD4, MD5 and its predecessor RIPEMD  !! 834           MD4, MD5 and it's predecessor RIPEMD
963           (not to be confused with RIPEMD-128)    835           (not to be confused with RIPEMD-128).
964                                                   836 
965           Its speed is comparable to SHA-1 and !! 837           It's speed is comparable to SHA1 and there are no known attacks
966           against RIPEMD-160.                     838           against RIPEMD-160.
967                                                   839 
968           Developed by Hans Dobbertin, Antoon     840           Developed by Hans Dobbertin, Antoon Bosselaers and Bart Preneel.
969           See https://homes.esat.kuleuven.be/~ !! 841           See <https://homes.esat.kuleuven.be/~bosselae/ripemd160.html>
970           for further information.             << 
971                                                   842 
972 config CRYPTO_SHA1                                843 config CRYPTO_SHA1
973         tristate "SHA-1"                       !! 844         tristate "SHA1 digest algorithm"
974         select CRYPTO_HASH                        845         select CRYPTO_HASH
975         select CRYPTO_LIB_SHA1                 << 
976         help                                      846         help
977           SHA-1 secure hash algorithm (FIPS 18 !! 847           SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
                                                   >> 848 
                                                   >> 849 config CRYPTO_SHA1_SSSE3
                                                   >> 850         tristate "SHA1 digest algorithm (SSSE3/AVX/AVX2/SHA-NI)"
                                                   >> 851         depends on X86 && 64BIT
                                                   >> 852         select CRYPTO_SHA1
                                                   >> 853         select CRYPTO_HASH
                                                   >> 854         help
                                                   >> 855           SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2) implemented
                                                   >> 856           using Supplemental SSE3 (SSSE3) instructions or Advanced Vector
                                                   >> 857           Extensions (AVX/AVX2) or SHA-NI(SHA Extensions New Instructions),
                                                   >> 858           when available.
                                                   >> 859 
                                                   >> 860 config CRYPTO_SHA256_SSSE3
                                                   >> 861         tristate "SHA256 digest algorithm (SSSE3/AVX/AVX2/SHA-NI)"
                                                   >> 862         depends on X86 && 64BIT
                                                   >> 863         select CRYPTO_SHA256
                                                   >> 864         select CRYPTO_HASH
                                                   >> 865         help
                                                   >> 866           SHA-256 secure hash standard (DFIPS 180-2) implemented
                                                   >> 867           using Supplemental SSE3 (SSSE3) instructions, or Advanced Vector
                                                   >> 868           Extensions version 1 (AVX1), or Advanced Vector Extensions
                                                   >> 869           version 2 (AVX2) instructions, or SHA-NI (SHA Extensions New
                                                   >> 870           Instructions) when available.
                                                   >> 871 
                                                   >> 872 config CRYPTO_SHA512_SSSE3
                                                   >> 873         tristate "SHA512 digest algorithm (SSSE3/AVX/AVX2)"
                                                   >> 874         depends on X86 && 64BIT
                                                   >> 875         select CRYPTO_SHA512
                                                   >> 876         select CRYPTO_HASH
                                                   >> 877         help
                                                   >> 878           SHA-512 secure hash standard (DFIPS 180-2) implemented
                                                   >> 879           using Supplemental SSE3 (SSSE3) instructions, or Advanced Vector
                                                   >> 880           Extensions version 1 (AVX1), or Advanced Vector Extensions
                                                   >> 881           version 2 (AVX2) instructions, when available.
                                                   >> 882 
                                                   >> 883 config CRYPTO_SHA1_OCTEON
                                                   >> 884         tristate "SHA1 digest algorithm (OCTEON)"
                                                   >> 885         depends on CPU_CAVIUM_OCTEON
                                                   >> 886         select CRYPTO_SHA1
                                                   >> 887         select CRYPTO_HASH
                                                   >> 888         help
                                                   >> 889           SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2) implemented
                                                   >> 890           using OCTEON crypto instructions, when available.
                                                   >> 891 
                                                   >> 892 config CRYPTO_SHA1_SPARC64
                                                   >> 893         tristate "SHA1 digest algorithm (SPARC64)"
                                                   >> 894         depends on SPARC64
                                                   >> 895         select CRYPTO_SHA1
                                                   >> 896         select CRYPTO_HASH
                                                   >> 897         help
                                                   >> 898           SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2) implemented
                                                   >> 899           using sparc64 crypto instructions, when available.
                                                   >> 900 
                                                   >> 901 config CRYPTO_SHA1_PPC
                                                   >> 902         tristate "SHA1 digest algorithm (powerpc)"
                                                   >> 903         depends on PPC
                                                   >> 904         help
                                                   >> 905           This is the powerpc hardware accelerated implementation of the
                                                   >> 906           SHA-1 secure hash standard (FIPS 180-1/DFIPS 180-2).
                                                   >> 907 
                                                   >> 908 config CRYPTO_SHA1_PPC_SPE
                                                   >> 909         tristate "SHA1 digest algorithm (PPC SPE)"
                                                   >> 910         depends on PPC && SPE
                                                   >> 911         help
                                                   >> 912           SHA-1 secure hash standard (DFIPS 180-4) implemented
                                                   >> 913           using powerpc SPE SIMD instruction set.
978                                                   914 
979 config CRYPTO_SHA256                              915 config CRYPTO_SHA256
980         tristate "SHA-224 and SHA-256"         !! 916         tristate "SHA224 and SHA256 digest algorithm"
981         select CRYPTO_HASH                        917         select CRYPTO_HASH
982         select CRYPTO_LIB_SHA256                  918         select CRYPTO_LIB_SHA256
983         help                                      919         help
984           SHA-224 and SHA-256 secure hash algo !! 920           SHA256 secure hash standard (DFIPS 180-2).
                                                   >> 921 
                                                   >> 922           This version of SHA implements a 256 bit hash with 128 bits of
                                                   >> 923           security against collision attacks.
985                                                   924 
986           This is required for IPsec AH (XFRM_ !! 925           This code also includes SHA-224, a 224 bit hash with 112 bits
987           Used by the btrfs filesystem, Ceph,  !! 926           of security against collision attacks.
                                                   >> 927 
                                                   >> 928 config CRYPTO_SHA256_PPC_SPE
                                                   >> 929         tristate "SHA224 and SHA256 digest algorithm (PPC SPE)"
                                                   >> 930         depends on PPC && SPE
                                                   >> 931         select CRYPTO_SHA256
                                                   >> 932         select CRYPTO_HASH
                                                   >> 933         help
                                                   >> 934           SHA224 and SHA256 secure hash standard (DFIPS 180-2)
                                                   >> 935           implemented using powerpc SPE SIMD instruction set.
                                                   >> 936 
                                                   >> 937 config CRYPTO_SHA256_OCTEON
                                                   >> 938         tristate "SHA224 and SHA256 digest algorithm (OCTEON)"
                                                   >> 939         depends on CPU_CAVIUM_OCTEON
                                                   >> 940         select CRYPTO_SHA256
                                                   >> 941         select CRYPTO_HASH
                                                   >> 942         help
                                                   >> 943           SHA-256 secure hash standard (DFIPS 180-2) implemented
                                                   >> 944           using OCTEON crypto instructions, when available.
                                                   >> 945 
                                                   >> 946 config CRYPTO_SHA256_SPARC64
                                                   >> 947         tristate "SHA224 and SHA256 digest algorithm (SPARC64)"
                                                   >> 948         depends on SPARC64
                                                   >> 949         select CRYPTO_SHA256
                                                   >> 950         select CRYPTO_HASH
                                                   >> 951         help
                                                   >> 952           SHA-256 secure hash standard (DFIPS 180-2) implemented
                                                   >> 953           using sparc64 crypto instructions, when available.
988                                                   954 
989 config CRYPTO_SHA512                              955 config CRYPTO_SHA512
990         tristate "SHA-384 and SHA-512"         !! 956         tristate "SHA384 and SHA512 digest algorithms"
991         select CRYPTO_HASH                        957         select CRYPTO_HASH
992         help                                      958         help
993           SHA-384 and SHA-512 secure hash algo !! 959           SHA512 secure hash standard (DFIPS 180-2).
994                                                   960 
995 config CRYPTO_SHA3                             !! 961           This version of SHA implements a 512 bit hash with 256 bits of
996         tristate "SHA-3"                       !! 962           security against collision attacks.
                                                   >> 963 
                                                   >> 964           This code also includes SHA-384, a 384 bit hash with 192 bits
                                                   >> 965           of security against collision attacks.
                                                   >> 966 
                                                   >> 967 config CRYPTO_SHA512_OCTEON
                                                   >> 968         tristate "SHA384 and SHA512 digest algorithms (OCTEON)"
                                                   >> 969         depends on CPU_CAVIUM_OCTEON
                                                   >> 970         select CRYPTO_SHA512
997         select CRYPTO_HASH                        971         select CRYPTO_HASH
998         help                                      972         help
999           SHA-3 secure hash algorithms (FIPS 2 !! 973           SHA-512 secure hash standard (DFIPS 180-2) implemented
                                                   >> 974           using OCTEON crypto instructions, when available.
1000                                                  975 
1001 config CRYPTO_SM3                             !! 976 config CRYPTO_SHA512_SPARC64
1002         tristate                              !! 977         tristate "SHA384 and SHA512 digest algorithm (SPARC64)"
                                                   >> 978         depends on SPARC64
                                                   >> 979         select CRYPTO_SHA512
                                                   >> 980         select CRYPTO_HASH
                                                   >> 981         help
                                                   >> 982           SHA-512 secure hash standard (DFIPS 180-2) implemented
                                                   >> 983           using sparc64 crypto instructions, when available.
1003                                                  984 
1004 config CRYPTO_SM3_GENERIC                     !! 985 config CRYPTO_SHA3
1005         tristate "SM3 (ShangMi 3)"            !! 986         tristate "SHA3 digest algorithm"
1006         select CRYPTO_HASH                       987         select CRYPTO_HASH
1007         select CRYPTO_SM3                     << 
1008         help                                     988         help
1009           SM3 (ShangMi 3) secure hash functio !! 989           SHA-3 secure hash standard (DFIPS 202). It's based on
                                                   >> 990           cryptographic sponge function family called Keccak.
1010                                                  991 
1011           This is part of the Chinese Commerc !! 992           References:
                                                   >> 993           http://keccak.noekeon.org/
                                                   >> 994 
                                                   >> 995 config CRYPTO_SM3
                                                   >> 996         tristate "SM3 digest algorithm"
                                                   >> 997         select CRYPTO_HASH
                                                   >> 998         select CRYPTO_LIB_SM3
                                                   >> 999         help
                                                   >> 1000           SM3 secure hash function as defined by OSCCA GM/T 0004-2012 SM3).
                                                   >> 1001           It is part of the Chinese Commercial Cryptography suite.
1012                                                  1002 
1013           References:                            1003           References:
1014           http://www.oscca.gov.cn/UpFile/2010    1004           http://www.oscca.gov.cn/UpFile/20101222141857786.pdf
1015           https://datatracker.ietf.org/doc/ht    1005           https://datatracker.ietf.org/doc/html/draft-shen-sm3-hash
1016                                                  1006 
                                                   >> 1007 config CRYPTO_SM3_AVX_X86_64
                                                   >> 1008         tristate "SM3 digest algorithm (x86_64/AVX)"
                                                   >> 1009         depends on X86 && 64BIT
                                                   >> 1010         select CRYPTO_HASH
                                                   >> 1011         select CRYPTO_LIB_SM3
                                                   >> 1012         help
                                                   >> 1013           SM3 secure hash function as defined by OSCCA GM/T 0004-2012 SM3).
                                                   >> 1014           It is part of the Chinese Commercial Cryptography suite. This is
                                                   >> 1015           SM3 optimized implementation using Advanced Vector Extensions (AVX)
                                                   >> 1016           when available.
                                                   >> 1017 
                                                   >> 1018           If unsure, say N.
                                                   >> 1019 
1017 config CRYPTO_STREEBOG                           1020 config CRYPTO_STREEBOG
1018         tristate "Streebog"                   !! 1021         tristate "Streebog Hash Function"
1019         select CRYPTO_HASH                       1022         select CRYPTO_HASH
1020         help                                     1023         help
1021           Streebog Hash Function (GOST R 34.1 !! 1024           Streebog Hash Function (GOST R 34.11-2012, RFC 6986) is one of the Russian
1022                                               !! 1025           cryptographic standard algorithms (called GOST algorithms).
1023           This is one of the Russian cryptogr !! 1026           This setting enables two hash algorithms with 256 and 512 bits output.
1024           GOST algorithms). This setting enab << 
1025           256 and 512 bits output.            << 
1026                                                  1027 
1027           References:                            1028           References:
1028           https://tc26.ru/upload/iblock/fed/f    1029           https://tc26.ru/upload/iblock/fed/feddbb4d26b685903faa2ba11aea43f6.pdf
1029           https://tools.ietf.org/html/rfc6986    1030           https://tools.ietf.org/html/rfc6986
1030                                                  1031 
1031 config CRYPTO_VMAC                            !! 1032 config CRYPTO_WP512
1032         tristate "VMAC"                       !! 1033         tristate "Whirlpool digest algorithms"
1033         select CRYPTO_HASH                       1034         select CRYPTO_HASH
1034         select CRYPTO_MANAGER                 << 
1035         help                                     1035         help
1036           VMAC is a message authentication al !! 1036           Whirlpool hash algorithm 512, 384 and 256-bit hashes
1037           very high speed on 64-bit architect << 
1038                                                  1037 
1039           See https://fastcrypto.org/vmac for !! 1038           Whirlpool-512 is part of the NESSIE cryptographic primitives.
                                                   >> 1039           Whirlpool will be part of the ISO/IEC 10118-3:2003(E) standard
1040                                                  1040 
1041 config CRYPTO_WP512                           !! 1041           See also:
1042         tristate "Whirlpool"                  !! 1042           <http://www.larc.usp.br/~pbarreto/WhirlpoolPage.html>
1043         select CRYPTO_HASH                    !! 1043 
                                                   >> 1044 config CRYPTO_GHASH_CLMUL_NI_INTEL
                                                   >> 1045         tristate "GHASH hash function (CLMUL-NI accelerated)"
                                                   >> 1046         depends on X86 && 64BIT
                                                   >> 1047         select CRYPTO_CRYPTD
1044         help                                     1048         help
1045           Whirlpool hash function (ISO/IEC 10 !! 1049           This is the x86_64 CLMUL-NI accelerated implementation of
                                                   >> 1050           GHASH, the hash function used in GCM (Galois/Counter mode).
1046                                                  1051 
1047           512, 384 and 256-bit hashes.        !! 1052 comment "Ciphers"
1048                                                  1053 
1049           Whirlpool-512 is part of the NESSIE !! 1054 config CRYPTO_AES
                                                   >> 1055         tristate "AES cipher algorithms"
                                                   >> 1056         select CRYPTO_ALGAPI
                                                   >> 1057         select CRYPTO_LIB_AES
                                                   >> 1058         help
                                                   >> 1059           AES cipher algorithms (FIPS-197). AES uses the Rijndael
                                                   >> 1060           algorithm.
                                                   >> 1061 
                                                   >> 1062           Rijndael appears to be consistently a very good performer in
                                                   >> 1063           both hardware and software across a wide range of computing
                                                   >> 1064           environments regardless of its use in feedback or non-feedback
                                                   >> 1065           modes. Its key setup time is excellent, and its key agility is
                                                   >> 1066           good. Rijndael's very low memory requirements make it very well
                                                   >> 1067           suited for restricted-space environments, in which it also
                                                   >> 1068           demonstrates excellent performance. Rijndael's operations are
                                                   >> 1069           among the easiest to defend against power and timing attacks.
1050                                                  1070 
1051           See https://web.archive.org/web/201 !! 1071           The AES specifies three key sizes: 128, 192 and 256 bits
1052           for further information.            << 
1053                                                  1072 
1054 config CRYPTO_XCBC                            !! 1073           See <http://csrc.nist.gov/CryptoToolkit/aes/> for more information.
1055         tristate "XCBC-MAC (Extended Cipher B !! 1074 
1056         select CRYPTO_HASH                    !! 1075 config CRYPTO_AES_TI
1057         select CRYPTO_MANAGER                 !! 1076         tristate "Fixed time AES cipher"
                                                   >> 1077         select CRYPTO_ALGAPI
                                                   >> 1078         select CRYPTO_LIB_AES
1058         help                                     1079         help
1059           XCBC-MAC (Extended Cipher Block Cha !! 1080           This is a generic implementation of AES that attempts to eliminate
1060           Code) (RFC3566)                     !! 1081           data dependent latencies as much as possible without affecting
                                                   >> 1082           performance too much. It is intended for use by the generic CCM
                                                   >> 1083           and GCM drivers, and other CTR or CMAC/XCBC based modes that rely
                                                   >> 1084           solely on encryption (although decryption is supported as well, but
                                                   >> 1085           with a more dramatic performance hit)
1061                                                  1086 
1062 config CRYPTO_XXHASH                          !! 1087           Instead of using 16 lookup tables of 1 KB each, (8 for encryption and
1063         tristate "xxHash"                     !! 1088           8 for decryption), this implementation only uses just two S-boxes of
1064         select CRYPTO_HASH                    !! 1089           256 bytes each, and attempts to eliminate data dependent latencies by
1065         select XXHASH                         !! 1090           prefetching the entire table into the cache at the start of each
                                                   >> 1091           block. Interrupts are also disabled to avoid races where cachelines
                                                   >> 1092           are evicted when the CPU is interrupted to do something else.
                                                   >> 1093 
                                                   >> 1094 config CRYPTO_AES_NI_INTEL
                                                   >> 1095         tristate "AES cipher algorithms (AES-NI)"
                                                   >> 1096         depends on X86
                                                   >> 1097         select CRYPTO_AEAD
                                                   >> 1098         select CRYPTO_LIB_AES
                                                   >> 1099         select CRYPTO_ALGAPI
                                                   >> 1100         select CRYPTO_SKCIPHER
                                                   >> 1101         select CRYPTO_SIMD
1066         help                                     1102         help
1067           xxHash non-cryptographic hash algor !! 1103           Use Intel AES-NI instructions for AES algorithm.
1068                                                  1104 
1069           Extremely fast, working at speeds c !! 1105           AES cipher algorithms (FIPS-197). AES uses the Rijndael
                                                   >> 1106           algorithm.
1070                                                  1107 
1071           Used by the btrfs filesystem.       !! 1108           Rijndael appears to be consistently a very good performer in
                                                   >> 1109           both hardware and software across a wide range of computing
                                                   >> 1110           environments regardless of its use in feedback or non-feedback
                                                   >> 1111           modes. Its key setup time is excellent, and its key agility is
                                                   >> 1112           good. Rijndael's very low memory requirements make it very well
                                                   >> 1113           suited for restricted-space environments, in which it also
                                                   >> 1114           demonstrates excellent performance. Rijndael's operations are
                                                   >> 1115           among the easiest to defend against power and timing attacks.
1072                                                  1116 
1073 endmenu                                       !! 1117           The AES specifies three key sizes: 128, 192 and 256 bits
1074                                                  1118 
1075 menu "CRCs (cyclic redundancy checks)"        !! 1119           See <http://csrc.nist.gov/encryption/aes/> for more information.
1076                                                  1120 
1077 config CRYPTO_CRC32C                          !! 1121           In addition to AES cipher algorithm support, the acceleration
1078         tristate "CRC32c"                     !! 1122           for some popular block cipher mode is supported too, including
1079         select CRYPTO_HASH                    !! 1123           ECB, CBC, LRW, XTS. The 64 bit version has additional
1080         select CRC32                          !! 1124           acceleration for CTR.
                                                   >> 1125 
                                                   >> 1126 config CRYPTO_AES_SPARC64
                                                   >> 1127         tristate "AES cipher algorithms (SPARC64)"
                                                   >> 1128         depends on SPARC64
                                                   >> 1129         select CRYPTO_SKCIPHER
1081         help                                     1130         help
1082           CRC32c CRC algorithm with the iSCSI !! 1131           Use SPARC64 crypto opcodes for AES algorithm.
1083                                                  1132 
1084           A 32-bit CRC (cyclic redundancy che !! 1133           AES cipher algorithms (FIPS-197). AES uses the Rijndael
1085           by G. Castagnoli, S. Braeuer and M. !! 1134           algorithm.
1086           Redundancy-Check Codes with 24 and  << 
1087           on Communications, Vol. 41, No. 6,  << 
1088           iSCSI.                              << 
1089                                                  1135 
1090           Used by btrfs, ext4, jbd2, NVMeoF/T !! 1136           Rijndael appears to be consistently a very good performer in
                                                   >> 1137           both hardware and software across a wide range of computing
                                                   >> 1138           environments regardless of its use in feedback or non-feedback
                                                   >> 1139           modes. Its key setup time is excellent, and its key agility is
                                                   >> 1140           good. Rijndael's very low memory requirements make it very well
                                                   >> 1141           suited for restricted-space environments, in which it also
                                                   >> 1142           demonstrates excellent performance. Rijndael's operations are
                                                   >> 1143           among the easiest to defend against power and timing attacks.
1091                                                  1144 
1092 config CRYPTO_CRC32                           !! 1145           The AES specifies three key sizes: 128, 192 and 256 bits
1093         tristate "CRC32"                      !! 1146 
1094         select CRYPTO_HASH                    !! 1147           See <http://csrc.nist.gov/encryption/aes/> for more information.
1095         select CRC32                          !! 1148 
                                                   >> 1149           In addition to AES cipher algorithm support, the acceleration
                                                   >> 1150           for some popular block cipher mode is supported too, including
                                                   >> 1151           ECB and CBC.
                                                   >> 1152 
                                                   >> 1153 config CRYPTO_AES_PPC_SPE
                                                   >> 1154         tristate "AES cipher algorithms (PPC SPE)"
                                                   >> 1155         depends on PPC && SPE
                                                   >> 1156         select CRYPTO_SKCIPHER
                                                   >> 1157         help
                                                   >> 1158           AES cipher algorithms (FIPS-197). Additionally the acceleration
                                                   >> 1159           for popular block cipher modes ECB, CBC, CTR and XTS is supported.
                                                   >> 1160           This module should only be used for low power (router) devices
                                                   >> 1161           without hardware AES acceleration (e.g. caam crypto). It reduces the
                                                   >> 1162           size of the AES tables from 16KB to 8KB + 256 bytes and mitigates
                                                   >> 1163           timining attacks. Nevertheless it might be not as secure as other
                                                   >> 1164           architecture specific assembler implementations that work on 1KB
                                                   >> 1165           tables or 256 bytes S-boxes.
                                                   >> 1166 
                                                   >> 1167 config CRYPTO_ANUBIS
                                                   >> 1168         tristate "Anubis cipher algorithm"
                                                   >> 1169         depends on CRYPTO_USER_API_ENABLE_OBSOLETE
                                                   >> 1170         select CRYPTO_ALGAPI
1096         help                                     1171         help
1097           CRC32 CRC algorithm (IEEE 802.3)    !! 1172           Anubis cipher algorithm.
                                                   >> 1173 
                                                   >> 1174           Anubis is a variable key length cipher which can use keys from
                                                   >> 1175           128 bits to 320 bits in length.  It was evaluated as a entrant
                                                   >> 1176           in the NESSIE competition.
1098                                                  1177 
1099           Used by RoCEv2 and f2fs.            !! 1178           See also:
                                                   >> 1179           <https://www.cosic.esat.kuleuven.be/nessie/reports/>
                                                   >> 1180           <http://www.larc.usp.br/~pbarreto/AnubisPage.html>
1100                                                  1181 
1101 config CRYPTO_CRCT10DIF                       !! 1182 config CRYPTO_ARC4
1102         tristate "CRCT10DIF"                  !! 1183         tristate "ARC4 cipher algorithm"
1103         select CRYPTO_HASH                    !! 1184         depends on CRYPTO_USER_API_ENABLE_OBSOLETE
                                                   >> 1185         select CRYPTO_SKCIPHER
                                                   >> 1186         select CRYPTO_LIB_ARC4
1104         help                                     1187         help
1105           CRC16 CRC algorithm used for the T1 !! 1188           ARC4 cipher algorithm.
1106                                                  1189 
1107           CRC algorithm used by the SCSI Bloc !! 1190           ARC4 is a stream cipher using keys ranging from 8 bits to 2048
                                                   >> 1191           bits in length.  This algorithm is required for driver-based
                                                   >> 1192           WEP, but it should not be for other purposes because of the
                                                   >> 1193           weakness of the algorithm.
1108                                                  1194 
1109 config CRYPTO_CRC64_ROCKSOFT                  !! 1195 config CRYPTO_BLOWFISH
1110         tristate "CRC64 based on Rocksoft Mod !! 1196         tristate "Blowfish cipher algorithm"
1111         depends on CRC64                      !! 1197         select CRYPTO_ALGAPI
1112         select CRYPTO_HASH                    !! 1198         select CRYPTO_BLOWFISH_COMMON
                                                   >> 1199         help
                                                   >> 1200           Blowfish cipher algorithm, by Bruce Schneier.
                                                   >> 1201 
                                                   >> 1202           This is a variable key length cipher which can use keys from 32
                                                   >> 1203           bits to 448 bits in length.  It's fast, simple and specifically
                                                   >> 1204           designed for use on "large microprocessors".
                                                   >> 1205 
                                                   >> 1206           See also:
                                                   >> 1207           <https://www.schneier.com/blowfish.html>
                                                   >> 1208 
                                                   >> 1209 config CRYPTO_BLOWFISH_COMMON
                                                   >> 1210         tristate
                                                   >> 1211         help
                                                   >> 1212           Common parts of the Blowfish cipher algorithm shared by the
                                                   >> 1213           generic c and the assembler implementations.
                                                   >> 1214 
                                                   >> 1215           See also:
                                                   >> 1216           <https://www.schneier.com/blowfish.html>
                                                   >> 1217 
                                                   >> 1218 config CRYPTO_BLOWFISH_X86_64
                                                   >> 1219         tristate "Blowfish cipher algorithm (x86_64)"
                                                   >> 1220         depends on X86 && 64BIT
                                                   >> 1221         select CRYPTO_SKCIPHER
                                                   >> 1222         select CRYPTO_BLOWFISH_COMMON
                                                   >> 1223         imply CRYPTO_CTR
                                                   >> 1224         help
                                                   >> 1225           Blowfish cipher algorithm (x86_64), by Bruce Schneier.
                                                   >> 1226 
                                                   >> 1227           This is a variable key length cipher which can use keys from 32
                                                   >> 1228           bits to 448 bits in length.  It's fast, simple and specifically
                                                   >> 1229           designed for use on "large microprocessors".
                                                   >> 1230 
                                                   >> 1231           See also:
                                                   >> 1232           <https://www.schneier.com/blowfish.html>
                                                   >> 1233 
                                                   >> 1234 config CRYPTO_CAMELLIA
                                                   >> 1235         tristate "Camellia cipher algorithms"
                                                   >> 1236         select CRYPTO_ALGAPI
                                                   >> 1237         help
                                                   >> 1238           Camellia cipher algorithms module.
                                                   >> 1239 
                                                   >> 1240           Camellia is a symmetric key block cipher developed jointly
                                                   >> 1241           at NTT and Mitsubishi Electric Corporation.
                                                   >> 1242 
                                                   >> 1243           The Camellia specifies three key sizes: 128, 192 and 256 bits.
                                                   >> 1244 
                                                   >> 1245           See also:
                                                   >> 1246           <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
                                                   >> 1247 
                                                   >> 1248 config CRYPTO_CAMELLIA_X86_64
                                                   >> 1249         tristate "Camellia cipher algorithm (x86_64)"
                                                   >> 1250         depends on X86 && 64BIT
                                                   >> 1251         select CRYPTO_SKCIPHER
                                                   >> 1252         imply CRYPTO_CTR
                                                   >> 1253         help
                                                   >> 1254           Camellia cipher algorithm module (x86_64).
                                                   >> 1255 
                                                   >> 1256           Camellia is a symmetric key block cipher developed jointly
                                                   >> 1257           at NTT and Mitsubishi Electric Corporation.
                                                   >> 1258 
                                                   >> 1259           The Camellia specifies three key sizes: 128, 192 and 256 bits.
                                                   >> 1260 
                                                   >> 1261           See also:
                                                   >> 1262           <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
                                                   >> 1263 
                                                   >> 1264 config CRYPTO_CAMELLIA_AESNI_AVX_X86_64
                                                   >> 1265         tristate "Camellia cipher algorithm (x86_64/AES-NI/AVX)"
                                                   >> 1266         depends on X86 && 64BIT
                                                   >> 1267         select CRYPTO_SKCIPHER
                                                   >> 1268         select CRYPTO_CAMELLIA_X86_64
                                                   >> 1269         select CRYPTO_SIMD
                                                   >> 1270         imply CRYPTO_XTS
1113         help                                     1271         help
1114           CRC64 CRC algorithm based on the Ro !! 1272           Camellia cipher algorithm module (x86_64/AES-NI/AVX).
1115                                                  1273 
1116           Used by the NVMe implementation of  !! 1274           Camellia is a symmetric key block cipher developed jointly
                                                   >> 1275           at NTT and Mitsubishi Electric Corporation.
1117                                                  1276 
1118           See https://zlib.net/crc_v3.txt     !! 1277           The Camellia specifies three key sizes: 128, 192 and 256 bits.
1119                                                  1278 
1120 endmenu                                       !! 1279           See also:
                                                   >> 1280           <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
1121                                                  1281 
1122 menu "Compression"                            !! 1282 config CRYPTO_CAMELLIA_AESNI_AVX2_X86_64
                                                   >> 1283         tristate "Camellia cipher algorithm (x86_64/AES-NI/AVX2)"
                                                   >> 1284         depends on X86 && 64BIT
                                                   >> 1285         select CRYPTO_CAMELLIA_AESNI_AVX_X86_64
                                                   >> 1286         help
                                                   >> 1287           Camellia cipher algorithm module (x86_64/AES-NI/AVX2).
                                                   >> 1288 
                                                   >> 1289           Camellia is a symmetric key block cipher developed jointly
                                                   >> 1290           at NTT and Mitsubishi Electric Corporation.
                                                   >> 1291 
                                                   >> 1292           The Camellia specifies three key sizes: 128, 192 and 256 bits.
                                                   >> 1293 
                                                   >> 1294           See also:
                                                   >> 1295           <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
                                                   >> 1296 
                                                   >> 1297 config CRYPTO_CAMELLIA_SPARC64
                                                   >> 1298         tristate "Camellia cipher algorithm (SPARC64)"
                                                   >> 1299         depends on SPARC64
                                                   >> 1300         select CRYPTO_ALGAPI
                                                   >> 1301         select CRYPTO_SKCIPHER
                                                   >> 1302         help
                                                   >> 1303           Camellia cipher algorithm module (SPARC64).
                                                   >> 1304 
                                                   >> 1305           Camellia is a symmetric key block cipher developed jointly
                                                   >> 1306           at NTT and Mitsubishi Electric Corporation.
                                                   >> 1307 
                                                   >> 1308           The Camellia specifies three key sizes: 128, 192 and 256 bits.
                                                   >> 1309 
                                                   >> 1310           See also:
                                                   >> 1311           <https://info.isl.ntt.co.jp/crypt/eng/camellia/index_s.html>
                                                   >> 1312 
                                                   >> 1313 config CRYPTO_CAST_COMMON
                                                   >> 1314         tristate
                                                   >> 1315         help
                                                   >> 1316           Common parts of the CAST cipher algorithms shared by the
                                                   >> 1317           generic c and the assembler implementations.
                                                   >> 1318 
                                                   >> 1319 config CRYPTO_CAST5
                                                   >> 1320         tristate "CAST5 (CAST-128) cipher algorithm"
                                                   >> 1321         select CRYPTO_ALGAPI
                                                   >> 1322         select CRYPTO_CAST_COMMON
                                                   >> 1323         help
                                                   >> 1324           The CAST5 encryption algorithm (synonymous with CAST-128) is
                                                   >> 1325           described in RFC2144.
                                                   >> 1326 
                                                   >> 1327 config CRYPTO_CAST5_AVX_X86_64
                                                   >> 1328         tristate "CAST5 (CAST-128) cipher algorithm (x86_64/AVX)"
                                                   >> 1329         depends on X86 && 64BIT
                                                   >> 1330         select CRYPTO_SKCIPHER
                                                   >> 1331         select CRYPTO_CAST5
                                                   >> 1332         select CRYPTO_CAST_COMMON
                                                   >> 1333         select CRYPTO_SIMD
                                                   >> 1334         imply CRYPTO_CTR
                                                   >> 1335         help
                                                   >> 1336           The CAST5 encryption algorithm (synonymous with CAST-128) is
                                                   >> 1337           described in RFC2144.
                                                   >> 1338 
                                                   >> 1339           This module provides the Cast5 cipher algorithm that processes
                                                   >> 1340           sixteen blocks parallel using the AVX instruction set.
                                                   >> 1341 
                                                   >> 1342 config CRYPTO_CAST6
                                                   >> 1343         tristate "CAST6 (CAST-256) cipher algorithm"
                                                   >> 1344         select CRYPTO_ALGAPI
                                                   >> 1345         select CRYPTO_CAST_COMMON
                                                   >> 1346         help
                                                   >> 1347           The CAST6 encryption algorithm (synonymous with CAST-256) is
                                                   >> 1348           described in RFC2612.
                                                   >> 1349 
                                                   >> 1350 config CRYPTO_CAST6_AVX_X86_64
                                                   >> 1351         tristate "CAST6 (CAST-256) cipher algorithm (x86_64/AVX)"
                                                   >> 1352         depends on X86 && 64BIT
                                                   >> 1353         select CRYPTO_SKCIPHER
                                                   >> 1354         select CRYPTO_CAST6
                                                   >> 1355         select CRYPTO_CAST_COMMON
                                                   >> 1356         select CRYPTO_SIMD
                                                   >> 1357         imply CRYPTO_XTS
                                                   >> 1358         imply CRYPTO_CTR
                                                   >> 1359         help
                                                   >> 1360           The CAST6 encryption algorithm (synonymous with CAST-256) is
                                                   >> 1361           described in RFC2612.
                                                   >> 1362 
                                                   >> 1363           This module provides the Cast6 cipher algorithm that processes
                                                   >> 1364           eight blocks parallel using the AVX instruction set.
                                                   >> 1365 
                                                   >> 1366 config CRYPTO_DES
                                                   >> 1367         tristate "DES and Triple DES EDE cipher algorithms"
                                                   >> 1368         select CRYPTO_ALGAPI
                                                   >> 1369         select CRYPTO_LIB_DES
                                                   >> 1370         help
                                                   >> 1371           DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3).
                                                   >> 1372 
                                                   >> 1373 config CRYPTO_DES_SPARC64
                                                   >> 1374         tristate "DES and Triple DES EDE cipher algorithms (SPARC64)"
                                                   >> 1375         depends on SPARC64
                                                   >> 1376         select CRYPTO_ALGAPI
                                                   >> 1377         select CRYPTO_LIB_DES
                                                   >> 1378         select CRYPTO_SKCIPHER
                                                   >> 1379         help
                                                   >> 1380           DES cipher algorithm (FIPS 46-2), and Triple DES EDE (FIPS 46-3),
                                                   >> 1381           optimized using SPARC64 crypto opcodes.
                                                   >> 1382 
                                                   >> 1383 config CRYPTO_DES3_EDE_X86_64
                                                   >> 1384         tristate "Triple DES EDE cipher algorithm (x86-64)"
                                                   >> 1385         depends on X86 && 64BIT
                                                   >> 1386         select CRYPTO_SKCIPHER
                                                   >> 1387         select CRYPTO_LIB_DES
                                                   >> 1388         imply CRYPTO_CTR
                                                   >> 1389         help
                                                   >> 1390           Triple DES EDE (FIPS 46-3) algorithm.
                                                   >> 1391 
                                                   >> 1392           This module provides implementation of the Triple DES EDE cipher
                                                   >> 1393           algorithm that is optimized for x86-64 processors. Two versions of
                                                   >> 1394           algorithm are provided; regular processing one input block and
                                                   >> 1395           one that processes three blocks parallel.
                                                   >> 1396 
                                                   >> 1397 config CRYPTO_FCRYPT
                                                   >> 1398         tristate "FCrypt cipher algorithm"
                                                   >> 1399         select CRYPTO_ALGAPI
                                                   >> 1400         select CRYPTO_SKCIPHER
                                                   >> 1401         help
                                                   >> 1402           FCrypt algorithm used by RxRPC.
                                                   >> 1403 
                                                   >> 1404 config CRYPTO_KHAZAD
                                                   >> 1405         tristate "Khazad cipher algorithm"
                                                   >> 1406         depends on CRYPTO_USER_API_ENABLE_OBSOLETE
                                                   >> 1407         select CRYPTO_ALGAPI
                                                   >> 1408         help
                                                   >> 1409           Khazad cipher algorithm.
                                                   >> 1410 
                                                   >> 1411           Khazad was a finalist in the initial NESSIE competition.  It is
                                                   >> 1412           an algorithm optimized for 64-bit processors with good performance
                                                   >> 1413           on 32-bit processors.  Khazad uses an 128 bit key size.
                                                   >> 1414 
                                                   >> 1415           See also:
                                                   >> 1416           <http://www.larc.usp.br/~pbarreto/KhazadPage.html>
                                                   >> 1417 
                                                   >> 1418 config CRYPTO_CHACHA20
                                                   >> 1419         tristate "ChaCha stream cipher algorithms"
                                                   >> 1420         select CRYPTO_LIB_CHACHA_GENERIC
                                                   >> 1421         select CRYPTO_SKCIPHER
                                                   >> 1422         help
                                                   >> 1423           The ChaCha20, XChaCha20, and XChaCha12 stream cipher algorithms.
                                                   >> 1424 
                                                   >> 1425           ChaCha20 is a 256-bit high-speed stream cipher designed by Daniel J.
                                                   >> 1426           Bernstein and further specified in RFC7539 for use in IETF protocols.
                                                   >> 1427           This is the portable C implementation of ChaCha20.  See also:
                                                   >> 1428           <https://cr.yp.to/chacha/chacha-20080128.pdf>
                                                   >> 1429 
                                                   >> 1430           XChaCha20 is the application of the XSalsa20 construction to ChaCha20
                                                   >> 1431           rather than to Salsa20.  XChaCha20 extends ChaCha20's nonce length
                                                   >> 1432           from 64 bits (or 96 bits using the RFC7539 convention) to 192 bits,
                                                   >> 1433           while provably retaining ChaCha20's security.  See also:
                                                   >> 1434           <https://cr.yp.to/snuffle/xsalsa-20081128.pdf>
                                                   >> 1435 
                                                   >> 1436           XChaCha12 is XChaCha20 reduced to 12 rounds, with correspondingly
                                                   >> 1437           reduced security margin but increased performance.  It can be needed
                                                   >> 1438           in some performance-sensitive scenarios.
                                                   >> 1439 
                                                   >> 1440 config CRYPTO_CHACHA20_X86_64
                                                   >> 1441         tristate "ChaCha stream cipher algorithms (x86_64/SSSE3/AVX2/AVX-512VL)"
                                                   >> 1442         depends on X86 && 64BIT
                                                   >> 1443         select CRYPTO_SKCIPHER
                                                   >> 1444         select CRYPTO_LIB_CHACHA_GENERIC
                                                   >> 1445         select CRYPTO_ARCH_HAVE_LIB_CHACHA
                                                   >> 1446         help
                                                   >> 1447           SSSE3, AVX2, and AVX-512VL optimized implementations of the ChaCha20,
                                                   >> 1448           XChaCha20, and XChaCha12 stream ciphers.
                                                   >> 1449 
                                                   >> 1450 config CRYPTO_CHACHA_MIPS
                                                   >> 1451         tristate "ChaCha stream cipher algorithms (MIPS 32r2 optimized)"
                                                   >> 1452         depends on CPU_MIPS32_R2
                                                   >> 1453         select CRYPTO_SKCIPHER
                                                   >> 1454         select CRYPTO_ARCH_HAVE_LIB_CHACHA
                                                   >> 1455 
                                                   >> 1456 config CRYPTO_SEED
                                                   >> 1457         tristate "SEED cipher algorithm"
                                                   >> 1458         depends on CRYPTO_USER_API_ENABLE_OBSOLETE
                                                   >> 1459         select CRYPTO_ALGAPI
                                                   >> 1460         help
                                                   >> 1461           SEED cipher algorithm (RFC4269).
                                                   >> 1462 
                                                   >> 1463           SEED is a 128-bit symmetric key block cipher that has been
                                                   >> 1464           developed by KISA (Korea Information Security Agency) as a
                                                   >> 1465           national standard encryption algorithm of the Republic of Korea.
                                                   >> 1466           It is a 16 round block cipher with the key size of 128 bit.
                                                   >> 1467 
                                                   >> 1468           See also:
                                                   >> 1469           <http://www.kisa.or.kr/kisa/seed/jsp/seed_eng.jsp>
                                                   >> 1470 
                                                   >> 1471 config CRYPTO_SERPENT
                                                   >> 1472         tristate "Serpent cipher algorithm"
                                                   >> 1473         select CRYPTO_ALGAPI
                                                   >> 1474         help
                                                   >> 1475           Serpent cipher algorithm, by Anderson, Biham & Knudsen.
                                                   >> 1476 
                                                   >> 1477           Keys are allowed to be from 0 to 256 bits in length, in steps
                                                   >> 1478           of 8 bits.
                                                   >> 1479 
                                                   >> 1480           See also:
                                                   >> 1481           <https://www.cl.cam.ac.uk/~rja14/serpent.html>
                                                   >> 1482 
                                                   >> 1483 config CRYPTO_SERPENT_SSE2_X86_64
                                                   >> 1484         tristate "Serpent cipher algorithm (x86_64/SSE2)"
                                                   >> 1485         depends on X86 && 64BIT
                                                   >> 1486         select CRYPTO_SKCIPHER
                                                   >> 1487         select CRYPTO_SERPENT
                                                   >> 1488         select CRYPTO_SIMD
                                                   >> 1489         imply CRYPTO_CTR
                                                   >> 1490         help
                                                   >> 1491           Serpent cipher algorithm, by Anderson, Biham & Knudsen.
                                                   >> 1492 
                                                   >> 1493           Keys are allowed to be from 0 to 256 bits in length, in steps
                                                   >> 1494           of 8 bits.
                                                   >> 1495 
                                                   >> 1496           This module provides Serpent cipher algorithm that processes eight
                                                   >> 1497           blocks parallel using SSE2 instruction set.
                                                   >> 1498 
                                                   >> 1499           See also:
                                                   >> 1500           <https://www.cl.cam.ac.uk/~rja14/serpent.html>
                                                   >> 1501 
                                                   >> 1502 config CRYPTO_SERPENT_SSE2_586
                                                   >> 1503         tristate "Serpent cipher algorithm (i586/SSE2)"
                                                   >> 1504         depends on X86 && !64BIT
                                                   >> 1505         select CRYPTO_SKCIPHER
                                                   >> 1506         select CRYPTO_SERPENT
                                                   >> 1507         select CRYPTO_SIMD
                                                   >> 1508         imply CRYPTO_CTR
                                                   >> 1509         help
                                                   >> 1510           Serpent cipher algorithm, by Anderson, Biham & Knudsen.
                                                   >> 1511 
                                                   >> 1512           Keys are allowed to be from 0 to 256 bits in length, in steps
                                                   >> 1513           of 8 bits.
                                                   >> 1514 
                                                   >> 1515           This module provides Serpent cipher algorithm that processes four
                                                   >> 1516           blocks parallel using SSE2 instruction set.
                                                   >> 1517 
                                                   >> 1518           See also:
                                                   >> 1519           <https://www.cl.cam.ac.uk/~rja14/serpent.html>
                                                   >> 1520 
                                                   >> 1521 config CRYPTO_SERPENT_AVX_X86_64
                                                   >> 1522         tristate "Serpent cipher algorithm (x86_64/AVX)"
                                                   >> 1523         depends on X86 && 64BIT
                                                   >> 1524         select CRYPTO_SKCIPHER
                                                   >> 1525         select CRYPTO_SERPENT
                                                   >> 1526         select CRYPTO_SIMD
                                                   >> 1527         imply CRYPTO_XTS
                                                   >> 1528         imply CRYPTO_CTR
                                                   >> 1529         help
                                                   >> 1530           Serpent cipher algorithm, by Anderson, Biham & Knudsen.
                                                   >> 1531 
                                                   >> 1532           Keys are allowed to be from 0 to 256 bits in length, in steps
                                                   >> 1533           of 8 bits.
                                                   >> 1534 
                                                   >> 1535           This module provides the Serpent cipher algorithm that processes
                                                   >> 1536           eight blocks parallel using the AVX instruction set.
                                                   >> 1537 
                                                   >> 1538           See also:
                                                   >> 1539           <https://www.cl.cam.ac.uk/~rja14/serpent.html>
                                                   >> 1540 
                                                   >> 1541 config CRYPTO_SERPENT_AVX2_X86_64
                                                   >> 1542         tristate "Serpent cipher algorithm (x86_64/AVX2)"
                                                   >> 1543         depends on X86 && 64BIT
                                                   >> 1544         select CRYPTO_SERPENT_AVX_X86_64
                                                   >> 1545         help
                                                   >> 1546           Serpent cipher algorithm, by Anderson, Biham & Knudsen.
                                                   >> 1547 
                                                   >> 1548           Keys are allowed to be from 0 to 256 bits in length, in steps
                                                   >> 1549           of 8 bits.
                                                   >> 1550 
                                                   >> 1551           This module provides Serpent cipher algorithm that processes 16
                                                   >> 1552           blocks parallel using AVX2 instruction set.
                                                   >> 1553 
                                                   >> 1554           See also:
                                                   >> 1555           <https://www.cl.cam.ac.uk/~rja14/serpent.html>
                                                   >> 1556 
                                                   >> 1557 config CRYPTO_SM4
                                                   >> 1558         tristate "SM4 cipher algorithm"
                                                   >> 1559         select CRYPTO_ALGAPI
                                                   >> 1560         select CRYPTO_LIB_SM4
                                                   >> 1561         help
                                                   >> 1562           SM4 cipher algorithms (OSCCA GB/T 32907-2016).
                                                   >> 1563 
                                                   >> 1564           SM4 (GBT.32907-2016) is a cryptographic standard issued by the
                                                   >> 1565           Organization of State Commercial Administration of China (OSCCA)
                                                   >> 1566           as an authorized cryptographic algorithms for the use within China.
                                                   >> 1567 
                                                   >> 1568           SMS4 was originally created for use in protecting wireless
                                                   >> 1569           networks, and is mandated in the Chinese National Standard for
                                                   >> 1570           Wireless LAN WAPI (Wired Authentication and Privacy Infrastructure)
                                                   >> 1571           (GB.15629.11-2003).
                                                   >> 1572 
                                                   >> 1573           The latest SM4 standard (GBT.32907-2016) was proposed by OSCCA and
                                                   >> 1574           standardized through TC 260 of the Standardization Administration
                                                   >> 1575           of the People's Republic of China (SAC).
                                                   >> 1576 
                                                   >> 1577           The input, output, and key of SMS4 are each 128 bits.
                                                   >> 1578 
                                                   >> 1579           See also: <https://eprint.iacr.org/2008/329.pdf>
                                                   >> 1580 
                                                   >> 1581           If unsure, say N.
                                                   >> 1582 
                                                   >> 1583 config CRYPTO_SM4_AESNI_AVX_X86_64
                                                   >> 1584         tristate "SM4 cipher algorithm (x86_64/AES-NI/AVX)"
                                                   >> 1585         depends on X86 && 64BIT
                                                   >> 1586         select CRYPTO_SKCIPHER
                                                   >> 1587         select CRYPTO_SIMD
                                                   >> 1588         select CRYPTO_ALGAPI
                                                   >> 1589         select CRYPTO_LIB_SM4
                                                   >> 1590         help
                                                   >> 1591           SM4 cipher algorithms (OSCCA GB/T 32907-2016) (x86_64/AES-NI/AVX).
                                                   >> 1592 
                                                   >> 1593           SM4 (GBT.32907-2016) is a cryptographic standard issued by the
                                                   >> 1594           Organization of State Commercial Administration of China (OSCCA)
                                                   >> 1595           as an authorized cryptographic algorithms for the use within China.
                                                   >> 1596 
                                                   >> 1597           This is SM4 optimized implementation using AES-NI/AVX/x86_64
                                                   >> 1598           instruction set for block cipher. Through two affine transforms,
                                                   >> 1599           we can use the AES S-Box to simulate the SM4 S-Box to achieve the
                                                   >> 1600           effect of instruction acceleration.
                                                   >> 1601 
                                                   >> 1602           If unsure, say N.
                                                   >> 1603 
                                                   >> 1604 config CRYPTO_SM4_AESNI_AVX2_X86_64
                                                   >> 1605         tristate "SM4 cipher algorithm (x86_64/AES-NI/AVX2)"
                                                   >> 1606         depends on X86 && 64BIT
                                                   >> 1607         select CRYPTO_SKCIPHER
                                                   >> 1608         select CRYPTO_SIMD
                                                   >> 1609         select CRYPTO_ALGAPI
                                                   >> 1610         select CRYPTO_LIB_SM4
                                                   >> 1611         select CRYPTO_SM4_AESNI_AVX_X86_64
                                                   >> 1612         help
                                                   >> 1613           SM4 cipher algorithms (OSCCA GB/T 32907-2016) (x86_64/AES-NI/AVX2).
                                                   >> 1614 
                                                   >> 1615           SM4 (GBT.32907-2016) is a cryptographic standard issued by the
                                                   >> 1616           Organization of State Commercial Administration of China (OSCCA)
                                                   >> 1617           as an authorized cryptographic algorithms for the use within China.
                                                   >> 1618 
                                                   >> 1619           This is SM4 optimized implementation using AES-NI/AVX2/x86_64
                                                   >> 1620           instruction set for block cipher. Through two affine transforms,
                                                   >> 1621           we can use the AES S-Box to simulate the SM4 S-Box to achieve the
                                                   >> 1622           effect of instruction acceleration.
                                                   >> 1623 
                                                   >> 1624           If unsure, say N.
                                                   >> 1625 
                                                   >> 1626 config CRYPTO_TEA
                                                   >> 1627         tristate "TEA, XTEA and XETA cipher algorithms"
                                                   >> 1628         depends on CRYPTO_USER_API_ENABLE_OBSOLETE
                                                   >> 1629         select CRYPTO_ALGAPI
                                                   >> 1630         help
                                                   >> 1631           TEA cipher algorithm.
                                                   >> 1632 
                                                   >> 1633           Tiny Encryption Algorithm is a simple cipher that uses
                                                   >> 1634           many rounds for security.  It is very fast and uses
                                                   >> 1635           little memory.
                                                   >> 1636 
                                                   >> 1637           Xtendend Tiny Encryption Algorithm is a modification to
                                                   >> 1638           the TEA algorithm to address a potential key weakness
                                                   >> 1639           in the TEA algorithm.
                                                   >> 1640 
                                                   >> 1641           Xtendend Encryption Tiny Algorithm is a mis-implementation
                                                   >> 1642           of the XTEA algorithm for compatibility purposes.
                                                   >> 1643 
                                                   >> 1644 config CRYPTO_TWOFISH
                                                   >> 1645         tristate "Twofish cipher algorithm"
                                                   >> 1646         select CRYPTO_ALGAPI
                                                   >> 1647         select CRYPTO_TWOFISH_COMMON
                                                   >> 1648         help
                                                   >> 1649           Twofish cipher algorithm.
                                                   >> 1650 
                                                   >> 1651           Twofish was submitted as an AES (Advanced Encryption Standard)
                                                   >> 1652           candidate cipher by researchers at CounterPane Systems.  It is a
                                                   >> 1653           16 round block cipher supporting key sizes of 128, 192, and 256
                                                   >> 1654           bits.
                                                   >> 1655 
                                                   >> 1656           See also:
                                                   >> 1657           <https://www.schneier.com/twofish.html>
                                                   >> 1658 
                                                   >> 1659 config CRYPTO_TWOFISH_COMMON
                                                   >> 1660         tristate
                                                   >> 1661         help
                                                   >> 1662           Common parts of the Twofish cipher algorithm shared by the
                                                   >> 1663           generic c and the assembler implementations.
                                                   >> 1664 
                                                   >> 1665 config CRYPTO_TWOFISH_586
                                                   >> 1666         tristate "Twofish cipher algorithms (i586)"
                                                   >> 1667         depends on (X86 || UML_X86) && !64BIT
                                                   >> 1668         select CRYPTO_ALGAPI
                                                   >> 1669         select CRYPTO_TWOFISH_COMMON
                                                   >> 1670         imply CRYPTO_CTR
                                                   >> 1671         help
                                                   >> 1672           Twofish cipher algorithm.
                                                   >> 1673 
                                                   >> 1674           Twofish was submitted as an AES (Advanced Encryption Standard)
                                                   >> 1675           candidate cipher by researchers at CounterPane Systems.  It is a
                                                   >> 1676           16 round block cipher supporting key sizes of 128, 192, and 256
                                                   >> 1677           bits.
                                                   >> 1678 
                                                   >> 1679           See also:
                                                   >> 1680           <https://www.schneier.com/twofish.html>
                                                   >> 1681 
                                                   >> 1682 config CRYPTO_TWOFISH_X86_64
                                                   >> 1683         tristate "Twofish cipher algorithm (x86_64)"
                                                   >> 1684         depends on (X86 || UML_X86) && 64BIT
                                                   >> 1685         select CRYPTO_ALGAPI
                                                   >> 1686         select CRYPTO_TWOFISH_COMMON
                                                   >> 1687         imply CRYPTO_CTR
                                                   >> 1688         help
                                                   >> 1689           Twofish cipher algorithm (x86_64).
                                                   >> 1690 
                                                   >> 1691           Twofish was submitted as an AES (Advanced Encryption Standard)
                                                   >> 1692           candidate cipher by researchers at CounterPane Systems.  It is a
                                                   >> 1693           16 round block cipher supporting key sizes of 128, 192, and 256
                                                   >> 1694           bits.
                                                   >> 1695 
                                                   >> 1696           See also:
                                                   >> 1697           <https://www.schneier.com/twofish.html>
                                                   >> 1698 
                                                   >> 1699 config CRYPTO_TWOFISH_X86_64_3WAY
                                                   >> 1700         tristate "Twofish cipher algorithm (x86_64, 3-way parallel)"
                                                   >> 1701         depends on X86 && 64BIT
                                                   >> 1702         select CRYPTO_SKCIPHER
                                                   >> 1703         select CRYPTO_TWOFISH_COMMON
                                                   >> 1704         select CRYPTO_TWOFISH_X86_64
                                                   >> 1705         help
                                                   >> 1706           Twofish cipher algorithm (x86_64, 3-way parallel).
                                                   >> 1707 
                                                   >> 1708           Twofish was submitted as an AES (Advanced Encryption Standard)
                                                   >> 1709           candidate cipher by researchers at CounterPane Systems.  It is a
                                                   >> 1710           16 round block cipher supporting key sizes of 128, 192, and 256
                                                   >> 1711           bits.
                                                   >> 1712 
                                                   >> 1713           This module provides Twofish cipher algorithm that processes three
                                                   >> 1714           blocks parallel, utilizing resources of out-of-order CPUs better.
                                                   >> 1715 
                                                   >> 1716           See also:
                                                   >> 1717           <https://www.schneier.com/twofish.html>
                                                   >> 1718 
                                                   >> 1719 config CRYPTO_TWOFISH_AVX_X86_64
                                                   >> 1720         tristate "Twofish cipher algorithm (x86_64/AVX)"
                                                   >> 1721         depends on X86 && 64BIT
                                                   >> 1722         select CRYPTO_SKCIPHER
                                                   >> 1723         select CRYPTO_SIMD
                                                   >> 1724         select CRYPTO_TWOFISH_COMMON
                                                   >> 1725         select CRYPTO_TWOFISH_X86_64
                                                   >> 1726         select CRYPTO_TWOFISH_X86_64_3WAY
                                                   >> 1727         imply CRYPTO_XTS
                                                   >> 1728         help
                                                   >> 1729           Twofish cipher algorithm (x86_64/AVX).
                                                   >> 1730 
                                                   >> 1731           Twofish was submitted as an AES (Advanced Encryption Standard)
                                                   >> 1732           candidate cipher by researchers at CounterPane Systems.  It is a
                                                   >> 1733           16 round block cipher supporting key sizes of 128, 192, and 256
                                                   >> 1734           bits.
                                                   >> 1735 
                                                   >> 1736           This module provides the Twofish cipher algorithm that processes
                                                   >> 1737           eight blocks parallel using the AVX Instruction Set.
                                                   >> 1738 
                                                   >> 1739           See also:
                                                   >> 1740           <https://www.schneier.com/twofish.html>
                                                   >> 1741 
                                                   >> 1742 comment "Compression"
1123                                                  1743 
1124 config CRYPTO_DEFLATE                            1744 config CRYPTO_DEFLATE
1125         tristate "Deflate"                    !! 1745         tristate "Deflate compression algorithm"
1126         select CRYPTO_ALGAPI                     1746         select CRYPTO_ALGAPI
1127         select CRYPTO_ACOMP2                     1747         select CRYPTO_ACOMP2
1128         select ZLIB_INFLATE                      1748         select ZLIB_INFLATE
1129         select ZLIB_DEFLATE                      1749         select ZLIB_DEFLATE
1130         help                                     1750         help
1131           Deflate compression algorithm (RFC1 !! 1751           This is the Deflate algorithm (RFC1951), specified for use in
                                                   >> 1752           IPSec with the IPCOMP protocol (RFC3173, RFC2394).
1132                                                  1753 
1133           Used by IPSec with the IPCOMP proto !! 1754           You will most probably want this if using IPSec.
1134                                                  1755 
1135 config CRYPTO_LZO                                1756 config CRYPTO_LZO
1136         tristate "LZO"                        !! 1757         tristate "LZO compression algorithm"
1137         select CRYPTO_ALGAPI                     1758         select CRYPTO_ALGAPI
1138         select CRYPTO_ACOMP2                     1759         select CRYPTO_ACOMP2
1139         select LZO_COMPRESS                      1760         select LZO_COMPRESS
1140         select LZO_DECOMPRESS                    1761         select LZO_DECOMPRESS
1141         help                                     1762         help
1142           LZO compression algorithm           !! 1763           This is the LZO algorithm.
1143                                               << 
1144           See https://www.oberhumer.com/opens << 
1145                                                  1764 
1146 config CRYPTO_842                                1765 config CRYPTO_842
1147         tristate "842"                        !! 1766         tristate "842 compression algorithm"
1148         select CRYPTO_ALGAPI                     1767         select CRYPTO_ALGAPI
1149         select CRYPTO_ACOMP2                     1768         select CRYPTO_ACOMP2
1150         select 842_COMPRESS                      1769         select 842_COMPRESS
1151         select 842_DECOMPRESS                    1770         select 842_DECOMPRESS
1152         help                                     1771         help
1153           842 compression algorithm by IBM    !! 1772           This is the 842 algorithm.
1154                                               << 
1155           See https://github.com/plauth/lib84 << 
1156                                                  1773 
1157 config CRYPTO_LZ4                                1774 config CRYPTO_LZ4
1158         tristate "LZ4"                        !! 1775         tristate "LZ4 compression algorithm"
1159         select CRYPTO_ALGAPI                     1776         select CRYPTO_ALGAPI
1160         select CRYPTO_ACOMP2                     1777         select CRYPTO_ACOMP2
1161         select LZ4_COMPRESS                      1778         select LZ4_COMPRESS
1162         select LZ4_DECOMPRESS                    1779         select LZ4_DECOMPRESS
1163         help                                     1780         help
1164           LZ4 compression algorithm           !! 1781           This is the LZ4 algorithm.
1165                                               << 
1166           See https://github.com/lz4/lz4 for  << 
1167                                                  1782 
1168 config CRYPTO_LZ4HC                              1783 config CRYPTO_LZ4HC
1169         tristate "LZ4HC"                      !! 1784         tristate "LZ4HC compression algorithm"
1170         select CRYPTO_ALGAPI                     1785         select CRYPTO_ALGAPI
1171         select CRYPTO_ACOMP2                     1786         select CRYPTO_ACOMP2
1172         select LZ4HC_COMPRESS                    1787         select LZ4HC_COMPRESS
1173         select LZ4_DECOMPRESS                    1788         select LZ4_DECOMPRESS
1174         help                                     1789         help
1175           LZ4 high compression mode algorithm !! 1790           This is the LZ4 high compression mode algorithm.
1176                                               << 
1177           See https://github.com/lz4/lz4 for  << 
1178                                                  1791 
1179 config CRYPTO_ZSTD                               1792 config CRYPTO_ZSTD
1180         tristate "Zstd"                       !! 1793         tristate "Zstd compression algorithm"
1181         select CRYPTO_ALGAPI                     1794         select CRYPTO_ALGAPI
1182         select CRYPTO_ACOMP2                     1795         select CRYPTO_ACOMP2
1183         select ZSTD_COMPRESS                     1796         select ZSTD_COMPRESS
1184         select ZSTD_DECOMPRESS                   1797         select ZSTD_DECOMPRESS
1185         help                                     1798         help
1186           zstd compression algorithm          !! 1799           This is the zstd algorithm.
1187                                               << 
1188           See https://github.com/facebook/zst << 
1189                                               << 
1190 endmenu                                       << 
1191                                                  1800 
1192 menu "Random number generation"               !! 1801 comment "Random Number Generation"
1193                                                  1802 
1194 config CRYPTO_ANSI_CPRNG                         1803 config CRYPTO_ANSI_CPRNG
1195         tristate "ANSI PRNG (Pseudo Random Nu !! 1804         tristate "Pseudo Random Number Generation for Cryptographic modules"
1196         select CRYPTO_AES                        1805         select CRYPTO_AES
1197         select CRYPTO_RNG                        1806         select CRYPTO_RNG
1198         help                                     1807         help
1199           Pseudo RNG (random number generator !! 1808           This option enables the generic pseudo random number generator
1200                                               !! 1809           for cryptographic modules.  Uses the Algorithm specified in
1201           This uses the AES cipher algorithm. !! 1810           ANSI X9.31 A.2.4. Note that this option must be enabled if
1202                                               !! 1811           CRYPTO_FIPS is selected
1203           Note that this option must be enabl << 
1204                                                  1812 
1205 menuconfig CRYPTO_DRBG_MENU                      1813 menuconfig CRYPTO_DRBG_MENU
1206         tristate "NIST SP800-90A DRBG (Determ !! 1814         tristate "NIST SP800-90A DRBG"
1207         help                                     1815         help
1208           DRBG (Deterministic Random Bit Gene !! 1816           NIST SP800-90A compliant DRBG. In the following submenu, one or
1209                                               !! 1817           more of the DRBG types must be selected.
1210           In the following submenu, one or mo << 
1211                                                  1818 
1212 if CRYPTO_DRBG_MENU                              1819 if CRYPTO_DRBG_MENU
1213                                                  1820 
1214 config CRYPTO_DRBG_HMAC                          1821 config CRYPTO_DRBG_HMAC
1215         bool                                     1822         bool
1216         default y                                1823         default y
1217         select CRYPTO_HMAC                       1824         select CRYPTO_HMAC
1218         select CRYPTO_SHA512                     1825         select CRYPTO_SHA512
1219                                                  1826 
1220 config CRYPTO_DRBG_HASH                          1827 config CRYPTO_DRBG_HASH
1221         bool "Hash_DRBG"                      !! 1828         bool "Enable Hash DRBG"
1222         select CRYPTO_SHA256                     1829         select CRYPTO_SHA256
1223         help                                     1830         help
1224           Hash_DRBG variant as defined in NIS !! 1831           Enable the Hash DRBG variant as defined in NIST SP800-90A.
1225                                               << 
1226           This uses the SHA-1, SHA-256, SHA-3 << 
1227                                                  1832 
1228 config CRYPTO_DRBG_CTR                           1833 config CRYPTO_DRBG_CTR
1229         bool "CTR_DRBG"                       !! 1834         bool "Enable CTR DRBG"
1230         select CRYPTO_AES                        1835         select CRYPTO_AES
1231         select CRYPTO_CTR                        1836         select CRYPTO_CTR
1232         help                                     1837         help
1233           CTR_DRBG variant as defined in NIST !! 1838           Enable the CTR DRBG variant as defined in NIST SP800-90A.
1234                                               << 
1235           This uses the AES cipher algorithm  << 
1236                                                  1839 
1237 config CRYPTO_DRBG                               1840 config CRYPTO_DRBG
1238         tristate                                 1841         tristate
1239         default CRYPTO_DRBG_MENU                 1842         default CRYPTO_DRBG_MENU
1240         select CRYPTO_RNG                        1843         select CRYPTO_RNG
1241         select CRYPTO_JITTERENTROPY              1844         select CRYPTO_JITTERENTROPY
1242                                                  1845 
1243 endif   # if CRYPTO_DRBG_MENU                    1846 endif   # if CRYPTO_DRBG_MENU
1244                                                  1847 
1245 config CRYPTO_JITTERENTROPY                      1848 config CRYPTO_JITTERENTROPY
1246         tristate "CPU Jitter Non-Deterministi !! 1849         tristate "Jitterentropy Non-Deterministic Random Number Generator"
1247         select CRYPTO_RNG                        1850         select CRYPTO_RNG
1248         select CRYPTO_SHA3                    << 
1249         help                                     1851         help
1250           CPU Jitter RNG (Random Number Gener !! 1852           The Jitterentropy RNG is a noise that is intended
1251                                               !! 1853           to provide seed to another RNG. The RNG does not
1252           A non-physical non-deterministic (" !! 1854           perform any cryptographic whitening of the generated
1253           compliant with NIST SP800-90B) inte !! 1855           random numbers. This Jitterentropy RNG registers with
1254           deterministic RNG (e.g., per NIST S !! 1856           the kernel crypto API and can be used by any caller.
1255           This RNG does not perform any crypt << 
1256           random numbers.                     << 
1257                                               << 
1258           See https://www.chronox.de/jent/    << 
1259                                               << 
1260 if CRYPTO_JITTERENTROPY                       << 
1261 if CRYPTO_FIPS && EXPERT                      << 
1262                                               << 
1263 choice                                        << 
1264         prompt "CPU Jitter RNG Memory Size"   << 
1265         default CRYPTO_JITTERENTROPY_MEMSIZE_ << 
1266         help                                  << 
1267           The Jitter RNG measures the executi << 
1268           Multiple consecutive memory accesse << 
1269           size fits into a cache (e.g. L1), o << 
1270           to that cache is measured. The clos << 
1271           the less variations are measured an << 
1272           obtained. Thus, if the memory size  << 
1273           obtained entropy is less than if th << 
1274           L1 + L2, which in turn is less if t << 
1275           L1 + L2 + L3. Thus, by selecting a  << 
1276           the entropy rate produced by the Ji << 
1277                                               << 
1278         config CRYPTO_JITTERENTROPY_MEMSIZE_2 << 
1279                 bool "2048 Bytes (default)"   << 
1280                                               << 
1281         config CRYPTO_JITTERENTROPY_MEMSIZE_1 << 
1282                 bool "128 kBytes"             << 
1283                                               << 
1284         config CRYPTO_JITTERENTROPY_MEMSIZE_1 << 
1285                 bool "1024 kBytes"            << 
1286                                               << 
1287         config CRYPTO_JITTERENTROPY_MEMSIZE_8 << 
1288                 bool "8192 kBytes"            << 
1289 endchoice                                     << 
1290                                               << 
1291 config CRYPTO_JITTERENTROPY_MEMORY_BLOCKS     << 
1292         int                                   << 
1293         default 64 if CRYPTO_JITTERENTROPY_ME << 
1294         default 512 if CRYPTO_JITTERENTROPY_M << 
1295         default 1024 if CRYPTO_JITTERENTROPY_ << 
1296         default 4096 if CRYPTO_JITTERENTROPY_ << 
1297                                               << 
1298 config CRYPTO_JITTERENTROPY_MEMORY_BLOCKSIZE  << 
1299         int                                   << 
1300         default 32 if CRYPTO_JITTERENTROPY_ME << 
1301         default 256 if CRYPTO_JITTERENTROPY_M << 
1302         default 1024 if CRYPTO_JITTERENTROPY_ << 
1303         default 2048 if CRYPTO_JITTERENTROPY_ << 
1304                                               << 
1305 config CRYPTO_JITTERENTROPY_OSR               << 
1306         int "CPU Jitter RNG Oversampling Rate << 
1307         range 1 15                            << 
1308         default 3                             << 
1309         help                                  << 
1310           The Jitter RNG allows the specifica << 
1311           The Jitter RNG operation requires a << 
1312           measurements to produce one output  << 
1313           OSR value is multiplied with the am << 
1314           generate one output block. Thus, th << 
1315           by the OSR factor. The oversampling << 
1316           on hardware whose timers deliver li << 
1317           the timer is coarse) by setting the << 
1318           trade-off, however, is that the Jit << 
1319           to generate random numbers.         << 
1320                                               << 
1321 config CRYPTO_JITTERENTROPY_TESTINTERFACE     << 
1322         bool "CPU Jitter RNG Test Interface"  << 
1323         help                                  << 
1324           The test interface allows a privile << 
1325           the raw unconditioned high resoluti << 
1326           is collected by the Jitter RNG for  << 
1327           this data is used at the same time  << 
1328           the Jitter RNG operates in an insec << 
1329           recording is enabled. This interfac << 
1330           intended for testing purposes and i << 
1331           production systems.                 << 
1332                                               << 
1333           The raw noise data can be obtained  << 
1334           debugfs file. Using the option      << 
1335           jitterentropy_testing.boot_raw_hire << 
1336           the first 1000 entropy events since << 
1337                                               << 
1338           If unsure, select N.                << 
1339                                               << 
1340 endif   # if CRYPTO_FIPS && EXPERT            << 
1341                                               << 
1342 if !(CRYPTO_FIPS && EXPERT)                   << 
1343                                               << 
1344 config CRYPTO_JITTERENTROPY_MEMORY_BLOCKS     << 
1345         int                                   << 
1346         default 64                            << 
1347                                               << 
1348 config CRYPTO_JITTERENTROPY_MEMORY_BLOCKSIZE  << 
1349         int                                   << 
1350         default 32                            << 
1351                                               << 
1352 config CRYPTO_JITTERENTROPY_OSR               << 
1353         int                                   << 
1354         default 1                             << 
1355                                               << 
1356 config CRYPTO_JITTERENTROPY_TESTINTERFACE     << 
1357         bool                                  << 
1358                                               << 
1359 endif   # if !(CRYPTO_FIPS && EXPERT)         << 
1360 endif   # if CRYPTO_JITTERENTROPY             << 
1361                                                  1857 
1362 config CRYPTO_KDF800108_CTR                      1858 config CRYPTO_KDF800108_CTR
1363         tristate                                 1859         tristate
1364         select CRYPTO_HMAC                       1860         select CRYPTO_HMAC
1365         select CRYPTO_SHA256                     1861         select CRYPTO_SHA256
1366                                                  1862 
1367 endmenu                                       << 
1368 menu "Userspace interface"                    << 
1369                                               << 
1370 config CRYPTO_USER_API                           1863 config CRYPTO_USER_API
1371         tristate                                 1864         tristate
1372                                                  1865 
1373 config CRYPTO_USER_API_HASH                      1866 config CRYPTO_USER_API_HASH
1374         tristate "Hash algorithms"            !! 1867         tristate "User-space interface for hash algorithms"
1375         depends on NET                           1868         depends on NET
1376         select CRYPTO_HASH                       1869         select CRYPTO_HASH
1377         select CRYPTO_USER_API                   1870         select CRYPTO_USER_API
1378         help                                     1871         help
1379           Enable the userspace interface for  !! 1872           This option enables the user-spaces interface for hash
1380                                               !! 1873           algorithms.
1381           See Documentation/crypto/userspace- << 
1382           https://www.chronox.de/libkcapi/htm << 
1383                                                  1874 
1384 config CRYPTO_USER_API_SKCIPHER                  1875 config CRYPTO_USER_API_SKCIPHER
1385         tristate "Symmetric key cipher algori !! 1876         tristate "User-space interface for symmetric key cipher algorithms"
1386         depends on NET                           1877         depends on NET
1387         select CRYPTO_SKCIPHER                   1878         select CRYPTO_SKCIPHER
1388         select CRYPTO_USER_API                   1879         select CRYPTO_USER_API
1389         help                                     1880         help
1390           Enable the userspace interface for  !! 1881           This option enables the user-spaces interface for symmetric
1391                                               !! 1882           key cipher algorithms.
1392           See Documentation/crypto/userspace- << 
1393           https://www.chronox.de/libkcapi/htm << 
1394                                                  1883 
1395 config CRYPTO_USER_API_RNG                       1884 config CRYPTO_USER_API_RNG
1396         tristate "RNG (random number generato !! 1885         tristate "User-space interface for random number generator algorithms"
1397         depends on NET                           1886         depends on NET
1398         select CRYPTO_RNG                        1887         select CRYPTO_RNG
1399         select CRYPTO_USER_API                   1888         select CRYPTO_USER_API
1400         help                                     1889         help
1401           Enable the userspace interface for  !! 1890           This option enables the user-spaces interface for random
1402           algorithms.                         !! 1891           number generator algorithms.
1403                                               << 
1404           See Documentation/crypto/userspace- << 
1405           https://www.chronox.de/libkcapi/htm << 
1406                                                  1892 
1407 config CRYPTO_USER_API_RNG_CAVP                  1893 config CRYPTO_USER_API_RNG_CAVP
1408         bool "Enable CAVP testing of DRBG"       1894         bool "Enable CAVP testing of DRBG"
1409         depends on CRYPTO_USER_API_RNG && CRY    1895         depends on CRYPTO_USER_API_RNG && CRYPTO_DRBG
1410         help                                     1896         help
1411           Enable extra APIs in the userspace  !! 1897           This option enables extra API for CAVP testing via the user-space
1412           (Cryptographic Algorithm Validation !! 1898           interface: resetting of DRBG entropy, and providing Additional Data.
1413           - resetting DRBG entropy            << 
1414           - providing Additional Data         << 
1415                                               << 
1416           This should only be enabled for CAV    1899           This should only be enabled for CAVP testing. You should say
1417           no unless you know what this is.       1900           no unless you know what this is.
1418                                                  1901 
1419 config CRYPTO_USER_API_AEAD                      1902 config CRYPTO_USER_API_AEAD
1420         tristate "AEAD cipher algorithms"     !! 1903         tristate "User-space interface for AEAD cipher algorithms"
1421         depends on NET                           1904         depends on NET
1422         select CRYPTO_AEAD                       1905         select CRYPTO_AEAD
1423         select CRYPTO_SKCIPHER                   1906         select CRYPTO_SKCIPHER
1424         select CRYPTO_NULL                       1907         select CRYPTO_NULL
1425         select CRYPTO_USER_API                   1908         select CRYPTO_USER_API
1426         help                                     1909         help
1427           Enable the userspace interface for  !! 1910           This option enables the user-spaces interface for AEAD
1428                                               !! 1911           cipher algorithms.
1429           See Documentation/crypto/userspace- << 
1430           https://www.chronox.de/libkcapi/htm << 
1431                                                  1912 
1432 config CRYPTO_USER_API_ENABLE_OBSOLETE           1913 config CRYPTO_USER_API_ENABLE_OBSOLETE
1433         bool "Obsolete cryptographic algorith !! 1914         bool "Enable obsolete cryptographic algorithms for userspace"
1434         depends on CRYPTO_USER_API               1915         depends on CRYPTO_USER_API
1435         default y                                1916         default y
1436         help                                     1917         help
1437           Allow obsolete cryptographic algori    1918           Allow obsolete cryptographic algorithms to be selected that have
1438           already been phased out from intern    1919           already been phased out from internal use by the kernel, and are
1439           only useful for userspace clients t    1920           only useful for userspace clients that still rely on them.
1440                                                  1921 
1441 endmenu                                       !! 1922 config CRYPTO_STATS
                                                   >> 1923         bool "Crypto usage statistics for User-space"
                                                   >> 1924         depends on CRYPTO_USER
                                                   >> 1925         help
                                                   >> 1926           This option enables the gathering of crypto stats.
                                                   >> 1927           This will collect:
                                                   >> 1928           - encrypt/decrypt size and numbers of symmeric operations
                                                   >> 1929           - compress/decompress size and numbers of compress operations
                                                   >> 1930           - size and numbers of hash operations
                                                   >> 1931           - encrypt/decrypt/sign/verify numbers for asymmetric operations
                                                   >> 1932           - generate/seed numbers for rng operations
1442                                                  1933 
1443 config CRYPTO_HASH_INFO                          1934 config CRYPTO_HASH_INFO
1444         bool                                     1935         bool
1445                                               << 
1446 if !KMSAN # avoid false positives from assemb << 
1447 if ARM                                        << 
1448 source "arch/arm/crypto/Kconfig"              << 
1449 endif                                         << 
1450 if ARM64                                      << 
1451 source "arch/arm64/crypto/Kconfig"            << 
1452 endif                                         << 
1453 if LOONGARCH                                  << 
1454 source "arch/loongarch/crypto/Kconfig"        << 
1455 endif                                         << 
1456 if MIPS                                       << 
1457 source "arch/mips/crypto/Kconfig"             << 
1458 endif                                         << 
1459 if PPC                                        << 
1460 source "arch/powerpc/crypto/Kconfig"          << 
1461 endif                                         << 
1462 if RISCV                                      << 
1463 source "arch/riscv/crypto/Kconfig"            << 
1464 endif                                         << 
1465 if S390                                       << 
1466 source "arch/s390/crypto/Kconfig"             << 
1467 endif                                         << 
1468 if SPARC                                      << 
1469 source "arch/sparc/crypto/Kconfig"            << 
1470 endif                                         << 
1471 if X86                                        << 
1472 source "arch/x86/crypto/Kconfig"              << 
1473 endif                                         << 
1474 endif                                         << 
1475                                                  1936 
1476 source "drivers/crypto/Kconfig"                  1937 source "drivers/crypto/Kconfig"
1477 source "crypto/asymmetric_keys/Kconfig"          1938 source "crypto/asymmetric_keys/Kconfig"
1478 source "certs/Kconfig"                           1939 source "certs/Kconfig"
1479                                                  1940 
1480 endif   # if CRYPTO                              1941 endif   # if CRYPTO
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php