469596abe7aec1fb0c45176a4e332375bdb12cbf
[platform/kernel/u-boot.git] / lib / rsa / Kconfig
1 config RSA
2         bool "Use RSA Library"
3         select RSA_FREESCALE_EXP if FSL_CAAM && !ARCH_MX7 && !ARCH_MX7ULP && !ARCH_MX6 && !ARCH_MX5
4         select RSA_SOFTWARE_EXP if !RSA_FREESCALE_EXP
5         help
6           RSA support. This enables the RSA algorithm used for FIT image
7           verification in U-Boot.
8           See doc/uImage.FIT/signature.txt for more details.
9           The Modular Exponentiation algorithm in RSA is implemented using
10           driver model. So CONFIG_DM needs to be enabled by default for this
11           library to function.
12           The signing part is build into mkimage regardless of this
13           option. The software based modular exponentiation is built into
14           mkimage irrespective of this option.
15
16 if RSA
17
18 config SPL_RSA
19         bool "Use RSA Library within SPL"
20
21 config SPL_RSA_VERIFY
22         bool
23         depends on SPL_RSA
24         help
25           Add RSA signature verification support in SPL.
26
27 config RSA_VERIFY
28         bool
29         help
30           Add RSA signature verification support.
31
32 config RSA_VERIFY_WITH_PKEY
33         bool "Execute RSA verification without key parameters from FDT"
34         select RSA_VERIFY
35         select ASYMMETRIC_KEY_TYPE
36         select ASYMMETRIC_PUBLIC_KEY_SUBTYPE
37         select RSA_PUBLIC_KEY_PARSER
38         help
39           The standard RSA-signature verification code (FIT_SIGNATURE) uses
40           pre-calculated key properties, that are stored in fdt blob, in
41           decrypting a signature.
42           This does not suit the use case where there is no way defined to
43           provide such additional key properties in standardized form,
44           particularly UEFI secure boot.
45           This options enables RSA signature verification with a public key
46           directly specified in image_sign_info, where all the necessary
47           key properties will be calculated on the fly in verification code.
48
49 config RSA_SOFTWARE_EXP
50         bool "Enable driver for RSA Modular Exponentiation in software"
51         depends on DM
52         help
53           Enables driver for modular exponentiation in software. This is a RSA
54           algorithm used in FIT image verification. It required RSA Key as
55           input.
56           See doc/uImage.FIT/signature.txt for more details.
57
58 config RSA_FREESCALE_EXP
59         bool "Enable RSA Modular Exponentiation with FSL crypto accelerator"
60         depends on DM && FSL_CAAM && !ARCH_MX7 && !ARCH_MX7ULP && !ARCH_MX6 && !ARCH_MX5
61         help
62         Enables driver for RSA modular exponentiation using Freescale cryptographic
63         accelerator - CAAM.
64
65 endif