This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.
%I A354500 #17 Aug 15 2022 23:32:43 %S A354500 99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130, %T A354500 201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38, %U A354500 54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226 %N A354500 The Rijndael S-box used in the Advanced Encryption Standard (AES). %C A354500 A permutation of {0, 1, ..., 255}. %C A354500 The permutation can be decomposed into 5 cycles: 4, 242, 137, 167, ..., 48 (length 87); 1, 124, 16, 202, ..., 9 (length 81); 0, 99, 251, 15, ..., 82 (length 59); 11, 43, 241, 161, ..., 158 (length 27); 115, 143 (length 2). %H A354500 Jianing Song, <a href="/A354500/b354500.txt">Table of n, a(n) for n = 0..255</a> %H A354500 Institute of Telematics, <a href="http://www.tm.uka.de/software/pktanon/documentation/sourcedoc/html/rijndael_8cpp.html">Rijndael.cpp File Reference</a> (contains the table of the Rijndael S-box written in decimal) %H A354500 Wikipedia, <a href="https://en.wikipedia.org/wiki/Rijndael_S-box">Rijndael S-box</a> %F A354500 a(n) = ivgenpoly(((x^4+x^3+x^2+x+1)*(genpoly(n)^254 mod (x^8+x^4+x^3+x+1)) + x^6 + x^5 + x + 1) mod (x^8+1)), where ivgenpoly and genpoly are the notations introduced in A355891. Beware that all the operations are done in GF(2)[x]. %F A354500 To be more concretely, to obtain a(n): %F A354500 - Write the binary expansion of n and view it as a polynomial p(x) in GF(2)[x]; (E.g., 10 = 1010_2 => x^3 + x) %F A354500 - Compute q(x) = p(x)^254 mod (x^8+x^4+x^3+x+1) in GF(2)[x]; (E.g., x^3 + x => x^5 + x^3 + 1) %F A354500 - Compute r(x) = ((x^4+x^3+x^2+x+1)*q(x) + x^6 + x^5 + x + 1) mod (x^8+1) in GF(2)[x]; (E.g., x^5 + x^3 + 1 => x^6 + x^5 + x^2 + x + 1) %F A354500 - To get a(n), view r(x) as a number. (E.g., x^6 + x^5 + x^2 + x + 1 => 2^6 + 2^5 + 2^2 + 2 + 1 = 103) %e A354500 The Rijndael S-box written in hexadecimal: %e A354500 +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +A +B +C +D +E +F %e A354500 00 63 7C 77 7B F2 6B 6F C5 30 01 67 2B FE D7 AB 76 %e A354500 10 CA 82 C9 7D FA 59 47 F0 AD D4 A2 AF 9C A4 72 C0 %e A354500 20 B7 FD 93 26 36 3F F7 CC 34 A5 E5 F1 71 D8 31 15 %e A354500 30 04 C7 23 C3 18 96 05 9A 07 12 80 E2 EB 27 B2 75 %e A354500 40 09 83 2C 1A 1B 6E 5A A0 52 3B D6 B3 29 E3 2F 84 %e A354500 50 53 D1 00 ED 20 FC B1 5B 6A CB BE 39 4A 4C 58 CF %e A354500 60 D0 EF AA FB 43 4D 33 85 45 F9 02 7F 50 3C 9F A8 %e A354500 70 51 A3 40 8F 92 9D 38 F5 BC B6 DA 21 10 FF F3 D2 %e A354500 80 CD 0C 13 EC 5F 97 44 17 C4 A7 7E 3D 64 5D 19 73 %e A354500 90 60 81 4F DC 22 2A 90 88 46 EE B8 14 DE 5E 0B DB %e A354500 A0 E0 32 3A 0A 49 06 24 5C C2 D3 AC 62 91 95 E4 79 %e A354500 B0 E7 C8 37 6D 8D D5 4E A9 6C 56 F4 EA 65 7A AE 08 %e A354500 C0 BA 78 25 2E 1C A6 B4 C6 E8 DD 74 1F 4B BD 8B 8A %e A354500 D0 70 3E B5 66 48 03 F6 0E 61 35 57 B9 86 C1 1D 9E %e A354500 E0 E1 F8 98 11 69 D9 8E 94 9B 1E 87 E9 CE 55 28 DF %e A354500 F0 8C A1 89 0D BF E6 42 68 41 99 2D 0F B0 54 BB 16 %e A354500 The Rijndael S-box written in decimal: %e A354500 +0 +1 +2 +3 +4 +5 +6 +7 +8 +9 +10 +11 +12 +13 +14 +15 %e A354500 0 99 124 119 123 242 107 111 197 48 1 103 43 254 215 171 118 %e A354500 16 202 130 201 125 250 89 71 240 173 212 162 175 156 164 114 192 %e A354500 32 183 253 147 38 54 63 247 204 52 165 229 241 113 216 49 21 %e A354500 48 4 199 35 195 24 150 5 154 7 18 128 226 235 39 178 117 %e A354500 64 9 131 44 26 27 110 90 160 82 59 214 179 41 227 47 132 %e A354500 80 83 209 0 237 32 252 177 91 106 203 190 57 74 76 88 207 %e A354500 96 208 239 170 251 67 77 51 133 69 249 2 127 80 60 159 168 %e A354500 112 81 163 64 143 146 157 56 245 188 182 218 33 16 255 243 210 %e A354500 128 205 12 19 236 95 151 68 23 196 167 126 61 100 93 25 115 %e A354500 144 96 129 79 220 34 42 144 136 70 238 184 20 222 94 11 219 %e A354500 160 224 50 58 10 73 6 36 92 194 211 172 98 145 149 228 121 %e A354500 176 231 200 55 109 141 213 78 169 108 86 244 234 101 122 174 8 %e A354500 192 186 120 37 46 28 166 180 198 232 221 116 31 75 189 139 138 %e A354500 208 112 62 181 102 72 3 246 14 97 53 87 185 134 193 29 158 %e A354500 224 225 248 152 17 105 217 142 148 155 30 135 233 206 85 40 223 %e A354500 240 140 161 137 13 191 230 66 104 65 153 45 15 176 84 187 22 %o A354500 (PARI) m(P) = Mod(P, 2); %o A354500 A354500(n) = subst(lift(lift(Mod(m(x^4+x^3+x^2+x+1)*lift(Mod(m(Pol(binary(n))), m(x^8+x^4+x^3+x+1))^254)+m(x^6+x^5+x+1), m(x^8+1)))), x, 2) %Y A354500 Cf. A354501 (the inverse permutation), A355891. %K A354500 nonn,easy,fini,full %O A354500 0,1 %A A354500 _Jianing Song_, Aug 15 2022