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

TOMOYO Linux Cross Reference
Linux/crypto/Kconfig

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

Diff markup

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


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