blob: 9033384e60a3355504ba5c8a1ea3abaf37a9e601 [file] [log] [blame]
Ruchika Gupta4acd8c42015-01-23 16:01:56 +05301config RSA
2 bool "Use RSA Library"
Ricardo Salveti20734f62021-08-28 10:41:22 +03003 select RSA_FREESCALE_EXP if FSL_CAAM && !ARCH_MX7 && !ARCH_MX7ULP && !ARCH_MX6 && !ARCH_MX5
Chia-Wei Wang88b3ecf2021-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 Gupta4acd8c42015-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 Glasse3ee2fb2016-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 Gupta4acd8c42015-01-23 16:01:56 +053016
Eugeniu Roscadcf36e92018-04-21 14:00:10 +020017if RSA
18
Teddy Reed5021e3c2016-06-09 19:18:44 -070019config SPL_RSA
20 bool "Use RSA Library within SPL"
Tom Rini0a83cc22022-06-10 23:03:09 -040021 depends on SPL
Teddy Reed5021e3c2016-06-09 19:18:44 -070022
AKASHI Takahiro2223c7d2020-02-21 15:12:55 +090023config SPL_RSA_VERIFY
24 bool
Oleksandr Suvorov04ab0a22021-09-16 15:03:36 +030025 depends on SPL_RSA
AKASHI Takahiro2223c7d2020-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 Takahiro1f14f812020-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 Takahirod4aece12020-02-21 15:12:58 +090037 select ASYMMETRIC_KEY_TYPE
38 select ASYMMETRIC_PUBLIC_KEY_SUBTYPE
39 select RSA_PUBLIC_KEY_PARSER
AKASHI Takahiro1f14f812020-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 Reynes247faa92022-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 Gupta4acd8c42015-01-23 16:01:56 +053070config RSA_SOFTWARE_EXP
71 bool "Enable driver for RSA Modular Exponentiation in software"
Eugeniu Roscadcf36e92018-04-21 14:00:10 +020072 depends on DM
Ruchika Gupta4acd8c42015-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 Salveti20734f62021-08-28 10:41:22 +030081 depends on DM && FSL_CAAM && !ARCH_MX7 && !ARCH_MX7ULP && !ARCH_MX6 && !ARCH_MX5
Ruchika Gupta4acd8c42015-01-23 16:01:56 +053082 help
83 Enables driver for RSA modular exponentiation using Freescale cryptographic
84 accelerator - CAAM.
85
Chia-Wei Wang88b3ecf2021-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 Gupta4acd8c42015-01-23 16:01:56 +053093endif