Commit 05b37465 authored by Robert Elliott's avatar Robert Elliott Committed by Herbert Xu

crypto: Kconfig - simplify public-key entries

Shorten menu titles and make them consistent:
- acronym
- name
- architecture features in parenthesis
- no suffixes like "<something> algorithm", "support", or
  "hardware acceleration", or "optimized"

Simplify help text descriptions, update references, and ensure that
https references are still valid.
Signed-off-by: default avatarRobert Elliott <elliott@hpe.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent f1f142ad
...@@ -3,10 +3,15 @@ ...@@ -3,10 +3,15 @@
menu "Accelerated Cryptographic Algorithms for CPU (arm)" menu "Accelerated Cryptographic Algorithms for CPU (arm)"
config CRYPTO_CURVE25519_NEON config CRYPTO_CURVE25519_NEON
tristate "NEON accelerated Curve25519 scalar multiplication library" tristate "Public key crypto: Curve25519 (NEON)"
depends on KERNEL_MODE_NEON depends on KERNEL_MODE_NEON
select CRYPTO_LIB_CURVE25519_GENERIC select CRYPTO_LIB_CURVE25519_GENERIC
select CRYPTO_ARCH_HAVE_LIB_CURVE25519 select CRYPTO_ARCH_HAVE_LIB_CURVE25519
help
Curve25519 algorithm
Architecture: arm with
- NEON (Advanced SIMD) extensions
config CRYPTO_GHASH_ARM_CE config CRYPTO_GHASH_ARM_CE
tristate "PMULL-accelerated GHASH using NEON/ARMv8 Crypto Extensions" tristate "PMULL-accelerated GHASH using NEON/ARMv8 Crypto Extensions"
......
...@@ -3,10 +3,15 @@ ...@@ -3,10 +3,15 @@
menu "Accelerated Cryptographic Algorithms for CPU (x86)" menu "Accelerated Cryptographic Algorithms for CPU (x86)"
config CRYPTO_CURVE25519_X86 config CRYPTO_CURVE25519_X86
tristate "x86_64 accelerated Curve25519 scalar multiplication library" tristate "Public key crypto: Curve25519 (ADX)"
depends on X86 && 64BIT depends on X86 && 64BIT
select CRYPTO_LIB_CURVE25519_GENERIC select CRYPTO_LIB_CURVE25519_GENERIC
select CRYPTO_ARCH_HAVE_LIB_CURVE25519 select CRYPTO_ARCH_HAVE_LIB_CURVE25519
help
Curve25519 algorithm
Architecture: x86_64 using:
- ADX (large integer arithmetic)
config CRYPTO_AES_NI_INTEL config CRYPTO_AES_NI_INTEL
tristate "AES cipher algorithms (AES-NI)" tristate "AES cipher algorithms (AES-NI)"
......
...@@ -240,51 +240,60 @@ endmenu ...@@ -240,51 +240,60 @@ endmenu
menu "Public-key cryptography" menu "Public-key cryptography"
config CRYPTO_RSA config CRYPTO_RSA
tristate "RSA algorithm" tristate "RSA (Rivest-Shamir-Adleman)"
select CRYPTO_AKCIPHER select CRYPTO_AKCIPHER
select CRYPTO_MANAGER select CRYPTO_MANAGER
select MPILIB select MPILIB
select ASN1 select ASN1
help help
Generic implementation of the RSA public key algorithm. RSA (Rivest-Shamir-Adleman) public key algorithm (RFC8017)
config CRYPTO_DH config CRYPTO_DH
tristate "Diffie-Hellman algorithm" tristate "DH (Diffie-Hellman)"
select CRYPTO_KPP select CRYPTO_KPP
select MPILIB select MPILIB
help help
Generic implementation of the Diffie-Hellman algorithm. DH (Diffie-Hellman) key exchange algorithm
config CRYPTO_DH_RFC7919_GROUPS config CRYPTO_DH_RFC7919_GROUPS
bool "Support for RFC 7919 FFDHE group parameters" bool "RFC 7919 FFDHE groups"
depends on CRYPTO_DH depends on CRYPTO_DH
select CRYPTO_RNG_DEFAULT select CRYPTO_RNG_DEFAULT
help help
Provide support for RFC 7919 FFDHE group parameters. If unsure, say N. FFDHE (Finite-Field-based Diffie-Hellman Ephemeral) groups
defined in RFC7919.
Support these finite-field groups in DH key exchanges:
- ffdhe2048, ffdhe3072, ffdhe4096, ffdhe6144, ffdhe8192
If unsure, say N.
config CRYPTO_ECC config CRYPTO_ECC
tristate tristate
select CRYPTO_RNG_DEFAULT select CRYPTO_RNG_DEFAULT
config CRYPTO_ECDH config CRYPTO_ECDH
tristate "ECDH algorithm" tristate "ECDH (Elliptic Curve Diffie-Hellman)"
select CRYPTO_ECC select CRYPTO_ECC
select CRYPTO_KPP select CRYPTO_KPP
help help
Generic implementation of the ECDH algorithm ECDH (Elliptic Curve Diffie-Hellman) key exchange algorithm
using curves P-192, P-256, and P-384 (FIPS 186)
config CRYPTO_ECDSA config CRYPTO_ECDSA
tristate "ECDSA (NIST P192, P256 etc.) algorithm" tristate "ECDSA (Elliptic Curve Digital Signature Algorithm)"
select CRYPTO_ECC select CRYPTO_ECC
select CRYPTO_AKCIPHER select CRYPTO_AKCIPHER
select ASN1 select ASN1
help help
Elliptic Curve Digital Signature Algorithm (NIST P192, P256 etc.) ECDSA (Elliptic Curve Digital Signature Algorithm) (FIPS 186,
is A NIST cryptographic standard algorithm. Only signature verification ISO/IEC 14888-3)
is implemented. using curves P-192, P-256, and P-384
Only signature verification is implemented.
config CRYPTO_ECRDSA config CRYPTO_ECRDSA
tristate "EC-RDSA (GOST 34.10) algorithm" tristate "EC-RDSA (Elliptic Curve Russian Digital Signature Algorithm)"
select CRYPTO_ECC select CRYPTO_ECC
select CRYPTO_AKCIPHER select CRYPTO_AKCIPHER
select CRYPTO_STREEBOG select CRYPTO_STREEBOG
...@@ -292,31 +301,35 @@ config CRYPTO_ECRDSA ...@@ -292,31 +301,35 @@ config CRYPTO_ECRDSA
select ASN1 select ASN1
help help
Elliptic Curve Russian Digital Signature Algorithm (GOST R 34.10-2012, Elliptic Curve Russian Digital Signature Algorithm (GOST R 34.10-2012,
RFC 7091, ISO/IEC 14888-3:2018) is one of the Russian cryptographic RFC 7091, ISO/IEC 14888-3)
standard algorithms (called GOST algorithms). Only signature verification
is implemented. One of the Russian cryptographic standard algorithms (called GOST
algorithms). Only signature verification is implemented.
config CRYPTO_SM2 config CRYPTO_SM2
tristate "SM2 algorithm" tristate "SM2 (ShangMi 2)"
select CRYPTO_SM3 select CRYPTO_SM3
select CRYPTO_AKCIPHER select CRYPTO_AKCIPHER
select CRYPTO_MANAGER select CRYPTO_MANAGER
select MPILIB select MPILIB
select ASN1 select ASN1
help help
Generic implementation of the SM2 public key algorithm. It was SM2 (ShangMi 2) public key algorithm
published by State Encryption Management Bureau, China.
Published by State Encryption Management Bureau, China,
as specified by OSCCA GM/T 0003.1-2012 -- 0003.5-2012. as specified by OSCCA GM/T 0003.1-2012 -- 0003.5-2012.
References: References:
https://tools.ietf.org/html/draft-shen-sm2-ecdsa-02 https://datatracker.ietf.org/doc/draft-shen-sm2-ecdsa/
http://www.oscca.gov.cn/sca/xxgk/2010-12/17/content_1002386.shtml http://www.oscca.gov.cn/sca/xxgk/2010-12/17/content_1002386.shtml
http://www.gmbz.org.cn/main/bzlb.html http://www.gmbz.org.cn/main/bzlb.html
config CRYPTO_CURVE25519 config CRYPTO_CURVE25519
tristate "Curve25519 algorithm" tristate "Curve25519"
select CRYPTO_KPP select CRYPTO_KPP
select CRYPTO_LIB_CURVE25519_GENERIC select CRYPTO_LIB_CURVE25519_GENERIC
help
Curve25519 elliptic curve (RFC7748)
endmenu endmenu
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment