Rfc3161TimestampToken.VerifySignatureForSignerInfo Método

Definición

Comprueba que el token actual es un token de marca de tiempo válido para la información SignerInfo proporcionada.

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

La información del firmante de CMS para comprobar la marca de tiempo para la que se compiló.

signerCertificate
X509Certificate2

Cuando este método devuelve, el certificado de la autoridad de marca de tiempo (TSA) que firmó este token o null si no se puede determinar un certificado de firmante. Este parámetro se trata como sin inicializar.

extraCandidates
X509Certificate2Collection

Colección opcional de certificados que se deben considerar como certificados de autoridad de marca de tiempo (TSA), además de los certificados que se puedan incluir en el token.

Devoluciones

Boolean

Es true si se ha encontrado el certificado de autoridad de marca de tiempo (TSA), la clave pública del certificado valida la firma del token y el token coincide con la firma de signerInfo; de lo contrario, es false.

Excepciones

signerInfo es null.

Comentarios

Este método comprueba que el token de marca de tiempo es válido para una sintaxis de mensaje criptográfico (CMS), SignerInfosegún IETF RFC 3161 Apéndice A (atributo de marca de tiempo de firma mediante CMS).

Este método requiere que el certificado TSA tenga el valor de uso de clave extendido necesario (1.3.6.1.5.5.7.3.8), coincide con el identificador ESSCertID o ESSCertID2 incrustado del token, tiene un intervalo de validez que abarca el valor de marca de tiempo del token y tiene una clave pública que valida correctamente la firma del token.

Después de determinar el certificado TSA adecuado, este método determina si el valor de firma del proporcionado signerInfo coincide con el identificador de resumen y algoritmo del token. Si la signerInfo firma coincide con el identificador de algoritmo y resumen del token, el certificado se notifica a través signerCertificate de y el método devuelve true.

Si la signerInfo firma no coincide o no se pudo determinar el certificado de TSA, el método notifica signerCertificate como null y devuelve false.

Este método no tiene en cuenta la UnsignedAttributes signerInfo propiedad de , ni determina si la signerInfo firma es adecuada para los datos que la firma pretende haber firmado.

Se aplica a

Consulte también