Художественная культура и искусство Курс лекций по истории искусства Теория машин и механизмов Математический анализ Электротехника и электроника Расчеты электрических цепей Начертательная геометрия Примеры выполнения заданий
контрольной работы
Лекции и задачи по физике Информационные системы Получение электрической энергии Атомная физика
Компьютерная  безопасность Атаки на уровне сетевого программного обеспечения Программы-шпионы Взлом парольной защиты Безопасность компьютерной сети Анализаторы протоколов Криптографические методы защиты

Продолжительность использования ключа

Любой ключ должен использоваться в течение ограниченного периода времени. Тому есть несколько причин:

Чем дольше ключ находится в действии, тем больше вероятность того,

 что он будет скомпрометирован.

Длительное пользование одним и тем же ключом увеличивает

потенциальный ущерб, который может быть нанесен в случае его компрометации.

Ключ, очень долго применявшийся для шифрования информации,

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

Криптоаналитическую атаку на шифр вести тем легче, чем больше

 перехваченного шифртекста для него накоплено.

Продолжительность использования ключа зависит от криптосистемы. В различных криптосистемах эта продолжительность должна быть разной. Для шифрования речевых сообщений, передаваемых по телефону, имеет смысл менять ключ после каждого разговора. В выделенных каналах связи продолжительность использования ключа определяется ценностью шифруемой информации и скоростью ее передачи. При скорости в 9600 бит в секунду смену ключа следует производить реже, чем при скорости в несколько гига-бит в секунду. Если условия позволяют, такие ключи необходимо менять, по крайней мере, ежедневно.

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

Ключи, применяемые для шифрования файлов, которые хранятся на компьютерных дисках, слишком часто менять не надо. Регулярное повторное шифрование файлов на новых ключах только даст больше полезной информации криптоаналитику, который будет пытаться их вскрыть. Лучше применить подход, при котором каждый файл шифруется при помощи своего ключа. А сами ключи, в свою очередь, зашифровываются на ключе шифрования ключей, который затем прячется в надежное место (например, в стальной сейф).

Что касается открытых ключей, то продолжительность их использования сильно варьируется в зависимости от области применения. Если открытый ключ применяется для целей аутентификации или для цифровой подписи, он продолжает оставаться актуальным годами, иногда даже десятилетиями. Но даже в этом случае не следует пренебрегать сменой ключа каждые 2—3 года, чтобы в распоряжении криптоаналитика накапливалось меньше шифртекста, необходимого для организации атаки. А старый ключ все равно надо продолжать хранить в секрете — он может понадобиться, чтобы, например, подтвердить подлинность подписи, поставленной в течение периода, пока этот ключ был действующим.

Уничтожение ключей

Использованные криптографические ключи ни в коем случае не должны попасть в руки противника. Поэтому, как только в ключах отпала надобность, их следует уничтожить. Если ключи хранятся на бумажном носителе, его надо сжечь или пропустить через специальный аппарат для уничтожения бумаг, который должен быть достаточно качественным. Ведь будет очень обидно, если ваш алгоритм шифрования, способный выдержать атаку методом грубой силы в течение нескольких миллионов лет, вскроют только потому, что за несколько десятков тысяч долларов кто-то наймет сотню безработных, и за год они соберут воедино недостаточно тщательно “пережеванный” лист бумаги с записанными на нем ключами.

Если ключ хранился в СППЗУ, необходимо несколько раз записать информацию поверх него. Если для хранения ключа использовалось ПЗУ, его надо разнести молотком на мелкие кусочки и пустить их по ветру. Если ключ лежал на компьютерном диске, на место ключа придется многократно записать ничего не значащие данные или уничтожить диск подобно ПЗУ. При работе на компьютере в многозадачном режиме следует обратить особое внимание на способность операционной системы создавать временные файлы на диске для хранения рабочей копии программы шифрования и ее данных. А сверхосторожный пользователь обязательно напишет программу, которая будет отыскивать копии ключа на свободных секторах диска и затем затирать их.

Глава 7

Криптографические протоколы

Что такое криптографический протокол

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

Протоколы имеют и другие отличительные черты:

каждый участник протокола должен быть заранее оповещен о шагах,

 которые ему предстоит предпринять;

все участники протокола должны следовать его правилам добровольно,

 без принуждения;

необходимо, чтобы протокол допускал только однозначное толкование,

 а его шаги были совершенно четко определены и не допускали

 возможности их неправильного понимания;

протокол должен содержать описание реакции его участников на

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

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

Зачем нужны криптографические протоколы

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

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

Большинство протоколов, которые люди используют при общении друг с другом с глазу на глаз, хорошо себя зарекомендовали только потому, что их участники имеют возможность вступить в непосредственный контакт. Взаимодействие с другими людьми через компьютерную сеть, наоборот, подразумевает анонимность. Будете ли вы играть с незнакомцем в преферанс, не видя, как он тасует колоду и раздает карты? Доверите ли вы свои деньги совершенно постороннему человеку, чтобы он купил вам что-нибудь в магазине? Пошлете ли вы свой бюллетень голосования по почте, зная, что с ним сможет ознакомиться любой из почтовых работников и потом рассказать всем о ваших нетрадиционных политических пристрастиях? Думаю, что нет.

Глупо считать, что компьютерные пользователи ведут себя более честно, чем абсолютно случайные люди. То же самое касается и сетевых администраторов, и проектировщиков компьютерных сетей. Большинство из них и в самом деле честные люди, однако есть и такие, кто может причинить вам большие неприятности. Поэтому так нужны криптографические протоколы, использование которых позволяет защититься от непорядочных людей.

Распределение ролей

Чтобы описание протоколов было более наглядным, имена их участников однозначно определяют роли, им уготованные (табл. 7.1). Пусть Антон и Борис принимают участие во всех двухсторонних протоколах. Как правило, начинает выполнение шагов, предусмотренных протоколом, Антон, а ответные действия предпринимает Борис. Если протокол является трех- или четырехсторонним, исполнение соответствующих ролей берут на себя Владимир и Георгий. Об остальных персонажах подробнее будет рассказано позже.

Таблица 7.1. Роли, которые играют участники протоколов

Участник протокола

Роль в протоколе

Антон

Первый участник протоколов

Борис

Второй участник протоколов

Владимир

Участник трех- и четырехсторонних протоколов

Георгий

Участник четырехсторонних протоколов

Дмитрий

Доверенное лицо, наделенное правами арбитра

Зиновий

Злоумышленник

Кирилл

Контролер

Олег

Охранник

Петр

Подслушивает за участниками протоколов

Сергей

Свидетель

Протокол с арбитражем

Арбитр — участник протокола, которому остальные участники полностью доверяют, предпринимая соответствующие действия для завершения очередного шага протокола. Это значит, что у арбитра нет личной заинтересованности в достижении тех или иных целей, преследуемых участниками протокола, и он не может выступить на стороне любого из них. Участники протокола также принимают на веру все, что скажет арбитр, и беспрекословно следуют всем его рекомендациям.

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

Легко довериться адвокату, про которого известно, что у него

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

Расценки за услуги, оказываемые адвокатом, известны. Кто и каким

образом будет оплачивать издержки за аналогичные услуги арбитра в компьютерной сети?

Введение арбитра в любой протокол увеличивает время, затрачиваемое

 на реализацию этого протокола.

Поскольку арбитр контролирует каждый шаг протокола, его участие в

очень сложных протоколах может стать узким местом при их реализации. Увеличение числа арбитров позволяет избавиться от данного узкого места, однако одновременно возрастут и накладные расходы на реализацию протокола.

В силу того, что все участники протокола должны пользоваться

услугами одного и того же арбитра, действия злоумышленника, который решит нанести им ущерб, будут направлены, в первую очередь, против этого арбитра. Следовательно, арбитр представляет собой слабое звено любого протокола с арбитражем.

Несмотря на отмеченные препятствия, протоколы с арбитражем находят широкое применение на практике. В ходе дальнейшего изложения доверенное лицо, наделенное правами арбитра, будет именоваться Дмитрием.

Стандарт ISO/IEC 15408 «Критерии оценки безопасности информационных технологий» («Общие критерии»). Требования безопасности. Угрозы и уязвимые места. Профили защиты. «Общие критерии». Функциональный пакет. Функциональные требования. Требования доверия безопасности. Гармонизированные критерии Европейских стран. Система, продукт. Сервисы безопасности. Гарантированность. Уровни гарантированности. Интерпретация «Оранжевой книги» для сетевых конфигураций. Сетевая доверенная вычислительная база. Руководящие документы Гостехкомиссии РФ. Классификация МЭ
Аппаратное и программное шифрование