Динамически создавать справочную таблицу для AES? - PullRequest
0 голосов
/ 12 июля 2020

Я пытаюсь создать динамически (вычисляя на лету) эту таблицу поиска AES. Думаю, он используется для InvMixColumns («таблица расписания ключей»?). Я пытался следить за документами и исходным кодом. Я могу умножать числа, как в примерах, но я не могу создать ту же таблицу.

Есть ли примеры / код с шагами для генерации той же последовательности?

0x00000000, 0x0d090e0b, 0x1a121c16, 0x171b121d,0x3424382c, 0x392d3627, 0x2e36243a, 0x233f2a31,
0x68487058, 0x65417e53, 0x725a6c4e, 0x7f536245,0x5c6c4874, 0x5165467f, 0x467e5462, 0x4b775a69,
0xd090e0b0, 0xdd99eebb, 0xca82fca6, 0xc78bf2ad,0xe4b4d89c, 0xe9bdd697, 0xfea6c48a, 0xf3afca81,
0xb8d890e8, 0xb5d19ee3, 0xa2ca8cfe, 0xafc382f5,0x8cfca8c4, 0x81f5a6cf, 0x96eeb4d2, 0x9be7bad9,
0xbb3bdb7b, 0xb632d570, 0xa129c76d, 0xac20c966,0x8f1fe357, 0x8216ed5c, 0x950dff41, 0x9804f14a,
0xd373ab23, 0xde7aa528, 0xc961b735, 0xc468b93e,0xe757930f, 0xea5e9d04, 0xfd458f19, 0xf04c8112,
0x6bab3bcb, 0x66a235c0, 0x71b927dd, 0x7cb029d6,0x5f8f03e7, 0x52860dec, 0x459d1ff1, 0x489411fa,
0x03e34b93, 0x0eea4598, 0x19f15785, 0x14f8598e,0x37c773bf, 0x3ace7db4, 0x2dd56fa9, 0x20dc61a2,
0x6d76adf6, 0x607fa3fd, 0x7764b1e0, 0x7a6dbfeb,0x595295da, 0x545b9bd1, 0x434089cc, 0x4e4987c7,
0x053eddae, 0x0837d3a5, 0x1f2cc1b8, 0x1225cfb3,0x311ae582, 0x3c13eb89, 0x2b08f994, 0x2601f79f,
0xbde64d46, 0xb0ef434d, 0xa7f45150, 0xaafd5f5b,0x89c2756a, 0x84cb7b61, 0x93d0697c, 0x9ed96777,
0xd5ae3d1e, 0xd8a73315, 0xcfbc2108, 0xc2b52f03,0xe18a0532, 0xec830b39, 0xfb981924, 0xf691172f,
0xd64d768d, 0xdb447886, 0xcc5f6a9b, 0xc1566490,0xe2694ea1, 0xef6040aa, 0xf87b52b7, 0xf5725cbc,
0xbe0506d5, 0xb30c08de, 0xa4171ac3, 0xa91e14c8,0x8a213ef9, 0x872830f2, 0x903322ef, 0x9d3a2ce4,
0x06dd963d, 0x0bd49836, 0x1ccf8a2b, 0x11c68420,0x32f9ae11, 0x3ff0a01a, 0x28ebb207, 0x25e2bc0c,
0x6e95e665, 0x639ce86e, 0x7487fa73, 0x798ef478,0x5ab1de49, 0x57b8d042, 0x40a3c25f, 0x4daacc54,
0xdaec41f7, 0xd7e54ffc, 0xc0fe5de1, 0xcdf753ea,0xeec879db, 0xe3c177d0, 0xf4da65cd, 0xf9d36bc6,
0xb2a431af, 0xbfad3fa4, 0xa8b62db9, 0xa5bf23b2,0x86800983, 0x8b890788, 0x9c921595, 0x919b1b9e,
0x0a7ca147, 0x0775af4c, 0x106ebd51, 0x1d67b35a,0x3e58996b, 0x33519760, 0x244a857d, 0x29438b76,
0x6234d11f, 0x6f3ddf14, 0x7826cd09, 0x752fc302,0x5610e933, 0x5b19e738, 0x4c02f525, 0x410bfb2e,
0x61d79a8c, 0x6cde9487, 0x7bc5869a, 0x76cc8891,0x55f3a2a0, 0x58faacab, 0x4fe1beb6, 0x42e8b0bd,
0x099fead4, 0x0496e4df, 0x138df6c2, 0x1e84f8c9,0x3dbbd2f8, 0x30b2dcf3, 0x27a9ceee, 0x2aa0c0e5,
0xb1477a3c, 0xbc4e7437, 0xab55662a, 0xa65c6821,0x85634210, 0x886a4c1b, 0x9f715e06, 0x9278500d,
0xd90f0a64, 0xd406046f, 0xc31d1672, 0xce141879,0xed2b3248, 0xe0223c43, 0xf7392e5e, 0xfa302055,
0xb79aec01, 0xba93e20a, 0xad88f017, 0xa081fe1c,0x83bed42d, 0x8eb7da26, 0x99acc83b, 0x94a5c630,
0xdfd29c59, 0xd2db9252, 0xc5c0804f, 0xc8c98e44,0xebf6a475, 0xe6ffaa7e, 0xf1e4b863, 0xfcedb668,
0x670a0cb1, 0x6a0302ba, 0x7d1810a7, 0x70111eac,0x532e349d, 0x5e273a96, 0x493c288b, 0x44352680,
0x0f427ce9, 0x024b72e2, 0x155060ff, 0x18596ef4,0x3b6644c5, 0x366f4ace, 0x217458d3, 0x2c7d56d8,
0x0ca1377a, 0x01a83971, 0x16b32b6c, 0x1bba2567,0x38850f56, 0x358c015d, 0x22971340, 0x2f9e1d4b,
0x64e94722, 0x69e04929, 0x7efb5b34, 0x73f2553f,0x50cd7f0e, 0x5dc47105, 0x4adf6318, 0x47d66d13,
0xdc31d7ca, 0xd138d9c1, 0xc623cbdc, 0xcb2ac5d7,0xe815efe6, 0xe51ce1ed, 0xf207f3f0, 0xff0efdfb,
0xb479a792, 0xb970a999, 0xae6bbb84, 0xa362b58f,0x805d9fbe, 0x8d5491b5, 0x9a4f83a8, 0x97468da3
...