Протоколы безопасного сетевого взаимодействия



Структуры РОР


Если запрос сертификата предназначен для пары ключей подписывания (т.е. запрос для верифицирующего сертификата), то доказательство обладания закрытым ключом подписывания демонстрируется с помощью структуры POPOSingingKey.

POPOSigningKeyInput ::= SEQUENCE { authInfo CHOICE { sender [0] GeneralName, -- из PKIHeader (используется только в -- том случае, если аутентифицированная -- идентификация установлена -- отправителем (например, DN из ранее -- выпущенного и действительного -- в данный момент сертификата)) publicKeyMAC [1] PKMACValue -- используется, если в настоящий момент -- не существует аутентифицированного -- GeneralName для отправителя; -- publicKeyMAC содержит основанный на -- пароле MAC (используя protectionAlg -- AlgId из PKIHeader) для -- DER-представления publicKey }, publicKey SubjectPublicKeyInfo -- из CertTemplate }

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

  1. Включением закрытого ключа (шифрования) в CertRequest (в управляющей структуре PKIArchiveOptions).
  2. Тем, что СА возвращает не сертификат, а зашифрованный сертификат (например, сертификат зашифрован случайно созданным симметричным ключом и симметричный ключ зашифрован открытым ключом, для которого выпущен запрошенный сертификат) – это "непрямой" метод, описанный ранее. Конечный участник доказывает знание закрытого ключа дешифрования, посылая МАС сообщения PKIConirm, используя ключ, полученный из данного симметричного ключа. Заметим, что если более одного CertReqMsg включено в PKIMessage, то СА использует разные симметричные ключи для каждого CertReqMsg, и МАС задействует ключ, полученный из конкатенации всех этих ключей. Процедура вычисления МАС использует PasswordBasedMacAlgId, определенный выше.
  3. Тем, что конечный участник обязан иметь что-то, что он указывает в протоколе вызов-ответ (используя сообщения POPODecKeyChall и POPODecKeyResp, см ниже) между CertReqMessages и CertRepMessages.




    Содержание  Назад  Вперед