linux-crypto.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] crypto: remove blkcipher
@ 2019-10-25 19:41 Eric Biggers
  2019-10-25 19:41 ` [PATCH 1/5] crypto: unify the crypto_has_skcipher*() functions Eric Biggers
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Eric Biggers @ 2019-10-25 19:41 UTC (permalink / raw)
  To: linux-crypto

Now that all "blkcipher" algorithms have been converted to "skcipher",
this series removes the blkcipher algorithm type.

The skcipher (symmetric key cipher) algorithm type was introduced a few
years ago to replace both blkcipher and ablkcipher (synchronous and
asynchronous block cipher).  The advantages of skcipher include:

  - A much less confusing name, since none of these algorithm types have
    ever actually been for raw block ciphers, but rather for all
    length-preserving encryption modes including block cipher modes of
    operation, stream ciphers, and other length-preserving modes.

  - It unified blkcipher and ablkcipher into a single algorithm type
    which supports both synchronous and asynchronous implementations.
    Note, blkcipher already operated only on scatterlists, so the fact
    that skcipher does too isn't a regression in functionality.

  - Better type safety by using struct skcipher_alg, struct
    crypto_skcipher, etc. instead of crypto_alg, crypto_tfm, etc.

  - It sometimes simplifies the implementations of algorithms.

Also, the blkcipher API was no longer being tested.

Eric Biggers (5):
  crypto: unify the crypto_has_skcipher*() functions
  crypto: remove crypto_has_ablkcipher()
  crypto: rename crypto_skcipher_type2 to crypto_skcipher_type
  crypto: remove the "blkcipher" algorithm type
  crypto: rename the crypto_blkcipher module and kconfig option

 Documentation/crypto/api-skcipher.rst |  13 +-
 Documentation/crypto/architecture.rst |   2 -
 Documentation/crypto/devel-algos.rst  |  27 +-
 arch/arm/crypto/Kconfig               |   6 +-
 arch/arm64/crypto/Kconfig             |   8 +-
 crypto/Kconfig                        |  84 ++--
 crypto/Makefile                       |   7 +-
 crypto/api.c                          |   2 +-
 crypto/blkcipher.c                    | 548 --------------------------
 crypto/cryptd.c                       |   2 +-
 crypto/crypto_user_stat.c             |   4 -
 crypto/essiv.c                        |   6 +-
 crypto/skcipher.c                     | 124 +-----
 drivers/crypto/Kconfig                |  52 +--
 drivers/crypto/amlogic/Kconfig        |   2 +-
 drivers/crypto/caam/Kconfig           |   6 +-
 drivers/crypto/cavium/nitrox/Kconfig  |   2 +-
 drivers/crypto/ccp/Kconfig            |   2 +-
 drivers/crypto/hisilicon/Kconfig      |   2 +-
 drivers/crypto/qat/Kconfig            |   2 +-
 drivers/crypto/ux500/Kconfig          |   2 +-
 drivers/crypto/virtio/Kconfig         |   2 +-
 drivers/net/wireless/cisco/Kconfig    |   2 +-
 include/crypto/algapi.h               |  74 ----
 include/crypto/internal/skcipher.h    |  12 -
 include/crypto/skcipher.h             |  27 +-
 include/linux/crypto.h                | 426 +-------------------
 net/bluetooth/Kconfig                 |   2 +-
 net/rxrpc/Kconfig                     |   2 +-
 net/xfrm/Kconfig                      |   2 +-
 net/xfrm/xfrm_algo.c                  |   4 +-
 31 files changed, 124 insertions(+), 1332 deletions(-)
 delete mode 100644 crypto/blkcipher.c

-- 
2.23.0


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

end of thread, other threads:[~2019-11-01  6:12 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-25 19:41 [PATCH 0/5] crypto: remove blkcipher Eric Biggers
2019-10-25 19:41 ` [PATCH 1/5] crypto: unify the crypto_has_skcipher*() functions Eric Biggers
2019-10-25 19:41 ` [PATCH 2/5] crypto: remove crypto_has_ablkcipher() Eric Biggers
2019-10-25 19:41 ` [PATCH 3/5] crypto: rename crypto_skcipher_type2 to crypto_skcipher_type Eric Biggers
2019-10-25 19:41 ` [PATCH 4/5] crypto: remove the "blkcipher" algorithm type Eric Biggers
2019-10-25 19:41 ` [PATCH 5/5] crypto: rename the crypto_blkcipher module and kconfig option Eric Biggers
2019-10-26 15:32 ` [PATCH 0/5] crypto: remove blkcipher Ard Biesheuvel
2019-10-26 16:19   ` Eric Biggers
2019-10-26 16:22     ` Ard Biesheuvel
2019-11-01  6:12 ` Herbert Xu

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).