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