Длина открытого ключа
Многие современные алгоритмы шифрования с открытым ключом основаны на однонаправленности функции разложения на множители числа, являющегося произведением двух больших простых чисел. Эти алгоритмы также могут быть подвергнуты атаке, подобной методу тотального перебора, применяемому против шифров с секретным ключом, с одним лишь отличием: опробовать каждый ключ не потребуется, достаточно суметь разложить на множители большое число.
Конечно, разложение большого числа на множители — задача трудная. Однако сразу возникает резонный вопрос, насколько трудная. К несчастью для криптографов, сложность ее решения уменьшается. И что еще хуже, эта сложность падает значительно более быстрыми темпами, чем ожидалось ранее. Например, в середине 70-х годов считалось, что для разложения на множители числа из 125 цифр потребуются десятки квадрильонов лет. А всего два десятилетия спустя с помощью компьютеров, подключенных к сети Internet, удалось разложить на множители число из 129 цифр. Этот прорыв стал возможен благодаря тому, что за прошедшие 20 лет были не только предложены новые, более быстрые, методы разложения на множители больших чисел, но и возросла производительность используемых компьютеров.
Поэтому квалифицированный криптограф должен проявлять очень большую осторожность и осмотрительность, когда речь заходит о длине открытого ключа. Необходимо учитывать, насколько ценна засекречиваемая с его помощью информация и как долго она должна оставаться в тайне для посторонних.
А почему, спрашивается, не взять 10000-битный ключ? Ведь тогда отпадут все вопросы, связанные со стойкостью асимметричного алгоритма шифрования с открытым ключом, основанном на разложении большого числа на множители. Но дело в том, что обеспечение достаточной стойкости шифра не является единственной заботой криптографа. Имеются дополнительные соображения, влияющие на выбор длины ключа, и среди них — вопросы, связанные с практической реализуемостью алгоритма шифрования при выбранной длине ключа.
Чтобы оценить длину открытого ключа, будем измерять доступную криптоаналитику вычислительную мощь в так называемых мопс-годах, т. е. количеством операций, которые компьютер, способный работать со скоростью 1 миллион операций в секунду, выполняет за год. Допустим, что хакер имеет доступ к компьютерным ресурсам общей вычислительной мощью 10000 мопс-лет, крупная корпорация — 107 мопс-лет, правительство — 109 мопс-лет. Это вполне реальные цифры, если учесть, что при реализации упомянутого выше проекта разложения числа из 129 цифр его участники задействовали всего 0,03% вычислительной мощи Internet, и чтобы добиться этого, им не потребовалось принимать какие-либо экстраординарные меры или выходить за рамки закона.
Предположим еще, что вычислительная мощь возрастает в 10 раз каждые 5 лет, а метод, который используется для разложения больших чисел на множители, позволяет это делать с трудоемкостью, указанной в табл. 6.3.
Таблица 6.3. Трудоемкость разложения больших чисел на множители
Количество бит в двоичном представлении числа | Количество мопс-лет для разложения на множители |
768 1024 1280 1536 2048 | 3ּ105 3ּ107 3ּ109 3ּ1011 3ּ1014 |
Сделанные предположения позволяют оценить длину стойкого открытого ключа в зависимости от срока, в течение которого необходимо хранить зашифрованные с его помощью данные в секрете (табл. 6.4). При этом необходимо помнить, что криптографические алгоритмы с открытым ключом часто применяются для защиты очень ценной информации на весьма долгий период времени. Например, в системах электронных платежей или при нотариальном заверении электронной подписи. Идея потратить несколько месяцев на разложение большого числа на множители может показаться кому-то очень привлекательной, если в результате он получит возможность рассчитываться за свои покупки по вашей кредитной карточке. Кроме того, я думаю, что вам совсем не улыбается перспектива быть вызванным через 20 лет на заседание суда, на котором рассматривается дело о наследстве, и отстаивать невозможность подделать электронную подпись вашего дедушки, использованную им для составления завещания в вашу пользу.
Таблица 6.4. Рекомендуемая длина открытого ключа (в битах)
Год | Хакер | Крупная корпорация | Правительство |
2000 | 1024 | 1280 | 1536 |
2005 | 1280 | 1536 | 2048 |
2010 | 1280 | 1536 | 2048 |
2015 | 1536 | 2048 | 2048 |
С приведенными в табл. 6.4 данными согласны далеко не все авторитетные криптографы. Некоторые из них наотрез отказываются делать какие-либо долгосрочные прогнозы, считая это бесполезным делом. Другие, например, специалисты из АНБ, чересчур оптимистичны, рекомендуя для систем цифровой подписи длину открытого ключа всего 512—1024 бита, что в свете данных из табл. 6.4 является совершенно недостаточным для обеспечения надлежащей долговременной защиты.
- Группа подготовки издания:
- 199034, Санкт-Петербург, 9-я линия, 12. Предисловие
- Компьютерная безопасность Глава 1
- Угрозы компьютерной безопасности Компьютерная преступность в России
- Тенденции
- Internetкак среда и как орудие совершения компьютерных преступлений
- Синдром Робина Гуда
- История одного компьютерного взлома
- Компьютер глазами хакера
- Кто такие хакеры
- Методы взлома компьютерных систем
- Атаки на уровне систем управления базами данных
- Атаки на уровне операционной системы
- Атаки на уровне сетевого программного обеспечения
- Защита системы от взлома
- Глава 2
- Программы-шпионы Программные закладки
- Модели воздействия программных закладок на компьютеры Перехват
- Искажение
- Уборка мусора
- Наблюдение и компрометация
- Защита от программных закладок
- Защита от внедрения программных закладок
- Выявление внедренной программной закладки
- Удаление внедренной программной закладки
- Троянские программы
- Откуда берутся троянские программы
- Где обитают и как часто встречаются троянские программы
- Как распознать троянскую программу
- Клавиатурные шпионы
- Имитаторы
- Фильтры
- Заместители
- Как защитить систему от клавиатурных шпионов
- Глава 3
- Парольная защита операционных систем Парольные взломщики
- Что такое парольный взломщик
- Как работает парольный взломщик
- Взлом парольной защиты операционной системыUnix
- Взлом парольной защиты операционной системыWindows nt База данных учетных записей пользователей
- Хранение паролей пользователей
- Использование пароля
- Возможные атаки на базу данныхSam
- Защита системы от парольных взломщиков
- Как сделать парольную защитуWindows 95/98 более надежной
- Как установить парольную защитуWindows 95/98
- Почему парольная защита Windows 95/98 ненадежна
- Как предотвратить несанкционированную загрузку системы
- Как запретить кэширование паролей вWindows 95/98
- Соблюдайте осторожность: парольная защита ненадежна
- Глава 4
- Безопасность компьютерной сети Сканеры
- Сканер в вопросах и ответах Что такое сканер?
- Каковы системные требования для работы со сканерами?
- Трудно ли создать сканер?
- Что не по силам даже самому совершенному сканеру?
- Насколько легальны сканеры?
- В чем различие между сканерами и сетевыми утилитами?
- Сканер в действии
- Satan, Jackal и другие сканеры
- Анализаторы протоколов
- Локальное широковещание
- Анализатор протоколов как он есть
- Защита от анализаторов протоколов
- Криптографические методы защиты информации Глава 5
- Основы криптографии Зачем нужна криптография
- Терминология Шифрование и расшифрование
- Аутентификация, целостность и неоспоримость
- Шифры и ключи
- Симметричные алгоритмы шифрования
- Алгоритмы шифрования с открытым ключом
- Криптоаналитические атаки
- Надежность алгоритма шифрования
- Сложность криптоаналитической атаки
- Шифры замены и перестановки
- Шифры замены
- Шифры перестановки
- Роторные машины
- Операция сложения по модулю 2
- Одноразовые блокноты
- Компьютерные алгоритмы шифрования
- Глава 6
- Криптографические ключи Длина секретного ключа
- Сложность и стоимость атаки методом тотального перебора
- Программная атака
- "Китайская лотерея"
- Биотехнология
- Термодинамические ограничения
- Однонаправленные функции
- Длина открытого ключа
- Какой длины должен быть ключ
- Работа с ключами
- Генерация случайных и псевдослучайных последовательностей
- Псевдослучайные последовательности
- Криптографически надежные псевдослучайные последовательности
- Генерация ключей
- Сокращенные ключевые пространства
- Плохие ключи
- Случайные ключи
- СтандартAnsi x9.17
- Нелинейные ключевые пространства
- Передача ключей
- Проверка подлинности ключей
- Контроль за использованием ключей
- Обновление ключей
- Хранение ключей
- Запасные ключи
- Скомпрометированные ключи
- Продолжительность использования ключа
- Уничтожение ключей
- Глава 7
- Криптографические протоколы Что такое криптографический протокол
- Зачем нужны криптографические протоколы
- Распределение ролей
- Протокол с арбитражем
- Протокол с судейством
- Самоутверждающийся протокол
- Протокол обмена сообщениями с использованием симметричного шифрования
- Протокол обмена сообщениями с использованием шифрования с открытым ключом
- Гибридные криптосистемы
- "Шарады" Меркля
- Цифровая подпись
- Подписание документов при помощи симметричных криптосистем и арбитра
- Подписание документов при помощи криптосистем с открытым ключом
- Отметка о времени подписания документа
- Использование однонаправленных хэш-функций для подписания документов
- Дополнительная терминология
- Несколько подписей под одним документом
- Неоспоримость
- Цифровая подпись и шифрование
- Основные криптографические протоколы Обмен ключами
- Обмен ключами для симметричных криптосистем
- Обмен ключами для криптосистем с открытым ключом
- Атака методом сведения к середине
- Блокировочный протокол
- Протокол обмена ключами с цифровой подписью
- Одновременная передача ключа и сообщения
- Множественная рассылка ключей и сообщений
- Аутентификация
- Аутентификация при помощи однонаправленных функций
- Отражение словарной атаки при помощи "изюминок"
- Периодическая сменяемость паролей
- Аутентификация при помощи криптосистем с открытым ключом
- Формальный анализ криптографических протоколов
- Многоключевая криптография с открытым ключом
- Множественная рассылка шифрованных сообщений
- Распределение ответственности
- Распределение ответственности и мошенничество
- Вспомогательные криптографические протоколы Отметка о времени создания файла
- Отметка о времени создания файла и арбитраж
- Связующий протокол
- Распределенный протокол
- Подсознательный канал
- Практическое применение подсознательного канала
- Неоспоримая цифровая подпись
- Цифровая подпись с назначенным конфирмантом
- Цифровая подпись по доверенности
- Групповые подписи
- Цифровая подпись с дополнительной защитой
- Предсказание бита
- Предсказание бита с помощью симметричной криптосистемы
- Предсказание бита с помощью однонаправленной функции
- Предсказание с помощью генератора псевдослучайных битовых последовательностей
- Бросание монеты
- Бросание монеты с помощью предсказания бита
- Бросание монеты с помощью однонаправленной функции
- Бросание монеты с помощью криптосистемы с открытым ключом
- Игра в покер
- Специальные криптографические протоколы Доказательство с нулевым разглашением конфиденциальной информации
- Протокол доказательства с нулевым разглашением конфиденциальной информации
- Параллельные доказательства с нулевым разглашением конфиденциальной информации
- Неинтерактивные протоколы доказательства с нулевым разглашением конфиденциальной информации
- Удостоверение личности с нулевым разглашением конфиденциальной информации
- Неосознанная передача информации
- Анонимные совместные вычисления
- Вычисление средней зарплаты
- Как найти себе подобного
- Депонирование ключей
- Депонирование ключей и политика
- Глава 8
- Надежность криптосистем
- Как выбрать хороший криптографический алгоритм
- Криптографические алгоритмы, предназначенные для экспорта из сша
- Симметричный или асимметричный криптографический алгоритм?
- Шифрование в каналах связи компьютерной сети
- Канальное шифрование
- Сквозное шифрование
- Комбинированное шифрование
- Шифрование файлов
- Аппаратное и программное шифрование Аппаратное шифрование
- Программное шифрование
- Сжатие и шифрование
- Как спрятать один шифртекст в другом
- Почему криптосистемы ненадежны
- Реализация
- Учет реальных потребностей пользователей
- Законодательные ограничения
- Слишком малая длина ключа
- Потайные ходы
- Шифрование вокруг нас
- Приложение Англо-русский криптологический словарь с толкованиями
- Лексикографические источники
- Сокращения Английские
- Русские
- Условные обозначения
- Криптологический словарь
- Глава 1 6
- Глава 2 24
- Глава 3 52
- Глава 4 75
- Глава 5 92
- Глава 6 110
- Глава 7 138
- Глава 8 204