On Fri, Dec 13, 2024 at 5:20 AM Eric Biggers <ebiggers@xxxxxxxxxx> 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