blob: b773f17c261e2938728fd0967ee97f3b9b5ebdfb [file] [log] [blame]
Ruchika Guptad9f23c72015-01-23 16:01:56 +05301config RSA
2 bool "Use RSA Library"
Ricardo Salveti7ce83852021-08-28 10:41:22 +03003 select RSA_FREESCALE_EXP if FSL_CAAM && !ARCH_MX7 && !ARCH_MX7ULP && !ARCH_MX6 && !ARCH_MX5
Chia-Wei Wang89c36cc2021-10-27 14:17:30 +08004 select RSA_ASPEED_EXP if ASPEED_ACRY
5 select RSA_SOFTWARE_EXP if !RSA_FREESCALE_EXP && !RSA_ASPEED_EXP
Ruchika Guptad9f23c72015-01-23 16:01:56 +05306 help
7 RSA support. This enables the RSA algorithm used for FIT image
8 verification in U-Boot.
9 See doc/uImage.FIT/signature.txt for more details.
Simon Glass73223f02016-02-22 22:55:43 -070010 The Modular Exponentiation algorithm in RSA is implemented using
11 driver model. So CONFIG_DM needs to be enabled by default for this
12 library to function.
13 The signing part is build into mkimage regardless of this
14 option. The software based modular exponentiation is built into
15 mkimage irrespective of this option.
Ruchika Guptad9f23c72015-01-23 16:01:56 +053016
Eugeniu Rosca39883af2018-04-21 14:00:10 +020017if RSA
18
Teddy Reed51c14cd2016-06-09 19:18:44 -070019config SPL_RSA
20 bool "Use RSA Library within SPL"
Teddy Reed51c14cd2016-06-09 19:18:44 -070021
AKASHI Takahirob983cc22020-02-21 15:12:55 +090022config SPL_RSA_VERIFY
23 bool
Oleksandr Suvorovd4f05b32021-09-16 15:03:36 +030024 depends on SPL_RSA
AKASHI Takahirob983cc22020-02-21 15:12:55 +090025 help
26 Add RSA signature verification support in SPL.
27
28config RSA_VERIFY
29 bool
30 help
31 Add RSA signature verification support.
32
AKASHI Takahirodd89f5b2020-02-21 15:12:56 +090033config RSA_VERIFY_WITH_PKEY
34 bool "Execute RSA verification without key parameters from FDT"
35 select RSA_VERIFY
AKASHI Takahiroe0d310b2020-02-21 15:12:58 +090036 select ASYMMETRIC_KEY_TYPE
37 select ASYMMETRIC_PUBLIC_KEY_SUBTYPE
38 select RSA_PUBLIC_KEY_PARSER
AKASHI Takahirodd89f5b2020-02-21 15:12:56 +090039 help
40 The standard RSA-signature verification code (FIT_SIGNATURE) uses
41 pre-calculated key properties, that are stored in fdt blob, in
42 decrypting a signature.
43 This does not suit the use case where there is no way defined to
44 provide such additional key properties in standardized form,
45 particularly UEFI secure boot.
46 This options enables RSA signature verification with a public key
47 directly specified in image_sign_info, where all the necessary
48 key properties will be calculated on the fly in verification code.
49
Philippe Reynesf6bacf12022-03-28 22:56:58 +020050config SPL_RSA_VERIFY_WITH_PKEY
51 bool "Execute RSA verification without key parameters from FDT within SPL"
52 depends on SPL
53 select SPL_RSA_VERIFY
54 select SPL_ASYMMETRIC_KEY_TYPE
55 select SPL_ASYMMETRIC_PUBLIC_KEY_SUBTYPE
56 select SPL_RSA_PUBLIC_KEY_PARSER
57 help
58 The standard RSA-signature verification code (FIT_SIGNATURE) uses
59 pre-calculated key properties, that are stored in fdt blob, in
60 decrypting a signature.
61 This does not suit the use case where there is no way defined to
62 provide such additional key properties in standardized form,
63 particularly UEFI secure boot.
64 This options enables RSA signature verification with a public key
65 directly specified in image_sign_info, where all the necessary
66 key properties will be calculated on the fly in verification code
67 in the SPL.
68
Ruchika Guptad9f23c72015-01-23 16:01:56 +053069config RSA_SOFTWARE_EXP
70 bool "Enable driver for RSA Modular Exponentiation in software"
Eugeniu Rosca39883af2018-04-21 14:00:10 +020071 depends on DM
Ruchika Guptad9f23c72015-01-23 16:01:56 +053072 help
73 Enables driver for modular exponentiation in software. This is a RSA
74 algorithm used in FIT image verification. It required RSA Key as
75 input.
76 See doc/uImage.FIT/signature.txt for more details.
77
78config RSA_FREESCALE_EXP
79 bool "Enable RSA Modular Exponentiation with FSL crypto accelerator"
Ricardo Salveti7ce83852021-08-28 10:41:22 +030080 depends on DM && FSL_CAAM && !ARCH_MX7 && !ARCH_MX7ULP && !ARCH_MX6 && !ARCH_MX5
Ruchika Guptad9f23c72015-01-23 16:01:56 +053081 help
82 Enables driver for RSA modular exponentiation using Freescale cryptographic
83 accelerator - CAAM.
84
Chia-Wei Wang89c36cc2021-10-27 14:17:30 +080085config RSA_ASPEED_EXP
86 bool "Enable RSA Modular Exponentiation with ASPEED crypto accelerator"
87 depends on DM && ASPEED_ACRY
88 help
89 Enables driver for RSA modular exponentiation using ASPEED cryptographic
90 accelerator - ACRY
91
Ruchika Guptad9f23c72015-01-23 16:01:56 +053092endif