Для начала работы в рамках протокола владелец должен быть зарегистрирован. У Сертифицирующего уполномоченного (СА — Certification Authority) этот процесс состоит из следующих шагов.
- Владелец (программное обеспечение от его имени) запрашивает копию СА-сертификата для обмена ключами (СА key-exchangecertificate, K-сертификат).
- СА формирует ответ, создает для него электронно-цифровую подпись (ЭЦП), с помощью своего закрытого ключа и высылает владельцу вместе со своим К-сертификатом, содержащим открытый ключ.
- Владелец подтверждает К-сертификат, проверяя последовательно подписи на сертификатах от данного СА до корневого СА (подробнее об иерархии сертификатов в разд. "Инфраструктура открытых ключей" данной главы) и проверяет ЭЦП на ответе СА. Затем удостоверенный К — сертификат сохраняется, а владелец запрашивает регистрационную форму от СА, генерирует сессионный симметричный ключ и шифрует этим ключом запрос регистрационной формы. Затем симметричный ключ и номер счета владельца шифруются открытым ключом СА из сертификата СА. Полученные запрос, сессионный ключ и номер счета высылаются СА.
- СА дешифрует сессионный ключ и номер счета владельца своим закрытым ключом, а запрос на регистрационную форму — сессионным ключом. Затем СА определяет по первым 6—11 цифрам номера счета финансовую организацию, к которой относится владелец и выбирает соответствующую регистрационную форму (либо указание владельцу, где получить форму). СА высылает пописанную регистрационную форму и свой обычный (не для обмена ключами) сертификат владельцу.
- Владелец проверяет сертификат до корневого СА, так же как и К — сертификат проверяет ЭЦП на форме. Затем владелец генерирует для себя пару закрытый/открытый ключ, если это не было сделано ранее, и заполняет присланную СА регистрационную форму, которая послужит основанием для запроса на сертификат для владельца. Владелец генерирует случайное число N, которое будет использовано СА при формировании сертификата для владельца; формирует регистрационное сообщение (которое состоит из заполненной регистрационной форм и открытого ключа владельца) и подписывает его. На следующем этапе происходит генерация двух новых симметричных ключей, один помещается в регистрационное сообщение (им СА будет шифровать ответ), вторым шифруется все регистрационное сообщение. Второй ключ, номер счета, дата окончания срока действия карты и случайное число N шифруются открытым ключом СА из К-сертификата. Все перечисленное отсылается СА.
- СА дешифрует второй симметричный ключ и информацию по счету владельца своим закрытым ключом (для К-сертификата) и дешифрует запрос на сертификат вторым симметричным ключом. Затем СА проверяет ЭЦП запроса, используя открытый ключ владельца, и проверяет соответствие данных запроса, регистрационной формы и информации по счету владельца. Для формирования сертификата СА генерирует свое случайное число М, вместе с N, номером счета и датой срока действия карты преобразуются в хеш-значение, которое и будет указано в сертификате. СА генерирует сертификат для владельца и подписывает сво закрытым ключом обычного сертификата, формирует ответ владельцу подписывает его. После этого СА шифрует ответ, куда входит и число М, первым секретным ключом и отсылает владельцу вместе с сертификатом.
- Владелец проверяет свой сертификат до корневого СА и сохраняет его для дальнейшего использования. Затем дешифрует ответ СА первым симметричным ключом, проверяет его ЭЦП и извлекает число М. Сохраняет числа М и N для дальнейшего использования.
Владелец зарегистрирован и может начинать работу.