Message ID | 20241213041958.202565-1-ebiggers@kernel.org |
---|---|
Headers | show |
Series | Support for hardware-wrapped inline encryption keys | expand |
On Thu, Dec 12, 2024 at 08:19:43PM -0800, Eric Biggers wrote: > Maintainers, please consider merging the following preparatory patches for 6.14: > > - UFS / SCSI tree: patches 1-4 > - MMC tree: patches 5-7 > - Qualcomm / MSM tree: patch 8 Happy new year everyone. We are 1 of 3 so far, with Ulf having applied patches 5-7. Martin, can you consider applying patches 1-4? Bjorn, can you consider applying patch 8? Additional reviews or acks from anyone on any of the patches in this series would always be appreciated, of course. Thank you! - Eric
Eric, > This patchset adds support for hardware-wrapped inline encryption > keys, a security feature supported by some SoCs. It adds the block and > fscrypt framework for the feature as well as support for it with UFS > on Qualcomm SoCs. Applied patches 1-4 to 6.14/scsi-staging, thanks! I had originally queued patch 1 in 6.13/scsi-fixes but moved it to 6.14 and kept the stable tag to accommodate the rest of the series. Hope that's OK given the short runway we have left for this release.
On Thu, Jan 02, 2025 at 01:40:48PM -0500, Martin K. Petersen wrote: > > Eric, > > > This patchset adds support for hardware-wrapped inline encryption > > keys, a security feature supported by some SoCs. It adds the block and > > fscrypt framework for the feature as well as support for it with UFS > > on Qualcomm SoCs. > > Applied patches 1-4 to 6.14/scsi-staging, thanks! > > I had originally queued patch 1 in 6.13/scsi-fixes but moved it to 6.14 > and kept the stable tag to accommodate the rest of the series. Hope > that's OK given the short runway we have left for this release. Yes, that's fine. Thanks. - Eric
On Thu, 12 Dec 2024 20:19:43 -0800, Eric Biggers wrote: > This patchset is based on next-20241212 and is also available in git via: > > git fetch https://git.kernel.org/pub/scm/fs/fscrypt/linux.git wrapped-keys-v10 > > This patchset adds support for hardware-wrapped inline encryption keys, a > security feature supported by some SoCs. It adds the block and fscrypt > framework for the feature as well as support for it with UFS on Qualcomm SoCs. > > [...] Applied, thanks! [08/15] firmware: qcom: scm: add calls for wrapped key support commit: 1d45a1cd9f3ae849db868e07e5fee5e5b37eff55 Best regards,
On Fri, Dec 13, 2024 at 5:20 AM Eric Biggers <ebiggers@kernel.org> wrote: > > This patchset is based on next-20241212 and is also available in git via: > > git fetch https://git.kernel.org/pub/scm/fs/fscrypt/linux.git wrapped-keys-v10 > > This patchset adds support for hardware-wrapped inline encryption keys, a > security feature supported by some SoCs. It adds the block and fscrypt > framework for the feature as well as support for it with UFS on Qualcomm SoCs. > > This feature is described in full detail in the included Documentation changes. > But to summarize, hardware-wrapped keys are inline encryption keys that are > wrapped (encrypted) by a key internal to the hardware so that they can only be > unwrapped (decrypted) by the hardware. Initially keys are wrapped with a > permanent hardware key, but during actual use they are re-wrapped with a > per-boot ephemeral key for improved security. The hardware supports importing > keys as well as generating keys itself. > > This differs from the existing support for hardware-wrapped keys in the kernel > crypto API (also called "hardware-bound keys" in some places) in the same way > that the crypto API differs from blk-crypto: the crypto API is for general > crypto operations, whereas blk-crypto is for inline storage encryption. > > This feature is already being used by Android downstream for several years > (https://source.android.com/docs/security/features/encryption/hw-wrapped-keys), > but on other platforms userspace support will be provided via fscryptctl and > tests via xfstests (I have some old patches for this that need to be updated). > > Maintainers, please consider merging the following preparatory patches for 6.14: > > - UFS / SCSI tree: patches 1-4 > - MMC tree: patches 5-7 > - Qualcomm / MSM tree: patch 8 > IIUC The following patches will have to wait for the v6.15 cycle? [PATCH v10 9/15] soc: qcom: ice: make qcom_ice_program_key() take struct blk_crypto_key [PATCH v10 10/15] blk-crypto: add basic hardware-wrapped key support [PATCH v10 11/15] blk-crypto: show supported key types in sysfs [PATCH v10 12/15] blk-crypto: add ioctls to create and prepare hardware-wrapped keys [PATCH v10 13/15] fscrypt: add support for hardware-wrapped keys [PATCH v10 14/15] soc: qcom: ice: add HWKM support to the ICE driver [PATCH v10 15/15] ufs: qcom: add support for wrapped keys Bartosz
On Fri, Jan 10, 2025 at 09:44:07AM +0100, Bartosz Golaszewski wrote: > On Fri, Dec 13, 2024 at 5:20 AM Eric Biggers <ebiggers@kernel.org> wrote: > > > > This patchset is based on next-20241212 and is also available in git via: > > > > git fetch https://git.kernel.org/pub/scm/fs/fscrypt/linux.git wrapped-keys-v10 > > > > This patchset adds support for hardware-wrapped inline encryption keys, a > > security feature supported by some SoCs. It adds the block and fscrypt > > framework for the feature as well as support for it with UFS on Qualcomm SoCs. > > > > This feature is described in full detail in the included Documentation changes. > > But to summarize, hardware-wrapped keys are inline encryption keys that are > > wrapped (encrypted) by a key internal to the hardware so that they can only be > > unwrapped (decrypted) by the hardware. Initially keys are wrapped with a > > permanent hardware key, but during actual use they are re-wrapped with a > > per-boot ephemeral key for improved security. The hardware supports importing > > keys as well as generating keys itself. > > > > This differs from the existing support for hardware-wrapped keys in the kernel > > crypto API (also called "hardware-bound keys" in some places) in the same way > > that the crypto API differs from blk-crypto: the crypto API is for general > > crypto operations, whereas blk-crypto is for inline storage encryption. > > > > This feature is already being used by Android downstream for several years > > (https://source.android.com/docs/security/features/encryption/hw-wrapped-keys), > > but on other platforms userspace support will be provided via fscryptctl and > > tests via xfstests (I have some old patches for this that need to be updated). > > > > Maintainers, please consider merging the following preparatory patches for 6.14: > > > > - UFS / SCSI tree: patches 1-4 > > - MMC tree: patches 5-7 > > - Qualcomm / MSM tree: patch 8 > > > > IIUC The following patches will have to wait for the v6.15 cycle? > > [PATCH v10 9/15] soc: qcom: ice: make qcom_ice_program_key() take > struct blk_crypto_key > [PATCH v10 10/15] blk-crypto: add basic hardware-wrapped key support > [PATCH v10 11/15] blk-crypto: show supported key types in sysfs > [PATCH v10 12/15] blk-crypto: add ioctls to create and prepare > hardware-wrapped keys > [PATCH v10 13/15] fscrypt: add support for hardware-wrapped keys > [PATCH v10 14/15] soc: qcom: ice: add HWKM support to the ICE driver > [PATCH v10 15/15] ufs: qcom: add support for wrapped keys Yes, that's correct. - Eric
On Thu, 12 Dec 2024 20:19:43 -0800, Eric Biggers wrote: > This patchset is based on next-20241212 and is also available in git via: > > git fetch https://git.kernel.org/pub/scm/fs/fscrypt/linux.git wrapped-keys-v10 > > This patchset adds support for hardware-wrapped inline encryption keys, a > security feature supported by some SoCs. It adds the block and fscrypt > framework for the feature as well as support for it with UFS on Qualcomm SoCs. > > [...] Applied to 6.14/scsi-queue, thanks! [02/15] ufs: crypto: add ufs_hba_from_crypto_profile() https://git.kernel.org/mkp/scsi/c/75d0c649eca4 [03/15] ufs: qcom: convert to use UFSHCD_QUIRK_CUSTOM_CRYPTO_PROFILE https://git.kernel.org/mkp/scsi/c/30b32c647cf3 [04/15] ufs: crypto: remove ufs_hba_variant_ops::program_key https://git.kernel.org/mkp/scsi/c/409f21010d92