- •«Утверждаю»
- •Конспект лекций
- •Средства обеспечения информационной безопасности в телекоммуникационных системах
- •Литература
- •Основные понятия информационной безопасности (иб)
- •1.1. Постановка задачи сетевой безопасности
- •1.2. Основные понятия информационной безопасности
- •1.3. Классификация угроз безопасности корпоративных сетей
- •Пути реализации угроз безопасности сети
- •1.4. Обеспечение безопасности сетей передачи данных
- •1.4.1. Основные виды политики безопасности
- •1.4.2. Построение системы защиты сети
- •1.5. Базовые технологии безопасности сетей
- •1.5.1. Аутентификация
- •1.5.2. Авторизация доступа
- •1.5.3. Аудит
- •1.5.4. Технология защищенного канала
- •Принципы криптографической защиты информации
- •2.1. Схема симметричной криптосистемы
- •2.2. Схема асимметричной криптосистемы
- •2.3. Аппаратно-программные средства защиты компьютерной информации
- •3. Современные симметричные криптосистемы
- •3.1 Классическая сеть Фейстеля
- •3.2. Американский стандарт шифрования данных des
- •Функция h завершающей обработки ключа
- •3.2.1. Основные режимы работы алгоритма des
- •Режим "Электронная кодовая книга"
- •Режим "Сцепление блоков шифра"
- •Режим "Обратная связь по шифру"
- •Режим "Обратная связь по выходу"
- •3.3. Области применения алгоритма des
- •3.4. Комбинирование блочных алгоритмов
- •3.5. Алгоритм шифрования данных idea
- •Подключи шифрования и расшифрования алгоритма idea
- •3.6. Отечественный стандарт шифрования данных
- •Режим простой замены
- •Режим гаммирования
- •Режим гаммирования с обратной связью
- •Режим выработки имитовставки
- •3.7. Блочные и поточные шифры
- •Основные характеристики криптосистем
- •4. Асимметричные криптосистемы
- •4.1. Концепция криптосистемы с открытым ключом
- •4.2. Однонаправленные функции
- •4.3. Криптосистема шифрования данных rsa
- •4.3.1. Процедуры шифрования и расшифрования в
- •4.3.2. Безопасность и быстродействие криптосистемы
- •Оценки длин ключей для асимметричных криптосистем, бит
- •4.4. Схема шифрования Полига – Хеллмана
- •4.5. Схема шифрования Эль Гамаля
- •Скорости работы схемы Эль Гамаля
- •4.6. Комбинированный метод шифрования
- •Длины ключей для симметричных и асимметричных криптосистем при
- •5. Идентификация и проверка подлинности
- •5.1. Основные понятия и концепции
- •5.2. Идентификация и аутентификация пользователя
- •5.2.1 Типовые схемы идентификации и аутентификации
- •5.2.2. Биометрическая идентификация и
- •5.3. Взаимная проверка подлинности пользователей
- •5.4. Протоколы идентификации с нулевой передачей
- •5.4.1. Упрощенная схема идентификации с нулевой
- •6. Электронная цифровая подпись
- •6.1. Проблема аутентификации данных и электронная
- •6.2. Однонаправленные хэш-функции
- •6.2.1. Однонаправленные хэш-функции на основе
- •Схемы безопасного хэширования, у которых длина хэш-значения
- •6.2.2. Отечественный стандарт хэш-функции
- •6.3. Алгоритмы электронной цифровой подписи
- •6.3.1. Алгоритм цифровой подписи rsa
- •6.3.2. Алгоритм цифровой подписи Эль Гамаля (egsa)
- •6.3.3. Алгоритм цифровой подписи dsa
- •6.3.4. Отечественный стандарт цифровой подписи
- •6.4. Цифровые подписи с дополнительными
- •6.4.1. Схемы слепой подписи
- •6.4.2. Схемы неоспоримой подписи
- •7. Управление криптографическими ключами
- •7.1. Генерация ключей
- •7.2. Хранение ключей
- •7.2.1. Носители ключевой информации
- •7.2.2. Концепция иерархии ключей
- •7.3. Распределение ключей
- •7.3.1. Распределение ключей с участием центра
- •7.3.2. Протокол аутентификации и распределения
- •7.3.3. Протокол для асимметричных криптосистем с
- •7.3.4. Прямой обмен ключами между пользователями
6.3.3. Алгоритм цифровой подписи dsa
Алгоритм цифровой подписи DSA (Digital Signature Algorithm) предложен в 1991 г. в НИСТ США для использования в стандарте цифровой подписи DSS (Digital Signature Standard). Алгоритм DSA является развитием алгоритмов цифровой подписи Эль Гамаля и К.Шнорра [121].
Отправитель и получатель электронного документа используют при вычислении большие целые числа: G и P – простые числа, l бит каждое (512 l 1024); Q – простое число длиной 160 бит (делитель числа (P –1)). Числа G, P, Q являются открытыми и могут быть общими для всех пользователей сети.
отправитель выбирает случайное целое число x, 1< x< q. Число x является секретным ключом отправителя для формирования электронной цифровой подписи.
Затем отправитель вычисляет значение
Y = GX mod P.
Число Y является открытым ключом для проверки подписи отправителя. Число Y передается всем получателям документов.
Этот алгоритм также предусматривает использование односторонней функции хэширования h(·). В стандарте DSS определен алгоритм безопасного хэширования SHA (Secure Hash Algorithm).
Для того чтобы подписать документ M, отправитель хэширует его в целое хэш-значение m:
m = h(M), 1< m < q,
затем генерирует случайное целое число K, 1< K< q, и вычисляет число r:
r = (GK mod P) mod q.
Затем отправитель вычисляет с помощью секретного ключа X целое число s:
s = mod q.
Пара чисел r и s образует цифровую подпись
S = (r ,s)
под документом M.
Таким образом, подписанное сообщение представляет собой тройку чисел [M, r, s].
Получатель подписанного сообщения [M, r, s] проверяет выполнение условий
0 < r < q, 0 < s < q
и отвергает подпись, если хотя бы одно из этих условий не выполнено.
Затем получатель вычисляет значение
w = mod q,
хэш-значение
m = h(M)
и числа
u1 = (m w) mod q,
u2 = (r w) mod q.
Далее получатель с помощью открытого ключа Y вычисляет значение
v = (( ) mod P) mod q
и проверяет выполнение условия
v = r.
Если условие v = r выполняется, тогда подпись S = (r,s) под документом M признается получателем подлинной.
Можно строго математически доказать, что последнее равенство будет выполняться тогда, и только тогда, когда подпись S = (r,s) под документом M получена с помощью именно того секретного ключа X, из которого был получен открытый ключ Y. Таким образом, можно надежно удостовериться, что отправитель сообщения владеет именно данным секретным ключом X (не раскрывая при этом значения ключа X) и что отправитель подписал именно данный документ M.
По сравнению с алгоритмом цифровой подписи Эль Гамаля алгоритм DSA имеет следующие основные преимущества:
1. При любом допустимом уровне стойкости, т.е. при любой паре чисел G и P (от 512 до 1024 бит), числа q, X, r, s имеют длину по 160 бит, сокращая длину подписи до 320 бит.
2. Большинство операций с числами K, r, s, X при вычислении подписи производится по модулю числа q длиной 160 бит, что сокращает время вычисления подписи.
3. При проверке подписи большинство операций с числами u1, u2, v, w также производится по модулю числа q длиной 160 бит, что сокращает объем памяти и время вычисления.
Недостатком алгоритма DSA является то, что при подписывании и при проверке подписи приходится выполнять сложные операции деления по модулю q:
s = (mod q), w = (mod q),
что не позволяет получать максимальное быстродействие.
Следует отметить, что реальное исполнение алгоритма DSA может быть ускорено с помощью выполнения предварительных вычислений. Заметим, что значение r не зависит от сообщения M и его хэш-значения m. Можно заранее создать строку случайных значений K и затем для каждого из этих значений вычислить значения r. Можно также заранее вычислить обратные значения K–1 для каждого из значений K. Затем, при поступлении сообщения M, можно вычислить значение s для данных значений r и K–1. Эти предварительные вычисления значительно ускоряют работу алгоритма DSA.