Общая криптографическая архитектура IBM
Общая криптографическая архитектура (Common Cryptographic Architecture, CCA) была разработана компанией IBM, чтобы обеспечить криптографические примитивы для конфиденциальности, целостности, управления ключами и обработки персонального идентификационного кода (PIN) [751, 784, 1025, 1026, 940, 752]. Управление ключами происходит с помощью векторов управления (control vector, CV) (см. раздел 8.5). Каждому ключу соответствует CV, с которым ключ объединен операцией XOR. Ключ и CV разделяются только в безопасном аппаратном модуле. CV представляет собой структуру данных, обеспечивающую интуитивное понимание привилегий, связанных с конкретным ключом.
Отдельные биты CV обладают конкретным смыслом при использовании каждого ключа, применяемого в CGA. CV передаются вместе с зашифрованным ключом в структурах данных, называемых ключевыми маркерами (key token). Внутренние ключевые маркеры используются локально и содержат ключи, шифрованные локальным главным ключом (master key, MK). Внешние ключевые маркеры используются для шифрованными ключами между системами. Ключи во внешних ключевых маркерах зашифрованы ключами шифрования ключей (key-encrypting key, KEK). Управление KEK осуществляется с помощью внутренних ключевых маркеров. Ключи разделяются на группы в соответствии с их использованием.
Длина ключа также задается при помощи битов CV. Ключи одинарной длины - 56-битовые - используются для таких функций, как обеспечение конфиденциальности и сообщений. Ключи двойной длины - 112-битовые - применяются для управления ключами, функций PIN и других специальных целей. Ключи могут быть DOUBLE-ONLY (только двойные), правые и левые половины которых должны быть различны, DOUBLE (двойные) половины которых могут случайно совпасть, SINGLE-REPLICATED (одинарные-повторенные), в которых правые и левые половины равны, или SINGLE (одинарные), содержащие только 56 битов. CGA определяет аппаратную реализацию определенных типов ключей, используемых для некоторых операций.
CV проверяется в безопасном аппаратном модуле: для каждой функции CGA вектор должен соответствовать определенным правилам. Если CV успешно проходит проверку, то при помощи XOR KEK или MK с CV получается вариант KEK или MK, и извлеченный ключ для дешифрирования открытого текста сообщения используется только при выполнении функции CGA. При генерации новых ключей CV задает способ использования созданного ключа. Комбинации типов ключей, которые могут быть использованы для вскрытия системы, не создаются в CGA-совместимых системах и не импортируются в них.
Для распределения ключей CGA применяет комбинацию криптографии с открытыми ключами и криптографии с секретными ключами. KDC шифрует сеансовый ключ для пользователя секретным главным ключом, разделяемым с этим пользователем. Распределение главных ключей происходит с помощью криптографии с открытыми ключами.
Разработчики системы выбрали такой гибридный подход по двум причинам. Первой из них является эффективность. Криптография с открытыми ключами требует больших вычислительных ресурсов, если сеансовые ключи распределяются с помощью криптографии с открытыми ключами, система может повиснуть. Второй причиной является обратная совместимость, система может быть с минимальными последствиями установлена поверх существующих схем с секретными ключами.
CGA-системы проектировались так, чтобы они могли взаимодействовать с различными другими системами. При контакте с несовместимыми системами функция трансляции вектора управления (Control Vector Translate, CVXLT) позволяет системам обмениваться ключами. Инициализация функции CVXLT требует контроля с обеих сторон. Каждая из них должна независимо установить нужные таблицы трансляции. Такой двойной контроль обеспечивает высокую степень надежности, касающейся целостности и происхождения ключей, импортируемых в систему.
Тип ключа DATA поддерживается для совместимости с другими системами. Ключ типа DATAхранится вместе с соответствующим CV, указывающим, что это ключ типа DATA. Ключи типа DATA могут использоваться достаточно широко, и поэтому к ним нужно относиться с подозрением и использовать их с осторожностью. Ключи типа DATA нельзя использовать ни для каких функций управления ключами.
Аппаратура закрытия коммерческих данных (Commercial Data Masking Facility, CDMF) представляет собой экспортируемую версию CGA. Ее особенностью является уменьшение эффективной длины ключей DES до разрешенных к экспорту 40 битов (см. раздел 15.5) [785].
Дата добавления: 2021-01-26; просмотров: 298;