Share via


Rfc3161TimestampToken.VerifySignatureForSignerInfo Metodo

Definizione

Verifica che il token corrente sia un token timestamp valido per il SignerInfofornito.

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

Parametri

signerInfo
SignerInfo

Informazioni sul firmatario CMS per la verifica del timestamp per cui è stato creato.

signerCertificate
X509Certificate2

Quando termina, questo metodo restituisce il certificato dell'autorità di timestamp (TSA) che ha firmato questo token o null se non è possibile determinare un certificato del firmatario. Questo parametro viene trattato come non inizializzato.

extraCandidates
X509Certificate2Collection

Raccolta facoltativa di certificati da considerare come certificati di autorità di timestamp (TSA), oltre a eventuali certificati che possono essere inclusi nel token.

Restituisce

true se il certificato dell'autorità di timestamp (TSA) è stato trovato, la chiave pubblica del certificato convalida la firma del token e il token corrisponde alla firma per signerInfo. In caso contrario, false.

Eccezioni

signerInfo è null.

Commenti

Questo metodo verifica che il token timestamp sia valido per un cms (Cryptographic Message Syntax) SignerInfo, in base all'appendice A (attributo Timestamp della firma tramite CMS) di IETF RFC 3161.

Questo metodo richiede che il certificato TSA abbia il valore di utilizzo della chiave estesa richiesto (1.3.6.1.5.5.7.3.8), corrisponde all'identificatore ESSCertID o ESSCertID2 del token, ha un intervallo di validità che include il valore timestamp del token e ha una chiave pubblica che convalida correttamente la firma del token.

Dopo aver determinato il certificato TSA appropriato, questo metodo determina se il valore della firma fornito corrisponde al digest e all'identificatore dell'algoritmo signerInfo dal token. Se la signerInfo firma corrisponde al digest e all'identificatore dell'algoritmo del token, il certificato viene segnalato tramite signerCertificate e il metodo restituisce true.

Se la signerInfo firma non corrisponde o non è stato possibile determinare il certificato TSA, il metodo segnala signerCertificate come null e restituisce false.

Questo metodo non prende in considerazione l'oggetto dell'oggetto UnsignedAttributessignerInfo , né determina se la signerInfo firma è appropriata per i dati che la firma dichiara di aver firmato.

Si applica a

Vedi anche