]>
Commit | Line | Data |
---|---|---|
746b2e02 AB |
1 | # SPDX-License-Identifier: GPL-2.0 |
2 | ||
3 | comment "Crypto library routines" | |
4 | ||
5 | config CRYPTO_LIB_AES | |
6 | tristate | |
7 | ||
8 | config CRYPTO_LIB_ARC4 | |
9 | tristate | |
10 | ||
66d7fb94 JD |
11 | config CRYPTO_ARCH_HAVE_LIB_BLAKE2S |
12 | tristate | |
13 | help | |
14 | Declares whether the architecture provides an arch-specific | |
15 | accelerated implementation of the Blake2s library interface, | |
16 | either builtin or as a module. | |
17 | ||
18 | config CRYPTO_LIB_BLAKE2S_GENERIC | |
19 | tristate | |
20 | help | |
21 | This symbol can be depended upon by arch implementations of the | |
22 | Blake2s library interface that require the generic code as a | |
23 | fallback, e.g., for SIMD implementations. If no arch specific | |
24 | implementation is enabled, this implementation serves the users | |
25 | of CRYPTO_LIB_BLAKE2S. | |
26 | ||
27 | config CRYPTO_LIB_BLAKE2S | |
28 | tristate "BLAKE2s hash function library" | |
29 | depends on CRYPTO_ARCH_HAVE_LIB_BLAKE2S || !CRYPTO_ARCH_HAVE_LIB_BLAKE2S | |
30 | select CRYPTO_LIB_BLAKE2S_GENERIC if CRYPTO_ARCH_HAVE_LIB_BLAKE2S=n | |
31 | help | |
32 | Enable the Blake2s library interface. This interface may be fulfilled | |
33 | by either the generic implementation or an arch-specific one, if one | |
34 | is available and enabled. | |
35 | ||
5fb8ef25 AB |
36 | config CRYPTO_ARCH_HAVE_LIB_CHACHA |
37 | tristate | |
38 | help | |
39 | Declares whether the architecture provides an arch-specific | |
40 | accelerated implementation of the ChaCha library interface, | |
41 | either builtin or as a module. | |
42 | ||
43 | config CRYPTO_LIB_CHACHA_GENERIC | |
44 | tristate | |
45 | select CRYPTO_ALGAPI | |
46 | help | |
47 | This symbol can be depended upon by arch implementations of the | |
48 | ChaCha library interface that require the generic code as a | |
49 | fallback, e.g., for SIMD implementations. If no arch specific | |
50 | implementation is enabled, this implementation serves the users | |
51 | of CRYPTO_LIB_CHACHA. | |
52 | ||
53 | config CRYPTO_LIB_CHACHA | |
54 | tristate "ChaCha library interface" | |
55 | depends on CRYPTO_ARCH_HAVE_LIB_CHACHA || !CRYPTO_ARCH_HAVE_LIB_CHACHA | |
56 | select CRYPTO_LIB_CHACHA_GENERIC if CRYPTO_ARCH_HAVE_LIB_CHACHA=n | |
57 | help | |
58 | Enable the ChaCha library interface. This interface may be fulfilled | |
59 | by either the generic implementation or an arch-specific one, if one | |
60 | is available and enabled. | |
61 | ||
0ed42a6f JD |
62 | config CRYPTO_ARCH_HAVE_LIB_CURVE25519 |
63 | tristate | |
64 | help | |
65 | Declares whether the architecture provides an arch-specific | |
66 | accelerated implementation of the Curve25519 library interface, | |
67 | either builtin or as a module. | |
68 | ||
69 | config CRYPTO_LIB_CURVE25519_GENERIC | |
70 | tristate | |
71 | help | |
72 | This symbol can be depended upon by arch implementations of the | |
73 | Curve25519 library interface that require the generic code as a | |
74 | fallback, e.g., for SIMD implementations. If no arch specific | |
75 | implementation is enabled, this implementation serves the users | |
76 | of CRYPTO_LIB_CURVE25519. | |
77 | ||
78 | config CRYPTO_LIB_CURVE25519 | |
79 | tristate "Curve25519 scalar multiplication library" | |
80 | depends on CRYPTO_ARCH_HAVE_LIB_CURVE25519 || !CRYPTO_ARCH_HAVE_LIB_CURVE25519 | |
81 | select CRYPTO_LIB_CURVE25519_GENERIC if CRYPTO_ARCH_HAVE_LIB_CURVE25519=n | |
82 | help | |
83 | Enable the Curve25519 library interface. This interface may be | |
84 | fulfilled by either the generic implementation or an arch-specific | |
85 | one, if one is available and enabled. | |
86 | ||
746b2e02 AB |
87 | config CRYPTO_LIB_DES |
88 | tristate | |
89 | ||
a1d93064 AB |
90 | config CRYPTO_LIB_POLY1305_RSIZE |
91 | int | |
a11d055e | 92 | default 2 if MIPS |
f0e89bcf | 93 | default 4 if X86_64 |
a6b803b3 | 94 | default 9 if ARM || ARM64 |
a1d93064 AB |
95 | default 1 |
96 | ||
97 | config CRYPTO_ARCH_HAVE_LIB_POLY1305 | |
98 | tristate | |
99 | help | |
100 | Declares whether the architecture provides an arch-specific | |
101 | accelerated implementation of the Poly1305 library interface, | |
102 | either builtin or as a module. | |
103 | ||
48ea8c6e AB |
104 | config CRYPTO_LIB_POLY1305_GENERIC |
105 | tristate | |
a1d93064 AB |
106 | help |
107 | This symbol can be depended upon by arch implementations of the | |
108 | Poly1305 library interface that require the generic code as a | |
109 | fallback, e.g., for SIMD implementations. If no arch specific | |
110 | implementation is enabled, this implementation serves the users | |
111 | of CRYPTO_LIB_POLY1305. | |
112 | ||
113 | config CRYPTO_LIB_POLY1305 | |
114 | tristate "Poly1305 library interface" | |
115 | depends on CRYPTO_ARCH_HAVE_LIB_POLY1305 || !CRYPTO_ARCH_HAVE_LIB_POLY1305 | |
116 | select CRYPTO_LIB_POLY1305_GENERIC if CRYPTO_ARCH_HAVE_LIB_POLY1305=n | |
117 | help | |
118 | Enable the Poly1305 library interface. This interface may be fulfilled | |
119 | by either the generic implementation or an arch-specific one, if one | |
120 | is available and enabled. | |
48ea8c6e | 121 | |
ed20078b AB |
122 | config CRYPTO_LIB_CHACHA20POLY1305 |
123 | tristate "ChaCha20-Poly1305 AEAD support (8-byte nonce library version)" | |
124 | depends on CRYPTO_ARCH_HAVE_LIB_CHACHA || !CRYPTO_ARCH_HAVE_LIB_CHACHA | |
125 | depends on CRYPTO_ARCH_HAVE_LIB_POLY1305 || !CRYPTO_ARCH_HAVE_LIB_POLY1305 | |
126 | select CRYPTO_LIB_CHACHA | |
127 | select CRYPTO_LIB_POLY1305 | |
128 | ||
746b2e02 AB |
129 | config CRYPTO_LIB_SHA256 |
130 | tristate |