Криптографические системы защиты данных
(рис. №1). Теперь в него необходимо внести существенное изменение -
добавить недоступный для противника секретный канал связи для обмена
ключами (см. рис. №2).
[pic]
Рис. №2
Создать такой канал связи вполне реально, поскольку нагрузка на него,
вообще говоря, небольшая. Отметим теперь, что не существует единого шифра,
подходящего для всех случаев. Выбор способа шифрования зависит от
особенностей информации, ее ценности и возможностей владельцев по защите
своей информации. Прежде всего подчеркнем большое разнообразие видов
защищаемой информации: документальная, телефонная, телевизионная,
компьютерная и т.д. Каждый вид информации имеет свои специфические
особенности, и эти особенности сильно влияют на выбор методов шифрования
информации. Большое значение имеют объемы и требуемая скорость передачи
шифрованной информации. Выбор вида шифра и его параметров существенно
зависит от характера защищаемых секретов или тайны. Некоторые тайны
(например, государственные, военные и др.) должны сохраняться
десятилетиями, а некоторые (например, биржевые) - уже через несколько часов
можно разгласить. Необходимо учитывать также и возможности того противника,
от которого защищается данная информация. Одно дело - противостоять
одиночке или даже банде уголовников, а другое дело - мощной государственной
структуре.
Любая современная криптографическая система основана (построена) на
использовании криптографических ключей. Она работает по определенной
методологии (процедуре), состоящей из: одного или более алгоритмов
шифрования (математических формул); ключей, используемых этими алгоритмами
шифрования; системы управления ключами; незашифрованного текста; и
зашифрованного текста (шифртекста).
2.1.1. Симметричная (секретная) методология.
В этой методологии и для шифрования, и для расшифровки отправителем и
получателем применяется один и тот же ключ, об использовании которого они
договорились до начала взаимодействия. Если ключ не был скомпрометирован,
то при расшифровке автоматически выполняется аутентификация отправителя,
так как только отправитель имеет ключ, с помощью которого можно зашифровать
информацию, и только получатель имеет ключ, с помощью которого можно
расшифровать информацию. Так как отправитель и получатель - единственные
люди, которые знают этот симметричный ключ, при компрометации ключа будет
скомпрометировано только взаимодействие этих двух пользователей. Проблемой,
которая будет актуальна и для других криптосистем, является вопрос о том,
как безопасно распространять симметричные (секретные) ключи.
Алгоритмы симметричного шифрования используют ключи не очень большой длины
и могут быстро шифровать большие объемы данных.
Порядок использования систем с симметричными ключами:
1. Безопасно создается, распространяется и сохраняется симметричный
секретный ключ.
2. Отправитель создает электронную подпись с помощью расчета хэш-функции
для текста и присоединения полученной строки к тексту
3. Отправитель использует быстрый симметричный алгоритм шифрования-
расшифровки вместе с секретным симметричным ключом к полученному
пакету (тексту вместе с присоединенной электронной подписью) для
получения зашифрованного текста. Неявно таким образом производится
аудентификация, так как только отправитель знает симметричный
секретный ключ и может зашифровать этот пакет. Только получатель знает
симметричный секретный ключ и может расшифровать этот пакет.
4. Отправитель передает зашифрованный текст. Симметричный секретный ключ
никогда не передается по незащищенным каналам связи.
5. Получатель использует тот же самый симметричный алгоритм шифрования-
расшифровки вместе с тем же самым симметричным ключом (который уже
есть у получателя) к зашифрованному тексту для восстановления
исходного текста и электронной подписи. Его успешное восстановление
аутентифицирует кого-то, кто знает секретный ключ.
6. Получатель отделяет электронную подпись от текста.
7. Получатель создает другую электронную подпись с помощью расчета хэш-
функции для полученного текста.
8. Получатель сравнивает две этих электронных подписи для проверки
целостности сообщения (отсутствия его искажения)
Доступными сегодня средствами, в которых используется симметричная
методология, являются:
Kerberos, который был разработан для аутентификации доступа к ресурсам в
сети, а не для верификации данных. Он использует центральную базу данных, в
которой хранятся копии секретных ключей всех пользователей.
Сети банкоматов (ATM Banking Networks). Эти системы являются оригинальными
разработками владеющих ими банков и не продаются. В них также используются
симметричные методологии.
2.1.2. Асимметричная (открытая) методология.
В этой методологии ключи для шифрования и расшифровки разные, хотя и
создаются вместе. Один ключ делается известным всем, а другой держится в
тайне. Данные, зашифрованные одним ключом, могут быть расшифрованы только
другим ключом.
Все асимметричные криптосистемы являются объектом атак путем прямого
перебора ключей, и поэтому в них должны использоваться гораздо более
длинные ключи, чем те, которые используются в симметричных криптосистемах,
для обеспечения эквивалентного уровня защиты. Это сразу же сказывается на
вычислительных ресурсах, требуемых для шифрования, хотя алгоритмы
шифрования на эллиптических кривых могут смягчить эту проблему. Брюс Шнейер
в книге "Прикладная криптография: протоколы, алгоритмы и исходный текст на
C" приводит в таблице № 1 следующие данные об эквивалентных длинах ключей.
|Длина симметричного ключа |Длина асимметричного ключа |
|56 бит |384 бит |
|64 бита |512 бит |
|80 бит |768 бит |
|112 бит |1792 бита |
|128 бит |2304 бита |
Таблица № 1.
Для того чтобы избежать низкой скорости алгоритмов асимметричного
шифрования, генерируется временный симметричный ключ для каждого сообщения
и только он шифруется асимметричными алгоритмами. Само сообщение шифруется
с использованием этого временного сеансового ключа и алгоритма
шифрования/расшифровки, ранее описанного. Затем этот сеансовый ключ
шифруется с помощью открытого асимметричного ключа получателя и
асимметричного алгоритма шифрования. После этого этот зашифрованный
сеансовый ключ вместе с зашифрованным сообщением передается получателю.
Получатель использует тот же самый асимметричный алгоритм шифрования и свой
секретный ключ для расшифровки сеансового ключа, а полученный сеансовый
ключ используется для расшифровки самого сообщения.
В асимметричных криптосистемах важно, чтобы сеансовые и асимметричные ключи
были сопоставимы в отношении уровня безопасности, который они обеспечивают.
Если используется короткий сеансовый ключ (например, 40-битовый DES), то не
имеет значения, насколько велики асимметричные ключи. Асимметричные
открытые ключи уязвимы к атакам прямым перебором отчасти из-за того, что их
тяжело заменить. Если атакующий узнает секретный асимметричный ключ, то
будет скомпрометирован не только текущее, но и все последующие
взаимодействия между отправителем и получателем.
Порядок использования систем с асимметричными ключами:
1. Безопасно создаются и распространяются асимметричные открытые и
секретные ключи. Секретный асимметричный ключ передается его
владельцу. Открытый асимметричный ключ хранится в базе данных и
администрируется центром выдачи сертификатов. Подразумевается, что
пользователи должны верить, что в такой системе производится
безопасное создание, распределение и администрирование ключами. Более
того, если создатель ключей и лицо или система, администрирующие их,
не одно и то же, то конечный пользователь должен верить, что создатель
ключей на самом деле уничтожил их копию.
2. Создается электронная подпись текста с помощью вычисления его хэш-
функции. Полученное значение шифруется с использованием асимметричного
секретного ключа отправителя, а затем полученная строка символов
добавляется к передаваемому тексту (только отправитель может создать
электронную подпись).
3. Создается секретный симметричный ключ, который будет использоваться
Страницы: 1, 2, 3, 4, 5, 6, 7, 8