Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


ТЕХНОЛОГИЯ ЗАЩИТЫ ИНФОРМАЦИИ



МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ УКРАИНЫ

 

ОДЕССКИЙ НАЦИОНАЛЬНЫЙ МОРСКОЙ УНИВЕРСИТЕТ

 

КАФЕДРА “ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ”

 

 

Ширшков А.К., Личикаки Н.К.

 

ТЕХНОЛОГИЯ ЗАЩИТЫ ИНФОРМАЦИИ

 

 

Курс лекций

 

 

Специальность 6.080401 «Информационные управляющие системы и технологии»

 

 

Одесса – 2009

 

Содержание

1. Введение
2. Симметричные криптосистемы  
  2.1. Поточные криптографические методы
  2.1.1. Шифр Цезаря
  2.1.2. Квадрат Полибия
  2.1.3. Шифр «Модульная арифметика»
  2.1.4. Алфавитное сложение (шифр Хасегава)
  2.2. Блочные криптографические методы
  2.2.1. Шифр СЦИТАЛА (шифр жезла)
  2.2.2. Шифр – стандартная перестановка
  2.2.3. Вертикальная перестановка
  2.2.4. Вертикальная перестановка. Комбинированная перестановка
  2.2.5. Квадратная решетка Кордано (2n х 2n)
  2.2.6. Прямоугольная решетка Кордано с размерностью (2n х 2m)
  2.2.7. Магический квадрат
  2.2.8. Шифратор «Цилиндр Базари»
  2.3. Многоалфавитные криптосистемы
  2.3.1. Квадрат Вижинера
  2.4. Международный симметричный стандарт DES
  2.4.1. Алгоритм шифрования DES
  2.4.2. Блок-схема алгоритма шифрования:
  2.4.3. Блок-схема алгоритма дешифрования
  2.4.4. Криптостойкость DES
  2.5. Электронная цифровая подпись ЭЦП
  2.5.1. ЭЦП симметричных криптосистем
  2.5.2. Передача электронного документа с ЭЦП
  2.5.3. Эффективность ЭЦП симметричных криптосистем
3. Открытые асимметричные криптосистемы (ОАКС)
  3.1. Криптосистема RSA
  3.2. Модульная арифметика
  3.3. Генерация ключей в RSA
  3.4. Электронная цифровая подпись (ЭЦП)
  3.4.1. Эффективность ЭЦП RSA
  3.4.2. Закон Украины об ЭЦП
  3.4.3. Назначение ЭЦП
  3.4.4. Требования к сертификату ключа
  3.4.5. Права подписанта
  3.4.6. Центральный ЦС
  3.4.7. Схема центральный удостоверяющий орган
4. Литература

Введение

Криптографическиеметоды защиты обеспечивают безопасность информации, её защиту от несанкционированного доступа. Криптология наука, состоящая из двух частей:

- криптография (часть криптологии, занимающаяся созданием систем защиты информации от несанкционированного доступа);

- криптоанализ (часть криптологии, занимающаяся созданием систем «взлома» защиты информации).

Криптография возникла как практическая дисциплина, изучающая и разрабатывающая способы шифрования сообщений. Сначала при заинтересованных лицах появились шифровальщики, потом группы из нескольких шифровальщиков, а затем и целые шифровальные отделы. Шифрование сначала осуществлялось вручную, позднее были изобретены сравнительно несложные механические приспособления, поэтому использовавшиеся тогда шифры были достаточно простыми и несложными. С проникновением компьютеров в различные сферы жизни возникла принципиально новая отрасль хозяйства – информационная индустрия. Объемы обрабатываемой информации возросли за полвека на несколько порядков. Сложилось такое положение вещей, что доступ к определенным данным позволяет контролировать значительные материальные и финансовые ценности. Информация приобрела стоимость, которую во многих случаях даже сложно подсчитать. Субъектами информационных процессов теперь являются не только люди, но и созданные ими автоматические системы, действующие по заложенной в них программе. Вычислительные " способности" современных компьютеров подняли на совершенно новый уровень как возможности по реализации шифров, ранее немыслимых из-за своей высокой сложности, так и возможности аналитиков по их взлому.

Требования к криптографическому алгоритму:

- криптостойкость алгоритма (способность противостоять взлому);

- конфиденциальность;

- целостность данных (нет добавлений, удалений, замен);

- юридическая значимость электронного документа;

- неотслеживаемость (не устанавливается, от кого и кому послано сообщение);

- оперативность доступа для санкционированного абонента;

- аутентичность (подлинность, достоверность сообщения).

Правило Кирхгофа

Криптоаналитику (противнику) известно всё: методы, программы, шифр текста или его фрагмент, кроме ключа. Следовательно, ключ шифрования определяет криптостойкость алгоритма шифрования.

Шеннон – отец теории информации

Абсолютно стойкий ключ по Шеннону:

  1. Длина ключа равна длине сообщения;
  2. Ключ выбирается случайно из ключевого пространства;
  3. Ключ используется только один раз для симметричных криптосистем;
  4. Взлом ключа сводится к решению неразрешимой математической задачи.

Классы криптографических методов

Все методы делятся на два основных класса:

- Симметричные;

- Открытые.

Симметричные:

1. Поточные (Шифр Цезаря, модульная арифметика, квадрат Полибия, алфавитное сложение Хасегава и т.д.);

2. Блочные (перестановки: стандартная, вертикальная, комбинированная и т.д.);

3. Многоалфавитные методы (квадрат Вижинера);

4. Симметричная система DES.

В симметричных системах шифрование и дешифрование производится одним и тем же секретным ключом. Проблема симметричных систем – передача секретного ключа.

 

Открытые:

Ассиметричные с открытым ключом шифрования.

  1. Система RSA;
  2. Электронно-цифровая подпись.

В открытой криптосистеме решена проблема передачи секретного ключа – секретный ключ не передается. В этой системе действуют два взаимно сопряженных ключа (секретный и открытый):

- Секретный ключ (личный ключ) хранится только у владельца и никому не передается;

- Открытый ключ является общедоступным и регистрируется установленным порядком.

Действуют два ключа как в банке.

Симметричные криптосистемы

 

Поточные криптографические методы

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

Шифр Цезаря

 

Сообщение S = ДЕНЬ ПРОГРАММИСТА

Дан алфавит:

 

А Б В Г Д Е Ж З И Й
К Л М Н О П Р С Т У
Ф Х Ц Ч Ш Щ Ъ Ы Ь Э
Ю Я _ , . ? ...      
...      

 

а) Шифрование: C = f (S, k), например k = +3

Д = 5 5+3=8 Þ З

Е = 6 6+3=9 Þ И

...

С = ЗИРЯ? ТУСЖУГППЛФХГ

Примечание: Если сумма символа и ключа превышает длину алфавита, то сумма уменьшается на длину алфавита ( )

 

б) Дешифрование: S = f (C, k)

З = 8 8-3=5 Þ Д

И = 9 9-3=6 Þ Е

... S = ДЕНЬ ПРОГРАММИСТА

Примечание: Если при вычитании из номера символа ключа получается отрицательное число или нуль, то необходимо добавить длину алфавита.

 

в) Криптостойкость. Замена простая – один символ исходника заменяется одним символом шифротекста. Ключевое пространство для данного алфавита от -35 до +35 (-35 £ k £ +35).

Вывод: криптостойкость слабая.

Квадрат Полибия

Весь алфавит укладывается в квадрат. (Данный квадрат 6х6)

 
А Б В Г Д Е
Ж З И Й К Л
М Н О П Р С
Т У Ф Х Ц Ч
Ш Щ Ъ Ы Ь Э
Ю Я _ . , ?

 

а) Шифрование: C = f (S, КП) = 1516 3255 6334

3533 1435 1131

...

б) Дешифрование: S = f (C, КП) Производить действия в обратном порядке.

 

в) Криптостойкость. Сложная замена:

- один символ исходника заменяется двумя символами шифротекста;

- шифротекст в цифровой форме (алфавит шифротекста в данной ситуации 6 символов – цифр).

Недостаток – нет ключа шифрования.

Вывод: криптостойкость – слабая.

 

Условные обозначения:

– алфавит сообщения;

S – сообщение, - открытое сообщение;

– шифротекст;

– ключ шифрования;

– функция шифрования, где f – криптопреобразование;

– дешифрование.

 

Шифр «Модульная арифметика»

(квадрат Полибия с ключом)

 

а) Шифрование

Ключ – слово, содержащее уникальные символы (неповторимые), которые размещаются в начале квадрата, например:

 

или

S = ЯХТА_АРХИМЕД

С = 1146 1314 6314 С = 6244 4224 6324

1546 3236 2524 1144 2235 1231

 

 

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

S = ЯХТА_АРХИМЕД

в) Криптографическая стойкость:

- есть ключ. Длина ключа равна ;

- количество ключей – ключевое пространство (все возможные комбинации: если , то k = n! + (n-1)! +…+2! );

- можно использовать шифроблокнот для выбора ключа (две книги – одинаковые и одного издания).

 

2.1.4. Алфавитное сложение (шифр Хасегава)

Алфавитное сложение – сложная замена.

Алфавит на листе 4

а) Шифрование

 
Исходное сообщение: S = К Р И П Т О С Т О Й К О С Т Ь
Ключ: K = А Ф Р О Д И Т А А Ф Р О Д И Т
 
Алфавитное сложение: Σ = 38 37 48
Вычитание длины алфавита: -33                        
Шифротекст: С = Л Д Щ Ю Ч Ч Г У П Ю Ы Э Ц Ы О

 

Примечание 1: Если при шифровании S превышает длину алфавита, то она уменьшается на длину алфавита.

 

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

  Л Д Щ Ю Ч Ч Г У П Ю Ы Э Ц Ы О
Шифротекст: С =
Ключ: K = А Ф Р О Д И Т А А Ф Р О Д И Т
 
Вычитание: = -16 15 -4
+33                        
Исходное сообщение: S = К Р И П Т О С Т О Й К О С Т Ь

 

S = К Р И П Т О С Т О Й К О С Т Ь

 

5-21= -16 доб.33 =17 4-19= -15 доб.33 =18 15-19= -4 доб.33 =29

 

 

Примечание 2: Если при дешифровании разность отрицательная или нулевая, то к разности необходимо добавить длину алфавита.

В нашем случае: Д = 5 вычитаем Ф = 21 равняется -16, добавляем длину алфавита 33 и получаем 17 – символ Р.

в) Криптографическая стойкость:

- длина ключа сообщения;

- количество ключей (ключевое пространство) значительно больше, чем в шифре «Модульная арифметика» за счет возможности повторения символов ключа;

- неоднозначность замены символа исходника символами шифротекста.

 

Однозначная замена:

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

Многозначная замена:

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

Примечание. Можно использовать шифроблокнот для выбора и передачи ключа. Шифроблокнот – две одинаковые книги, в которых на определенной странице выбирается кортеж первых символов строк, последних или 2-х, 3-х, по диагонали или любые другие. Этот кортеж и является ключом. Решается проблема передачи секретного ключа.

 

Вертикальная перестановка

 

Символы блока переставляются по ключу и шифротекст выводится вертикально по столбцам. Например:

а) Шифрование

S = БЕЛОЙ АКАЦИИ ГРОЗДЬЯ ДУШИСТЫЕ

 

k =

А Ф Р О Д И Т А
 

 

     
Б Е Л О Й А К А     Б А А Й Л О К Е
Ц И И Г Р О З Д     Ц Д О Р И Г З И
Ь Я Д У Ш И С Т     Ь Т И Ш Д У С Я
Ы Е А Б В Г Д Е     Ы Е Г В А Б Д Е

 

Операция дополнения

Шифротекст выводится по столбцам с разбивкой на блоки (например, по 4)

С = БЦЬЫ АДТЕ АОИГ ЙРШВ

ЛИДА ОГУБ КЗСД ЕИЯЕ

Произошла двойная перестановка:

- столбцы по ключу;

- вывод по столбцам (первичная запись по строкам).

б) Дешифрование выполняется в обратном порядке. Вычисление количества строк ( )

шифротекста .

Если вычислять от длины сообщения, то

(Всегда округляем в большую сторону).

Записываем матрицу по столбцам и производим обратную перестановку. Ключ тот же. Затем выписываем построчно исходник. Этот способ шифрования более криптостойкий, чем стандартный.

в) Криптографическая стойкость:

- ;

- количество ключей = n! (В нашем случае 8! = 1*2*3*4*5*6*7*8 = 40320 – вариантов ключа);

- изменяется статистическая структура исходника (символ со своего стандартного места перемещается по ключу);

- добавляется перестановка по вертикали.

 

ЛКАО БЛУВ

C = МГБД УАОМ

ТЕРК ИРКЫ

б) Дешифрование S = f(S, k) вычисляем количество строк

Процесс выполняется в обратном порядке.

в) Криптостойкость высокая, двойная перестановка по строкам и столбцам.

 

Выбор ключа Кордано

*     *    
        * *
    *      
        *  
      *   *
      *    

Во внутреннем квадрате 4 ячейки / 4 положения = 1 окно. В окружающем кольце (ближнем к квадрату) 12 ячеек / 4 положения = 3 окна. Во внешнем кольце 20 ячеек / 4 положения = 5 окон. В итоге – 9 окон.

 

Магический квадрат

Квадрат, в котором суммы чисел по строкам, столбцам и диагоналям одинаковы.

Из квадратов: 3 х 3 – 1 магический квадрат

4 х 4 – 880 шт.

5 х 5 – 250000 шт.

Считается, что шифротекст, составленный по ключу магического квадрата, охраняет и магия.

Пример:

13

           
 
 
 

 


а) Шифрование

Выполняется в порядке расстановки символов исходника по пронумерованным ячейкам квадрата (натуральный ряд: 1, 2, …n). Ключ – магический квадрат.

S = ПУНКТ НАЗНАЧЕНИЯ LS = 15 симв.

  А Н У Н
  Т А Ч З
  Н Н А Е
  К Я И П

 

 

∑ =34

 

C = АНУН ТАЧЗ ННАЕ КЯИП

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

Выполняется в обратном порядке. Выводим натуральный ряд и заменяем его исходником.

в) Криптостойкость

Высокая криптостойкость. Меняется статистическая структура исходника.

Квадрат Вижинера

Применен ключ перестановки (инверсный). Количество ключей будет 8!

  1. Шифрование

– квадрат Вижинера

– ключ алфавитного сложения, замены.

S = Б Е Л Е Т П А Р У С

= Б А Л А Л А Й К А

 

Å

 

 

По символу исходника выбирается строка (или столбец), по символу ключа выбирается столбец (или строка) и на пересечении в квадрате находится символ замены.

Симметрия квадрата Вижинера.

Квадрата Вижинера симметричен относительно диагонали.

 

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

 

Å

 

 

По ключу выбираем строку (столбец) в этой строке (столбце) внутри квадрата находим символ шифротекста и по нему в верхней строке столбца (или в левом столбце) находим символ сообщения.

  1. Криптостойкость.

Ключ перестановки (количество ), многовариантность ключа.

Ключ замены с длиной .

Для выбора ключей и можно использовать шифроблокнот. Многозначность замены (например, три буквы Е заменяются на В, В, Ч).

Упрощенный квадрат Вижинера. При формировании квадрата Вижинера не применяется ключ перестановки .

 

2.4. Международный симметричный стандарт DES (Data Encryption Standard)

Симметричная криптосистема – шифрование и дешифрование выполняется одним и тем же ключом. Основной разработчик IBM.

В конце 70-х годов MBS (национальное бюро стандартов), NSA (национальное управление безопасности) и IBM разработали стандарт DES, работающий на «открытом» алгоритме. Он обеспечивает высокую криптостойкость, высокое быстродействие (двоичная система данных), оперативный доступ при наличии ключа (быстрый санкционированный доступ).

 

Алгоритм шифрования DES

  1. Сообщение разбивается на блоки длиной 56 бит и каждый блок дополняется 8-ю контрольными битами. Итого 64 бита (помехоустойчивость).
  2. Применяется ключ перестановки – начальная перестановка. Для выбора можно использовать шифроблокнот.
  3. Блок разбивается на полублоки (32 бита) и (32 бита).
  4. Применяется 16 раундов перестановки полублоков и замены блока .
  5. Генератор раундовых ключей вырабатывает псевдослучайные раундовые ключи ¸ (ключи замены).
  6. Конкатенация (объединение) полублоков и , получаем блок .
  7. Применяется ключ перестановки – обратная перестановка.

2.4.2. Блок-схема алгоритма шифрования:

 
 
S = 56 бит + 8 бит = 64 бит


K0 – нач. перестановка

       
 
   
ГРК
 

 


.

.

Ro = 32бита С0
Lo = 32бита С0
.

 

 
 


L1 = Ro
R 1 = f(K1, Ro, Lo)
1й раунд: К1

               
     
 
   
 
 

 

 


2й раунд: К2


… … …

 

L16 = R15
R16 = f(K16, R15, L15)
16й раунд: К16

           
   
 
   


 

 
 

 


K0 – обр. перестановка

 
 
С2 = (С1, К0 ), 64 бит

 


 

Криптостойкость DES

1. Начальная перестановка по ключу . Если – 56 бит, то таких ключей будет

2. 16 раундов перестановки полублоков .

3. Шифрование блоков с применением раундового ключа и блока , как ключа второй замены.

4. Псевдослучайные раундовые ключи .

5. Применяется ключ для обратной перестановки.

 

Примечание. Еще была разработана в СССР криптосистема ГОСТ = 128 бит, но мало применена в связи с замедленным действием.

 

Пример: Шифрование

 
 
S = 1010 1001


K0 = 8 7 6 5 4 3 2 1

       
 
   
 

 

 


R0 R0

       
 
L1 = 0101
 
0101 = R0 Å 1001 = L0 1100 = K1 0000 = R1
 


1: К1

L0

 
 

 


R1 R1

L2 = 0000
0000 = R1 Å 0101 = L1 1001 = K2 1100 = R2

2: L1 K2

       
 
   
 

 


K0 – обр. перестановка

 
 

 


 

 

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

 
 
C2 = 0011 0000


K0 = 8 7 6 5 4 3 2 1

       
   
 
 

 

 


L2 L2

L2 = 0000 Å R2 = 1100 K2 = 1001 L1 = 0101
K2
R1 = L2 = 0000

R2

 
 

 


L1 L1

L1 = 0101 Å R1 = 0000 K1 = 1100 L0 = 1001
R0 = L1 = 0101

 

К1

           
 
 
   
 
   

 

 


K0 – обр. перестановка

 
 

 


Криптосистема RSA

 

Система была изобретена в Массачусетском университете ( R iverst, S hamir, A dlemen – фамилии авторов). Система основана на примере неразрешимости задачи факторинга. Задача заключается в том, чтобы по заданному произведению n вычислить сомножители p и q. При современном уровне техники можно решить для n 512 бит, т.е. n = 64 байта.

В системе RSA реально применяются ключи длиной более 100 десятичных цифр. Открытые криптосистемы являются сверхстойкими. Для взлома ключей RSA при n 200 десятичных цифр потребуется более 100 лет самого современного суперкомпьютера.

 

Модульная арифметика

 

Целое число a конгруэнтно (тождественно равно) b modn

b – остаток

n – модуль числа

Например: 17 = 2mod15 17/15 = 1 + ост2 целая часть, равная 1 отбрасывается,

b = 2, n = 15

17 = 2mod5 17/5 = 3 + ост2 b = 2, n = 5 целая часть, равная 3 отбрасывается,

17 = 1mod4 17/4 = 4 + ост1 b =1, n = 4 целая часть, равная 4 отбрасывается.

используется в RSA.

 

Генерация ключей в RSA

 

1. Выбираем два взаимнопростых фактора p и q. Например: p = 3, q = 11 p ¹ q;

2. Вычисляем модуль RSA. n = pq (mod RSA = p*q = 33);

3. Вычисляем функцию Эйлера m = (p – 1)(q – 1). (m = (3 – 1)(11 – 1) = 20);

4. Выбираем фактор d < n – простое число (d = 7);

5. Из модульного уравнения d*e = 1modm вычисляем фактор e. Преобразуем:

6. Составляем секретный и открытый ключи RSA.

У нас:

7. Для сохранения (обеспечения) секретности ключей необходимо «убрать мусор», уничтожить p, q, m.

а) Шифрование: – по modn вычислить остаток;

б) Дешифрование: – вычислить остаток по modn.

При этом сообщение S и шифротекст С не должен превосходить модуль RSA n

(S, C) £ n


Поделиться:



Популярное:

Последнее изменение этой страницы: 2017-03-08; Просмотров: 831; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.219 с.)
Главная | Случайная страница | Обратная связь