linux/crypto/asymmetric_keys/Kconfig
<<
>>
Prefs
   1# SPDX-License-Identifier: GPL-2.0
   2menuconfig ASYMMETRIC_KEY_TYPE
   3        bool "Asymmetric (public-key cryptographic) key type"
   4        depends on KEYS
   5        help
   6          This option provides support for a key type that holds the data for
   7          the asymmetric keys used for public key cryptographic operations such
   8          as encryption, decryption, signature generation and signature
   9          verification.
  10
  11if ASYMMETRIC_KEY_TYPE
  12
  13config ASYMMETRIC_PUBLIC_KEY_SUBTYPE
  14        tristate "Asymmetric public-key crypto algorithm subtype"
  15        select MPILIB
  16        select CRYPTO_HASH_INFO
  17        select CRYPTO_AKCIPHER
  18        select CRYPTO_HASH
  19        help
  20          This option provides support for asymmetric public key type handling.
  21          If signature generation and/or verification are to be used,
  22          appropriate hash algorithms (such as SHA-1) must be available.
  23          ENOPKG will be reported if the requisite algorithm is unavailable.
  24
  25config ASYMMETRIC_TPM_KEY_SUBTYPE
  26        tristate "Asymmetric TPM backed private key subtype"
  27        depends on TCG_TPM
  28        depends on TRUSTED_KEYS
  29        select CRYPTO_HMAC
  30        select CRYPTO_SHA1
  31        select CRYPTO_HASH_INFO
  32        help
  33          This option provides support for TPM backed private key type handling.
  34          Operations such as sign, verify, encrypt, decrypt are performed by
  35          the TPM after the private key is loaded.
  36
  37config X509_CERTIFICATE_PARSER
  38        tristate "X.509 certificate parser"
  39        depends on ASYMMETRIC_PUBLIC_KEY_SUBTYPE
  40        select ASN1
  41        select OID_REGISTRY
  42        help
  43          This option provides support for parsing X.509 format blobs for key
  44          data and provides the ability to instantiate a crypto key from a
  45          public key packet found inside the certificate.
  46
  47config PKCS8_PRIVATE_KEY_PARSER
  48        tristate "PKCS#8 private key parser"
  49        depends on ASYMMETRIC_PUBLIC_KEY_SUBTYPE
  50        select ASN1
  51        select OID_REGISTRY
  52        help
  53          This option provides support for parsing PKCS#8 format blobs for
  54          private key data and provides the ability to instantiate a crypto key
  55          from that data.
  56
  57config TPM_KEY_PARSER
  58        tristate "TPM private key parser"
  59        depends on ASYMMETRIC_TPM_KEY_SUBTYPE
  60        select ASN1
  61        help
  62          This option provides support for parsing TPM format blobs for
  63          private key data and provides the ability to instantiate a crypto key
  64          from that data.
  65
  66config PKCS7_MESSAGE_PARSER
  67        tristate "PKCS#7 message parser"
  68        depends on X509_CERTIFICATE_PARSER
  69        select CRYPTO_HASH
  70        select ASN1
  71        select OID_REGISTRY
  72        help
  73          This option provides support for parsing PKCS#7 format messages for
  74          signature data and provides the ability to verify the signature.
  75
  76config PKCS7_TEST_KEY
  77        tristate "PKCS#7 testing key type"
  78        depends on SYSTEM_DATA_VERIFICATION
  79        help
  80          This option provides a type of key that can be loaded up from a
  81          PKCS#7 message - provided the message is signed by a trusted key.  If
  82          it is, the PKCS#7 wrapper is discarded and reading the key returns
  83          just the payload.  If it isn't, adding the key will fail with an
  84          error.
  85
  86          This is intended for testing the PKCS#7 parser.
  87
  88config SIGNED_PE_FILE_VERIFICATION
  89        bool "Support for PE file signature verification"
  90        depends on PKCS7_MESSAGE_PARSER=y
  91        depends on SYSTEM_DATA_VERIFICATION
  92        select CRYPTO_HASH
  93        select ASN1
  94        select OID_REGISTRY
  95        help
  96          This option provides support for verifying the signature(s) on a
  97          signed PE binary.
  98
  99endif # ASYMMETRIC_KEY_TYPE
 100