2024-02-14 23:24:24

by Eric Biggers

[permalink] [raw]
Subject: Re: [PATCH 13/15] crypto: cts,xts - Update parameters blocksize/chunksize/tailsize

On Fri, Dec 29, 2023 at 06:47:00PM +0800, Herbert Xu wrote:
> diff --git a/arch/arm/crypto/aes-ce-glue.c b/arch/arm/crypto/aes-ce-glue.c
> index b668c97663ec..3bfa8accf2c2 100644
> --- a/arch/arm/crypto/aes-ce-glue.c
> +++ b/arch/arm/crypto/aes-ce-glue.c
> @@ -619,13 +619,15 @@ static struct skcipher_alg aes_algs[] = { {
> .base.cra_driver_name = "__cts-cbc-aes-ce",
> .base.cra_priority = 300,
> .base.cra_flags = CRYPTO_ALG_INTERNAL,
> - .base.cra_blocksize = AES_BLOCK_SIZE,
> + .base.cra_blocksize = 1,

Before messing around with cra_blocksize, it needs to be decided what it
actually means, and document it appropriately. According to the current
specification, AES_BLOCK_SIZE is correct here, not 1:

* @cra_blocksize: Minimum block size of this transformation. The size in bytes
* of the smallest possible unit which can be transformed with
* this algorithm. The users must respect this value.
* In case of HASH transformation, it is possible for a smaller
* block than @cra_blocksize to be passed to the crypto API for
* transformation, in case of any other transformation type, an
* error will be returned upon any attempt to transform smaller
* than @cra_blocksize chunks.