xref: /linux-6.15/lib/crypto/Kconfig (revision a11d055e)
1# SPDX-License-Identifier: GPL-2.0
2
3comment "Crypto library routines"
4
5config CRYPTO_LIB_AES
6	tristate
7
8config CRYPTO_LIB_ARC4
9	tristate
10
11config CRYPTO_ARCH_HAVE_LIB_CHACHA
12	tristate
13	help
14	  Declares whether the architecture provides an arch-specific
15	  accelerated implementation of the ChaCha library interface,
16	  either builtin or as a module.
17
18config CRYPTO_LIB_CHACHA_GENERIC
19	tristate
20	select CRYPTO_ALGAPI
21	help
22	  This symbol can be depended upon by arch implementations of the
23	  ChaCha library interface that require the generic code as a
24	  fallback, e.g., for SIMD implementations. If no arch specific
25	  implementation is enabled, this implementation serves the users
26	  of CRYPTO_LIB_CHACHA.
27
28config CRYPTO_LIB_CHACHA
29	tristate "ChaCha library interface"
30	depends on CRYPTO_ARCH_HAVE_LIB_CHACHA || !CRYPTO_ARCH_HAVE_LIB_CHACHA
31	select CRYPTO_LIB_CHACHA_GENERIC if CRYPTO_ARCH_HAVE_LIB_CHACHA=n
32	help
33	  Enable the ChaCha library interface. This interface may be fulfilled
34	  by either the generic implementation or an arch-specific one, if one
35	  is available and enabled.
36
37config CRYPTO_LIB_DES
38	tristate
39
40config CRYPTO_LIB_POLY1305_RSIZE
41	int
42	default 2 if MIPS
43	default 4 if X86_64
44	default 9 if ARM || ARM64
45	default 1
46
47config CRYPTO_ARCH_HAVE_LIB_POLY1305
48	tristate
49	help
50	  Declares whether the architecture provides an arch-specific
51	  accelerated implementation of the Poly1305 library interface,
52	  either builtin or as a module.
53
54config CRYPTO_LIB_POLY1305_GENERIC
55	tristate
56	help
57	  This symbol can be depended upon by arch implementations of the
58	  Poly1305 library interface that require the generic code as a
59	  fallback, e.g., for SIMD implementations. If no arch specific
60	  implementation is enabled, this implementation serves the users
61	  of CRYPTO_LIB_POLY1305.
62
63config CRYPTO_LIB_POLY1305
64	tristate "Poly1305 library interface"
65	depends on CRYPTO_ARCH_HAVE_LIB_POLY1305 || !CRYPTO_ARCH_HAVE_LIB_POLY1305
66	select CRYPTO_LIB_POLY1305_GENERIC if CRYPTO_ARCH_HAVE_LIB_POLY1305=n
67	help
68	  Enable the Poly1305 library interface. This interface may be fulfilled
69	  by either the generic implementation or an arch-specific one, if one
70	  is available and enabled.
71
72config CRYPTO_LIB_SHA256
73	tristate
74