Материал: 8_ЛР

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Рисунок 9. Проверка произведения матриц S и (G*P).

Шифрование

8.Выбираем сообщение в виде двоичной последовательности длиной k = 17 бит:

Сообщение: 00111001010100101

9.Переходим во вкладку «Шифрование». Вводим сообщение, генерируем случайный двоичный вектор Z длины n, и веса (т.е. числа единиц в нём) не

более , вычисляем произведение сообщения и матрицы (S*G*P): ̃. Вычисляем криптограмму = ̃ .

Рисунок 10. Шифрование сообщения.

Полученная криптограмма: 10111100001110010101100110101001

Дешифрование

10.Переходим во вкладку «Дешифрование». Вычисляем вектор ̃ = −1, а также получаем матрицу, обратную P:

Рисунок 11. Вычисление вектора ̃.

11.Путем вычитания двоичного вектора ошибок Z исправим не более ошибок в ̃, что даст некоторый двоичный вектор ̃ длины k:

Рисунок 12. Исправление ошибок в ̃.

12.Восстанавливаем сообщение как = ̃ −1, а также получаем матрицу, обратную S:

Рисунок 13. Восстановление сообщения.

Восстановленное сообщение: 00111001010100101

Исходное сообщение: 00111001010100101

Видим, что расшифрованное сообщение такое же, как двоичная последовательность, зашифрованное ранее.

Криптоанализ

13. Переходим во вкладку «Криптоанализ» и нажимаем кнопку «Атака»:

Рисунок 14. Атака на криптосистему.

Для рассматриваемого примера атака прошла успешно. Видно, что полученное сообщение совпадает с сообщением, которое зашифровывали ранее.

14.Рассчитаем вероятности успеха атаки на КС Мас-Элис при длине кодового слова n = 32 и различном количестве информационных символов k:

Вероятность атаки:

−

усп =

1) При k = 22:

При t = 1:

3122

усп = 3222 = 0,313

При t = 2:

3022

усп = 3222 = 0,091

2) При k = 17:

При t = 1:

3117

усп = 3217 = 0,469

При t = 2:

3017

усп = 3217 = 0,212

При t = 3:

2917

усп = 3217 = 0,092

3) При k = 12:

При t = 1:

3112

усп = 3212 = 0,625

При t = 2:

3012

усп = 3212 = 0,383

При t = 3:

2912

усп = 3212 = 0,230

При t = 4:

2812

усп = 3212 = 0,135

4) При k = 7:

При t = 1:

317

усп = 327

При t = 2:

307

усп = 327

При t = 3:

297

усп = 327

При t = 4:

287

усп = 327

При t = 5:

277

усп = 327

=0,781

=0,605

=0,464

=0,352

=0,264

Таблица 1. Вероятности успеха криптоатаки при различном количестве искусственно вводимых ошибок.

k

 

 

t

 

 

 

 

 

 

 

1

2

3

4

5

 

 

 

 

 

 

 

22

0,313

0,091

–

–

–

 

 

 

 

 

 

17

0,469

0,212

0,092

–

–

 

 

 

 

 

 

12

0,625

0,383

0,230

0,135

–

 

 

 

 

 

 

7

0,781

0,605

0,464

0,352

0,264

 

 

 

 

 

 

Источник: https://studfile.net/preview/16668183/