Русский
Русский
English
Статистика
Реклама

Коротко об одном из стандартов формата токена PKCS15

Много статей написано про стандарты API между токенами и программным обеспечением. Однако, стандартизация формата хранения данных насамих токенах, как правило, несправедливо обойдена стороной. В данной статье кратко описан один из стандартов формата токена PKCS#15 (Public Key Cryptography standard), опубликованного RSA Laboratories.


Криптографический токен и зачем стандартизировать формат его хранения

Криптографический токен - портативное устройство, способное хранить криптографические учетные данные, идентифицирующие его владельца (например, смарт-карты). Они отлично подходят для обеспечения безопасности и приватности в приложениях.На них может храниться в защищенном формате важная информация, такая как пароли, секретные ключи, закрытые ключи и т.д.

Токены предоставляют изолированное пространство, в котором можно обрабатывать чувствительную информацию, чтобы не открывать ее в самих приложениях, подверженных различным атакам.

Формат токена это подробное описание того, как некоторые абстракции более высокого уровня, такие как ключи и сертификаты, представлены на токене, например, в виде структуры данных, содержимого файла, структуры каталогов и т.д.

Может возникнуть очевидный вопрос: зачем стандартизировать формат токенов, если и так существуют стандартизированныеAPIмежду приложениями и токенами? Дело в том, чторазныеприложениявсе ещеиспользуютразныеAPI для общения с токенами. Другими словами,многиеприложения привязаны к конкретным токенам, а токены привязаны к конкретным приложениям. Стандартизация формата токена позволяет приложениям, поддерживающим разные API, сосуществовать на одном токене.

Что же такое стандарт PKCS#15?

В первую очередьPKCS#15 это попытка устранить разницу между токенами в отношении информации, связанной с безопасностью. В нем описаны формат хранения зашифрованной информации (ключей, сертификатов, данных аутентификации или просто зашифрованных данных) и спецификация обмена информацией между машиной и токеном.

PKCS#15:

  • обеспечивает функциональную совместимость компонентов, работающих на различных платформах

  • позволяет приложениям использовать преимущества продуктов от различных производителей

  • позволяет использовать самые последние технологии без необходимости переписывать программное обеспечение

  • поддерживает все современные стандарты из смежных областей, дополняя их только там, где это необходимо

Например, благодаря этому стандарту владелец смарт-карты, на которой будет храниться сертификат цифровой подписи, будет иметь возможность предоставить его на любой машине и любому программному обеспечению.

Стоит так же отметить, чтоPKCS#15 полностью совместим со стандартомAPIPKCS#11, однако не привязан к нему.

Объекты в PKCS#15

В стандарте описано четыре основных класса: ключи, сертификаты, объекты аутентификации и объекты данных (например, объект информации о самом токене). У всех объектных классов есть свои подклассы. Например, класс ключей имеет подклассы закрытых ключей, открытых ключей и секретных ключей, каждые из которых уже являются объектами, хранящимися непосредственно в токене.

Объекты могут быть закрытыми, т.е. защищенными от несанкционированного доступа, или открытыми. В случае смарт-карт, любой доступ (чтение, запись и т.д.) к закрытым объектам определяется объектами аутентификации (вкоторых также определяются ипроцедуры аутентификации).Для держателя карты доступ производится на основе некоторой информации или биометрических данных. Открытые объекты не защищены от несанкционированного чтения. Защита от записи открытых объектов зависит от конкретной имплементации.

Примеры поддерживаемых объектов

В стандарте описаны правила хранения ключей и сертификатов многих популярных криптографических алгоритмов:

Формат файлов токена

В стандарте описано как элементы более высокого уровня, такие как ключи и сертификаты, могут быть представлены в терминах элементов более низкого уровня, а именно в файлах и структурах каталогов.

Общая структура токена имеет следующий вид:

Аббревиатуры:

  • EF файл общего назначения (elementaryfile), в котором хранятся различные данные или записи с одинаковым идентификатором

  • DF специализированный файл (dedicatedfile). В нем хранится информация о файловом управлении. В нем также может быть опциально выделена дополнительная память, доступная для аллокации. Специализированные файлы могут являться корнем для файлов общего назначения или других специализированных файлов

EF(DIR) необязательный файл, в котором могут храниться одно или несколько приложений, используемых токеном.

DF(PKCS#15) этот файл имеет иерархическую структуру. Она может отличаться от одной реализации токена к другой, но, как правило, имеет следующий вид:

ObjectDirectoryFile(ODF) файл общего назначения, в котором хранятся указатели на другие файлы изDF(PKCS#15) и основная информация об этих файлах.

Public/Private/SecretKey Directory Files (Pu/Pr/S KDFs)- файлы общего назначения, в которых хранится информация о ключах, которые доступны приложениюPKCS#15, а также указатели на сами ключи. Пара закрытого и открытого могут использовать один и тот же идентификатор.

Certificate Directory Files (CDFs) файлы, в которых хранится информация о сертификатах, а также указатели на сами сертификаты. Если сертификат содержит открытый ключ, парный закрытый ключ которого также хранится на карте, то они могут использовать один и тот же идентификатор.

Data Object Directory Files (DODFs) файлы, в которых хранится информация об остальных данных, известных приложениямPKCS#15, и указатели на эти данные.

Authentication Object Directory Files (AODFs) файлы, в которых хранится информация об объектах аутентификации (различных биометрические данных, паролях,PIN-кодах и т.д.), а также указатели на эти объекты. Например, в случаеPIN-кода можно хранить его длину и допустимые символы.

TokeInfoFile файл, в котором хранится основная информация о самом токене: серийный номер, поддерживаемы форматы данных, поддерживаемые криптографические алгоритмы и т.д.

Применение PKCS#15 на практике

Чаще всего стандартPKCS#15 используется для электронной идентификации (EID). На данный профильEIDPKCS#15 используется:

  • в качестве формата токена дляSIM-модуляWAP(WIM)

  • в качестве формата токена для национальной финской картыEID

Также стандарт поддерживается крупнейшими вендорами, такими как Microsoft и Apple.

Заключение

Несмотря на то, что стандарт PKCS#15 довольно старый (1999 год), он уже многие годы позволяет поддерживать безопасность смарт-карт, не беспокоясь о совместимости. Стандартизация в области защиты информации дала большой скачок развитию современных технологий.

Ссылки на источники:

Источник: habr.com
К списку статей
Опубликовано: 09.12.2020 14:16:47
0

Сейчас читают

Комментариев (0)
Имя
Электронная почта

Информационная безопасность

Криптография

Смарт-карты

Токены

Категории

Последние комментарии

  • Имя: Макс
    24.08.2022 | 11:28
    Я разраб в IT компании, работаю на арбитражную команду. Мы работаем с приламы и сайтами, при работе замечаются постоянные баны и лаги. Пацаны посоветовали сервис по анализу исходного кода,https://app Подробнее..
  • Имя: 9055410337
    20.08.2022 | 17:41
    поможем пишите в телеграм Подробнее..
  • Имя: sabbat
    17.08.2022 | 20:42
    Охренеть.. это просто шикарная статья, феноменально круто. Большое спасибо за разбор! Надеюсь как-нибудь с тобой связаться для обсуждений чего-либо) Подробнее..
  • Имя: Мария
    09.08.2022 | 14:44
    Добрый день. Если обладаете такой информацией, то подскажите, пожалуйста, где можно найти много-много материала по Yggdrasil и его уязвимостях для написания диплома? Благодарю. Подробнее..
© 2006-2024, personeltest.ru