Уникальный ID владельца карты в сертификате представляет собой хэшированный номер его счета. PAN маскируется с использованием общего секретного ключа (PANSecret), который состоит из комбинации CardSecret владельца карты и Nonce-CCA сертификационного центра. Вычисление хэша производится с привлечением алгоритма HMAC-SHA1 (RFC-2105). Функция HMAC-SHA1 определяется в терминах ключа K и текста, который кэшируется следующим образом:
Hash(KA opad|hash((KAipad)|text)),
где A - оператор исключающее ИЛИ, а оператор | - обозначает объединение кодов. K, text, ipad и opad определяются в SET следующим образом:
K | Равно PANSecret и представляет собой 20-байтовую строку, полученную в результате операции исключающее ИЛИ, выполненной над DER-кодированными значениями CardSecret и Nonce-CCA. |
Text | Представляет собой DER-кодированную копию исходного текста, содержащего PAN и CardExpiry. Text ::= SEQUENCE { pan PAN cardExpiry CardExpiry } PAN ::= NumberString (SIZE(1..19)) CardExpiry ::= NumericString (SIZE(6)) --YYYMM Время истечения действия карты |
ipad | 64 байта, содержащих код 0x36 |
opad | 64 байта, содержащих код 0x5C |
K дополняется нулями до 64 байт.
Результат вычисления HMAC кодируется в представлении base64, после чего производится в поле сертификата commonName.
Профайлы сертификатов
В таблице 4.6.2.33 представлен полный список сертификатов необходимых SET.
Таблица 4.6.2.33. Типы сертификатов
Объект | Цифровая подпись | Шифрование_ключей/ шифрование_данных |
Подпись keyCert |
Подпись CRL |
Владелец карты | Х | |||
Продавец | Х | Х | ||
Расчетный центр | Х | Х | ||
Центр сертификации владельца карты | Х | Х | Х | |
Центр сертификации продавца | Х | Х | Х | |
Центр сертификации расчетного центра | Х | Х | Х | Х |
Геополитический центр сертификации | Х | Х | Х | |
Центр сертификации платежной системы | Х | Х | ||
Корневой центр сертификации | Х | Х |
ССА, MCA и PCA при совмещении функций не обязательно требуют наличия трех отдельных сертификатов.