1 # SPDX-License-Identifier: GPL-2.0 1 # SPDX-License-Identifier: GPL-2.0 2 menuconfig ASYMMETRIC_KEY_TYPE 2 menuconfig ASYMMETRIC_KEY_TYPE 3 bool "Asymmetric (public-key cryptogra 3 bool "Asymmetric (public-key cryptographic) key type" 4 depends on KEYS 4 depends on KEYS 5 help 5 help 6 This option provides support for a k 6 This option provides support for a key type that holds the data for 7 the asymmetric keys used for public 7 the asymmetric keys used for public key cryptographic operations such 8 as encryption, decryption, signature 8 as encryption, decryption, signature generation and signature 9 verification. 9 verification. 10 10 11 if ASYMMETRIC_KEY_TYPE 11 if ASYMMETRIC_KEY_TYPE 12 12 13 config ASYMMETRIC_PUBLIC_KEY_SUBTYPE 13 config ASYMMETRIC_PUBLIC_KEY_SUBTYPE 14 tristate "Asymmetric public-key crypto 14 tristate "Asymmetric public-key crypto algorithm subtype" 15 select MPILIB 15 select MPILIB 16 select CRYPTO_HASH_INFO 16 select CRYPTO_HASH_INFO 17 select CRYPTO_AKCIPHER 17 select CRYPTO_AKCIPHER 18 select CRYPTO_SIG << 19 select CRYPTO_HASH 18 select CRYPTO_HASH 20 help 19 help 21 This option provides support for asy 20 This option provides support for asymmetric public key type handling. 22 If signature generation and/or verif 21 If signature generation and/or verification are to be used, 23 appropriate hash algorithms (such as 22 appropriate hash algorithms (such as SHA-1) must be available. 24 ENOPKG will be reported if the requi 23 ENOPKG will be reported if the requisite algorithm is unavailable. 25 24 26 config X509_CERTIFICATE_PARSER 25 config X509_CERTIFICATE_PARSER 27 tristate "X.509 certificate parser" 26 tristate "X.509 certificate parser" 28 depends on ASYMMETRIC_PUBLIC_KEY_SUBTY 27 depends on ASYMMETRIC_PUBLIC_KEY_SUBTYPE 29 select ASN1 28 select ASN1 30 select OID_REGISTRY 29 select OID_REGISTRY 31 help 30 help 32 This option provides support for par 31 This option provides support for parsing X.509 format blobs for key 33 data and provides the ability to ins 32 data and provides the ability to instantiate a crypto key from a 34 public key packet found inside the c 33 public key packet found inside the certificate. 35 34 36 config PKCS8_PRIVATE_KEY_PARSER 35 config PKCS8_PRIVATE_KEY_PARSER 37 tristate "PKCS#8 private key parser" 36 tristate "PKCS#8 private key parser" 38 depends on ASYMMETRIC_PUBLIC_KEY_SUBTY 37 depends on ASYMMETRIC_PUBLIC_KEY_SUBTYPE 39 select ASN1 38 select ASN1 40 select OID_REGISTRY 39 select OID_REGISTRY 41 help 40 help 42 This option provides support for par 41 This option provides support for parsing PKCS#8 format blobs for 43 private key data and provides the ab 42 private key data and provides the ability to instantiate a crypto key 44 from that data. 43 from that data. 45 44 46 config PKCS7_MESSAGE_PARSER 45 config PKCS7_MESSAGE_PARSER 47 tristate "PKCS#7 message parser" 46 tristate "PKCS#7 message parser" 48 depends on X509_CERTIFICATE_PARSER 47 depends on X509_CERTIFICATE_PARSER 49 select CRYPTO_HASH 48 select CRYPTO_HASH 50 select ASN1 49 select ASN1 51 select OID_REGISTRY 50 select OID_REGISTRY 52 help 51 help 53 This option provides support for par 52 This option provides support for parsing PKCS#7 format messages for 54 signature data and provides the abil 53 signature data and provides the ability to verify the signature. 55 54 56 config PKCS7_TEST_KEY 55 config PKCS7_TEST_KEY 57 tristate "PKCS#7 testing key type" 56 tristate "PKCS#7 testing key type" 58 depends on SYSTEM_DATA_VERIFICATION 57 depends on SYSTEM_DATA_VERIFICATION 59 help 58 help 60 This option provides a type of key t 59 This option provides a type of key that can be loaded up from a 61 PKCS#7 message - provided the messag 60 PKCS#7 message - provided the message is signed by a trusted key. If 62 it is, the PKCS#7 wrapper is discard 61 it is, the PKCS#7 wrapper is discarded and reading the key returns 63 just the payload. If it isn't, addi 62 just the payload. If it isn't, adding the key will fail with an 64 error. 63 error. 65 64 66 This is intended for testing the PKC 65 This is intended for testing the PKCS#7 parser. 67 66 68 config SIGNED_PE_FILE_VERIFICATION 67 config SIGNED_PE_FILE_VERIFICATION 69 bool "Support for PE file signature ve 68 bool "Support for PE file signature verification" 70 depends on PKCS7_MESSAGE_PARSER=y 69 depends on PKCS7_MESSAGE_PARSER=y 71 depends on SYSTEM_DATA_VERIFICATION 70 depends on SYSTEM_DATA_VERIFICATION 72 select CRYPTO_HASH 71 select CRYPTO_HASH 73 select ASN1 72 select ASN1 74 select OID_REGISTRY 73 select OID_REGISTRY 75 help 74 help 76 This option provides support for ver 75 This option provides support for verifying the signature(s) on a 77 signed PE binary. 76 signed PE binary. 78 77 79 config FIPS_SIGNATURE_SELFTEST 78 config FIPS_SIGNATURE_SELFTEST 80 tristate "Run FIPS selftests on the X. !! 79 bool "Run FIPS selftests on the X.509+PKCS7 signature verification" 81 help 80 help 82 This option causes some selftests to 81 This option causes some selftests to be run on the signature 83 verification code, using some built 82 verification code, using some built in data. This is required 84 for FIPS. 83 for FIPS. 85 depends on KEYS 84 depends on KEYS 86 depends on ASYMMETRIC_KEY_TYPE 85 depends on ASYMMETRIC_KEY_TYPE 87 depends on PKCS7_MESSAGE_PARSER=X509_C 86 depends on PKCS7_MESSAGE_PARSER=X509_CERTIFICATE_PARSER 88 depends on X509_CERTIFICATE_PARSER << 89 depends on CRYPTO_RSA << 90 depends on CRYPTO_SHA256 << 91 << 92 config FIPS_SIGNATURE_SELFTEST_RSA << 93 bool << 94 default y << 95 depends on FIPS_SIGNATURE_SELFTEST << 96 depends on CRYPTO_SHA256=y || CRYPTO_S << 97 depends on CRYPTO_RSA=y || CRYPTO_RSA= << 98 << 99 config FIPS_SIGNATURE_SELFTEST_ECDSA << 100 bool << 101 default y << 102 depends on FIPS_SIGNATURE_SELFTEST << 103 depends on CRYPTO_SHA256=y || CRYPTO_S << 104 depends on CRYPTO_ECDSA=y || CRYPTO_EC << 105 87 106 endif # ASYMMETRIC_KEY_TYPE 88 endif # ASYMMETRIC_KEY_TYPE
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.