linux-crypto.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] crypto: vmx - fix copy-paste error in CTR mode
@ 2019-03-15  2:09 Daniel Axtens
  2019-03-15  2:24 ` Eric Biggers
                   ` (3 more replies)
  0 siblings, 4 replies; 24+ messages in thread
From: Daniel Axtens @ 2019-03-15  2:09 UTC (permalink / raw)
  To: omosnacek, linux-crypto, Herbert Xu
  Cc: marcelo.cerri, Stephan Mueller, leo.barbosa, linuxppc-dev, nayna,
	pfsmorigo, leitao

The original assembly imported from OpenSSL has two copy-paste
errors in handling CTR mode. When dealing with a 2 or 3 block tail,
the code branches to the CBC decryption exit path, rather than to
the CTR exit path.

This leads to corruption of the IV, which leads to subsequent blocks
being corrupted.

This can be detected with libkcapi test suite, which is available at
https://github.com/smuellerDD/libkcapi

Reported-by: Ondrej Mosnáček <omosnacek@gmail.com>
Fixes: 5c380d623ed3 ("crypto: vmx - Add support for VMS instructions by ASM")
Cc: stable@vger.kernel.org
Signed-off-by: Daniel Axtens <dja@axtens.net>
---
 drivers/crypto/vmx/aesp8-ppc.pl | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/vmx/aesp8-ppc.pl b/drivers/crypto/vmx/aesp8-ppc.pl
index d6a9f63d65ba..de78282b8f44 100644
--- a/drivers/crypto/vmx/aesp8-ppc.pl
+++ b/drivers/crypto/vmx/aesp8-ppc.pl
@@ -1854,7 +1854,7 @@ Lctr32_enc8x_three:
 	stvx_u		$out1,$x10,$out
 	stvx_u		$out2,$x20,$out
 	addi		$out,$out,0x30
-	b		Lcbc_dec8x_done
+	b		Lctr32_enc8x_done
 
 .align	5
 Lctr32_enc8x_two:
@@ -1866,7 +1866,7 @@ Lctr32_enc8x_two:
 	stvx_u		$out0,$x00,$out
 	stvx_u		$out1,$x10,$out
 	addi		$out,$out,0x20
-	b		Lcbc_dec8x_done
+	b		Lctr32_enc8x_done
 
 .align	5
 Lctr32_enc8x_one:
-- 
2.19.1


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

end of thread, other threads:[~2019-05-16  5:28 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-15  2:09 [PATCH] crypto: vmx - fix copy-paste error in CTR mode Daniel Axtens
2019-03-15  2:24 ` Eric Biggers
2019-03-15  4:24   ` Daniel Axtens
2019-03-15  4:34     ` Eric Biggers
2019-03-15  5:23       ` Daniel Axtens
2019-04-10  7:02         ` Eric Biggers
2019-04-11 14:47           ` Daniel Axtens
2019-04-11 17:40             ` Nayna
2019-04-13  3:41               ` Michael Ellerman
2019-05-06 15:53                 ` Eric Biggers
2019-05-13  0:59                   ` Herbert Xu
2019-05-13 11:39                     ` Michael Ellerman
2019-05-14 17:35                       ` Daniel Axtens
2019-05-15  3:53                         ` Herbert Xu
2019-05-15  6:36                           ` Daniel Axtens
2019-05-16  2:12                             ` Daniel Axtens
2019-05-16  2:56                               ` Eric Biggers
2019-05-16  5:28                                 ` Daniel Axtens
2019-03-18  8:41       ` Michael Ellerman
2019-03-18  9:13         ` Ard Biesheuvel
2019-03-19  0:52           ` Michael Ellerman
2019-03-18  6:03 ` Michael Ellerman
2019-03-20  8:40 ` Ondrej Mosnáček
2019-03-22 13:04 ` 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).