Rfc3161TimestampToken.VerifySignatureForSignerInfo Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Sprawdza, czy bieżący token jest prawidłowym tokenem sygnatury czasowej dla podanego SignerInfoelementu .
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
Parametry
- signerInfo
- SignerInfo
Informacje o podpisywaniu usługi CMS w celu sprawdzenia, czy sygnatura czasowa została utworzona.
- signerCertificate
- X509Certificate2
Gdy ta metoda zostanie zwrócona, certyfikat z urzędu sygnatury czasowej (TSA), który podpisał ten token, lub null
jeśli nie można określić certyfikatu osoby podpisujące. Ten parametr jest traktowany jako niezainicjowany.
- extraCandidates
- X509Certificate2Collection
Opcjonalna kolekcja certyfikatów do rozważenia jako certyfikaty urzędu sygnatury czasowej (TSA) oprócz wszystkich certyfikatów, które mogą być uwzględnione w tokenie.
Zwraca
true
jeśli certyfikat urzędu sygnatury czasowej (TSA) został znaleziony, klucz publiczny certyfikatu weryfikuje podpis tokenu, a token jest zgodny z podpisem ; signerInfo
w przeciwnym razie false
.
Wyjątki
signerInfo
to null
.
Uwagi
Ta metoda sprawdza, czy token sygnatury czasowej jest prawidłowy dla składni komunikatów kryptograficznych (CMS), SignerInfozgodnie z dodatkiem IETF RFC 3161 A (sygnatura czasowa atrybutu sygnatury czasowej przy użyciu narzędzia CMS).
Ta metoda wymaga, aby certyfikat TSA miał wymaganą wartość rozszerzonego użycia klucza (1.3.6.1.5.5.7.3.8), pasuje do osadzonego identyfikatora ESSCertID lub ESSCertID2 tokenu, ma zakres ważności obejmujący wartość znacznika czasu tokenu i ma klucz publiczny, który pomyślnie weryfikuje podpis tokenu.
Po określeniu odpowiedniego certyfikatu TSA ta metoda określa, czy wartość podpisu z podanej signerInfo
metody jest zgodna z identyfikatorem skrótu i algorytmu z tokenu.
signerInfo
Jeśli podpis jest zgodny z identyfikatorem skrótu tokenu i identyfikatorem algorytmu, certyfikat jest zgłaszany za pośrednictwem metody signerCertificate
, a metoda zwraca true
wartość .
signerInfo
Jeśli podpis nie jest zgodny lub nie można określić certyfikatu TSA, metoda zgłasza signerCertificate
jako null
i zwraca wartość false
.
Ta metoda nie bierze pod uwagę UnsignedAttributessignerInfo
ani nie określa, czy signerInfo
podpis jest odpowiedni dla danych, które podpis rzekomo podpisał.