Научная литература
booksshare.net -> Добавить материал -> Криптография -> Венбо Мао -> "Современная криптография" -> 134

Современная криптография - Венбо Мао

Венбо Мао Современная криптография. Под редакцией Клюшиной Д.А. — М. : Издательский дом Вильямс, 2005. — 768 c.
ISBN 5-8459-0847-7
Скачать (прямая ссылка): sovremennaya_kriptografiya.djvu
Предыдущая << 1 .. 128 129 130 131 132 133 < 134 > 135 136 137 138 139 140 .. 311 >> Следующая

Методы с открытым ключом: ke =\= kv Канал для обмена ключами: например, Каталог
Рис. 10.1. Система защиты целостности данных
а преобразование д — вспомогательными данными Kv (ключом верификации). Аббревиатура MDC означает код распознавания манипуляций (manipulation detection\ code). Вероятностное пространство состоит из пространства всевозможных вариантов информации Data, кода MDC и ключей, а также, возможно, из пространства случайных исходных данных, если алгоритмы подписи/верификации являются вероятностными.
Система зашиты целостности данных приведена на рис. 10.1.
Следует отметить, что в отличие от понятия защиты целостности данных, описанного во введении, определение 10.1 не ограничено системами связи: например, пара (Data, MDC) может храниться или извлекаться из открытого хранилища.
Как и криптосистемы, механизмы защиты целостности данных бывают симметричными и асимметричными. Однако следует подчеркнуть разницу между ними, проявляющуюся при использовании открытого ключа. В криптосистемах, основанных на асимметричных методах, открытый и закрытый ключи имеют фик-' сированное применение: открытый ключ предназначен для шифрования, а закры-. тый — для расшифровки. В системах защиты целостности данных, использующих* асимметричные методы, открытый и закрытый ключи могут применяться как для' шифрования, так и для расшифровки. Эти различия описываются в разделах 10.41 и 10.5.
Глава 10. Методы защиты целостности данных
349
10.3 Симметричные методы
В симметричных методах защиты целостности данных криптографические преобразования / и д (см. определение 10.1) представляют собой симметричные криптографические алгоритмы, т.е. / = д и Ке = Kv. Иначе говоря, создание и верификация соответствия между данными Data и кодом MDC обеспечиваются одними и теми же криптографическими операциями.
Благодаря тесной связи между целостностью данных и аутентификацией сообщений (см. главу 11), код MDC, созданный с помощью симметричного криптографического метода, часто называется кодом аутентификации сообщений (message authentication code — MAC). Такой код можно создавать и верифицировать либо с помощью ключевой хэш-функции, либо с помощью алгоритма блочного шифрования.
10.3.1 Криптографические хэш-функции
Общий способ реализации кода MAC заключается в применении так называемой ключевой хэш-функции (keyed hash function). Сначала введем понятие криптографической функции хэширования.
Функция хэширования — это детерминированная функция, отображающая строку битов произвольной длины в хэшированное значение, представляющее собой строку битов фиксированной длины. Обозначим через h хэш-функцию, возвращающую строку фиксированной длины \h\. Желательно, чтобы функция h обладала следующими свойствами.
Свойство ЮЛ (Свойства хэш-функции).
• Преобразование перемешивания. При любом аргументе х хэшированное значение h(x) должно быть неотличимым с вычислительной точки зрения от строки битов, равномерно распределенных в интервале [0,2'Л1). Понятие неотличимых с вычислительной точки зрения величин введено в определении 4.15 (раздел 4.7). Вследствие предположения 4.2 (раздел 4.7) это свойство вполне разумно.
• Предотвращение коллизий. Поиск двух величин хну, удовлетворяющих условиям х ф у и h(x) = h(y), должен представлять собой неразрешимую задачу. Для того чтобы это предположение было разумным, необходимо, чтобы область значений функции h была большой. Число \h\ не должно быть меньше 128 и, как правило, равно 160.
• Сложность вычисления прообразов. Задача вычисления входной строки х по заданному хэшированному значению h = h(x) должна быть неразрешимой вычислительной задачей. В этом случае также необходимо, чтобы область значений функции h была достаточно большой.
350
Часть III. Основные методы криптографии
• Практическая эффективность. Вычисление значения h(x) должно быть I ограничено полиномом небольшой степени (в идеальном случае — линейным), зависящим от размера строки х.
Свойства перемешивания и предотвращения коллизий можно обеспечить с по- I мощью тех же функций, которые использовались в алгоритмах блочного шифрования (разделы 7.6, 7.7). Сложность вычисления прообразов достигается за счет сжатия данных, при которой теряется часть исходной информации, и, следовательно, затрудняется вычисление обратной функции.
Мы не будем рассматривать ни одной реальной функции хэширования. Пыт- I ливые читатели могут найти их описание в литературе (например, в работе [198]).
10.3.1.1 Применение функций хэширования в криптографии
Хэш-функции широко применяются в криптографии. Перечислим некоторые I из их приложений.
• В алгоритмах цифровой подписи хэш-функции обычно используются для I создания "конспекта сообщения", или "отпечатка сообщения". Это обеспечивает некоторую избыточность сообщения, подписанного так, что после хэширования оно содержит распознаваемую информацию. Применение хэш-функций для создания цифровых подписей рассматривается в разделе 10.4. В нем показано, что стойкость схемы цифровой подписи к фальсификациям сильно зависит от избыточной информации, содержащейся в подписанном сообщении. Формальное доказательство того, что функции хэширования обеспечивают доказуемую стойкость цифровых подписей, приведено в главе 16.
Предыдущая << 1 .. 128 129 130 131 132 133 < 134 > 135 136 137 138 139 140 .. 311 >> Следующая

Реклама

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed

Есть, чем поделиться? Отправьте
материал
нам
Авторские права © 2009 BooksShare.
Все права защищены.
Rambler's Top100

c1c0fc952cf0704ad12d6af2ad3bf47e03017fed