linux-crypto.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] crypto: additional fixes for omap-aes
@ 2019-10-26 14:52 Ard Biesheuvel
  2019-10-26 14:52 ` [PATCH 1/6] crypto: omap-aes - reject invalid input sizes for block modes Ard Biesheuvel
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Ard Biesheuvel @ 2019-10-26 14:52 UTC (permalink / raw)
  To: linux-crypto; +Cc: herbert, Ard Biesheuvel, linux-omap, Tero Kristo

This series applies onto Tero's series [0], and addresses a number of
additional issues that exist in the omap-aes driver that aren't being
addresses by Tero's fixes.

Note that the resulting code is still not 100% correct: an issue remains
where inputs into GCM consisting solely of assocdata are not being processed
correctly, e.g.,

alg: aead: gcm-aes-omap encryption test failed (wrong result) on test vector
  "random: alen=38 plen=0 authsize=16 klen=32",
   cfg="random: inplace may_sleep use_digest src_divs=[100.0%@+19] iv_offset=31"

I have no idea how to fix this, so I'll leave this to people that know this
hardware and have access to the Sitara TRM.

Note that I also spotted some issues in the SHAM driver, i.e.,

alg: ahash: omap-sha1 test failed (wrong result) on test vector
  "random: psize=7928 ksize=0", cfg="random: inplace use_final 
      src_divs=[5.64%@+13, 59.70%@+18, <flush>31.53%@+4072,
      <flush,nosimd>3.13%@alignmask+263]"
alg: ahash: omap-hmac-sha256 test failed (wrong result) on test vector
  "random: psize=960 ksize=37", cfg="random: inplace use_final
      src_divs=[32.54%@+2449, 17.18%@+4, <flush>50.28%@+1] iv_offset=31"

All of these failures are triggered by CONFIG_CRYPTO_MANAGER_EXTRA_TESTS,
so they will not show up when using the standard set of test vectors.

[0] https://lore.kernel.org/linux-crypto/20191017122549.4634-1-t-kristo@ti.com/

Cc: linux-omap@vger.kernel.org
Cc: Tero Kristo <t-kristo@ti.com>

Ard Biesheuvel (6):
  crypto: omap-aes - reject invalid input sizes for block modes
  crypto: omap-aes-ctr - set blocksize to 1
  crypto: omap-aes-gcm - deal with memory allocation failure
  crypto: omap-aes-gcm - add missing .setauthsize hooks
  crypto: omap-aes-gcm - check length of assocdata in RFC4106 mode
  crypto: omap-aes-gcm - use the AES library to encrypt the tag

 drivers/crypto/omap-aes-gcm.c | 119 ++++++++------------
 drivers/crypto/omap-aes.c     |  33 ++----
 drivers/crypto/omap-aes.h     |  10 +-
 3 files changed, 61 insertions(+), 101 deletions(-)

-- 
2.17.1


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

end of thread, other threads:[~2019-11-05 13:38 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-10-26 14:52 [PATCH 0/6] crypto: additional fixes for omap-aes Ard Biesheuvel
2019-10-26 14:52 ` [PATCH 1/6] crypto: omap-aes - reject invalid input sizes for block modes Ard Biesheuvel
2019-10-26 14:52 ` [PATCH 2/6] crypto: omap-aes-ctr - set blocksize to 1 Ard Biesheuvel
2019-10-26 14:52 ` [PATCH 3/6] crypto: omap-aes-gcm - deal with memory allocation failure Ard Biesheuvel
2019-10-26 14:52 ` [PATCH 4/6] crypto: omap-aes-gcm - add missing .setauthsize hooks Ard Biesheuvel
2019-10-26 14:52 ` [PATCH 5/6] crypto: omap-aes-gcm - check length of assocdata in RFC4106 mode Ard Biesheuvel
2019-10-26 14:52 ` [PATCH 6/6] crypto: omap-aes-gcm - use the AES library to encrypt the tag Ard Biesheuvel
2019-11-05 12:19 ` [PATCH 0/6] crypto: additional fixes for omap-aes Tero Kristo
2019-11-05 13:20   ` Herbert Xu
2019-11-05 13:38     ` Tero Kristo

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