[an error occurred while processing this directive]
|
1. GF(2^8)
2. полином x^8+x^5+x^3+x+1 (0x12B или 299)
3. Далее сказано что примитивный элемент альфа порядка 17 равен 225 в десятичном виде или (0xE1)
В поле Галуа содержится элемент «a», являющийся корнем порождающего полинома. Т.е. a^8+a^5+a^3+a+1=0, что автоматически в поле характеристики 2 приводит к равенству a^8=a^5+a^3+a+1.
Мультипликативная группа поля Галуа (т.е. все элементы этого поля кроме нуля) порождается степенями этого примитивного элемента «a».
Т.е. поле состоит из элементов
{0,1=a^0,a^1,a^2,a^3,…, a^254} всего 256 элементов.
Учитывая выше приведенное равенство все элементы поля могут быть выражены в виде суммы степеней примитивного элемента «а» причем степени не выше 7.
К примеру
a^8=a^5+a^3+a+1
a^9=a^6+a^5+a^2+a
a^10=a^7+a^6+a^3+a^2
a^11=a^8+a^7+a^4+a^3= a^5+a^3+a+1+a^7+a^4+a^3=a^7+a^5+a^4+a+1
и тд.
Эта процедура последовательного вычисления элементов поля может быть представлена графически в виде линейного регистра с обратными связями (Linear Feedback Shift Register = LFSR). Почитайте Блейхута Глава 4 Арифметика полей Галуа
По 3 пункту.
Вам нужно найти такой изоморфизм поля. Который бы давал элемент альфа порядка 17 в виде 0xE1, т.е. a^7+a^6+a^5+ 1.
Самое простое – найти все изоморфизмы поля (т.е. все примитивные полиномы степени 8) и вычислить в каждом a^17.
Таких изоморфизмов много – phi(255)=16*4*2/8=16 (вроде так)
Все примитивные полиномы можно найти вычисляя их для различных примитивных элементов поля (это элементы a^k, где k взамно прост с 255) Процедура нахождения – в Блейхуте.
А построить поле – означает задать примитивный полином. Собственно им и задаются правила вычисления в поле.
Ну не выписывать же все элементы в виде степеней «a».
Еще раз рекомендую почитать теорию- очень стройна и красива.
А полная теория есть в Лидл, Нидеррайтер. Конечные поля
У меня есть в электронном варианте
E-mail: info@telesys.ru