1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 2 3 menu "Accelerated Cryptographic Algorithms for !! 3 menu "Accelerated Cryptographic Algorithms for CPU (sparc64)" 4 4 5 config CRYPTO_CURVE25519_NEON !! 5 config CRYPTO_DES_SPARC64 6 tristate "Public key crypto: Curve2551 !! 6 tristate "Ciphers: DES and Triple DES EDE, modes: ECB/CBC" 7 depends on KERNEL_MODE_NEON !! 7 depends on SPARC64 8 select CRYPTO_LIB_CURVE25519_GENERIC !! 8 select CRYPTO_ALGAPI 9 select CRYPTO_ARCH_HAVE_LIB_CURVE25519 !! 9 select CRYPTO_LIB_DES 10 help !! 10 select CRYPTO_SKCIPHER 11 Curve25519 algorithm << 12 << 13 Architecture: arm with << 14 - NEON (Advanced SIMD) extensions << 15 << 16 config CRYPTO_GHASH_ARM_CE << 17 tristate "Hash functions: GHASH (PMULL << 18 depends on KERNEL_MODE_NEON << 19 select CRYPTO_AEAD << 20 select CRYPTO_HASH << 21 select CRYPTO_CRYPTD << 22 select CRYPTO_LIB_AES << 23 select CRYPTO_LIB_GF128MUL << 24 help << 25 GCM GHASH function (NIST SP800-38D) << 26 << 27 Architecture: arm using << 28 - PMULL (Polynomial Multiply Long) i << 29 - NEON (Advanced SIMD) extensions << 30 - ARMv8 Crypto Extensions << 31 << 32 Use an implementation of GHASH (used << 33 that uses the 64x64 to 128 bit polyn << 34 that is part of the ARMv8 Crypto Ext << 35 uses the vmull.p8 instruction that i << 36 << 37 config CRYPTO_NHPOLY1305_NEON << 38 tristate "Hash functions: NHPoly1305 ( << 39 depends on KERNEL_MODE_NEON << 40 select CRYPTO_NHPOLY1305 << 41 help 11 help 42 NHPoly1305 hash function (Adiantum) !! 12 Block cipher: DES (FIPS 46-2) cipher algorithm 43 !! 13 Block cipher: Triple DES EDE (FIPS 46-3) cipher algorithm 44 Architecture: arm using: !! 14 Length-preserving ciphers: DES with ECB and CBC modes 45 - NEON (Advanced SIMD) extensions !! 15 Length-preserving ciphers: Tripe DES EDE with ECB and CBC modes 46 !! 16 47 config CRYPTO_POLY1305_ARM !! 17 Architecture: sparc64 48 tristate "Hash functions: Poly1305 (NE !! 18 >> 19 config CRYPTO_CRC32C_SPARC64 >> 20 tristate "CRC32c" >> 21 depends on SPARC64 49 select CRYPTO_HASH 22 select CRYPTO_HASH 50 select CRYPTO_ARCH_HAVE_LIB_POLY1305 !! 23 select CRC32 51 help << 52 Poly1305 authenticator algorithm (RF << 53 << 54 Architecture: arm optionally using << 55 - NEON (Advanced SIMD) extensions << 56 << 57 config CRYPTO_BLAKE2S_ARM << 58 bool "Hash functions: BLAKE2s" << 59 select CRYPTO_ARCH_HAVE_LIB_BLAKE2S << 60 help << 61 BLAKE2s cryptographic hash function << 62 << 63 Architecture: arm << 64 << 65 This is faster than the generic impl << 66 BLAKE2b, but slower than the NEON im << 67 There is no NEON implementation of B << 68 really help with it. << 69 << 70 config CRYPTO_BLAKE2B_NEON << 71 tristate "Hash functions: BLAKE2b (NEO << 72 depends on KERNEL_MODE_NEON << 73 select CRYPTO_BLAKE2B << 74 help 24 help 75 BLAKE2b cryptographic hash function !! 25 CRC32c CRC algorithm with the iSCSI polynomial (RFC 3385 and RFC 3720) 76 << 77 Architecture: arm using << 78 - NEON (Advanced SIMD) extensions << 79 26 80 BLAKE2b digest algorithm optimized w !! 27 Architecture: sparc64 81 On ARM processors that have NEON sup << 82 Crypto Extensions, typically this BL << 83 much faster than the SHA-2 family an << 84 SHA-1. << 85 28 86 config CRYPTO_SHA1_ARM !! 29 config CRYPTO_MD5_SPARC64 87 tristate "Hash functions: SHA-1" !! 30 tristate "Digests: MD5" 88 select CRYPTO_SHA1 !! 31 depends on SPARC64 >> 32 select CRYPTO_MD5 89 select CRYPTO_HASH 33 select CRYPTO_HASH 90 help 34 help 91 SHA-1 secure hash algorithm (FIPS 18 !! 35 MD5 message digest algorithm (RFC1321) 92 36 93 Architecture: arm !! 37 Architecture: sparc64 using crypto instructions, when available 94 38 95 config CRYPTO_SHA1_ARM_NEON !! 39 config CRYPTO_SHA1_SPARC64 96 tristate "Hash functions: SHA-1 (NEON) !! 40 tristate "Hash functions: SHA-1" 97 depends on KERNEL_MODE_NEON !! 41 depends on SPARC64 98 select CRYPTO_SHA1_ARM << 99 select CRYPTO_SHA1 42 select CRYPTO_SHA1 100 select CRYPTO_HASH 43 select CRYPTO_HASH 101 help 44 help 102 SHA-1 secure hash algorithm (FIPS 18 45 SHA-1 secure hash algorithm (FIPS 180) 103 46 104 Architecture: arm using !! 47 Architecture: sparc64 105 - NEON (Advanced SIMD) extensions << 106 << 107 config CRYPTO_SHA1_ARM_CE << 108 tristate "Hash functions: SHA-1 (ARMv8 << 109 depends on KERNEL_MODE_NEON << 110 select CRYPTO_SHA1_ARM << 111 select CRYPTO_HASH << 112 help << 113 SHA-1 secure hash algorithm (FIPS 18 << 114 << 115 Architecture: arm using ARMv8 Crypto << 116 << 117 config CRYPTO_SHA2_ARM_CE << 118 tristate "Hash functions: SHA-224 and << 119 depends on KERNEL_MODE_NEON << 120 select CRYPTO_SHA256_ARM << 121 select CRYPTO_HASH << 122 help << 123 SHA-224 and SHA-256 secure hash algo << 124 48 125 Architecture: arm using !! 49 config CRYPTO_SHA256_SPARC64 126 - ARMv8 Crypto Extensions !! 50 tristate "Hash functions: SHA-224 and SHA-256" 127 !! 51 depends on SPARC64 128 config CRYPTO_SHA256_ARM !! 52 select CRYPTO_SHA256 129 tristate "Hash functions: SHA-224 and << 130 select CRYPTO_HASH 53 select CRYPTO_HASH 131 depends on !CPU_V7M << 132 help 54 help 133 SHA-224 and SHA-256 secure hash algo 55 SHA-224 and SHA-256 secure hash algorithms (FIPS 180) 134 56 135 Architecture: arm using !! 57 Architecture: sparc64 using crypto instructions, when available 136 - NEON (Advanced SIMD) extensions << 137 58 138 config CRYPTO_SHA512_ARM !! 59 config CRYPTO_SHA512_SPARC64 139 tristate "Hash functions: SHA-384 and !! 60 tristate "Hash functions: SHA-384 and SHA-512" >> 61 depends on SPARC64 >> 62 select CRYPTO_SHA512 140 select CRYPTO_HASH 63 select CRYPTO_HASH 141 depends on !CPU_V7M << 142 help 64 help 143 SHA-384 and SHA-512 secure hash algo 65 SHA-384 and SHA-512 secure hash algorithms (FIPS 180) 144 66 145 Architecture: arm using !! 67 Architecture: sparc64 using crypto instructions, when available 146 - NEON (Advanced SIMD) extensions << 147 << 148 config CRYPTO_AES_ARM << 149 tristate "Ciphers: AES" << 150 select CRYPTO_ALGAPI << 151 select CRYPTO_AES << 152 help << 153 Block ciphers: AES cipher algorithms << 154 << 155 Architecture: arm << 156 68 157 On ARM processors without the Crypto !! 69 config CRYPTO_AES_SPARC64 158 fastest AES implementation for singl !! 70 tristate "Ciphers: AES, modes: ECB, CBC, CTR" 159 blocks, the NEON bit-sliced implemen !! 71 depends on SPARC64 160 << 161 This implementation may be vulnerabl << 162 since it uses lookup tables. Howeve << 163 disables IRQs and preloads the table << 164 such attacks very difficult. << 165 << 166 config CRYPTO_AES_ARM_BS << 167 tristate "Ciphers: AES, modes: ECB/CBC << 168 depends on KERNEL_MODE_NEON << 169 select CRYPTO_AES_ARM << 170 select CRYPTO_SKCIPHER 72 select CRYPTO_SKCIPHER 171 select CRYPTO_LIB_AES << 172 select CRYPTO_SIMD << 173 help 73 help 174 Length-preserving ciphers: AES ciphe !! 74 Block ciphers: AES cipher algorithms (FIPS-197) 175 with block cipher modes: !! 75 Length-preseving ciphers: AES with ECB, CBC, and CTR modes 176 - ECB (Electronic Codebook) mode (N << 177 - CBC (Cipher Block Chaining) mode << 178 - CTR (Counter) mode (NIST SP800-38 << 179 - XTS (XOR Encrypt XOR with ciphert << 180 and IEEE 1619) << 181 << 182 Bit sliced AES gives around 45% spee << 183 and for XTS mode encryption, CBC and << 184 around 25%. (CBC encryption speed is << 185 << 186 The bit sliced AES code does not use << 187 to be invulnerable to cache timing a << 188 sliced AES code cannot process singl << 189 cases table-based code with some cou << 190 attacks will still be used as a fall << 191 encryption (not CBC decryption), the << 192 ciphertext stealing when the message << 193 CTR when invoked in a context in whi << 194 << 195 config CRYPTO_AES_ARM_CE << 196 tristate "Ciphers: AES, modes: ECB/CBC << 197 depends on KERNEL_MODE_NEON << 198 select CRYPTO_SKCIPHER << 199 select CRYPTO_LIB_AES << 200 select CRYPTO_SIMD << 201 help << 202 Length-preserving ciphers: AES ciphe << 203 with block cipher modes: << 204 - ECB (Electronic Codebook) mode (N << 205 - CBC (Cipher Block Chaining) mode << 206 - CTR (Counter) mode (NIST SP800-38 << 207 - CTS (Cipher Text Stealing) mode ( << 208 - XTS (XOR Encrypt XOR with ciphert << 209 and IEEE 1619) << 210 76 211 Architecture: arm using: !! 77 Architecture: sparc64 using crypto instructions 212 - ARMv8 Crypto Extensions << 213 78 214 config CRYPTO_CHACHA20_NEON !! 79 config CRYPTO_CAMELLIA_SPARC64 215 tristate "Ciphers: ChaCha20, XChaCha20 !! 80 tristate "Ciphers: Camellia, modes: ECB, CBC" >> 81 depends on SPARC64 >> 82 select CRYPTO_ALGAPI 216 select CRYPTO_SKCIPHER 83 select CRYPTO_SKCIPHER 217 select CRYPTO_ARCH_HAVE_LIB_CHACHA << 218 help << 219 Length-preserving ciphers: ChaCha20, << 220 stream cipher algorithms << 221 << 222 Architecture: arm using: << 223 - NEON (Advanced SIMD) extensions << 224 << 225 config CRYPTO_CRC32_ARM_CE << 226 tristate "CRC32C and CRC32" << 227 depends on KERNEL_MODE_NEON << 228 depends on CRC32 << 229 select CRYPTO_HASH << 230 help << 231 CRC32c CRC algorithm with the iSCSI << 232 and CRC32 CRC algorithm (IEEE 802.3) << 233 << 234 Architecture: arm using: << 235 - CRC and/or PMULL instructions << 236 << 237 Drivers: crc32-arm-ce and crc32c-arm << 238 << 239 config CRYPTO_CRCT10DIF_ARM_CE << 240 tristate "CRCT10DIF" << 241 depends on KERNEL_MODE_NEON << 242 depends on CRC_T10DIF << 243 select CRYPTO_HASH << 244 help 84 help 245 CRC16 CRC algorithm used for the T10 !! 85 Block ciphers: Camellia cipher algorithms >> 86 Length-preserving ciphers: Camellia with ECB and CBC modes 246 87 247 Architecture: arm using: !! 88 Architecture: sparc64 248 - PMULL (Polynomial Multiply Long) i << 249 89 250 endmenu 90 endmenu 251 <<
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.