qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Richard Henderson <richard.henderson@linaro.org>
To: qemu-devel@nongnu.org
Cc: peter.maydell@linaro.org, vincent.dehors@smile.fr,
	alex.bennee@linaro.org, adrien.grassein@smile.fr
Subject: [PATCH 1/4] target/arm: Fix PAuth sbox functions
Date: Thu, 16 Jan 2020 13:08:06 -1000	[thread overview]
Message-ID: <20200116230809.19078-2-richard.henderson@linaro.org> (raw)
In-Reply-To: <20200116230809.19078-1-richard.henderson@linaro.org>

From: Vincent Dehors <vincent.dehors@smile.fr>

In the PAC computation, sbox was applied over wrong bits.
As this is a 4-bit sbox, bit index should be incremented by 4 instead of 16.

Test vector from QARMA paper (https://eprint.iacr.org/2016/444.pdf) was
used to verify one computation of the pauth_computepac() function which
uses sbox2.

Launchpad: https://bugs.launchpad.net/bugs/1859713
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Vincent DEHORS <vincent.dehors@smile.fr>
Signed-off-by: Adrien GRASSEIN <adrien.grassein@smile.fr>
---
 target/arm/pauth_helper.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/target/arm/pauth_helper.c b/target/arm/pauth_helper.c
index d3194f2043..0a5f41e10c 100644
--- a/target/arm/pauth_helper.c
+++ b/target/arm/pauth_helper.c
@@ -89,7 +89,7 @@ static uint64_t pac_sub(uint64_t i)
     uint64_t o = 0;
     int b;
 
-    for (b = 0; b < 64; b += 16) {
+    for (b = 0; b < 64; b += 4) {
         o |= (uint64_t)sub[(i >> b) & 0xf] << b;
     }
     return o;
@@ -104,7 +104,7 @@ static uint64_t pac_inv_sub(uint64_t i)
     uint64_t o = 0;
     int b;
 
-    for (b = 0; b < 64; b += 16) {
+    for (b = 0; b < 64; b += 4) {
         o |= (uint64_t)inv_sub[(i >> b) & 0xf] << b;
     }
     return o;
-- 
2.20.1



  reply	other threads:[~2020-01-16 23:21 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-16 23:08 [PATCH 0/4] target/arm: Fix ComputePAC (LP 1859713) Richard Henderson
2020-01-16 23:08 ` Richard Henderson [this message]
2020-01-16 23:08 ` [PATCH 2/4] tests/tcg/aarch64: Fix compilation parameters for pauth-% Richard Henderson
2020-01-17  6:42   ` Philippe Mathieu-Daudé
2020-01-20 13:10   ` Peter Maydell
2020-01-16 23:08 ` [PATCH 3/4] tests/tcg/aarch64: Add pauth-3 Richard Henderson
2020-01-16 23:08 ` [PATCH 4/4] tests/tcg/aarch64: Add pauth-4 Richard Henderson
2020-01-17 11:41 ` [PATCH 0/4] target/arm: Fix ComputePAC (LP 1859713) no-reply
2020-01-20 13:12 ` Peter Maydell

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200116230809.19078-2-richard.henderson@linaro.org \
    --to=richard.henderson@linaro.org \
    --cc=adrien.grassein@smile.fr \
    --cc=alex.bennee@linaro.org \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=vincent.dehors@smile.fr \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).