Rfc3161TimestampToken.VerifySignatureForSignerInfo Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Verifica se o token atual é um token de carimbo de data/hora válido para os SignerInfo fornecidos.
public bool VerifySignatureForSignerInfo (System.Security.Cryptography.Pkcs.SignerInfo signerInfo, out System.Security.Cryptography.X509Certificates.X509Certificate2? signerCertificate, System.Security.Cryptography.X509Certificates.X509Certificate2Collection? extraCandidates = default);
public bool VerifySignatureForSignerInfo (System.Security.Cryptography.Pkcs.SignerInfo signerInfo, out System.Security.Cryptography.X509Certificates.X509Certificate2 signerCertificate, System.Security.Cryptography.X509Certificates.X509Certificate2Collection extraCandidates = default);
member this.VerifySignatureForSignerInfo : System.Security.Cryptography.Pkcs.SignerInfo * X509Certificate2 * System.Security.Cryptography.X509Certificates.X509Certificate2Collection -> bool
Public Function VerifySignatureForSignerInfo (signerInfo As SignerInfo, ByRef signerCertificate As X509Certificate2, Optional extraCandidates As X509Certificate2Collection = Nothing) As Boolean
Parâmetros
- signerInfo
- SignerInfo
As informações de signatário da CMS para verificar se o carimbo de data/hora foi criado.
- signerCertificate
- X509Certificate2
Quando esse método retornar, o certificado da TSA (autoridade de carimbo de data/hora) que tiver assinado esse token ou null
se um certificado de signatário não puder ser determinado. Esse parâmetro é tratado como não inicializado.
- extraCandidates
- X509Certificate2Collection
Uma coleção opcional de certificados a serem considerados como certificados da TSA (autoridade de carimbo de data/hora), além de outros certificados que possam ser incluídos com o token.
Retornos
true
se o certificado da TSA (autoridade de carimbo de data/hora) foi encontrado, a chave pública do certificado valida a assinatura do token e o token corresponde à assinatura de signerInfo
; caso contrário, false
.
Exceções
signerInfo
é null
.
Comentários
Esse método verifica se o token de carimbo de data/hora é válido para uma SINTAXe de Mensagem Criptográfica (CMS), SignerInfode acordo com o Apêndice A do RFC 3161 do IETF (atributo de carimbo de data/hora de assinatura usando CMS).
Esse método exige que o certificado TSA tenha o valor de uso de chave estendida necessário (1.3.6.1.5.5.7.3.8), corresponde ao identificador ESSCertID ou ESSCertID2 inserido do token, tem um intervalo de validade que abrange o valor de carimbo de data/hora do token e tem uma chave pública que valida com êxito a assinatura do token.
Depois de determinar o certificado TSA apropriado, esse método determina se o valor de assinatura do fornecido signerInfo
corresponde ao resumo e ao identificador de algoritmo do token.
Se a signerInfo
assinatura corresponder ao resumo do token e ao identificador de algoritmo, o certificado será relatado por meio do signerCertificate
e o método retornará true
.
Se a signerInfo
assinatura não corresponder ou o certificado TSA não puder ser determinado, o método relatará signerCertificate
como null
e retornará false
.
Esse método não considera o UnsignedAttributessignerInfo
do em consideração, nem determina se a signerInfo
assinatura é apropriada para os dados que a assinatura pretende ter assinado.