A maioria dos aplicativos que dependem de certificados X.509 precisam validar o status dos certificados usados ao realizar operações de autenticação, assinatura ou criptografia. Essa verificação de validade e revogação de certificado é realizada em todos os certificados em uma cadeia de certificados, até o certificado raiz. Se o certificado raiz, ou qualquer certificado na cadeia, for inválido, os certificados abaixo do certificado inválido na cadeia também são inválidos.
A validação inclui os seguintes itens:
-
A assinatura de cada certificado é válida.
-
A data e a hora atuais estão dentro do período de validade de cada certificado.
-
Nenhum certificado está corrompido ou malformado.
Além disso, cada certificado na cadeia de certificados é verificado em relação a seu status de revogação. A verificação de revogação pode ser realizada usando-se uma lista de revogação de certificados (CRL) ou uma resposta OCSP (Protocolo de Status de Certificados Online).
O que é o OCSP?
O Respondente Online da Microsoft implementa o protocolo OCSP, que permite a um destinatário de um certificado enviar uma solicitação de status de certificado a um respondente OCSP usando o protocolo HTTP. O respondente OCSP retorna uma resposta definitiva, assinada digitalmente, indicando o status do certificado. A quantidade de dados recuperados por solicitação é constante, não importa o número de certificados revogados na CA.
Para obter mais informações, consulte RFC 2560, "OCSP - Protocolo de Status de Certificado Online da Infraestrutura de chave pública da Internet X.509" (
Respondente Online
A implementação da Microsoft do OCSP—o Respondente Online— é dividida em componentes cliente e servidor. O componente cliente é integrado à biblioteca CryptoAPI 2.0, enquanto o componente servidor é lançado como um novo serviço fornecido pela função do servidor dos Serviços de Certificados do Active Directory (AD CS). O seguinte processo descreve como interagem os componentes cliente e servidor:
-
Quando um aplicativo tenta verificar um certificado que especifica locais para respondentes OCSP, o componente cliente pesquisa primeiro na memória local e nos caches de disco para localizar uma resposta OCSP em cache que contenha dados de revogação atuais.
-
Se uma resposta em cache aceitável não for localizada, uma solicitação será enviada para um Respondente Online usando-se o protocolo HTTP.
-
O proxy da Web do Respondente Online decodifica e verifica a solicitação. Se a solicitação for válida, será verificada no cache do proxy da Web a informação de revogação necessária para atender à solicitação. Se as informações atuais não estiverem disponíveis em cache, a solicitação será encaminhada para o Serviço Respondente Online.
-
Com a solicitação, o Serviço Respondente Online verifica uma CRL local, se ela estiver disponível, e uma cópia em cache da CRL mais recente emitida pela CA.
-
Se o certificado não aparecer nas listas de revogação local ou em cache, o provedor da revogação obterá uma CRL da CA atualizada, caso disponível, dos locais listados na configuração de revogação para verificar o status do certificado. O provedor, por sua vez, retornará o status do certificado para o serviço do Respondente Online.
-
O proxy da Web codificará e enviará a resposta de volta para o cliente, de modo a notificá-lo de que o certificado é válido. Ele também fará uma cópia em cache da resposta por um tempo limitado, no caso de haver solicitações de status adicionais sobre esse certificado.