Пример выполнения Задания. Упрощенный алгоритм Rijndael (вариант 2).

1.  1 ПОСТРОЕНИЕ ПОЛЯ

В приведенных арифметических выражениях вся арифметика в GF(24).

Неприводимый многочлен P(x) = x4+x+1.

Примитивный элемент a = x.

Обратные элементы:

1. 2 ПАРАМЕТРЫ АЛГОРИТМА

i = 15, k = 1

Многочлены для ByteSub:

p1(x) = 12 = 1100 = x3 + x2

p0(x) = 4 = 0100 = x2

Многочлен для MixColumn:

с(x) = 6x + 11 = 0110*x + 1011

Открытый ключ К:

K = (10, 2, 6, 8)

1010

0110

0010

1000

Открытый текст:

P = (5, 14, 2, 7)

0101

0010

1110

0111

S-box и обратное преобразование:

=


Обратное преобразование:

;

;

; S-1:

7

Матрица М:

Матрица :

x

x-1

S(x)

S-1(x)

0

0000

0

0000

0100

0010

α

0010

2

1001

1110

1111

α2

0100

4

1101

1101

1001

α3

1000

8

1111

0100

0011

α4

0011

3

1110

1000

0001

α5

0110

6

0111

0010

1111

α6

1100

12

1010

1011

1110

α7

1011

11

0101

1011

1100

α8

0101

5

1011

0111

1110

α9

1010

10

1100

0001

0111

α10

0111

7

0110

1110

0101

α11

1110

14

0011

0101

0010

α12

1111

15

1000

0010

0010

α13

1101

13

0100

0111

0100

α14

1001

9

0010

1101

1010

α15

0001

1

0001

1000

1010

1. 3 ВЫПОЛНЕНИЕ АЛГОРИТМА ШИФРОВАНИЯ

1. 3. 1 РАСШИРЕНИЕ КЛЮЧА (Key Expansion)

K = (10, 2, 6, 8)

1010

0110

0010

1000

W1

1010

0010

W2

0110

1000

;

;

W2 =

C4 =

____________

W4 =

W3

1100

1010

W4

1111

0011

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9