PKCS15
В криптографии PKCS#15 — один из стандартов семейства Public-Key Cryptography Standards (PKCS), опубликованных RSA Laboratories. Он определяет формат файла для хранения учетных данных пользователя (сертификаты, ключи) на криптографических токенах, таких как смарт-карты. PKCS#15 был разработан таким образом, что стандарт может быть реализован на любой смарт карте с базовой совместимостью ISO/IEC 7816. Для поддержки карт памяти и токенов, которые не имеют встроенной поддержки шифрования, было предусмотрено, что хранимые объекты могут быть зашифрованы и / или выполняется контроль целостности без шифрования. Для поддержки токенов, которые не имеют понятия «файлы», PKCS#15 был разработан так, чтобы позволить хранить всю информацию в одном непрерывном блоке памяти.
Структура файлаПравить
Содержимое файла PKCS#15 зависит от типа смарт-карты и её предполагаемого использования, но следующая структура файла наиболее распространенная, особенно когда карта предназначена для использования для идентификации или аутентификации.
Файл каталога объектов (The Object Directory File, ODF)Править
Обязательный файл ODF состоит из указателей на другие элементарные файлы (PrKDF, PuKDF, SKDF, CDF, DODF и AODF), каждый из которых содержит каталог над объектами PKCS#15 определенного класса. Поэтому ODF имеет структуру, ориентированную на записи, где каждая запись является просто указателем на другой файл каталога.
Файлы каталогов криптографических ключей (PrKDF, SKDF and PuKDF)Править
Эти файлы можно рассматривать как каталоги ключей, известных приложению PKCS#15. PrKDF содержит информацию о закрытых ключах. PuKDF содержат информацию об открытых ключах, а SKDF содержат информацию о секретных (симметричных) ключах. Все они являются необязательными, но как минимум один файл определенного вида должен присутствовать на смарт-карте, которая содержит ключи (или ссылки на ключи) этого конкретного вида, известные приложению PKCS#15. Файлы содержат общие атрибуты ключа, такие как метки, ограничения на использование ключа, идентификаторы, тип алгоритма, размер ключа (если применимо) и т. д. Кроме того, они содержат указатели на сами ключи.
Файлы каталогов сертификатов (Certificate Directory Files, CDF)Править
Эти файлы можно рассматривать как каталоги сертификатов, известных приложению PKCS#15. Они являются необязательными, но по крайней мере один CDF должен присутствовать на смарт-карте, которая содержит сертификаты (или ссылки на сертификаты), известные приложению PKCS#15. Они содержат общие атрибуты сертификата, такие как метки, идентификаторы, тип сертификата и т. д. Они также содержат указатели на сами сертификаты. Когда сертификат содержит открытый ключ, соответствующий закрытому ключу, который также известен приложению PKCS#15, сертификат и закрытый ключ будут иметь общий идентификатор. Это упрощает поиск закрытого ключа с учетом сертификата и наоборот.
Файлы каталогов доверенных сертификатовПравить
Эти файлы имеют тот же синтаксис, что и обычные CDF, но содержат только доверенные сертификаты. В контексте PKCS#15 «доверенные сертификаты» — это сертификаты CA, которые не могут быть заменены владельцем карты.
Файлы каталога объектов аутентификации (Authentication Object Directory Files, AODF)Править
Эти файлы могут рассматриваться как каталоги объектов аутентификации (например, PIN-кодов), известных приложению PKCS#15. Они являются необязательными, но на смарт-карте должен быть хотя бы один AODF, который содержит объекты аутентификации, ограничивающие доступ к объектам PKCS#15. Они содержат общие атрибуты объекта аутентификации, такие как (в случае ПИН) разрешенные символы, длина ПИН, символ заполнения ПИН и т. д. Кроме того, они содержат указатели на сами объекты аутентификации (например, в случае ПИН, указатели на каталог в который находится в ПИН-файле). Объекты аутентификации используются для управления доступом к другим объектам, таким как ключи. Каждый объект в этом файле имеет уникальный ссылочный номер, который используется в целях перекрестных ссылок, например, с PrKDF для связывания ключей с объектами аутентификации.
Файлы каталогов объектов данных, DODFПравить
Эти файлы можно рассматривать как каталоги объектов данных (кроме ключей или сертификатов), известных приложению PKCS#15. Они являются необязательными, но по крайней мере один DODF должен присутствовать на смарт-карте, которая содержит такие объекты данных (или ссылки на такие объекты данных), которые известны приложению PKCS#15. Они содержат общие атрибуты объекта данных, такие как идентификация приложения, которому принадлежит объект данных, является ли он частным или общедоступным объектом и т. д. Кроме того, они содержат указатели на сами объекты данных.
Файл информация о токенеПравить
Обязательный файл TokenInfo содержит общую информацию о токене как таковом и его возможностях, как видно из приложения PKCS#15. Например, поддерживаемые алгоритмы, серийный номер токена и т. д. Для экономии места в памяти были подготовлены положения для перекрестной ссылки информации об алгоритме из файлов PrKDF, PuKDF и SKDF в этот файл.
ПреимуществаПравить
- Платформо-независимый, то есть разрешить взаимодействие между работающими компонентами на разных платформах;
- независимость от поставщика, то есть разрешить приложениям использовать преимущества продуктов и компонентов от нескольких производителей;
- использование достижений в технологии без переписывания прикладного программного обеспечения;
- поддерживать согласованность с существующими, связанными стандартами, расширяя их только при необходимости и на практике.