Blame view

lib/crypto/Kconfig 4.37 KB
746b2e024   Ard Biesheuvel   crypto: lib - tid...
1
2
3
4
5
6
7
8
9
  # SPDX-License-Identifier: GPL-2.0
  
  comment "Crypto library routines"
  
  config CRYPTO_LIB_AES
  	tristate
  
  config CRYPTO_LIB_ARC4
  	tristate
66d7fb94e   Jason A. Donenfeld   crypto: blake2s -...
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  config CRYPTO_ARCH_HAVE_LIB_BLAKE2S
  	tristate
  	help
  	  Declares whether the architecture provides an arch-specific
  	  accelerated implementation of the Blake2s library interface,
  	  either builtin or as a module.
  
  config CRYPTO_LIB_BLAKE2S_GENERIC
  	tristate
  	help
  	  This symbol can be depended upon by arch implementations of the
  	  Blake2s library interface that require the generic code as a
  	  fallback, e.g., for SIMD implementations. If no arch specific
  	  implementation is enabled, this implementation serves the users
  	  of CRYPTO_LIB_BLAKE2S.
  
  config CRYPTO_LIB_BLAKE2S
  	tristate "BLAKE2s hash function library"
  	depends on CRYPTO_ARCH_HAVE_LIB_BLAKE2S || !CRYPTO_ARCH_HAVE_LIB_BLAKE2S
  	select CRYPTO_LIB_BLAKE2S_GENERIC if CRYPTO_ARCH_HAVE_LIB_BLAKE2S=n
  	help
  	  Enable the Blake2s library interface. This interface may be fulfilled
  	  by either the generic implementation or an arch-specific one, if one
  	  is available and enabled.
5fb8ef258   Ard Biesheuvel   crypto: chacha - ...
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
  config CRYPTO_ARCH_HAVE_LIB_CHACHA
  	tristate
  	help
  	  Declares whether the architecture provides an arch-specific
  	  accelerated implementation of the ChaCha library interface,
  	  either builtin or as a module.
  
  config CRYPTO_LIB_CHACHA_GENERIC
  	tristate
  	select CRYPTO_ALGAPI
  	help
  	  This symbol can be depended upon by arch implementations of the
  	  ChaCha library interface that require the generic code as a
  	  fallback, e.g., for SIMD implementations. If no arch specific
  	  implementation is enabled, this implementation serves the users
  	  of CRYPTO_LIB_CHACHA.
  
  config CRYPTO_LIB_CHACHA
  	tristate "ChaCha library interface"
  	depends on CRYPTO_ARCH_HAVE_LIB_CHACHA || !CRYPTO_ARCH_HAVE_LIB_CHACHA
  	select CRYPTO_LIB_CHACHA_GENERIC if CRYPTO_ARCH_HAVE_LIB_CHACHA=n
  	help
  	  Enable the ChaCha library interface. This interface may be fulfilled
  	  by either the generic implementation or an arch-specific one, if one
  	  is available and enabled.
0ed42a6f4   Jason A. Donenfeld   crypto: curve2551...
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
  config CRYPTO_ARCH_HAVE_LIB_CURVE25519
  	tristate
  	help
  	  Declares whether the architecture provides an arch-specific
  	  accelerated implementation of the Curve25519 library interface,
  	  either builtin or as a module.
  
  config CRYPTO_LIB_CURVE25519_GENERIC
  	tristate
  	help
  	  This symbol can be depended upon by arch implementations of the
  	  Curve25519 library interface that require the generic code as a
  	  fallback, e.g., for SIMD implementations. If no arch specific
  	  implementation is enabled, this implementation serves the users
  	  of CRYPTO_LIB_CURVE25519.
  
  config CRYPTO_LIB_CURVE25519
  	tristate "Curve25519 scalar multiplication library"
  	depends on CRYPTO_ARCH_HAVE_LIB_CURVE25519 || !CRYPTO_ARCH_HAVE_LIB_CURVE25519
  	select CRYPTO_LIB_CURVE25519_GENERIC if CRYPTO_ARCH_HAVE_LIB_CURVE25519=n
  	help
  	  Enable the Curve25519 library interface. This interface may be
  	  fulfilled by either the generic implementation or an arch-specific
  	  one, if one is available and enabled.
746b2e024   Ard Biesheuvel   crypto: lib - tid...
83
84
  config CRYPTO_LIB_DES
  	tristate
a1d930640   Ard Biesheuvel   crypto: poly1305 ...
85
86
  config CRYPTO_LIB_POLY1305_RSIZE
  	int
a11d055e7   Ard Biesheuvel   crypto: mips/poly...
87
  	default 2 if MIPS
d7d7b8535   Jason A. Donenfeld   crypto: x86/poly1...
88
  	default 11 if X86_64
a6b803b3d   Ard Biesheuvel   crypto: arm/poly1...
89
  	default 9 if ARM || ARM64
a1d930640   Ard Biesheuvel   crypto: poly1305 ...
90
91
92
93
94
95
96
97
  	default 1
  
  config CRYPTO_ARCH_HAVE_LIB_POLY1305
  	tristate
  	help
  	  Declares whether the architecture provides an arch-specific
  	  accelerated implementation of the Poly1305 library interface,
  	  either builtin or as a module.
48ea8c6eb   Ard Biesheuvel   crypto: poly1305 ...
98
99
  config CRYPTO_LIB_POLY1305_GENERIC
  	tristate
a1d930640   Ard Biesheuvel   crypto: poly1305 ...
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
  	help
  	  This symbol can be depended upon by arch implementations of the
  	  Poly1305 library interface that require the generic code as a
  	  fallback, e.g., for SIMD implementations. If no arch specific
  	  implementation is enabled, this implementation serves the users
  	  of CRYPTO_LIB_POLY1305.
  
  config CRYPTO_LIB_POLY1305
  	tristate "Poly1305 library interface"
  	depends on CRYPTO_ARCH_HAVE_LIB_POLY1305 || !CRYPTO_ARCH_HAVE_LIB_POLY1305
  	select CRYPTO_LIB_POLY1305_GENERIC if CRYPTO_ARCH_HAVE_LIB_POLY1305=n
  	help
  	  Enable the Poly1305 library interface. This interface may be fulfilled
  	  by either the generic implementation or an arch-specific one, if one
  	  is available and enabled.
48ea8c6eb   Ard Biesheuvel   crypto: poly1305 ...
115

ed20078b7   Ard Biesheuvel   crypto: chacha20p...
116
117
118
119
120
121
  config CRYPTO_LIB_CHACHA20POLY1305
  	tristate "ChaCha20-Poly1305 AEAD support (8-byte nonce library version)"
  	depends on CRYPTO_ARCH_HAVE_LIB_CHACHA || !CRYPTO_ARCH_HAVE_LIB_CHACHA
  	depends on CRYPTO_ARCH_HAVE_LIB_POLY1305 || !CRYPTO_ARCH_HAVE_LIB_POLY1305
  	select CRYPTO_LIB_CHACHA
  	select CRYPTO_LIB_POLY1305
746b2e024   Ard Biesheuvel   crypto: lib - tid...
122
123
  config CRYPTO_LIB_SHA256
  	tristate