xref: /linux/crypto/asymmetric_keys/Kconfig (revision 564eb714f5f09ac733c26860d5f0831f213fbdf1)
1menuconfig ASYMMETRIC_KEY_TYPE
2	tristate "Asymmetric (public-key cryptographic) key type"
3	depends on KEYS
4	help
5	  This option provides support for a key type that holds the data for
6	  the asymmetric keys used for public key cryptographic operations such
7	  as encryption, decryption, signature generation and signature
8	  verification.
9
10if ASYMMETRIC_KEY_TYPE
11
12config ASYMMETRIC_PUBLIC_KEY_SUBTYPE
13	tristate "Asymmetric public-key crypto algorithm subtype"
14	select MPILIB
15	select PUBLIC_KEY_ALGO_RSA
16	select CRYPTO_HASH_INFO
17	help
18	  This option provides support for asymmetric public key type handling.
19	  If signature generation and/or verification are to be used,
20	  appropriate hash algorithms (such as SHA-1) must be available.
21	  ENOPKG will be reported if the requisite algorithm is unavailable.
22
23config PUBLIC_KEY_ALGO_RSA
24	tristate "RSA public-key algorithm"
25	select MPILIB_EXTRA
26	select MPILIB
27	help
28	  This option enables support for the RSA algorithm (PKCS#1, RFC3447).
29
30config X509_CERTIFICATE_PARSER
31	tristate "X.509 certificate parser"
32	depends on ASYMMETRIC_PUBLIC_KEY_SUBTYPE
33	select ASN1
34	select OID_REGISTRY
35	help
36	  This option procides support for parsing X.509 format blobs for key
37	  data and provides the ability to instantiate a crypto key from a
38	  public key packet found inside the certificate.
39
40endif # ASYMMETRIC_KEY_TYPE
41