Лаб_12
.docxФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ
Федеральное государственное бюджетное образовательное учреждение
высшего образования
«Санкт-Петербургский государственный университет телекоммуникаций
им. проф. М.А. Бонч-Бруевича»
(СПБГУТ)
__________________________________________________________________
Факультет ИКСС
Кафедра ЗСС
Отчет к лабораторной работе № 12 по дисциплине:
«Математические основы защиты информации»
Тема: «Поля Галуа»
Выполнил студент Группа ИКБ-14:
Травкина Е. А.
Проверил:
Кушнир Д.В.
г. Санкт-Петербург
2023
Лабораторная/Практика.
Пример (из презентации):
Дано поле GF(2^3) и неприводимый многочлен f(x)=x3 + x + 1.
Входные данные в десятичном представлении: 2 и 5. Выполнить сложение.
Переводим в двоичный вид и представляем в виде полинома: 2=102 => 1∙x1+0∙x0 = x 5=1012 => 1∙x2+0∙x1+1∙x0= x2+1
Складываем: (x2+1)+(x)=x2+x+1 => 1112
При необходимости переводим в десятичное представление: 1112=7
Входные данные в десятичном представлении: 5 и 7. Выполнить умножение.
Переводим в двоичный вид и представляем в виде полинома: 7=1112=x2+x+1
Умножаем: (x2+1)∙(x2+x+1)= x4+x3+x2+x2+x+1=x4+x3+x+1 ,необходимо привести по модулю.
(x4+x3+x1+1)%(x3+x+1)=x2+x1 => 1102
При необходимости переводим в десятичное представление: 1102=6
Задание.
Для поля GF(2^4):
по составленной таблице найти обратные элементы (мультипликативня инверсия) к заданным элементам;
Вариант |
Неприводимый Полином |
Элемент |
Найти обратные для |
Сложить элементы |
23 |
x4+x+1 |
10 |
10 |
9 и 13 |
Задание 1. Таблица умножения GF(2^4) для элемента 10. Элемент 10 будет иметь обозначение «A» в 16 системе.
|
Элемент |
0 |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
A |
B |
C |
D |
E |
F |
x^3+x |
А |
0 |
A |
7 |
1 |
E |
4 |
9 |
3 |
F |
5 |
2 |
8 |
6 |
C |
1 |
B |
Задание 2. Найти обратные элементы
10 = 1010₂
Мы ищем обратный элемент x. Тогда:
X = b3b2b1b0
1010*X=1
1010*b3b2b1b0 = 1
1010*b3b2b1b0 = b3b2b1b0+0+0+b3b2b1b0 = 1
b3+b1+b0 = 1
b3+b2+b1+b0 = 0
b3b2b1b0 = 0
Следовательно, b3 = 1, b1 = 1, b0 = 0.
Таким образом, обратный элемент для 10(A) равен 12(C).
Задание 3. Выполнить сложение.
Входные данные в десятичном представлении: 9 и 13.
Переводим в двоичный вид и представляем в виде полинома: 9=10012 => 1∙x3+1∙x0 = x3+1 13=11012 => 1∙x3+1∙x2+1∙x0= x3+x2+1
Складываем: (x3+1) + (x3+ x2+1) = x4+ x2+ x = x (x3+ x+ 1) => 101102
Переводим в десятичное представление: 101102 = 22