Re: [PATCH 0/5] crypto: remove blkcipher

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 25 Oct 2019 at 21:45, Eric Biggers <ebiggers@xxxxxxxxxx> wrote:
>
> 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
>


For the series

Acked-by: Ard Biesheuvel <ardb@xxxxxxxxxx>

although obviously, this needs to wait until my albkcipher purge
series is applied.

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



[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]

  Powered by Linux