summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorTom Musta2014-03-13 15:13:26 +0100
committerAlexander Graf2014-06-16 13:24:33 +0200
commit1c1a6d20e0bceef5b5ce68930bf255021c326cce (patch)
treebfbf66969ee8e82684c072376ab8765603869c73 /include
parentutil: Add S-Box and InvS-Box Arrays to Common AES Utils (diff)
downloadqemu-1c1a6d20e0bceef5b5ce68930bf255021c326cce.tar.gz
qemu-1c1a6d20e0bceef5b5ce68930bf255021c326cce.tar.xz
qemu-1c1a6d20e0bceef5b5ce68930bf255021c326cce.zip
util: Add AES ShiftRows and InvShiftRows Tables
This patch adds tables that implement the Advanced Encryption Standard (AES) ShiftRows and InvShiftRows transformations. These are commonly used in instruction models. Signed-off-by: Tom Musta <tommusta@gmail.com> Reviewed-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'include')
-rw-r--r--include/qemu/aes.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/include/qemu/aes.h b/include/qemu/aes.h
index a4044f52c7..c45bc57467 100644
--- a/include/qemu/aes.h
+++ b/include/qemu/aes.h
@@ -26,6 +26,10 @@ void AES_cbc_encrypt(const unsigned char *in, unsigned char *out,
extern const uint8_t AES_sbox[256];
extern const uint8_t AES_isbox[256];
+/* AES ShiftRows and InvShiftRows */
+extern const uint8_t AES_shifts[16];
+extern const uint8_t AES_ishifts[16];
+
/*
AES_Te0[x] = S [x].[02, 01, 01, 03];
AES_Te1[x] = S [x].[03, 02, 01, 01];