Специальные файлы
Специальные файлы необходимы для функционирования ОС. Их структура и содержание строго регламентировано ОС.
5.3.1 Файлы ключей KF
Файлы ключей предназначены для хранения любых видов симметричных, асимметричных ключей и паролей. В файле ключа хранится только один ключ или пароль.
Симметричные ключи и пароли всегда загружаются снаружи. Асимметричные ключи могут быть сгенерированы внутри карты или загружены снаружи(загрузка снаружи должна быть специально разрешена для конкретного ключа. Для RSA можно загрузить только открытый ключ). Открытая часть асимметричного ключа может быть выдана наружу. Файл с асимметричным ключом может содержать либо ключевую пару, либо только открытую часть ключа (например, открытый ключ центра сертификации).
Каждый KF обязан иметь уникальный идентификатор, который является 1- байтовой целой величиной в диапазоне от 1 до 127. Если ключ используется для внешней аутентификации, то идентификатор ключа выступает в качестве идентификатора санкции.
Ключ не может быть использован непосредственно, если у него установлен хотя бы один из следующих признаков назначения ключа:
- требуется диверсификация ключа;
- требуется генерация сессионного ключа.
В этом случае необходимо сгенерировать производный ключ, который наследует от мастер-ключа все остальные атрибуты.
Загрузка ключа из сертификата рассматривается как диверсификация (в логическом смысле) и требует установки соответствующего бита при создании KF.
Если у ключа установлен флаг разрешения установки производного ключа со значением переданным снаружи, то сам ключ можно использовать до тех пор, пока не будет установлен производный ключ. Производный ключ наследует все характеристики «родительского» ключа. Сессионные и производные ключи тесно связаны с Secure Environment (подробнее см. п. 7.1).
Для ключей ГОСТ Р 34.10-2001 может быть определен режим выполнения криптографических операций: с приоритетом скорости или безопасности. В последнем случае применяются дополнительные контрмеры к DPA. По умолчанию используется режим приоритета скорости. Время генерации ключа или ЭП с приоритетом скорости приблизительно в 2 раза быстрее по отношению к тем же операциям с приоритетом безопасности.
Для ключей RSA открытый ключ состоит из пары (e, n) – открытой экспоненты (8 байт) и модуля (128 байт). Секретный ключ содержит только секретную экспоненту d (128 байт).
Основные операции над ключом:
Операция | Команда | Право доступа |
Первичная загрузка | CHANGE REFERENCE DATA | Put |
Смена | CHANGE REFERENCE DATA | Change |
Первичная генерация | GENERATE KEY PAIR | Generate Key |
Перегенерация | GENERATE KEY PAIR | Regenerate Key |
Использование | PSO, VERIFY, AUTHENTICATE, SM | Use |
Разблокирование | RESET RETRY COUNTER | Unblock |
Прочитать открытый ключ | GENERATE KEY PAIR | Read Public Key |
Прочитать свойства ключа | SELECT (Следует проанализировать блок FCP, возвращаемый командой) |
Read properties |
Получить оставшееся число попыток предъявления | VERIFY | Read statistics |
Тип ключа (тип криптоалгоритма, с которым ассоциируется ключ):
Код (hex) | Алгоритм |
Пароль | |
ГОСТ 28147-89 | |
DES | |
3DES | |
ГОСТ Р 34.10 - 2001 | |
RSA |
Алгоритмы хэширования:
Код (hex) | Алгоритм |
хэш ГОСТ Р 34.11-94 | |
хэш SHA-1 |
Флаги назначения ключа:
Битовая маска 87654321 |
Смысл |
использование для SM | |
использование для внешней аутентификации | |
использование для внутренней аутентификации | |
использование для криптографических сервисов | |
требование диверсификации ключа | |
требование генерации сессионного ключа | |
RFU, всегда должен устанавливаться = 0 | |
для симметричных алгоритмов - разрешение использования для аутентификации командой MUTUAL AUTHENTICATE в режиме совместимости со спецификацией MRTD ICAO для асимметричных алгоритмов - разрешение загрузки секретного ключа командой CHANGE REFERENCE DATA |
см. также свойства ключа в FCP
5.3.2 Файлы правил разграничения доступа
Файлы ARF предназначены для хранения сложных правил разграничения доступа
Правила хранятся в формате Simple-TLV. Номер правила выступает в качестве тэга записи.
Примечание. Правил с номерами 00 и FF, которые запрещены в ISO в качестве тэгов, не существует, т.к. эти значения имеют особый смысл – доступ всегда разрешен и всегда запрещен.
В ARF не может быть двух правил с одинаковым номером. Модификация правил запрещена.
Основные операции над ARF:
Операция | Команда | Право доступа |
Запись правила | PUT DATA | Put Примечание: - выполняется свободно на фазе инициализации файла |
Чтение правила | GET DATA | Get |
5.3.3 Файлы хранения SE
SEF предназначены для хранения шаблонов настроек SE (CRT). С каждым SEF ассоциирован идентификатор SE. При активизации SE производится поиск всех ключей, на которые есть ссылки, причем поиск ключа идет от директории, где находится SEF и выше. Если хотя бы один ключ не найден, SE не может быть активизирован(Внимание, при формировании SE в памяти командами MSE-SET поиск ключа ведется от текущей в тот момент директории, которая может не совпадать с директорией, где расположен SEF).
Основные операции над SE:
Операция | Команда | Право доступа |
Запись/изменение SE | MSE-STORE | Store Примечание: - выполняется свободно на фазе инициализации файла |
Активизация SE | MSE-RESTORE | Restore |
Удаление SE | MSE-ERASE | Store |
Динамическое изменение SE | MSE-SET | Free |