центр сертификации

Как уже отмечалось ранее, необходимым условием создания глобальной системы аутентификации, основанной на использовании асимметричной криптографии, является наличие иерархической однокорневой системы центров сертификации. Основные функции системы ЦС — генерация и распределение сертификатов открытых ключей, обновление сертификатов, а также генерация и распределение списков отозванных ключей (Certificate Revocation Lists, или сокращенно CRL).

В протоколе SET система ЦС имеет 4-уровневую архитектуру, показанную на рисунке и базирующуюся на использовании протокола Х.509.

Архитектура SET

На верхнем уровне располагается Корневой ЦС (Root Certificate Authority, или сокращенно RCA). Он отвечает за генерацию сертификатов для ЦС следующего нижележащего уровня Центров сертификации международных платежных систем (Brand Certificate Authority, или сокращенно ВСА), генерацию сертификатов для собственных открытых ключей, а также генерацию и распределение CRL для возможно скомпрометированных ключей ЦС уровня ВСА. Оператором RCA является компания SETCo, специально созданная для развития и распространения стандарта SET.

На втором уровне иерархии системы ЦС находятся ЦС платежных систем. В настоящее время такие ЦС созданы в платежных системах VISA, Europay/MasterCard, American Express и других. ЦС уровня ВСА отвечает за генерацию сертификатов для ЦС следующих уровней — GCA, CCA, MCA, PCA, а также за генерацию, поддержку и распространение CRL для сертификатов, ранее подписанных данным ВСА. Оператором ВСА является соответствующая платежная система.

На третьем уровне системы ЦС SET располагается Геополитический ЦС (Geo-Political Certificate Authority, или сокращенно GCA). Наличие ЦС уровня GCA позволяет платежной системе проводить более гибкую политику генерации и распределения сертификатов ключей для ЦС уровня CCA, MCA, PCA в отдельных геополитических зонах земного шара, а также повышать эффективность процедур генерации, поддержания и распространения CRL по сертификатам, эмитированным GCA. Оператор ЦС уровня GCA определяется правилами соответствующей платежной системы. Например, по правилам систем VISA и MasterCard оператором GCA может быть либо сама платежная система, либо Group Member — банк, имеющий статус Группового участника платежной системы.

Наконец, на четвертом, нижнем уровне системы ЦС SET располагаются три так называемых оконечных (End-Entity) типа ЦС: ЦС для владельцев платежных карт (Cardholder Certificate Authority, или сокращенно CCA), ЦС для ТП (Merchant Certificate Authority, или сокращенно MCA) и ЦС для платежных шлюзов (Payment Gateway Certificate Authority, или сокращенно РСА). Центры сертификации уровня End-Entity отвечают за генерацию сертификатов для основных участников транзакции ЭК — для владельца карты, ТП и платежного шлюза. В этом смысле все остальные ЦС играют вспомогательную роль, обеспечивая единую общую инфраструктуру центров доверия, позволяющую любым двум непосредственным участникам транзакции ЭК надежно аутентифицировать друг друга. Кратко остановимся на основных функциях ЦС уровня End-Entity.

ЦС уровня ССА отвечает за генерацию и доставку сертификатов открытых ключей владельцев карт. Запросы на получение сертификатов поступают в ССА от владельцев карт либо через Web-страницы, либо по электронной почте. Для генерации сертификата владельца карты ССА должен поддерживать специальную процедуру идентификации клиента, определенную эмитентом карты. ССА также отвечает за распространение среди владельцев карт списков CRL, сгенерированных RCA, ВС A, GCA, РСА. Оператором ССА могут являться банк-эмитент карточек, для которых выпускаются сертификаты, платежная система или третья сторона, определяемая правилами конкретной платежной системы.

ЦС уровня МСА отвечает за генерацию и доставку сертификатов открытых ключей ТП. Запросы на получение сертификатов поступают в МСА от ТП либо через Web-страницы, либо по электронной почте. Для генерации сертификата ТП МСА должен поддерживать специальную процедуру идентификации ТП, определенную обслуживающим банком данного ТП. МСА также отвечает за распространение в адрес ТП списков CRL, сгенерированных RCA, BCA, GCA, РСА. Оператором МСА могут являться обслуживающий банк ТП, платежная система или третья сторона, определяемая правилами конкретной платежной системы.

ЦС уровня РСА отвечает за генерацию и доставку сертификатов открытых ключей платежным шлюзам. РСА также отвечает за генерацию и распространение списка CRL, содержащего ранее эмитированные данным РСА сертификаты открытых ключей, для которых соответствующие им закрытые ключи оказались скомпрометированными на момент рассылки CRL.

РСА отвечает за распространение в адрес платежных шлюзов листов CRL, сгенерированных RCA, BCA, GCA, РСА. Оператором РСА могут являться обслуживающий банк, платежная система или третья сторона, определяемая правилами рассматриваемой платежной системы.

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

  • ключ для подписи (Digital Signature Key, используется для идентификации владельца ключа);
  • ключ для шифрования данных (Key Encipherment/Data Encipherment Key, или иначе Key-Exchange Key, ключ, используемый для шифрования данных в процессе проведения транзакции ЭК);
  • ключ для подписывания сертификатов (Certificate Signature Key);
  • ключ для подписывания списков отозванных сертификатов CRL(CRL Signature Key).

В таблице указаны типы ключей, используемых различными участниками транзакции ЭК.

Как видно из таблицы, владельцу карты достаточно иметь только один ключ типа Digital Signature Key, в то время как РСА для выполнения своих функций должен иметь ключи всех четырех типов. Далее на примерах процессов сертификации владельца карты в ССА и проведения операции покупки будет продемонстрировано использование различных типов асимметричных ключей.

Разнообразие типов ключей, кроме того, что повышает безопасность системы ЭК в целом, дает больше гибкости при проектировании платежной системы. Это достигается за счет того, что для реализации различных функций появляется возможность использовать ключи различной длины, что повышает производительность системы в целом. Например, ключ ТП Key Exchange Key может иметь более короткую длину по сравнению с ключом ТП Digital Signature Key — для того, чтобы при необходимом уровне криптостойкости уменьшить трудозатраты на выполнение криптографических операций на стороне владельца карты.

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

Формат сертификата открытого ключа в протоколе SET удовлетворяет стандарту Х.509 v.3. Сертификат содержит следующие данные:

  • версию протокола Х.509 (всегда устанавливается значение, равное 3);
  • Serial Number — серийный номер сертификата — уникальный целочисленный номер сертификата, присваиваемый ЦС, выдавшим сертификат;
  • Algorithm Identifier — идентификатор алгоритма ЭЦП, используемого ЦС для подписывания сертификата;
  • Issuer Name — имя ЦС, генерирующего сертификат;
  • срок начала действия сертификата;
  • срок окончания действия сертификата;
  • Subject Name — имя владельца сертификата;
  • идентификатор алгоритма, в котором будет использоваться сертифицируемый ключ;
  • значение сертифицируемого открытого ключа;
  • расширения (например, информация о ключе ЦС — эмитента данного сертификата; уровень владельца сертификата в протоколе SET, тип сертификата (например, сертификат владельца карты, сертификат ТП и т. п.) и другое);
  • цифровую подпись сертификата, сделанную с использованием Certificate Signing Key ЦС.

Подлинность SET-сертификатов удостоверяется с помощью иерархической цепи проверок.

Любой ЦС, выдавший сертификат следующему за ним в иерархии звену, в свою очередь, должен иметь действительный сертификат от вышестоящей организации. Удостоверение происходит путем сравнения на предмет равенства содержимого некоторых полей сертификата нижнего уровня и сертификата более высокого уровня. Сравниваются следующие поля:

  • поля Issuer Name в сертификате нижнего уровня и Subject Name в сертификате более высокого уровня;
  • поля Certlssuer и CertSerialNumber из Х.509 Extensions сертификата нижнего уровня соответственно с полями Issuer

Name и Serial Number в сертификате более высокого уровня.
При положительном результате сравнения в сертификате нижнего уровня проверяется:

  • срок действия сертификата;
  • срок действия ключа, указанного в сертификате;
  • уровень владельца сертификата в иерархии системы ЦС;
  • соответствие типа сертификата его содержимому;
  • использование по назначению ключа, указанного в сертификате, и некоторые другие поля.

В сертификате более высокого уровня проверяется:

  • срок действия сертификата;
  • срок действия ключа, указанного в сертификате;
  • уровень владельца сертификата в иерархии системы ЦС;

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