mbox series

[0/3] DCP as trusted keys backend

Message ID 20210614201620.30451-1-richard@nod.at
Headers show
Series DCP as trusted keys backend | expand

Message

Richard Weinberger June 14, 2021, 8:16 p.m. UTC
DCP is an IP core found on NXP SoCs such as i.mx6ull.
While its bigger brother, CAAM, can directly wrap and unwrap blobs
in hardware[0], DCP offers only the bare minimum and the blob
mechanism needs aid from software.

This series adds support for a new trusted keys backend that makes use
of DCP's feature to use hardware keys which can never be read out.

[0] https://lore.kernel.org/lkml/cover.56fff82362af6228372ea82e6bd7e586e23f0966.1615914058.git-series.a.fatoum@pengutronix.de/

---
Cc: Ahmad Fatoum <a.fatoum@pengutronix.de>
Cc: David Gstir <david@sigma-star.at>
Cc: David Howells <dhowells@redhat.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Fabio Estevam <festevam@gmail.com>
Cc: Herbert Xu <herbert@gondor.apana.org.au>
Cc: James Bottomley <jejb@linux.ibm.com>
Cc: James Morris <jmorris@namei.org>
Cc: Jarkko Sakkinen <jarkko@kernel.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: keyrings@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-crypto@vger.kernel.org
Cc: linux-doc@vger.kernel.org
Cc: linux-integrity@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-security-module@vger.kernel.org
Cc: Mimi Zohar <zohar@linux.ibm.com>
Cc: NXP Linux Team <linux-imx@nxp.com>
Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
Cc: Richard Weinberger <richard@nod.at>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: "Serge E. Hallyn" <serge@hallyn.com>
Cc: Shawn Guo <shawnguo@kernel.org>

David Gstir (1):
  doc: trusted-encrypted: add DCP as new trust source

Richard Weinberger (2):
  crypto: mxs-dcp: Add support for hardware provided keys
  KEYS: trusted: Introduce support for NXP DCP-based trusted keys

 .../admin-guide/kernel-parameters.txt         |   1 +
 .../security/keys/trusted-encrypted.rst       |  84 ++++-
 MAINTAINERS                                   |   9 +
 drivers/crypto/mxs-dcp.c                      | 110 +++++-
 include/keys/trusted_dcp.h                    |  13 +
 include/linux/mxs-dcp.h                       |  19 +
 security/keys/trusted-keys/Makefile           |   1 +
 security/keys/trusted-keys/trusted_core.c     |   6 +-
 security/keys/trusted-keys/trusted_dcp.c      | 325 ++++++++++++++++++
 9 files changed, 554 insertions(+), 14 deletions(-)
 create mode 100644 include/keys/trusted_dcp.h
 create mode 100644 include/linux/mxs-dcp.h
 create mode 100644 security/keys/trusted-keys/trusted_dcp.c