Teoria_chisel_i_kriptozashita
.pdfλ=1. Тогда формула (10.17) показывает, что минимум Е(ро ) располага-
ется около значений А= К0,5 .
Хотя формула (10.12) является приближенным решением задачи, она является производящей функцией точного решения. Пусть е(К) означает точное ожидаемое значение po , когда число ключей равно К. В отличие
от е(К), уравнение (10.12) обеспечивает
∑(λА2 )К−1 exp( −λA2 )е(К), К (К −1)!
т.е. сумма членов е(К), взвешенных по вероятности так, что испытания Пуассона дают К – 1 ключей дополнительно к ключу 1. В принципе, мож-
но умножить сумму в выражении (10.19) на exp(λλ2 ), разложить в степенной ряд и представить коэффициент λК−1 как А2(К−1)е(К)/(К −1)!.
Этот результат для е(К) нежелателен, а уравнение (10.12) является достаточно точным. В эксперименте по оценке е(64) было проделано 2000 ис-
пытаний для каждого λ= 14 ,1, 4. Дробными значениями испытаний, ко-
торые были для В успешными, являются следующие: 0,31; 0,30; 0,37.
Т а б л и ц а 1
Е(ро ) для случайных конструкций
К |
λ=1/16 |
λ=1/4 |
λ=1 |
λ=4 |
λ=16 |
К0,5 |
25 |
|
0,47 |
0,44 |
0,54 |
0,55 |
0,2 |
64 |
0,46 |
0,34 |
0,32 |
0,38 |
0,57 |
0,125 |
100 |
0,40 |
0,29 |
0,27 |
0,32 |
0,46 |
0,10 |
256 |
0,27 |
0,21 |
0,19 |
0,22 |
0,32 |
0,06 |
400 |
0,23 |
0,17 |
0,16 |
0,18 |
0,26 |
0,05 |
1024 |
0,15 |
0,12 |
0,11 |
0,12 |
0,17 |
0,03 |
4000 |
0,087 |
0,069 |
0,062 |
0,068 |
0,092 |
0,015 |
10000 |
0,062 |
0,047 |
0,042 |
0,046 |
0,061 |
0,01 |
40000 |
0,036 |
0,026 |
0,023 |
0,024 |
0,032 |
0,005 |
100000 |
0,025 |
0,018 |
0,015 |
0,016 |
0,021 |
0,003 |
1045576 |
0,0084 |
0,0063 |
0,0054 |
0,0055 |
0,0069 |
0,001 |
Теперь рассмотрим систематические коды с большим N с помощью другого обобщения кода — проективной плоскости. В отличие от случайного кодирования, когда N считается свободным параметром, эти коды определяют N. Этот недостаток компенсируется за счет малой величины Е(ро ) идругимидостоинствами, которыебудутизложенывданномразделе.
81
Для поля Галуа GF(q) можно создать проективное пространство PG(M,q) размерности М, в котором точки являются классами эквивалентности ненулевых векторов, теперь имеющих М + 1 компонент. Количество
точек определяется по формуле |
|
f(M)= (qМ+1 −1)/(q −1)=1+ q +...+ qМ . |
(10.20) |
Каждое множество точек, удовлетворяющее системе M – D независимых линейных однородных уравнений является подмножеством PG(D,q) размерности D, содержащем f(D) точек PА(M, q). Число подпространств размерности D в PG(M, q) будет
g(D,M)= |
f(M)f(M −1)... f(M − D) |
. |
(10.21) |
|
|||
|
f(D)f(D −1)... f( 0 ) |
|
Выберем особое подпространство S размерности М–1, служащее в качестве «экватора». Идентифицируем файлы х с подпространством S. S имеет подпространства размерности 0, 1,..., М – 2, и таким образом, мы можем определить размерность s файлов как другой параметр конструкции. Рассмотрим случай s = 0; иной код может иметь s = 1. Для данных M,
s число различных посланий будет |
|
N = g(s,M −1). |
(10.22) |
Точки, отсутствующие в S, будут ключами. Их число будет |
|
К = f(M) − f(M −1)= qМ . |
(10.23) |
Ключ m (точка) и файл х (размерности s) определяют единственное пространство размерности (s + 1), которое представляет у. Так как у содержит f (s + 1) точек и f (s) из них принадлежат S, то у содержит
f(s +1) − f(s)= qs+1 ключей. Для каждого х |
число qМ ключей сокраща- |
ется до |
|
А= qM −s−1 |
(10.24) |
пучков из |
|
К / А= qs+1
ключей каждый. Для расчетов примем: А= q2
,К / А= q .
Для нахождения po рассмотрим матрицу, соответствующую особой
паре х,х' . Следует заметить, что qs+1 ключей в выбранном столбце у не
требуют своего распределения в строку. Каждая ячейка в матрице содержит все ключи, относящиеся к пересечению пространств размерности
(s+1) c х,х' . Если х и х' между собой пересекаются х∩ х' в пространст-
82
ве размерности r, то ячейка содержит qr+1 ключей пространств размерности (r + 1) через х∩ х' . В должен выбрать одну строку из qs+1 / qr+1 = qs −r ;
эта вероятность при правильно выбранном у' равна |
|
р (х, у,х' )= qr −s . |
(10.25) |
о |
|
Теперь (10.6) и (10.25) дают |
|
po = ∑h(r)qr −s , |
(10.26) |
r |
|
где h(r) — вероятность того, что случайно выбранный х' пересекает особый х в пространстве размерности r. В выражении (10.26) диапазоном суммирования будет 2s+1− М ≤ r ≤ s −1, обеспечивая 2s+1 ≥ М . Но
если 2s+1< М , то пересечение х∩ х' будет пустым. В этом случае
сумма (10.26) превосходит −1 ≤ r ≤ s −1. Теперь покажем, что формула
h(r)= q(s−r)2 (s −r −1, M − s −2 )g(r,s)/[g(s,M −1) −1] |
(10.27) |
совместно с выражениями (10.21) и (10.26) дает po .
Коэффициент g( r,s )в (10.27) является числом различных подпространств х размерности r. Достаточно показать, что остальные члены вы-
ражения (10.27) дают вероятность того, что произвольно выбранный х' пересекает х в особом пространстве Н размерности r. Для данного х и подпространства Н мы можем найти М базисных векторов ео ,е1 ,...,еМ для S таких, что ео ,е1 ,...,еr расширяют Н, а ео ,е1 ,...,еs расширяют х. Каждое
х' содержит Н и, таким образом, имеет базис, состоящий из ео ,е1 ,...,еr .
Остальные s – r базисных вектора х' могут иметь следующий вид:
|
|
М |
|
|
|
|
vi = ∑ξi, jеj , i = r +1,...,s , |
||
|
|
j=r+1 |
|
|
где е ,е ,...,е |
отсутствуют. При определении ξ |
i, j |
нужно не допустить х' |
|
о 1 |
r |
|
|
пересечению х в пространстве большей размерности, чем r. Это требование эквивалентно условию, что частичная сумма
vi0 |
М |
= ∑ξi, j еj , i = r +1,...,s , |
|
|
j=s+1 |
из vi была бы линейно независима. Тогда viо расширяло бы подпространство хо размерности (М − s − 2 ) за счет еs+1 ,...,еМ . Коэффициент
83
А(r – s – 1, M – s – 2) в формуле (10.20) является числом путей для вы-
бранных хо . Выбирая Н и хо |
(и, следовательно, ξi, j |
для |
j = s +1,...,М ), |
|
(s −r)2 чисел |
|
|
|
|
ξi, j ; i = r +1,...,s; j = r +1,...,s |
|
|
||
могут быть выбраны на q |
(s−r) |
2 |
|
' |
|
путях для полного определения х . Теперь |
|||
числитель (10.27) является |
числом путей выбора |
х' |
для получения |
r — размерного пересечения с х, а знаменатель является числом N – 1 по-
сылок (отличных от х), из которых нарушитель выбирает х' .
Теперь q, M и s определяют N,K, A, pо . Таблица 2 дает некоторые конструкции, полученные выбором q = 2. Значения в таблице 2 выбраны для М = 2s + 2, так что К / А2 =1, как следует из выражений (10.16) и (10.17). Для данного К наименьшее значение po всегда достигается при
К / А2 =1. Подобное явление наблюдалось в случайных конструкциях, имеющих λ=1 (сравните с уравнением (10.17)). В то же время po равня-
ется приближенно 2 К−0,5 , что сравнимо с тем, что получено на проективной плоскости кода.
До настоящего времени нарушитель не контролировал выбор х' . Мы
рассматривали х' как случайную переменную, с которой нарушитель обращался как с данным. Но если предположить, что нарушитель не знает
конкретного х' ; он, по крайней мере, хочет ввести в заблуждение А заме-
ной х на пригодное ложное послание х' . Оптимальной стратегией для нарушителя должно быть стремление снова добиться (10.7), но он будет вы-
бирать х' , чтобы максимизировать ро(х, у,х' ) для каждого данного х, у.
Код с малым po , для случайно выбранного х' , в настоящее время выглядит достаточно убогим. Таблица 3 раскрывает более подробно особенности кода с q = 2, М = 12, s = 5, приведенного в таблице 2. Этот код имеет po = 0,0308, как следует из вычислений по формуле (10.23). Но не-
которые ложные послания х' пересекают хв пространстве размерности r = 4; если нарушитель подставит одно из них, его шанс успеха будет 0,5
(уравнение (10.25)). Код хорош для случайно выбранного х' только благодаря тому, что нарушитель обычно имеет посылку х' с r = –1 или 0.
84
|
|
|
|
|
|
|
|
|
Т а б л и ц а 2 |
||
|
|
|
Кодовые конструкции при q = 2 |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
Размерность |
|
Ключ |
|
Вход |
|
Вероятность выигрыша |
|||||
|
|
|
|
|
|
|
|
|
нарушителя |
|
|
М |
S |
|
|
K |
|
N |
|
|
po |
|
|
2 |
0 |
|
4 |
|
3 |
|
0,6666 |
|
|
||
4 |
1 |
|
16 |
|
35 |
|
0,400 |
|
|
||
6 |
2 |
|
64 |
|
1,395 |
|
0,2222 |
|
|
||
8 |
3 |
|
256 |
|
200787 |
|
0,1176 |
|
|
||
10 |
4 |
|
1024 |
|
1,09×108 |
|
0,0606 |
|
|
||
12 |
5 |
|
4096 |
|
2,3×1011 |
|
0,0308 |
|
|
||
14 |
6 |
|
16384 |
|
2×1015 |
|
0,0115 |
|
|
||
16 |
7 |
|
65536 |
|
6×1019 |
|
0,0078 |
|
|
||
18 |
8 |
|
262144 |
|
8×1024 |
|
0,0039 |
|
|
||
20 |
9 |
|
1048576 |
|
4×1030 |
|
0,00195 |
|
|
||
|
|
|
|
|
|
|
|
|
Т а б л и ц а 3 |
||
|
Конструкция кода с q = 2, М = 12, s = 5 |
||||||||||
|
|
|
|
|
|
|
|
||||
r = dim(x ∩ x' ) |
|
|
|
h(r) |
|
ро(х, у,х' ) |
|
||||
|
-1 |
|
|
|
0,3979 |
|
|
0,015625 |
|
|
|
|
0 |
|
|
|
0,5773 |
|
|
0,03125 |
|
|
|
|
1 |
|
|
|
0,1204 |
|
|
0,0625 |
|
|
|
|
2 |
|
|
|
0,00432 |
|
|
0,125 |
|
|
|
|
3 |
|
|
|
0,000029 |
|
|
0,25 |
|
|
|
|
4 |
|
|
|
3,4×10-8 |
|
|
0,5 |
|
|
|
Хороший код |
для А |
должен теперь |
иметь малое значение |
ро(х, у,х' ) равномерно, а не в среднем. Систематический код достигает этого, если q велико. Согласно формуле (10.25), ро(х, у,х' ) ≤1/ q . К со-
жалению для А увеличение q приводит к снижению N. Тогда нужно искать
компромисс, выбирая q достаточно малым, чтобы получить N достаточно большим, а чтобы нарушитель имел достаточный шанс на успех, необходимо, чтобы 1/q было достаточно мало. В таблице 4 приведен типовой выбор между N и 1/q. Для таблицы 4 все элементы имеют приблизительно одинаковый размер ключа К = 216. Таблица 4 показывает обе вероятности успеха для нарушителя: 1/q, если нарушитель делает r = s – 1 и получает
усредненное значение (10,26), если он выбирает х' случайно. Если нару-
85
шитель игнорирует конструкцию с К / А2 ≠1, то средняя вероятность сильно не меняется. При снижении 1/q от 0,5 до 0,1 уменьшается размер logN с коэффициентом 3.
Т а б л и ц а 4
Вероятность успеха нарушителя при сохранении размера ключа приблизительно постоянным
Поле |
Размерности |
Битыключа |
К / А2 |
Биты |
Вероятность |
||
|
|
|
|
|
log2 N |
успеха нарушите- |
|
Q |
М |
S |
log2К |
|
для |
среднее |
|
|
|
||||||
|
|
|
|
|
|
r = s −1 |
значение |
|
|
|
|
|
|
|
|
256 |
2 |
0 |
16 |
1 |
8,01 |
0,0039 |
0,0039 |
41 |
3 |
1 |
16,08 |
41 |
10,7 |
0,0244 |
0,0250 |
16 |
4 |
1 |
16 |
1 |
16,1 |
0,0625 |
0,0078 |
9 |
5 |
2 |
15,9 |
9 |
19,2 |
0,1111 |
0,0137 |
7 |
6 |
2 |
16,86 |
1 |
25,5 |
0,1429 |
0,0058 |
5 |
7 |
3 |
16,24 |
5 |
28,3 |
0,2000 |
0,0096 |
4 |
8 |
3 |
16 |
1 |
32,5 |
0,2500 |
0,0078 |
3 |
10 |
4 |
15,9 |
1 |
40,5 |
0,3333 |
0,0082 |
2 |
16 |
7 |
16 |
1 |
65,9 |
0,5000 |
0,0078 |
86
Библиография
1.Айерлэнд К. Классическое введение в современную теорию чисел / К. Айерлэнд, М. Роузен. — М. : Мир, 1987. — 416 с.
2.Воронков Б. Н. Методическое пособие по разработке средств защиты информации в вычислительных сетях / Б. Н. Воронков, В. И. Тупота. — Воронеж : ЛОП ВГУ, 2000. — 112 с.
3.Иванов В. А. Криптографические методы защиты информации в компьютерных системах и сетях / В. А. Иванов. — М. : КУДИЦ — ОБРАЗ, 2001. — 368 с.
4.Математические и компьютерные основы криптологии : учеб. пособие / Ю. С. Харин [и др.]. — Минск : Новое знание, 2003. — 382 с.
5.Основы криптографии : учеб. пособие / А. П. Алферов [и др.]. — М. :
Гелиос АРВ, 2001. — 480 с.
6.Питерсон У. Коды, исправляющие ошибки / У. Питерсон, Э. Уэлдон. —
М. : Мир, 1976. — 594 c.
7.Холл М. Комбинаторика / М. Холл. — М. : Мир, 1970. — 424 c.
8.Bauer R. C. A key distribution protocol using event markers / R. C. Bauer,
T.A. Berson, R. J. Feiertag // ACM Trans. Comput. Syst. — 1983. — Vol. 1, № 5. — P. 249 — 255.
9.Diffie W. New directions in cryptography / W. Diffie, M. Hellman // IEEE Trans. Inf. Theory, 1976. — Vol. 22, № 11. — P. 644 — 654.
10.Giblin P. J. Primes and Programming : An Introduction to Number Theory with Computing / P. J. Giblin. – Cambridge : Cambridge University Press, 1993. — 237 c.
11.Matyas S. M. Generation, distribution and instalation of criptografic keys /
S.M. Matyas, C. H. Meyer // IBM Syst. J. — 1978. — Vol.17, № 2. —
P.125 —137.
12.Needham R. M. Using encription for autentification in large networks for computers / R. M. Needham, M. D. Schroeder // Commun. ACM. — 1978. — Vol. 21. — P. 993 — 999.
87
Учебное издание
ЭЛЕМЕНТЫ ТЕОРИИ ЧИСЕЛ И КРИПТОЗАЩИТА
Учебное пособие
Составители: Воронков Борис Николаевич,
Щеголеватых Александр Сергеевич
Редактор Ю. С. Гудкова
Подписано в печать 30.07.08. Формат 60×84/16. Усл. печ. л. 5,17. Тираж 50 экз. Заказ 997.
Издательско-полиграфический центр Воронежского государственного университета.
394000, г. Воронеж, пл. им. Ленина, 10. Тел. 208-298, 598-026 (факс) http://www.ppc.vsu.ru; e-mail: pp_center@ppc.vsu.ru
Отпечатано в типографии Издательско-полиграфического центра Воронежского государственного университета.
394000, г. Воронеж, ул. Пушкинская, 3. Тел. 204-133.
88