mbox series

[0/6] crypto: test that CBC and CTR update the IV

Message ID 20190214080355.8112-1-ebiggers@kernel.org (mailing list archive)
Headers show
Series crypto: test that CBC and CTR update the IV | expand

Message

Eric Biggers Feb. 14, 2019, 8:03 a.m. UTC
Hello,

This series makes the crypto self-tests test that all CBC and CTR
implementations update req->iv to contain the IV for the next block.
This apparently has been a requirement for a long time, but it wasn't
actually tested for.

With this series applied, all self-tests pass on x86_64, arm32, and
arm64.  But I'm not able to test hardware drivers, so possibly some of
them will fail and still need to be fixed.

Eric Biggers (6):
  crypto: testmgr - remove extra bytes from 3DES-CTR IVs
  crypto: testmgr - support checking skcipher output IV
  crypto: testmgr - add iv_out to all CBC test vectors
  crypto: testmgr - add iv_out to all CTR test vectors
  crypto: arm64/aes-blk - update IV after partial final CTR block
  crypto: arm/aes-ce - update IV after partial final CTR block

 arch/arm/crypto/aes-ce-core.S |  26 ++++----
 arch/arm64/crypto/aes-modes.S |   3 +-
 crypto/testmgr.c              |   6 +-
 crypto/testmgr.h              | 111 +++++++++++++++++++++++++++++++---
 4 files changed, 120 insertions(+), 26 deletions(-)

Comments

Herbert Xu Feb. 22, 2019, noon UTC | #1
On Thu, Feb 14, 2019 at 12:03:49AM -0800, Eric Biggers wrote:
> Hello,
> 
> This series makes the crypto self-tests test that all CBC and CTR
> implementations update req->iv to contain the IV for the next block.
> This apparently has been a requirement for a long time, but it wasn't
> actually tested for.
> 
> With this series applied, all self-tests pass on x86_64, arm32, and
> arm64.  But I'm not able to test hardware drivers, so possibly some of
> them will fail and still need to be fixed.
> 
> Eric Biggers (6):
>   crypto: testmgr - remove extra bytes from 3DES-CTR IVs
>   crypto: testmgr - support checking skcipher output IV
>   crypto: testmgr - add iv_out to all CBC test vectors
>   crypto: testmgr - add iv_out to all CTR test vectors
>   crypto: arm64/aes-blk - update IV after partial final CTR block
>   crypto: arm/aes-ce - update IV after partial final CTR block
> 
>  arch/arm/crypto/aes-ce-core.S |  26 ++++----
>  arch/arm64/crypto/aes-modes.S |   3 +-
>  crypto/testmgr.c              |   6 +-
>  crypto/testmgr.h              | 111 +++++++++++++++++++++++++++++++---
>  4 files changed, 120 insertions(+), 26 deletions(-)

All applied.  Thanks.