<< Предыдущая

стр. 15
(из 48 стр.)

ОГЛАВЛЕНИЕ

Следующая >>

ется в том, что вследствие детерминированного характера шифрования при фиксированной длине
блока 64 бита можно осуществить криптоанализ шифртекста "со словарем" в ограниченной форме.
Это обусловлено тем, что идентичные блоки открытого текста длиной 64 бита в исходном сообщении
представляются идентичными блоками шифртекста, что позволяет криптоаналитику сделать опреде-
ленные выводы о содержании сообщения. Другой потенциальный недостаток этого шифра связан с
размножением ошибок. Результатом изменения только одного бита в принятом блоке шифртекста
будет неправильное расшифрование всего блока. Это, в свою очередь, приведет к появлению иска-
женных битов (от 1 до 64) в восстановленном блоке исходно-го текста.
Из-за отмеченных недостатков блочные шифры редко применяются в указанном режиме для
шифрования длинных сообщений. Однако в финансовых учреждениях, где сообщения часто состоят
из одного или двух блоков, блочные шифры широко используют в режиме прямого шифрования. Та-
кое применение обычно связано с возможностью частой смены ключа шифрования, поэтому вероят-
ность шифрования двух идентичных блоков открытого текста на одном и том же ключе очень мала.
Криптосистема с открытым ключом также является системой блочного шифрования и должна
оперировать блоками довольно большой длины. Это обусловлено тем, что криптоаналитик знает от-
крытый ключ шифрования и мог бы заранее вычислить и составить таблицу соответствия блоков от-
крытого текста и шифртекста. Если длина блоков мала, например 30 бит, то число возможных блоков
не слишком большое (при длине 30 бит это 230 = ?109), и может быть составлена полная табли-
ца, позволяющая моментально расшифровать любое сообщение с использованием известного от-
крытого ключа. Асимметричные криптосистемы с открытым ключом подробно разбираются в сле-
дующей главе.
Наиболее часто блочные шифры применяются в системах шифрования с обратной связью.
Системы шифрования с обратной связью встречаются в различных практических вариантах. Как и
при блочном шифровании, сообщения разбивают на ряд блоков, состоящих из m бит. Для преобра-
зования этих блоков в блоки шифртекста, которые также состоят из m бит, используются специаль-
ные функции шифрования. Однако если в блочном шифре такая функция зависит только от ключа, то
24
в блочных шифрах с обратной связью она зависит как от ключа, так и от одного или более предшест-
вующих блоков шифртекста.
Практически важным шифром с обратной связью является шифр со сцеплением блоков шиф-
ртекста СВС. В этом случае m бит предыдущего шифртекста суммируются по модулю 2 со следую-
щими m битами открытого текста, а затем применяется алгоритм блочного шифрования под управ-
лением ключа для получения следующего блока шифртекста. Еще один вариант шифра с обратной
связью получается из стандартного режима CFB алгоритма DES, т.е. режима с обратной связью по
шифртексту.
Достоинством криптосистем блочного шифрования с обратной связью является возможность
применения их для обнаружения манипуляций сообщениями, производимых активными перехватчи-
ками. При этом используется факт размножения ошибок в таких шифрах, а также способность этих
систем легко генерировать код аутентификации сообщений. Поэтому системы шифрования с обрат-
ной связью используют не только для шифрования сообщений, но и для их аутентификации. Крипто-
системам блочного шифрования с обратной связью свойственны некоторые недостатки. Основным из
них является размножение ошибок, так как один ошибочный бит при передаче может вызвать ряд
ошибок в расшифрованном тексте. Другой недостаток связан с тем, что разработка и реализация сис-
тем шифрования с обратной связью часто оказываются более трудными, чем систем поточного шиф-
рования.
На практике для шифрования длинных сообщений применяют поточные шифры или шифры с
обратной связью. Выбор конкретного типа шифра зависит от назначения системы и предъявляемых к
ней требований.


3.7. Криптосистема с депонированием ключа.

Общие сведения.
Криптосистема с депонированием ключа предназначена для шифрования пользовательского
трафика (например, речевого или передачи данных) таким образом, чтобы сеансовые ключи, исполь-
зуемые для зашифрования и расшифрования трафика, были доступны при определенных чрезвы-
чайных обстоятельствах авторизованной третьей стороне [97, 117, 121].
По существу, криптосистема с депонированием ключа реализует новый метод криптографи-
ческой защиты информации, обеспечивающий высокий уровень информационной безопасности при
передаче по открытым каналам связи и отвечающий требованиям национальной безопасности. Этот
метод основан на применении специальной шифрующей/ дешифрующей микросхемы типа Clipper и
процедуры депонирования ключа, определяющей дисциплину раскрытия уникального ключа этой
микросхемы. Микросхема Clipper разработана по технологии TEMPEST, препятствующей считыванию
информации с помощью внешних воздействий.
Генерация и запись уникального ключа в микросхему выполняется до встраивания микросхе-
мы в конечное устройство. Следует отметить, что не существует способа, позволяющего непосредст-
венно считывать этот ключ как во время, так и по завершении технологического процесса производ-
ства и программирования данной микросхемы.
Ключ разделяется на две компоненты, каждая из которых шифруется и затем передаётся на
хранение доверенным Агентам Депозитной Службы, которые представляют собой правительствен-
ные организации, обеспечивающие надёжное хранение компонент ключа в течение срока его дейст-
вия. Агенты Депозитной Службы выдают эти компоненты ключа только по соответствующему запро-
су, подтверждённому решением Федерального Суда. Полученные компоненты ключа позволяют
службам, отвечающим за национальную безопасность, восстановить уникальный ключ и выполнить
расшифрование пользовательского трафика.
В 1994 году в США был введён новый стандарт шифрования с депонированием ключа EES
(Escrowed Encryption Standard) [97]. Стандарт EES предназначен для защиты информации, переда-
ваемой по коммутируемым телефонным линиям связи ISDN (Integrated Services Digital Network) и ра-
диоканалам, включая голосовую информацию, факс и передачу данных со скоростями стандартных
коммерческих модемов.
Стандарт EES специфицирует алгоритм криптографического преобразования SkipJack с 80-
битовым ключом и метод вычисления специального поля доступа LEAF (Law Enforcement Access
Field), позволяющего впоследствии раскрыть секретный ключ в целях контроля трафика пи условии
соблюдения законности. Алгоритм SkipJack и метод вычисления поля LEAF должны быть реализова-
ны на базе микросхемы типа Clipper.
Этот стандарт специфицирует уникальный идентификатор (серийный номер) микросхемы UID
(Device Unique Identifier), уникальный ключ микросхемы KU (Device Unique Key) и общий для семей-
ства микросхем ключ KF (Family Key). Вся эта информация записывается в микросхему после её про-
изводства, но до встраивания в конкретное устройство. Хотя ключ KU не используется непосредст-
25
венно для шифрования информационных потоков между отправителем и получателем, объединение
его с полем доступа LEAF и ключом KF позволяет восстановить сеансовый ключ KS и выполнить де-
шифрование.
Криптоалгоритм SkipJack. Криптоалгоритм SkipJack преобразует 64-битовый входной блок в
64-битовый выходной блок с помощью 80-битового секретного ключа. Поскольку один и тот же ключ
используется для шифрования и расшифрования, этот алгоритм относится к классу симметричных
криптосистем. Отметим, что размер блока в алгоритме SkipJack такой же, как и в DES, но при этом
используется более длинный ключ.
Алгоритм SkipJack может функционировать в одном из четырёх режимов, введённых для
стандарта DES:
- электронной кодовой книги (ECB),
- сцепления блоков шифртекста (CBC),
- 64-битовой обратной связи по выходу (OFB),
- обратной связи по шифртексту (CFB) для 1-, 8-, 16-, 32- или 64-битовых блоков.
Алгоритм SpikJack был разработан непосредственно Агентством Национальной Безопасности
(АНБ) США и засекречен, чтобы сделать невозможной разработку программной или аппаратной реа-
лизации процедур шифрования и расшифрования отдельно от процедуры депонирования ключа.
Практическая криптостойкость алгоритма SkipJack была подтверждена группой независимых экспер-
тов-криптографов.
Метод вычисления поля LEAF. Поле доступа LEAF передаётся получателю в начале каждо-
го сеанса связи и содержит секретный сеансовый ключ шифрования/расшифрования KS (Session
Key). Только официальные лица, имеющие законное разрешение, могут получить сеансовый ключ KS
и дешифровать все ранее зашифрованные на нём сообщения. Хотя ключ KS передаётся в поле
LEAF, последнее используется исключительно для контроля над соблюдением законности и не пред-
назначено для распределения ключей абонентам. Микросхема Clipper, установленная в принимаю-
щем устройстве, не позволяет извлечь ключ KS из информации в поле LEAF.
Само поле доступа LEAF вычисляется как функция от сеансового ключа KS, вектора инициа-
лизации IV (Initialization Vector), идентификатора микросхемы UID и уникального ключа KU. Поле LEAF
состоит из ключа KS, зашифрованного на ключе KU (80 бит), идентификатора UID (32 бита) и 16-
битового аутентификатора EA (Escrow Authenticator). Формирование содержимого поля LEAF завер-
шается шифрованием указанной информации на ключе семейства микросхем KF, т.е.
LEAF = EKF ( EKU (KS), UID, EA ).
Таким образом, сеансовый ключ KS закрыт двойным шифрованием (рис. 3.14) и может быть
раскрыт в результате последовательного расшифрования на ключах KF и KU.
Детали алгоритма вычисления LEAF засекречены, включая режим шифрования алгоритма
SkipJack и метод вычисления аутентификатора EA. Аутентификатор EA позволяет контролировать
целостность и защищает поле LEAF от навязывания ложной информации.
IV KS D


KU EKU

80 32 16
EKU (KS) UID EA


KF EKF EKS


EKF (D) IV
LEAF (128 бит)

к получателю
сообшения

Рис. 3.14. Вычисление LEAF и формирование зашифрованного сообщения.

Обозначения:
KS - сеансовый ключ;
IV - вектор инициализации;

26
D - передаваемые данные;
KU - уникальный ключ микросхемы;
UID - идентификатор микросхемы;
EA - аутентификатор поля LEAF;
KF - ключ семейства.
Способ применения. Для защиты телефонных переговоров каждый из абонентов должен
иметь специальное криптографическое устройство, содержащее Clipper, Capstone или другую анало-
гичную микросхему (рис. 3.15). В этом устройстве должен быть реализован протокол, позволяющий
абонентам обмениваться секретным сеансовым ключом KS, например, с помощью известного метода
“цифрового конверта” (digital envelope).
Данный метод применяется в устройстве защиты телефонных переговоров TSD (3600
Telephone Security Device) компании AT&T. Оно подключается встык между телефонной трубкой и
основным блоком и активизируется нажатием кнопки.
После установления ключевого синхронизма ключ KS вместе с вектором инициализации IV
подаётся на вход микросхемы для вычисления LEAF. Затем LEAF вместе с IV передается прини-
мающей стороне для проверки и синхронизации микросхем на передающем и приёмном концах. По-
сле синхронизации микросхем сеансовый ключ KS используется для шифрования и расшифрования
данных (речь предварительно оцифровывается) в обоих направлениях.


KS IV KS

EKS ("Привет")
Clipper Clipper
KU KU'
EKS (EKU (KS), UID, EA), IV
UID UID'
KF KF

Отправитель Получатель


Рис. 3.15. Схема защиты телефонных переговоров с использованием микросхем Clipper.

В дуплексном и полудуплексном режимах связи каждое криптографическое устройство пере-
даёт свою уникальную пару IV и LEAF. При этом оба устройства используют один и тот же сеансовый
ключ KS для шифрования и расшифрования.
Первая партия микросхем для криптографических устройств с депонированием ключа была
изготовлена компанией VLSI Technology Inc. и запрограммирована фирмой Mykotronx. В устройстве
TSD используется микросхема МУК-78Т (Mykotronx) с быстродействием 21 МБит/с.
Рассмотрим подробнее функционирование криптосистемы с депонированием ключа и необ-
ходимую для её работы инфраструктуру.

Процедура генерации ключей.
В процедуре генерации ключей участвуют Национальный Менеджер Программы; два Агента
Депозитной Службы; два Агента KF-Службы, отвечающие за формирование и хранение ключа семей-
ства KF; представитель Службы Программирования микросхем (Programming Facility) [97, 117].
До генерации уникального ключа микросхемы KU и соответствующих ему ключевых компонент
КС1 и КС2, необходимо сгенерировать вспомогательные ключи KN1 и KN2 и случайные числа RS1 и
RS2 (Random Seeds). В процедуре генерации используется специальная смарт-карта, на которой в
соответствии со стандартом X9.17 (FIPS 171) реализован генератор псевдослучайных чисел. Началь-
ное значение генератора формируется как результат вычисления хэш-функции от последовательно-
сти случайных символов, введённых с клавиатуры, временных интервалов между нажатиями при вво-
де символов с клавиатуры и текущего времени суток.
Описанная выше процедура используется Агентами Депозитной Службы для генерации клю-
чевых чисел KN1, KN2 и случайных чисел RS1, RS2. Назначение вспомогательных ключевых чисел и
случайных чисел будет пояснено в последующих разделах.
Компоненты ключа семейства KF. Агенты KF - Службы, отвечающие за формирование клю-
ча семейства KF, генерируют компоненты KFC1 и KFC2 на отдельных операционных пунктах.
По две копии каждой компоненты записывается на магнитные носители. Каждый магнитный
носитель помещают в специальный пронумерованный контейнер. Контейнер с копией каждой компо-
ненты на магнитном носителе помещается в отдельный сейф.


27
Ключевые и случайные числа. Каждый Агент Депозитной Службы генерирует и записывает
на магнитные носители четыре копии ключевых чисел KN1 и KN2. Каждый магнитный носитель по-
мещается в специальный пронумерованный контейнер. Контейнер с копией каждой компоненты на
магнитном носителе помещают в отдельный сейф, установленный в операционном пункте Агента.
Кроме того, каждый Агент генерирует и записывает на магнитный носитель одно случайное число
RS. Магнитный носитель в контейнере помещается в сейф.
Каждый Офицер Депозитной Службы (представитель Агента) доставляет в Службу Програм-
мирования микросхем две копии ключевого числа (KN1 или KN2) и одну копию случайного числа (RS1
или RS2).

Программирование микросхемы.
Программирование микросхемы осуществляется внутри специального бокса SCIF (Sensitive
Compartmented Information Facility). Операция программирования выполняется с санкции Националь-
ного Менеджера Программы и требует участия:
- Офицеров Депозитной Службы (по одному от каждого Агента);
- двух Офицеров, представляющих Агентов KF-Службы (далее - Офицеров KF-Службы);
- Представителя Службы Программирования микросхем [97].
Служба Программирования использует
- автоматизированное рабочее место (под управлением OC UNIX) для генерации уникального клю-
ча микросхемы KU и его компонент КС1 и КС2;
- персональный компьютер для контроля процесса программирования микросхемы;
- само устройство программирования микросхем IMS (Integrated Measurement System) с производи-
тельностью порядка 120 микросхем в час.
Инициализация. Подготовительные действия перед каждой процедурой включают передачу
(секретной почтой) в Службу Программирования по одной копии каждой компоненты (KFC1, KFC2)
ключа семейства KF. Контейнеры с магнитными носителями помещают в сейф с двойным замком
Службы Программирования.
Офицеры Депозитной Службы доставляют в Службу Программирования свои контейнеры с
ключевой информацией (KN1, KN2, RS1, RS2). Затем два Офицера Депозитной Службы (по одному
от каждого Агента) отпирают сейф.
Представитель Службы Программирования, действующий по доверенности от Агентов KF-
Службы, извлекает из сейфа магнитные носители с компонентами KFC1 и KFC2. Следуя установлен-
ной процедуре, магнитные носители с компонентами KFC1 и KFC2 вставляются в считывающее уст-
ройство автоматизированного рабочего места.
Ключ семейства KF вычисляется путем побитового сложения по модулю 2 компонент KFC1 и
KFC2:
KF = KFC1 ? KFC2,
Затем Офицеры Депозитной Службы вводят значения KN1, KN2, RS1, RS2 и произвольные
последовательности символов AI1 и AI2 с клавиатуры.
Ключевые числа KN1 и KN2 побитно суммируются по модулю 2 для вычисления ключа шиф-
рования KCK (Key Component Enciphering Key):
KCK = KN1 ? KN2.
Ключ КСК предназначен для шифрования компонент КС1 и КС2 ключа KU.
Офицеры Депозитной Службы вводят также начальный серийный номер (Start UID) для фор-
мирования уникального идентификатора микросхемы UID. Процедура генерации и программирования
микросхемы иллюстрируется на рис. 3.16.
Start
ID
KN1
KCK UID
Агент 1
KN2 UID EKC1
EKCK

<< Предыдущая

стр. 15
(из 48 стр.)

ОГЛАВЛЕНИЕ

Следующая >>