annotate libtomcrypt/src/stream/sober128/sober128tab.c @ 1653:76189c9ffea2

External Public-Key Authentication API (#72) * Implemented dynamic loading of an external plug-in shared library to delegate public key authentication * Moved conditional compilation of the plugin infrastructure into the configure.ac script to be able to add -ldl to dropbear build only when the flag is enabled * Added tags file to the ignore list * Updated API to have the constructor to return function pointers in the pliugin instance. Added support for passing user name to the checkpubkey function. Added options to the session returned by the plugin and have dropbear to parse and process them * Added -rdynamic to the linker flags when EPKA is enabled * Changed the API to pass a previously created session to the checkPubKey function (created during preauth) * Added documentation to the API * Added parameter addrstring to plugin creation function * Modified the API to retrieve the auth options. Instead of having them as field of the EPKASession struct, they are stored internally (plugin-dependent) in the plugin/session and retrieved through a pointer to a function (in the session) * Changed option string to be a simple char * instead of unsigned char *
author fabriziobertocci <fabriziobertocci@gmail.com>
date Wed, 15 May 2019 09:43:57 -0400
parents 6dba84798cd5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1471
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
2 *
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
3 * LibTomCrypt is a library that provides various cryptographic
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
4 * algorithms in a highly modular and flexible manner.
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
5 *
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
6 * The library is free for all purposes without any express
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
7 * guarantee it works.
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
8 */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
9
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
10 /**
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
11 @file sober128tab.c
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
12 SOBER-128 Tables
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
13 */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
14
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
15 #ifdef __LTC_SOBER128TAB_C__
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
16
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
17 /* $ID$ */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
18 /* @(#)TuringMultab.h 1.3 (QUALCOMM) 02/09/03 */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
19 /* Multiplication table for Turing using 0xD02B4367 */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
20 static const ulong32 Multab[256] = {
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
21 0x00000000, 0xD02B4367, 0xED5686CE, 0x3D7DC5A9,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
22 0x97AC41D1, 0x478702B6, 0x7AFAC71F, 0xAAD18478,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
23 0x631582EF, 0xB33EC188, 0x8E430421, 0x5E684746,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
24 0xF4B9C33E, 0x24928059, 0x19EF45F0, 0xC9C40697,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
25 0xC62A4993, 0x16010AF4, 0x2B7CCF5D, 0xFB578C3A,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
26 0x51860842, 0x81AD4B25, 0xBCD08E8C, 0x6CFBCDEB,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
27 0xA53FCB7C, 0x7514881B, 0x48694DB2, 0x98420ED5,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
28 0x32938AAD, 0xE2B8C9CA, 0xDFC50C63, 0x0FEE4F04,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
29 0xC154926B, 0x117FD10C, 0x2C0214A5, 0xFC2957C2,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
30 0x56F8D3BA, 0x86D390DD, 0xBBAE5574, 0x6B851613,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
31 0xA2411084, 0x726A53E3, 0x4F17964A, 0x9F3CD52D,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
32 0x35ED5155, 0xE5C61232, 0xD8BBD79B, 0x089094FC,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
33 0x077EDBF8, 0xD755989F, 0xEA285D36, 0x3A031E51,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
34 0x90D29A29, 0x40F9D94E, 0x7D841CE7, 0xADAF5F80,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
35 0x646B5917, 0xB4401A70, 0x893DDFD9, 0x59169CBE,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
36 0xF3C718C6, 0x23EC5BA1, 0x1E919E08, 0xCEBADD6F,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
37 0xCFA869D6, 0x1F832AB1, 0x22FEEF18, 0xF2D5AC7F,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
38 0x58042807, 0x882F6B60, 0xB552AEC9, 0x6579EDAE,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
39 0xACBDEB39, 0x7C96A85E, 0x41EB6DF7, 0x91C02E90,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
40 0x3B11AAE8, 0xEB3AE98F, 0xD6472C26, 0x066C6F41,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
41 0x09822045, 0xD9A96322, 0xE4D4A68B, 0x34FFE5EC,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
42 0x9E2E6194, 0x4E0522F3, 0x7378E75A, 0xA353A43D,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
43 0x6A97A2AA, 0xBABCE1CD, 0x87C12464, 0x57EA6703,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
44 0xFD3BE37B, 0x2D10A01C, 0x106D65B5, 0xC04626D2,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
45 0x0EFCFBBD, 0xDED7B8DA, 0xE3AA7D73, 0x33813E14,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
46 0x9950BA6C, 0x497BF90B, 0x74063CA2, 0xA42D7FC5,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
47 0x6DE97952, 0xBDC23A35, 0x80BFFF9C, 0x5094BCFB,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
48 0xFA453883, 0x2A6E7BE4, 0x1713BE4D, 0xC738FD2A,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
49 0xC8D6B22E, 0x18FDF149, 0x258034E0, 0xF5AB7787,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
50 0x5F7AF3FF, 0x8F51B098, 0xB22C7531, 0x62073656,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
51 0xABC330C1, 0x7BE873A6, 0x4695B60F, 0x96BEF568,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
52 0x3C6F7110, 0xEC443277, 0xD139F7DE, 0x0112B4B9,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
53 0xD31DD2E1, 0x03369186, 0x3E4B542F, 0xEE601748,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
54 0x44B19330, 0x949AD057, 0xA9E715FE, 0x79CC5699,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
55 0xB008500E, 0x60231369, 0x5D5ED6C0, 0x8D7595A7,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
56 0x27A411DF, 0xF78F52B8, 0xCAF29711, 0x1AD9D476,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
57 0x15379B72, 0xC51CD815, 0xF8611DBC, 0x284A5EDB,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
58 0x829BDAA3, 0x52B099C4, 0x6FCD5C6D, 0xBFE61F0A,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
59 0x7622199D, 0xA6095AFA, 0x9B749F53, 0x4B5FDC34,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
60 0xE18E584C, 0x31A51B2B, 0x0CD8DE82, 0xDCF39DE5,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
61 0x1249408A, 0xC26203ED, 0xFF1FC644, 0x2F348523,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
62 0x85E5015B, 0x55CE423C, 0x68B38795, 0xB898C4F2,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
63 0x715CC265, 0xA1778102, 0x9C0A44AB, 0x4C2107CC,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
64 0xE6F083B4, 0x36DBC0D3, 0x0BA6057A, 0xDB8D461D,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
65 0xD4630919, 0x04484A7E, 0x39358FD7, 0xE91ECCB0,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
66 0x43CF48C8, 0x93E40BAF, 0xAE99CE06, 0x7EB28D61,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
67 0xB7768BF6, 0x675DC891, 0x5A200D38, 0x8A0B4E5F,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
68 0x20DACA27, 0xF0F18940, 0xCD8C4CE9, 0x1DA70F8E,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
69 0x1CB5BB37, 0xCC9EF850, 0xF1E33DF9, 0x21C87E9E,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
70 0x8B19FAE6, 0x5B32B981, 0x664F7C28, 0xB6643F4F,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
71 0x7FA039D8, 0xAF8B7ABF, 0x92F6BF16, 0x42DDFC71,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
72 0xE80C7809, 0x38273B6E, 0x055AFEC7, 0xD571BDA0,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
73 0xDA9FF2A4, 0x0AB4B1C3, 0x37C9746A, 0xE7E2370D,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
74 0x4D33B375, 0x9D18F012, 0xA06535BB, 0x704E76DC,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
75 0xB98A704B, 0x69A1332C, 0x54DCF685, 0x84F7B5E2,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
76 0x2E26319A, 0xFE0D72FD, 0xC370B754, 0x135BF433,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
77 0xDDE1295C, 0x0DCA6A3B, 0x30B7AF92, 0xE09CECF5,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
78 0x4A4D688D, 0x9A662BEA, 0xA71BEE43, 0x7730AD24,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
79 0xBEF4ABB3, 0x6EDFE8D4, 0x53A22D7D, 0x83896E1A,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
80 0x2958EA62, 0xF973A905, 0xC40E6CAC, 0x14252FCB,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
81 0x1BCB60CF, 0xCBE023A8, 0xF69DE601, 0x26B6A566,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
82 0x8C67211E, 0x5C4C6279, 0x6131A7D0, 0xB11AE4B7,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
83 0x78DEE220, 0xA8F5A147, 0x958864EE, 0x45A32789,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
84 0xEF72A3F1, 0x3F59E096, 0x0224253F, 0xD20F6658,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
85 };
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
86
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
87 /* $ID$ */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
88 /* Sbox for SOBER-128 */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
89 /*
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
90 * This is really the combination of two SBoxes; the least significant
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
91 * 24 bits comes from:
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
92 * 8->32 Sbox generated by Millan et. al. at Queensland University of
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
93 * Technology. See: E. Dawson, W. Millan, L. Burnett, G. Carter,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
94 * "On the Design of 8*32 S-boxes". Unpublished report, by the
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
95 * Information Systems Research Centre,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
96 * Queensland University of Technology, 1999.
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
97 *
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
98 * The most significant 8 bits are the Skipjack "F table", which can be
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
99 * found at http://csrc.nist.gov/CryptoToolkit/skipjack/skipjack.pdf .
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
100 * In this optimised table, though, the intent is to XOR the word from
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
101 * the table selected by the high byte with the input word. Thus, the
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
102 * high byte is actually the Skipjack F-table entry XORED with its
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
103 * table index.
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
104 */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
105 static const ulong32 Sbox[256] = {
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
106 0xa3aa1887, 0xd65e435c, 0x0b65c042, 0x800e6ef4,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
107 0xfc57ee20, 0x4d84fed3, 0xf066c502, 0xf354e8ae,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
108 0xbb2ee9d9, 0x281f38d4, 0x1f829b5d, 0x735cdf3c,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
109 0x95864249, 0xbc2e3963, 0xa1f4429f, 0xf6432c35,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
110 0xf7f40325, 0x3cc0dd70, 0x5f973ded, 0x9902dc5e,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
111 0xda175b42, 0x590012bf, 0xdc94d78c, 0x39aab26b,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
112 0x4ac11b9a, 0x8c168146, 0xc3ea8ec5, 0x058ac28f,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
113 0x52ed5c0f, 0x25b4101c, 0x5a2db082, 0x370929e1,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
114 0x2a1843de, 0xfe8299fc, 0x202fbc4b, 0x833915dd,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
115 0x33a803fa, 0xd446b2de, 0x46233342, 0x4fcee7c3,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
116 0x3ad607ef, 0x9e97ebab, 0x507f859b, 0xe81f2e2f,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
117 0xc55b71da, 0xd7e2269a, 0x1339c3d1, 0x7ca56b36,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
118 0xa6c9def2, 0xb5c9fc5f, 0x5927b3a3, 0x89a56ddf,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
119 0xc625b510, 0x560f85a7, 0xace82e71, 0x2ecb8816,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
120 0x44951e2a, 0x97f5f6af, 0xdfcbc2b3, 0xce4ff55d,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
121 0xcb6b6214, 0x2b0b83e3, 0x549ea6f5, 0x9de041af,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
122 0x792f1f17, 0xf73b99ee, 0x39a65ec0, 0x4c7016c6,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
123 0x857709a4, 0xd6326e01, 0xc7b280d9, 0x5cfb1418,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
124 0xa6aff227, 0xfd548203, 0x506b9d96, 0xa117a8c0,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
125 0x9cd5bf6e, 0xdcee7888, 0x61fcfe64, 0xf7a193cd,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
126 0x050d0184, 0xe8ae4930, 0x88014f36, 0xd6a87088,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
127 0x6bad6c2a, 0x1422c678, 0xe9204de7, 0xb7c2e759,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
128 0x0200248e, 0x013b446b, 0xda0d9fc2, 0x0414a895,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
129 0x3a6cc3a1, 0x56fef170, 0x86c19155, 0xcf7b8a66,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
130 0x551b5e69, 0xb4a8623e, 0xa2bdfa35, 0xc4f068cc,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
131 0x573a6acd, 0x6355e936, 0x03602db9, 0x0edf13c1,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
132 0x2d0bb16d, 0x6980b83c, 0xfeb23763, 0x3dd8a911,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
133 0x01b6bc13, 0xf55579d7, 0xf55c2fa8, 0x19f4196e,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
134 0xe7db5476, 0x8d64a866, 0xc06e16ad, 0xb17fc515,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
135 0xc46feb3c, 0x8bc8a306, 0xad6799d9, 0x571a9133,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
136 0x992466dd, 0x92eb5dcd, 0xac118f50, 0x9fafb226,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
137 0xa1b9cef3, 0x3ab36189, 0x347a19b1, 0x62c73084,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
138 0xc27ded5c, 0x6c8bc58f, 0x1cdde421, 0xed1e47fb,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
139 0xcdcc715e, 0xb9c0ff99, 0x4b122f0f, 0xc4d25184,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
140 0xaf7a5e6c, 0x5bbf18bc, 0x8dd7c6e0, 0x5fb7e420,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
141 0x521f523f, 0x4ad9b8a2, 0xe9da1a6b, 0x97888c02,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
142 0x19d1e354, 0x5aba7d79, 0xa2cc7753, 0x8c2d9655,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
143 0x19829da1, 0x531590a7, 0x19c1c149, 0x3d537f1c,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
144 0x50779b69, 0xed71f2b7, 0x463c58fa, 0x52dc4418,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
145 0xc18c8c76, 0xc120d9f0, 0xafa80d4d, 0x3b74c473,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
146 0xd09410e9, 0x290e4211, 0xc3c8082b, 0x8f6b334a,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
147 0x3bf68ed2, 0xa843cc1b, 0x8d3c0ff3, 0x20e564a0,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
148 0xf8f55a4f, 0x2b40f8e7, 0xfea7f15f, 0xcf00fe21,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
149 0x8a6d37d6, 0xd0d506f1, 0xade00973, 0xefbbde36,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
150 0x84670fa8, 0xfa31ab9e, 0xaedab618, 0xc01f52f5,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
151 0x6558eb4f, 0x71b9e343, 0x4b8d77dd, 0x8cb93da6,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
152 0x740fd52d, 0x425412f8, 0xc5a63360, 0x10e53ad0,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
153 0x5a700f1c, 0x8324ed0b, 0xe53dc1ec, 0x1a366795,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
154 0x6d549d15, 0xc5ce46d7, 0xe17abe76, 0x5f48e0a0,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
155 0xd0f07c02, 0x941249b7, 0xe49ed6ba, 0x37a47f78,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
156 0xe1cfffbd, 0xb007ca84, 0xbb65f4da, 0xb59f35da,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
157 0x33d2aa44, 0x417452ac, 0xc0d674a7, 0x2d61a46a,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
158 0xdc63152a, 0x3e12b7aa, 0x6e615927, 0xa14fb118,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
159 0xa151758d, 0xba81687b, 0xe152f0b3, 0x764254ed,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
160 0x34c77271, 0x0a31acab, 0x54f94aec, 0xb9e994cd,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
161 0x574d9e81, 0x5b623730, 0xce8a21e8, 0x37917f0b,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
162 0xe8a9b5d6, 0x9697adf8, 0xf3d30431, 0x5dcac921,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
163 0x76b35d46, 0xaa430a36, 0xc2194022, 0x22bca65e,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
164 0xdaec70ba, 0xdfaea8cc, 0x777bae8b, 0x242924d5,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
165 0x1f098a5a, 0x4b396b81, 0x55de2522, 0x435c1cb8,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
166 0xaeb8fe1d, 0x9db3c697, 0x5b164f83, 0xe0c16376,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
167 0xa319224c, 0xd0203b35, 0x433ac0fe, 0x1466a19a,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
168 0x45f0b24f, 0x51fda998, 0xc0d52d71, 0xfa0896a8,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
169 0xf9e6053f, 0xa4b0d300, 0xd499cbcc, 0xb95e3d40,
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
170 };
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
171
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
172 #endif /* __LTC_SOBER128TAB_C__ */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
173
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
174 /* ref: $Format:%D$ */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
175 /* git commit: $Format:%H$ */
6dba84798cd5 Update to libtomcrypt 1.18.1, merged with Dropbear changes
Matt Johnston <matt@ucc.asn.au>
parents:
diff changeset
176 /* commit time: $Format:%ai$ */