Kconfig 3.1 KB

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