From bfd8f5b754318a933e052374c3c17d314bd9927c Mon Sep 17 00:00:00 2001 From: Tom Musta Date: Thu, 13 Mar 2014 09:13:27 -0500 Subject: util: Add InvMixColumns This patch adds the table implementation of the Advanced Encryption Standard (AES) InvMixColumns transformation. The patch is intentionally asymmetrical -- the MixColumns table is not added because there is no known use for it at this time. Signed-off-by: Tom Musta Reviewed-by: Richard Henderson Signed-off-by: Alexander Graf --- include/qemu/aes.h | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'include/qemu') diff --git a/include/qemu/aes.h b/include/qemu/aes.h index c45bc57..c106660 100644 --- a/include/qemu/aes.h +++ b/include/qemu/aes.h @@ -30,6 +30,13 @@ extern const uint8_t AES_isbox[256]; extern const uint8_t AES_shifts[16]; extern const uint8_t AES_ishifts[16]; +/* AES InvMixColumns */ +/* AES_imc[x][0] = [x].[0e, 09, 0d, 0b]; */ +/* AES_imc[x][1] = [x].[0b, 0e, 09, 0d]; */ +/* AES_imc[x][2] = [x].[0d, 0b, 0e, 09]; */ +/* AES_imc[x][3] = [x].[09, 0d, 0b, 0e]; */ +extern const uint32_t AES_imc[256][4]; + /* AES_Te0[x] = S [x].[02, 01, 01, 03]; AES_Te1[x] = S [x].[03, 02, 01, 01]; -- cgit v1.1