Защита информационных процессов.
Амербаев Вильжан Мавлютинович, факультет мПиТк, 4й курс 2й семестр
лекции набирали Артем (Alfred) и Сергей летом 2002 год, за что им вечная память
Лекция №1
Архитектура блочных шифров.
Множество G – алгебра с двумя бинарными операциями: .
: G2G : G2G
a
b
= c
a
= c
b
– связь между операциями
П: a
+ b
= c
a
= c
- b
ассоциативная
ab = c a = c/b. коммутативная
Замечание: в общем случае операцииине обладают свойствами коммутативности и дистрибутивности.
defОперацияназывается правой обратной операцией по
отношению к прямой операции .
Блочные шифры (итеративные).
Символами алфавита сообщений и криптограмм служат элементы множества G.
(1) x1,x2, …xn,xn+1, … ,xn+k, … - последовательность, порождаемая рекурсивной процедурой порядкаn,xi G.
(x1,x2, …xn) – начальный отрезок последовательности (1).
x
n+1
= x1
f1(x1,
…, xn,
r1),
f1:
GnG
(2) xn+2 = x2 f2(x3, …, xn+1, r2), f2: GnG
…………………………………………..
xn+k = xk fk(xk+1, …, xn+k-1, rk) fk: GnG
Последовательность (1) называется орбитой системы (2).
Если оборвать последовательность (1), то последние nэлементов этой последовательности будутконечнымотрезком орбиты.
Если при этом начальный отрезок (x1,x2, …xn) совпадает с конечным отрезком (xm,xm+1, …,xm+n-1), то такая орбита называетсяциклом.
Наименьшая длина циклической орбиты называется периодом.
Свойство инволятивности системы (2)
Рассмотрим частный случай: n=2,
начальный отрезок <x1,x2>
п
ереход
x3=x1f1(x1,r1)ri– ключи, известные
называется раундомx4=x2f2(x3,r2) параметры
x5 = x3 f3(x4, r3)
x6 = x4 f4(x5, r4)
x7 = x5 f5(x6, r5)
конечный отрезок <x6,x7>
x5 = x7 f5(x6, r5)
x4=x6f4(x5,r4) обобщенная схема Фейстельа:
x3 = x5 f3(x4, r3)
x2 = x4 f2(x3, r2) f1 = f2 =…= f5
x1 = x3 f1(x2, r1)
fi – функции шифрования.
в данном случае символ композиций
_
_
C


иеннон:C=(L1R1T1)(L2R2T2)…(Ln
Rn
Tn)S
блоки операция
R– блок перемешивания
T– блок рассеивания
Устойчивая криптосистема создается тогда, когда каждый бит криптограмм зависит от каждого бита исходного сообщения.
По схеме Фейстельа построены следующие шифры: DES, ГОСТ,COST,CAST,Blowfish,Safer,FEAL,REDOC,LOKI,RC2,IDEA,MMB,SKIPJACKи другие.
Требования: простота реализации, скорость реализации.
На практике в качестве базисных операция используются:
- mod2,
-mod232, >> -
технический сдвиг вправо, << -
технический сдвиг влево, таблицы замен
(подстановок), перестановки.
Орбиты при n=2
x
7
(x1,x2)
x

4
(x2,x3) паутинная
x
5x6
(x3,x4) диаграмма
x

2
(x4,x5) орбиты
x1 (x5,x6)
x
3
(x6,
x7)
x6
x3 x1 x2 x5x4x7
Если длина орбиты короткая, то криптостойкость маленькая. Если она замкнется, то это значит, что произошла дешифровка.
Лекция №2
1 способ – рекурсивно-инволютивный
2 способ – композиционный
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
→ → → →…………….→ → → →
конвейерный
L1 o T1 o R1
L1(T1) L1(T1(R1))
L
n
o Tn o
Rn
![]()
![]()
![]()
![]()
i:
Li-1
Ti-1
Ri-1
← ←…← ← ← ←
Рассмотрим возможности программной реализации рекурсивно-инволютивного способа.
число бит
n=3 <x1,x2,x3> ||x1||2= ||x2||2= ||x3||2=m
x
4
= x1 o
f(x2,
x3,
r1)
x5 = x2 o f(x3, x4, r2)
x6 = x3 o f(x4, x5, r3)
…………………… N-3 шагов
x
N-2
= rN-5
o f(xN-4
,
xN-3,
rN-5)
xN-1=xN-4 of(xN-5,xN-2,xN-4)
xN=xN-3of(xN-2,xN-1,rN-3)

конвейерная
реализация

регистр сдвига “влево”

рекурсивно- инволютивный способ шифрации
на регистрах сдвига с обратной связью
aob=c– прямая операция
a=cb– обратная


сдвиг вправо
обратная шифрация
xN-3 =f(xN-2,xN-1,rN-3)xN

K – ключевое пространство.
kK k = <r1, r2, …, rn>
Gn riG
Ж
елательно
испытывать для генерации ключевой
последовательности“хорошие”физические датчики случайных чисел.
k
r
1,r2, …,rn,rn+1,
…,rN-n– последовательность должна обладать
k свойствами симметрии.
<r1,r2, ...,rn> =k- исходный ключ
rn+1 = r1 φ(r2, ..., rn; )
rn+2 = r2 φ(r3, ..., rn+1; )
Отбор функции f.
o=как правило (побитное суммированиеmod 2)
n=3 детерминированная функция шифрации
![]()
n
=3
f(x,y,z) = |x
r + y|![]()
(1) o=
детерминированная функция шифрации
СХЕМА 11 (тут не разобрать схему было)

f(x, y, z) = (x r)y ||x||2 = ||y||2 = ||r||2 = m = 32
a(y) = α1y1α2y2 - αmym

,
y=1
αy
=![]()
,
y=0

y
αy α 0 1
0 1 0
1 0 1
xi ri = | xi +ri |2
Недетерминированный случай
Ф (x, y, z)
|x + y + z|16 = i
по iкак по адресу обращаемся в память, где хранятся различные функцииfo,f2, ...,f15.
fi (x, y, z)
xi,ri G
K- пространство ключей
KGn
SGn
Ek- блочный алгоритм шифрации с ключом к множеству криптограмм
Ek
Ek(S)
G Ek(S)
– множество криптограмм
||S|| = ||Ek(S)|| при заданном ключе
k1 ≠ k2 Є K
1)k:
Ek(S)
S
=
2) k1
≠ k2
Ek1(S)
Ek2
(S) =
3) Ek (...Ek (Ek (Ek ( S )))...)
E
k
o Ek o
...o Ek
(S) o S =
- желательно, чтобы
было так
m
Лекция №3
Поточные шифры
ошибка не распростроняется
шифровательная последовательность - гамма
Случайные последовательности
Д. Х. Лемер (1951г.)
С
лучайная
последовательность
п
оследовательность,
каждый элементы последовательности
член которой непредсказуем удовлетворяют ряду статис-
для непосвященного тических критериев (тестов)
в известной степени зависящих
того, для каких применений
служит эта последовательность
Дж. И. Фрэнкмен (1962г.)

Случайная последовательность
последовательность, обладающая последовательность независи-
любым свойством, которым обла- мых и одинаково распростра-
дает бесконечная последователь- ненных по равномерному
ность независимых выборок закону случайных величин
случайных переменных из
равномерного распределения
Идеальный генератор случайной последовательности (бинарной) - G- последовательность случайных бинарных величин1,2, ...,n, ..., гдеiстатистически независимы и одинаково распределены.
1,p= 1/2 (вероятность)
i=
0, p = 1/2
xn+1 = |axn+c|m- конгруэнтная последовательность (Кнут, "Искусство программирования", т. 2)
Хорошие конгруэнтные последовательности по Кнуту должны удовлетворять условиям:
1) xoZn
2) m– произвольное, еслиm= 2S,S- разрядность компьютера, то |a|8=S
3)
![]()
4) c- нечетное, еслиm= 2S
Пример:a= 9301,m= 233280,c= 49297
Доказали, что конгруэнтные последовательности предсказуемы:
xn+1 = | a1x2 + a2x = a3 |m
xn+1 = | a1x3 + a2x2 + a3x + a4 |m
Необходимый материал для анализа случайной последовательности:
- тестирование последовательности на случайность;
- эффективные генераторы случайной последовательности над конечным полем;
- случайность и хаос.
Стойкость методов шифрования считается слабой, если генерируемые ими шифрограммы оказываются неслучайными.
Статистические тесты
1. Пусть задан идеальный генератор бинарных случайных последовательностей; нужно получить с помощью этого генератора следующую величину , которая принимает значения: 0, 1, 2, ...,nс равной вероятностью 1/(n+1).
- идеальный генератор. 0 < 1
= 0, 1,2, ... всеi- независимые случайные величины с вероятностным распределением
1, ????
i=
0, ????
=> - равномерно распределена на[0,1)
Рассмотрим случайную величину:
![]()
0<n+1
N
k: (0kn+1)
N
p(=k)
=k
<=> k(n+1)<k+1
<=>
=>![]()
Итак, p(=k)=
.
Практический вопрос: до каких пор генератор (т.е. i)
или: сколько тактов генерируется случайная величина i нужно нашему генератору, чтобы точно вычислить значения = 0, 1, 2, ...
![]()
![]()
=>
,![]()
![]()
![]()
Для того, чтобы точно вычислить сл. велич. достаточноS+1бит сл. велич. 2S(n+1)<2S+1.
Лекция №4
Статистические тесты.
Go – идеальный генератор случайных бит
Go: 1, 2, … , N
1, p=1/2
i: i=
0, p=1/2
Опр. Генератор
псевдослучайных бит -
o
o:S1,
S2, …
, SN
если
он статически эквивалентенидеальному
генератору G0,
т.е.
o
Go.
- комплекс тестов
Статистический тест: задан идеальный генератор Go
NN
множество
последовательностей
![]()
1 0
Функция т:
{“принять”,
“отвергнуть”}
UN - множество всех отвергнутых последовательностей.
|UN| - количество элементов множестваUN.
Для идеальных последовательностей: UN=.
![]()
~0.010.001
(на практике)
вероятность
если мало, то последняя последовательность
для
:o:
{1;0}
![]()
![]()
е
сли(0,001;0,01),
то говорят, что
o
Go.
стат
Обычно не удается оценить |UN|; переходят к использованию статистик.
Статистика – некоторая функцияfт (U1, … ,UN): P(fт(U1, … ,UN)<) легко оценивается (обычно эта вероятность оценивается нормальным знаком,
-квадрат, … )
(x1,x2) – доверительный интервал
=P(fт < x1) + P(fт > x2) : =(0.001;0.01)
Задан
псевдослучайный генератор
o
.
P(fт < x1) + P(fт > x2)=, если(0.001;0.01) => псевдогенератор прошел через заданный тест.
Статистический генератор (конгруэнтный)
xi+1=|axi+b|Д
0xi<Д
уметь выделять или составлять битовые последовательности из данных генератора
1) Д<N
![]()
m раз снять результаты генератора и составить последовательность
S1,S2,…,SN
2)
Д>N,
![]()
Построение гистограмм
Go – идеальный датчик
пусть - случайная величина (нормированная)
нормально распределенная
матем.одидание=0, дисперсия=1
![]()
![]()
![]()

![]()
|
|
0.1 |
0.05 |
0.025 |
0.010 |
0.005 |
0.0025 |
0.001 |
0.0005 |
|
x |
1.2816 |
1.6449 |
1.9600 |
2.3263 |
2.5758 |
2.8070 |
3.002 |
3.2005 |
![]()
- разбивается на 100 частей
100 ячеек памяти
№ ячейки – номер интервала
M=100*10 – количество экспериментов
Rk – число попаданий в каждую ячейку
- нормир.
попаданий
Частотный тест
Go – идеальный генераторN: <1,…, N>
i – независимая, один. распределенная случайная величина
![]()
![]()
![]()
= (K – число единиц) =![]()
![]()
![]()
![]()
Нормирование сл.
рассмотрим величину:
(*)
Теорема Муавра-Лапласа
п
риN
=>
![]()
нормальное
распределение с M=0,
Д=1
можем взять за статистику функцию (*)
Пусть дан
псевдослучайный генератор бит
o
N=500, 1000, 2000
h – шаг гистограммы =6/100=0.06
число
экспериментов M (обращение к
генератору
o
для формирования
N-битной последовательности)
M=10*100
шагов
Далее строим
гистограмму
![]()
![]()
Лекция №5
Корреляционный тест
![]()
o:
=> =<S1,
S2, …
, SN>
Существует корреляция между i-ым битом иi+ битом,- сдвиг, фиксированный.
Решение: 1)
![]()
2)
в М экспериментах подверг. частотному
тесту.
Смысл: Но (гипотеза) – корреляций нет;
Н1– корреляция есть.
Но =>
если последовательности наблюдений{
}
удовлетворяют частному критерию,
то верноHo
(результат тем более точнее, чем
большеN).
Тест, основанный на критерии -квадрат с (-1) степенями свободы.
Сл. величина
независимо распределенных по нормиров.
нормальному закону имеет функция
плотности вероятности.

, x>0
P(x)=
0 , x<0
(x) – функция
Эйлера Г(x)=![]()
= - медиана
=2- дисперсия
-1=7, L=3


P(>12,0170)=0,1 P(>16,0128)=0,025
P(>14,0671)=0,05 P(>18,4753)=0,01
P(>20,2777)=0,005 P(>24,3219)=0,001
Тест последовательный
L
– параметр
o:
=> =<S1,
S2, …
, SN>
, N=mL
т.е. строка N-бит разбивается на блоки длиныL
В
нашем экспериментеL=8
ni( ) – число, заключенное в интервал 0x???????????????????????????????
![]()
N, тоfT2 с (2-1) степенью свободы
P(ni=r)=
, 0r![]()
![]()
=> содержащийm-байт, описывает результат т-испыт по сходимости Бернули
q=P(nir)=1-![]()
M(ni)=m![]()
Д(ni)=![]()

при
большихL
=P(>k)
Замечание
(из опыта): требуется, чтобы
![]()
L=3 N5*23*3=120
L=8 N5*256*8=10240
Алгоритмическое построение линейного генератора.
Как построить линейный генератор последовательностей над полем GF(qn) максимального периода?
Дано поле GF(qn)
f(x) - примитивный полином степениn-1 над полемGF(qn):
f(x) не имеет корней в полеGF(q)
GF(qn) – корень полиномаf(n), степени которого порождают мультипликативную группуGF(qn) поляGF(qn);
![]()
По умолчанию мы
переходим от сравнений к равенствам.
Например,
означает, что многочлен(x)=
GF(qn).
(mod
(f(x))
x GF(qn): x=11+22+…+nn
<1,…,n> - базис,iGF(q)
GF(qn) – линейное пространство размерностиn над полемGF(q)
1аязадача: показать, что существует базис векторов1, 2,…, n такой, что каждая степеньi представляется линейной комбинацией векторов1, 2,…, n таких, что компоненты разложенияi по этому базису представляется линейной функцией от степеней (m+i).
Опр.:пустьGF(qn);
следомэлементаназывается величина
.
Свойства функции S():
1o: GF*(qn) : S()GF(q)
Док-во: возведем в степень q величинуS()
![]()
согласно преобразованию Фробенпуса такое равенство возможно S()GF(q).
Лекция №6
Конечное поле GF(qn).
f(x)=xn+f1xn-1+f2xn-2+…+fn примитивный неприводимый полином надGF(q).
f()=0, -примитивный элемент поляGF(qn)
![]()
![]()
степени i порождают элементыGF*(qn).
GF(qn):
-
след элемента.
Свойства: S(): S: GF(qn)->GF(qn)
S(GF(q)
,GF(qn) : S(+)=S()+S() – линейность
Д-во:
S(+)=
.
cGF(q) : S(c)=cS() - однородность
Д-во:
S(c)=![]()
i,m N (S(i+m))0 Показать, что эта последовательность имеет периодqn-1.
S(m),
S(1+m),
S(2+m),…,
![]()
=>
![]()
qn-1=T , покажем, что это минимальный период.
<S(m+i), S(m+i+1),…, S(m+i+n-1)>
S(m+i)=![]()
![]()
…………………………………………………………………………………………………
![]()



![]()
![]()
![]()
=
*![]()
……… ……………………………. ……
![]()
![]()
![]()

1
1 1 ….1
det A=![]()
![]()
![]()
….![]()
……………………………
![]()
![]()
….![]()

1 1 1 ….. 1
![]()
![]()
…..
![]()
W(x1,
x2,…,
xn)=
![]()
![]()
…..
=
определитель
![]()
![]()
…..
Вандермонда
-порожд. элемент
1
2
…
n
=>A – невырожденная => A-1= ………………
………………



1 2
…
n
S(m+i)
![]()
……………… S(m+i+1)
![]()
……………… ……….. = ……
……………… S(m+i+n-1)
![]()
i =S(m+i)1+ S(m+i+1) 2+…+ S(m+i+n-1) n, i,m
i=0,1,…,(qn-2); пробегает все ненулевые элементы поляGF(qn) =>
линейные координаты
=>
система векторов <1, 2,…,n> образует базис в линейном пространствеGF(qn);
при ij ij то всеn-гаммы последовательности (S(i+m))
различны;последовательность (S(i+m))i имеет истинный период T=qn-1;
Покажем, что такая последовательность порождается с помощью примитивного полинома f(x)=xn+f1xn-1+…+fn
x= - примитивный элементf()=0
n+f1n-1+…+fn=0
n+m+i=-f1m+i+n-1-…-fnm+i
S(n+m+i)=-f1S(m+i+n-1)-…-fnS(m+i)
S(m+n+i)=Sm+n+i-1 (обозначим)
Sm+n+i=-f1 Sm+n+i-1-…- fn Sm+i
Все элементы последовательности S(i+m) порождается рекурсивной формулой.
Лекция №7
Обзор предыдущего.
функция след,
определенная на GF(qn)
формулой:GF(qn)
![]()
отображает GF(qn) наGF(q).
функция след S() является линейной формулой, т.е.a1,a2GF(q)
S(a11+a22)=a1S(1)+a2S(2)
если - корень примитивного полинома надGF(q)
f(x)=xn+f1xn-1+f2xn-2+…+f0 порождающего полеGF(qn), тоi,mN базис в линейном пространствеGF(qn) : 1,2,…, n такой что
i+m=S(i+m) 1+ S(i+m+1) 2+…+ S(i+m+n-1) n, m.
Иными словами, элемент i+mGF(qn) единственным образом характеризуетсяn-граммой(S(i+m), S(i+m+1),…, S(i+m+n-1)).
Все n-граммы последовательности (S(i+m))i0 m – различны => m последовательность (S(i+m))i0 имеет минимальный периодT=qn-1.
Покажем, что последовательность (S(i+m))i0 m порождается линейной рекурсивной формулой.
Дано: f()=0;
n+f1n-1+f2n-2+…+fn=0
i+m+n=-f1i+m+n-1-f2i+m+n-2-…-fni+m
применим ф-ию – след. и воспользуемся свойством линейности: обозначим
bi=-fi;
S(i+m+n)=b1S(i+m+n-1)+b2S(i+m+n-2)+…+bnS(i+m), i,mN.
Sk=S(k) – обозначение.
Si+m+n=b1Si+m+n-1+b2 Si+m+n-2+…+bn Si+m
<S1, S2,…, Sn> - начальнаяn-грамма
Sn+1=b1Sn+ b2Sn-1+…+ bnS1
Sn+2=b1Sn+1+ b2Sn+…+ bnS2
……………………………
f(x)=xn+f1xn-1+…+fn – характеристический полином последовательности (должен быть примитивным);
каждая интерполяция: n – умножений,(n-1) – сложений в полеGF(q).
Для программной реализации (на машине с регистром 232)q-простое порядка 216.
Схематическое представление:

регистр сдвига с
функцией обратной
связи

регистр сдвига с
линейной обратной
связью - РСЛОС
q
=2:
Некоторые полиномы над GF(2):
(1,0)=x+1 (7,3,0)
(2,1,0) (7,4,3,2)
(3,1,0) (9,4,0)
(4,1,0) (10,3,0)
(5,2,0) (11,2,0)
(6,1,0) (12,6,9,1,0)
(7,1,0) (13,4,3,1,0)
(14,5,3,1,0) (18,5,2,1,0) (24,3,1,0)
(15,1,0) (19,5,2,1,0)
(16,5,3,2,0) (20,3,0) (32,7,6,2,0)
(17,3,0) (21,2,0) (32,7,5,3,2,1,0)
(17,5,0) (22,1,0)
(17,7,0) (23,5,0)
y(x1,
x2,…,
xn)=
( фиксированнаяn-грамма
(r1,
r2,…,
rn) )
четность (нечетность) числа совпавших символов (x=r).


1, x=r
Xr=
0, xr
xr:=x~r
Задача: исследовать на равномерную
распределенность.
![]()
![]()
……………………………………
Метод комбинаторный.
Метод фильтрации.
1
:
i-й такт.
f(u1,…,
um)=![]()

2:
![]()
исходное сообщение: <x0, x1,…, xn>
исходный ключ: <r1,…,rn> РСЛОС
![]()
![]()
………………………………

Лекция №8
Защита информации в связи.
Итерационный подход.
Шеннон:
![]()
(Хилл 1926) (невырожд. det0)
A – матрицаnn неособая, элементы матрицы = ключевой материал;
![]()
-
шум (ключевой вектор)
![]()
- в-р сообщение![]()
![]()
![]()
![]()
- n штук, линейно независ.
(чтобы однозначно восстановить матрицу
А)
![]()
k
-k=1,2,…,n
b1=(1,0,…,0)

a11 a12 … a1n
A= a21 a22 … a2n
……………….
an1 an2 … ann
![]()
=> не
выдерживает атаки 3-го уровня =>
для этого необходимо менять элементы
матрицы А, или вектор
.
t – сеансный параметр
- система блуждающих ключей
Но при этом матрица А должна оставаться обратимой.
Элементы теории самокорректирующихся кодов.
Теория интерполирования над полем F.
<g0,g1,…,gn-1> - система функций надF со значениями вF, линейно независима.
Задача интерполирования (в частной постановке):
заданы точки xo,x1,…,xk-2,xk-1 – различные элементы изF (фиксиров.);
заданы значения функции f(x) в этих точкахf(x0),f(x1),…,f(xk-1) ( yi=f(xi) )
требуется
построить линейную комбинацию gi(x),
i=0-(k-1) :
такую, что
(j=0,…,k-1).
Т.к.
линейно независимы, то определитель

g0(x0)
g1(x0)
… gk-1(x0)
Д(x0,x1,…,xk-1)= g0(x1) g1(x1) … gk-1(x1) 0
……………………………
g0(xk-1) g1(xk-1) … gk-1(xk-1)
=> задача интерполирования поставлена корректно, т.е. имеет единственное решение.
Опр.Система функций
называется чебышевской (с – системой),
если определитель Д0
для любого выбора элементовx0,x1,…,xk-1
изF.
Задача (в общей постановке):
задан произвольный набор точекx1,x2,…,xk-1 изF
и т.д. …
постановка корректна, если система базисных функций из F является с-системой.
(k-1) < |F|
x1F, k-1||<|F|, c-система задается на
Возможны ограничения.
Когда система функций
называется чебышевской?
Теорема: для того,
чтобы система
была чебышевской необходимо и достаточно,
чтобы любая нетривиальная линейная
комбинация этих функций имела не более
чемn корней, иными словамиa0,a1,…,an-1
функция
имеет меньше, чемn корней
(число корнейn-1).
Доказательство:
пусть существуетk корней:0,1,…,k-1
F
![]()
(1), 0jk-1,
но
- является с-системой
0,1,…,k-1
Д(0,1,…,k-1)0
Если
- c-система из (1) следует, чтоai=a1=…=ak-1=0.
Опр.:C-система
являетсямарковскойсистемой, если
любое подмножество этих функций является
с-системой.
Решение задачи интерполяции в общей постановке.
Пусть задана произвольная последовательность различных точек (узлов, локаторов): x0,x1,…,xk-1 из поляF.
Система функций
-марковская.
Задано:
значения y0,y1,…,yk-1
функцийg(x) в узлахx0,x1,…,xk-1,
требуется построить функцию(x):
(x)=
такую, что(xj)=yj,
j=0,…,k-1;
Для решения рассмотрим систему:
a0g0(x0)+
a1g1(x0)+…+
ak-1gk-1(x0)-y0=0
a0g0(x1)+ a1g1(x1)+…+ ak-1gk-1(x1)-y1=0
………………………………………..
a0g0(xk-1)+ a1g1(xk-1)+…+ ak-1gk-1(xk-1)-yk-1=0
a0g0(x)+ a1g1(x)+…+ ak-1gk-1(x)-(x)=0
составим определитель:


g0(x0) g1(x0) … gk-1(x0) y0
g0(x1) g1(x1) … gk-1(x1) y1
……………………………………
g0(xk-1) g1(xk-1) … gk-1(xk-1) yk-1
g0(x) g1(x) … gk-1(x) (x)
этот определитель будем разлагать по элементам последнего столбца:



g0(x0)
g1(x0)
… gk-1(x0)
g0(x1) g1(x1) … gk-1(x1) g0(x2) g1(x2) … gk-1(x2)
………………………………. y0 + (-1)y1 ……………………………. +…+
g0(xk-1) g1(xk-1) … gk-1(xk-1) g0(xk-1) g1(xk-1) … gk-1(xk-1)
g0(x) g1(x) … gk-1(x) g0(x) g1(x) … gk-1(x)
+(-1)k(x)Д(x0,x1,…,xk-1)=0.
Лекция №9
F: F
x0,x1,…,xn-1
g0(x),g1(x),…,gn-1(x)
C-система
на: любая
нетривиальная линейная комбинация этих
функций
не более чемn-1 различных
корней.
Марковская система – чебышевская система g0,g1,…,gn-1, гдеподмножествоg0,g1,…,gi-1 является с-системой (м-система).
П: 1,x,x2,…,xn-1 – c-система
,
akF
– имеет не более (n-1) корней
– является и м-системой.
Пусть 0(x), 1(x),…,n-1(x) – функции, не имеющие корней на множествеF, n=|x||F|, тогда функции0(x), x1(x),x22(x),…,xn-1n-1(x) – тоже являются
м-системой.174
Задача интерполирования в общей постановке.
Заданы значения: yk=f(xk), k=0,…,n;
в n различных
узлах (локаторах) x0,x1,…,xn-1
требуется найти такие
(aiF),
что
такова:(x)=yk,
0kn-1
Система уровнений:
a0g0(x0)+
a1g1(x0)+…+
an-1gn-1(x0)-y0=0
a0g0(x1)+ a1g1(x1)+…+ an-1gn-1(x1)-y1=0
………………………………………..
a0g0(xn-1)+ a1g1(xn-1)+…+ an-1gn-1(xn-1)-yn-1=0
a0g0(x)+ a1g1(x)+…+ an-1gn-1(x)-(x)=0
Определитель:


g0(x0) g1(x0) … gn-1(x0) y0
g0(x1) g1(x1) … gn-1(x1) y1
…………………………………… =0
g0(xn-1) g1(xn-1) … gn-1(xn-1) yn-1
g0(x) g1(x) … gn-1(x) (x) (нетривиальные решения)
Разложим по элементам последнего столбца:



g0(x0)
g1(x0)
… gn-1(x0)
g0(x1) g1(x1) … gn-1(x1) g0(x2) g1(x2) … gn-1(x2)
………………………………. y0 + (-1)y1 ……………………………. +
g0(xn-1) g1(xn-1) … gn-1(xn-1) g0(xn-1) g1(xn-1) … gn-1(xn-1)
g0(x) g1(x) … gn-1(x) g0(x) g1(x) … gn-1(x)

g0(x0)
g1(x0)
… gn-1(x0)
g0(x2) g1(x2) … gn-1(x2)
+ (-1)2y2 ……………………………. +…+ (-1)n(x)Д(x0,x1,…,xn-1)= 0 =
g0(xn-1) g1(xn-1) … gn-1(xn-1)
g0(x) g1(x) … gn-1(x)




g0(x) g1(x) … gn-1(x) g0(x0) g1(x0) … gn-1(x0)
(-1)n-1y0 g0(x1) g1(x1) … gn-1(x1) =(-1)n-1y1 g0(x) g1(x) … gn-1(x)
.…………………………… ……………………………..
g0(xn-1) g1(xn-1) … gn-1(xn-1) g0(xn-1) g1(xn-1) … gn-1(xn-1)

g0(x0)
g1(x0)
… gn-1(x0)
g0(x2) g1(x2) … gn-1(x2)
+ (-1)n-1y2 ……………………………. +…+ (-1)n(x)Д(x0,x1,…,xn-1) = 0.
g0(xn-1) g1(xn-1) … gn-1(xn-1)
g0(x) g1(x) … gn-1(x)
Обозначим Д(x,x1,x2,…,xn-1) - 1ыйопределитель,
Д(x0,x,x2,…,xn-1) - 2ойопределитель,
Д(x0,x1,x,…,xn-1) - 3ийопределитель,
……………………………………..
(x)=
(1),
гдеBi(x)=
(2)
0, ij
(в определителе будет 2 одинаковых
строки)
Bi(xj)=
1,i=j
xi=xk (xk)=yk
k,i = n-1
Разложим функции Bi(x)
в базисе
:
(3)
![]()
![]()
{
0kn-1
{
0in-1
Элементы теории самокорректирующихся кодов.
Общие принципы:
Д![]()
ан
канал связи:
![]()
С источником ошибки :
Множество сообщений: S
![]()
S S’
вх.сообщ. вых.сообщ.
А – алфавит S=(s1,s2,…,sn) – блок длиныnв алфавитеA
![]()
![]()
![]()
![]()
Канал характеризуется типом ошибок Т
ошибки независимые
ошибка налагается на i-ю позицию сообщения и переводит её:Si’(Si+li)
Код называется самокорректирующимся:
SS
cod
T S S
decod
decod(cod S + )=S
Типы ошибок.
aA a a’ (a’A) 1 род (ошибка замены)
aA a (пустой символ) 2 род (ошибка стирания)
aA a 3 род (ошибка вставки)
Фиксируется:
длина блока (n)
тип Т ошибки
T=<t1,t2,t3>
t1 – число возможгых ошибок 1города на блоке длиныn
t2 – 2 рода
t3 – 3 рода
Лекция №10
A={,a1,…,am}
A*=![]()
An={z|z=(x1,…,xn), xiA, 1in}
A0={}
SA*, S – множество сообщений
![]()
S S’
T=<t1,t2,t3>
C-кодовые слова
Множество С называется кодом, если выполняются следующие условия:
ошибки вносятся из класса Т
трансформацию за счет внесения ошибок обозначим:
,
tT
Понятие “наложение”
ошибки:
![]()
S=(a1,a2,…,an)
S’t
– отлично отS в не
более, чемt символах, т.е.S’t
получаеся заменой символов
в позициях не более чемt на
новые символы.
Множесво T(s):={S’C|S’=S’t, где
}
т.е.T(S) – множество
всевозможных слов из С, которые получаюся из слова S посредством всех возможных ошибок типа Т (tT). T(S) называется окрестностью ошибок типа Т.
Должно выполняться следущее условие:
S1S2
C: T(S1)
T(S2)=









S2
S1
T(S1) T(S2)
Эти условия гарантируют, что код С является самокорректирующимсяна ошибках типа Т.
На множестве Аn может быть введена метрика Хэмминга:
x1,x2An
(x1,x2)=![]()
x1=(x11, x21,…, xn1)
x2=(x12, x22,…, xn2)
1, xk1xk2
(xk1+xk2)=
0, xk1=xk2
число символов, в которых отличаются слова x1 и x2
Рассмотрим Хэмминга, удовлетворяющего метрике.
xAn (x,x)=0 - рефлексивность
x,yAn (x,y)=(y,x) - симметричность
x,y,zAn (x,y)<(x,z)+(z,y) - акс.
Как свойство самокоррекции может быть выражено в терминах метрики Хэмминга.
Дан код С:
Опр.Кодовым расстоянием кода С называется числоd(C)=min (x,y), xy.
Код С является самокорректирующимся кодом обнаруживающим и исправляющим любую ошибку кратности tT, если выполняется увловие:
x,yC xy (x,y)2t+1 ( d(C)2t+1 )
Всякая ошибка et кратностиt (tT) внесенная в словоxC дает словоx’t, которое отличается от x вt позициях, т.е.( x’t,x)t
yC по условию(x,y)2t+1 (yx)
2t+1(x,y)(x, x’t)+( x’t,y)t+( x’t,y)
(x’t,y)t+1 yx
(x,x’t)t
T(x)={x’t|(x,x’t)t}
t окрестность слова х

t
(x,y)2t+1
не пересекаются
( x’t,y)t+1 x y => самокор.
Наложить дополнительную алгебраическую структуру на An. Будем считать, чтоA=Fq – поле порядкаq.
An
– слова длиныn изF
(линейное пространство).
Логарифмическая мощность кода С.
![]()
Скорость кода.
- скорость передачи
d=d(l)=min (x,y), x,yC,xy
- относительное кодовое
расстояние
d(C)2t+1 => C – самокор. обнаружено и исправленоtошибок типаT.
C код называется[n,k,d] – код.
Линейные коды.
Код СF
называется линейным, если множество
С является К-мерным подмножествомn-мерного пространстваF
.
Логарифмическая мощность кода С в этом случае характеризуется размерностью подпространства С.
Различаются 2 случая характеризации линейного кода С.
1случай: рассмотрим линейное отображение
: F
F![]()
В этой ситуации код С
есть образ F
при отображении .
Матрица этого отображения называется
порождающей матрицей.
2случай: рассмотрим линейное отображение
: F
F![]()
В этой ситуации код С является ядром отображения (ядро линейных отображений есть множество всех векторов, которые отображаются в нулевой вектор). В этом случае матрица отображения и называется проверочной.
Лекция №11
