blob: 9033384e60a3355504ba5c8a1ea3abaf37a9e601 [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"
Tom Rinib3401992022-06-10 23:03:09 -040021 depends on SPL
Teddy Reed51c14cd2016-06-09 19:18:44 -070022
AKASHI Takahirob983cc22020-02-21 15:12:55 +090023config SPL_RSA_VERIFY
24 bool
Oleksandr Suvorovd4f05b32021-09-16 15:03:36 +030025 depends on SPL_RSA
AKASHI Takahirob983cc22020-02-21 15:12:55 +090026 help
27 Add RSA signature verification support in SPL.
28
29config RSA_VERIFY
30 bool
31 help
32 Add RSA signature verification support.
33
AKASHI Takahirodd89f5b2020-02-21 15:12:56 +090034config RSA_VERIFY_WITH_PKEY
35 bool "Execute RSA verification without key parameters from FDT"
36 select RSA_VERIFY
AKASHI Takahiroe0d310b2020-02-21 15:12:58 +090037 select ASYMMETRIC_KEY_TYPE
38 select ASYMMETRIC_PUBLIC_KEY_SUBTYPE
39 select RSA_PUBLIC_KEY_PARSER
AKASHI Takahirodd89f5b2020-02-21 15:12:56 +090040 help
41 The standard RSA-signature verification code (FIT_SIGNATURE) uses
42 pre-calculated key properties, that are stored in fdt blob, in
43 decrypting a signature.
44 This does not suit the use case where there is no way defined to
45 provide such additional key properties in standardized form,
46 particularly UEFI secure boot.
47 This options enables RSA signature verification with a public key
48 directly specified in image_sign_info, where all the necessary
49 key properties will be calculated on the fly in verification code.
50
Philippe Reynesf6bacf12022-03-28 22:56:58 +020051config SPL_RSA_VERIFY_WITH_PKEY
52 bool "Execute RSA verification without key parameters from FDT within SPL"
53 depends on SPL
54 select SPL_RSA_VERIFY
55 select SPL_ASYMMETRIC_KEY_TYPE
56 select SPL_ASYMMETRIC_PUBLIC_KEY_SUBTYPE
57 select SPL_RSA_PUBLIC_KEY_PARSER
58 help
59 The standard RSA-signature verification code (FIT_SIGNATURE) uses
60 pre-calculated key properties, that are stored in fdt blob, in
61 decrypting a signature.
62 This does not suit the use case where there is no way defined to
63 provide such additional key properties in standardized form,
64 particularly UEFI secure boot.
65 This options enables RSA signature verification with a public key
66 directly specified in image_sign_info, where all the necessary
67 key properties will be calculated on the fly in verification code
68 in the SPL.
69
Ruchika Guptad9f23c72015-01-23 16:01:56 +053070config RSA_SOFTWARE_EXP
71 bool "Enable driver for RSA Modular Exponentiation in software"
Eugeniu Rosca39883af2018-04-21 14:00:10 +020072 depends on DM
Ruchika Guptad9f23c72015-01-23 16:01:56 +053073 help
74 Enables driver for modular exponentiation in software. This is a RSA
75 algorithm used in FIT image verification. It required RSA Key as
76 input.
77 See doc/uImage.FIT/signature.txt for more details.
78
79config RSA_FREESCALE_EXP
80 bool "Enable RSA Modular Exponentiation with FSL crypto accelerator"
Ricardo Salveti7ce83852021-08-28 10:41:22 +030081 depends on DM && FSL_CAAM && !ARCH_MX7 && !ARCH_MX7ULP && !ARCH_MX6 && !ARCH_MX5
Ruchika Guptad9f23c72015-01-23 16:01:56 +053082 help
83 Enables driver for RSA modular exponentiation using Freescale cryptographic
84 accelerator - CAAM.
85
Chia-Wei Wang89c36cc2021-10-27 14:17:30 +080086config RSA_ASPEED_EXP
87 bool "Enable RSA Modular Exponentiation with ASPEED crypto accelerator"
88 depends on DM && ASPEED_ACRY
89 help
90 Enables driver for RSA modular exponentiation using ASPEED cryptographic
91 accelerator - ACRY
92
Ruchika Guptad9f23c72015-01-23 16:01:56 +053093endif