linux-security-module.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 0/2] integrity: support including firmware ".platform" keys at build time
@ 2021-11-24 20:47 Nayna Jain
  2021-11-24 20:47 ` [PATCH v5 1/2] certs: export load_certificate_list() to be used outside certs/ Nayna Jain
  2021-11-24 20:47 ` [PATCH v5 2/2] integrity: support including firmware ".platform" keys at build time Nayna Jain
  0 siblings, 2 replies; 6+ messages in thread
From: Nayna Jain @ 2021-11-24 20:47 UTC (permalink / raw)
  To: linux-integrity, keyrings
  Cc: dhowells, zohar, jarkko, linux-security-module, linux-kernel,
	Dimitri John Ledkov, Seth Forshee, Nayna Jain

Some firmware support secure boot by embedding static keys to verify the
Linux kernel during boot. However, these firmware do not expose an
interface for the kernel to load firmware keys onto the ".platform"
keyring, preventing the kernel from verifying the kexec kernel image
signature.

This patchset exports load_certificate_list() and defines a new function
load_builtin_platform_cert() to load compiled in certificates onto the
".platform" keyring.

Changelog:

v5:
* Renamed load_builtin_platform_cert() to load_platform_certificate_list()
and config INTEGRITY_PLATFORM_BUILTIN_KEYS to INTEGRITY_PLATFORM_KEYS, as
suggested by Mimi Zohar.

v4:
* Split into two patches as per Mimi Zohar and Dimitri John Ledkov
recommendation.

v3:
* Included Jarkko's feedback
 ** updated patch description to include approach.
 ** removed extern for function declaration in the .h file.
* Included load_certificate_list() within #ifdef CONFIG_KEYS condition.

v2:
* Fixed the error reported by kernel test robot
* Updated patch description based on Jarkko's feedback.

Nayna Jain (2):
  certs: export load_certificate_list() to be used outside certs/
  integrity: support including firmware ".platform" keys at build time

 certs/Makefile                                |  5 ++--
 certs/blacklist.c                             |  1 -
 certs/common.c                                |  2 +-
 certs/common.h                                |  9 -------
 certs/system_keyring.c                        |  1 -
 include/keys/system_keyring.h                 |  6 +++++
 security/integrity/Kconfig                    | 10 +++++++
 security/integrity/Makefile                   | 17 +++++++++++-
 security/integrity/digsig.c                   |  2 +-
 security/integrity/integrity.h                |  6 +++++
 .../integrity/platform_certs/platform_cert.S  | 23 ++++++++++++++++
 .../platform_certs/platform_keyring.c         | 26 +++++++++++++++++++
 12 files changed, 92 insertions(+), 16 deletions(-)
 delete mode 100644 certs/common.h
 create mode 100644 security/integrity/platform_certs/platform_cert.S

-- 
2.27.0

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-12-11  8:11 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-24 20:47 [PATCH v5 0/2] integrity: support including firmware ".platform" keys at build time Nayna Jain
2021-11-24 20:47 ` [PATCH v5 1/2] certs: export load_certificate_list() to be used outside certs/ Nayna Jain
2021-12-05 13:45   ` Mimi Zohar
2021-11-24 20:47 ` [PATCH v5 2/2] integrity: support including firmware ".platform" keys at build time Nayna Jain
2021-12-05 13:45   ` Mimi Zohar
2021-12-11  8:10   ` Jarkko Sakkinen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).