lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Mon, 3 Aug 2020 00:05:47 -0700
From:   Eric Biggers <ebiggers@...nel.org>
To:     Linus Torvalds <torvalds@...ux-foundation.org>
Cc:     linux-fscrypt@...r.kernel.org, linux-ext4@...r.kernel.org,
        linux-f2fs-devel@...ts.sourceforge.net,
        linux-mtd@...ts.infradead.org, linux-fsdevel@...r.kernel.org,
        linux-kernel@...r.kernel.org, Theodore Ts'o <tytso@....edu>,
        Jaegeuk Kim <jaegeuk@...nel.org>,
        Satya Tangirala <satyat@...gle.com>
Subject: [GIT PULL] fscrypt updates for 5.9

The following changes since commit dcb7fd82c75ee2d6e6f9d8cc71c52519ed52e258:

  Linux 5.8-rc4 (2020-07-05 16:20:22 -0700)

are available in the Git repository at:

  https://git.kernel.org/pub/scm/fs/fscrypt/fscrypt.git tags/fscrypt-for-linus

for you to fetch changes up to 55e32c54bbd5741cad462c9ee00c453c72fa74b9:

  fscrypt: don't load ->i_crypt_info before it's known to be valid (2020-07-30 14:21:50 -0700)

----------------------------------------------------------------

This release, we add support for inline encryption via the blk-crypto
framework which was added in 5.8.  Now when an ext4 or f2fs filesystem
is mounted with '-o inlinecrypt', the contents of encrypted files will
be encrypted/decrypted via blk-crypto, instead of directly using the
crypto API.  This model allows taking advantage of the inline encryption
hardware that is integrated into the UFS or eMMC host controllers on
most mobile SoCs.  Note that this is just an alternate implementation;
the ciphertext written to disk stays the same.

(This pull request does *not* include support for direct I/O on
encrypted files, which blk-crypto makes possible, since that part is
still being discussed.)

Besides the above feature update, there are also a few fixes and
cleanups, e.g. strengthening some memory barriers that may be too weak.

All these patches have been in linux-next with no reported issues.  I've
also tested them with the fscrypt xfstests, as usual.  It's also been
tested that the inline encryption support works with the support for
Qualcomm and Mediatek inline encryption hardware that will be in the
scsi pull request for 5.9.  Also, several SoC vendors are already using
a previous, functionally equivalent version of these patches.

----------------------------------------------------------------
Eric Biggers (9):
      ext4: add inline encryption support
      fscrypt: add comments that describe the HKDF info strings
      fscrypt: rename FS_KEY_DERIVATION_NONCE_SIZE
      fscrypt: restrict IV_INO_LBLK_* to AES-256-XTS
      fscrypt: switch fscrypt_do_sha256() to use the SHA-256 library
      fscrypt: use smp_load_acquire() for fscrypt_prepared_key
      fscrypt: use smp_load_acquire() for ->s_master_keys
      fscrypt: use smp_load_acquire() for ->i_crypt_info
      fscrypt: don't load ->i_crypt_info before it's known to be valid

Satya Tangirala (4):
      fs: introduce SB_INLINECRYPT
      fscrypt: add inline encryption support
      f2fs: add inline encryption support
      fscrypt: document inline encryption support

 Documentation/admin-guide/ext4.rst    |   7 +
 Documentation/filesystems/f2fs.rst    |   7 +
 Documentation/filesystems/fscrypt.rst |  25 ++-
 fs/buffer.c                           |   7 +-
 fs/crypto/Kconfig                     |   8 +-
 fs/crypto/Makefile                    |   1 +
 fs/crypto/bio.c                       |  51 +++++
 fs/crypto/crypto.c                    |   4 +-
 fs/crypto/fname.c                     |  45 ++---
 fs/crypto/fscrypt_private.h           | 144 ++++++++++---
 fs/crypto/inline_crypt.c              | 367 ++++++++++++++++++++++++++++++++++
 fs/crypto/keyring.c                   |  21 +-
 fs/crypto/keysetup.c                  |  91 ++++++---
 fs/crypto/keysetup_v1.c               |  20 +-
 fs/crypto/policy.c                    |  20 +-
 fs/ext4/inode.c                       |   4 +-
 fs/ext4/page-io.c                     |   6 +-
 fs/ext4/readpage.c                    |  11 +-
 fs/ext4/super.c                       |  12 ++
 fs/f2fs/compress.c                    |   2 +-
 fs/f2fs/data.c                        |  79 ++++++--
 fs/f2fs/super.c                       |  35 ++++
 include/linux/fs.h                    |   1 +
 include/linux/fscrypt.h               | 111 +++++++++-
 24 files changed, 940 insertions(+), 139 deletions(-)
 create mode 100644 fs/crypto/inline_crypt.c

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ