Como identificar certificados de forma exclusiva

Como identificar certificados de forma exclusiva

Temos um serviço que recebe muitos documentos XML assinados, alguns deles são assinados com um certificado autoassinado e outros são assinados por uma autoridade de certificação confiável.

Qual é a melhor maneira de garantir que o certificado usado para assinar o documento XML esteja em uma lista de certificados em que confiamos?

Hoje estamos comparando a impressão digital dos certificados com uma lista de impressões digitais de certificados aceitas.

Podemos confiar que a impressão digital é única – ou é possível falsificá-la?

Qual seria a melhor maneira de resolver isso? (não podemos fazer com que todos que enviam documentos XML assinados usem certificados de uma autoridade de certificação confiável)

Responder1

Se você estiver usando oAssinatura XML padrãosintaxe, então o KeyInfo opcional pode conter o certificado real a ser usado.

Você deve usar a impressão digital do certificado do KeyInfo para comparar com a lista de certificados aceitos e, em seguida, validar a assinatura real com relaçãouma cópia desse certificado do seu próprio armazenamento de certificados confiáveis. Se o certificado real usado na assinatura do documento for diferente, a etapa de validação falhará, o documento deverá ser rejeitado e alguém deverá investigar mais detalhadamente.

A impressão digital do certificado deve ser complexa o suficiente para que a probabilidade de haver dois certificados com a mesma impressão digital por acidente seja insignificante. Mas mesmo que isso aconteça (talvez por maldade), isso só deve fazer com que um certificado errado seja escolhido para o processo de validação de assinatura, o que definitivamente deve causar falha na validação.

Mas se você estiver validando o documentocom o certificado que acompanha o próprio documentoe depois verificar se a impressão digital do certificado corresponde a um dos certificados confiáveis, você estáFazendo isto errado: você está basicamente usando as impressões digitais dos certificados confiáveis ​​como senhas.

informação relacionada