Sdílet prostřednictvím


SignedCms.CheckSignature Metoda

Definice

Ověří digitální podpisy podepsané zprávy CMS/PKCS č. 7.

Přetížení

CheckSignature(Boolean)

Metoda CheckSignature(Boolean) ověří digitální podpisy podepsané zprávy CMS/PKCS #7 a volitelně ověří certifikáty podepisujících.

CheckSignature(X509Certificate2Collection, Boolean)

Metoda CheckSignature(X509Certificate2Collection, Boolean) ověří digitální podpisy podepsané zprávy CMS/PKCS #7 pomocí zadané kolekce certifikátů a volitelně ověří certifikáty podepisujících.

CheckSignature(Boolean)

Zdroj:
SignedCms.cs
Zdroj:
SignedCms.cs
Zdroj:
SignedCms.cs
Zdroj:
SignedCms.cs
Zdroj:
SignedCms.cs

Metoda CheckSignature(Boolean) ověří digitální podpisy podepsané zprávy CMS/PKCS #7 a volitelně ověří certifikáty podepisujících.

public:
 void CheckSignature(bool verifySignatureOnly);
public void CheckSignature (bool verifySignatureOnly);
member this.CheckSignature : bool -> unit
Public Sub CheckSignature (verifySignatureOnly As Boolean)

Parametry

verifySignatureOnly
Boolean

Hodnota Boolean , která určuje, zda jsou ověřeny pouze digitální podpisy bez ověření certifikátů podepisujících.

Pokud verifySignatureOnly je true, ověřují se pouze digitální podpisy. Pokud je false, ověří se digitální podpisy, ověří se certifikáty podepisujících a ověří se účel certifikátů. Účely certifikátu se považují za platné, pokud certifikát nepoužívá klíč nebo pokud použití klíče podporuje digitální podpisy nebo neodepisování.

Výjimky

Nulový odkaz byl předán metodě, která ji nepřijímá jako platný argument.

Kryptografickou operaci nelze dokončit.

Volání metody bylo pro aktuální stav objektu neplatné.

Příklady

Následující příklad ukazuje umístění CheckSignature(Boolean) mezi kroky potřebné k ověření podpisů ve SignedCms zprávě. V tomto příkladu není obsah zprávy odpojen. Obsah zprávy je součástí SignedCms zprávy.

// Create a new, nondetached SignedCms message.
SignedCms signedCms = new SignedCms();

// encodedMessage is the encoded message received from
// the sender.
signedCms.Decode(encodedMessage);

// Verify the signature without validating the
// certificate.
signedCms.CheckSignature(true);
' Create a new, nondetached SignedCms message.
Dim signedCms As New SignedCms()

' encodedMessage is the encoded message received from 
' the sender.
signedCms.Decode(encodedMessage)

' Verify the signature without validating the 
' certificate.
signedCms.CheckSignature(True)

Následující příklad ukazuje umístění CheckSignature(Boolean) mezi kroky potřebné k ověření podpisů ve SignedCms zprávě. V tomto příkladu je obsah zprávy odpojený, takže obsah zprávy se musí ověřit nezávisle na SignedCms zprávě.

// Create a ContentInfo object from the inner content obtained
// independently from encodedMessage.
ContentInfo contentInfo = new ContentInfo(innerContent);

// Create a new, detached SignedCms message.
SignedCms signedCms = new SignedCms(contentInfo, true);

// encodedMessage is the encoded message received from
// the sender.
signedCms.Decode(encodedMessage);

// Verify the signature without validating the
// certificate.
signedCms.CheckSignature(true);
' Create a ContentInfo object from the inner content obtained 
' independently from encodedMessage.
Dim contentInfo As New ContentInfo(innerContent)

' Create a new, detached SignedCms message.
Dim signedCms As New SignedCms(contentInfo, True)

' encodedMessage is the encoded message received from 
' the sender.
signedCms.Decode(encodedMessage)

' Verify the signature without validating the 
' certificate.
signedCms.CheckSignature(True)

Poznámky

Tato metoda ověří všechny podpisy, včetně protisignatur, ve zprávě CMS/PKCS #7. Pokud zpráva obsahuje podepsané atributy, ověří se i tyto atributy. Pokud zvolíte možnost ověřování certifikátů, ověří se celá zahrnutá část řetězu certifikátů.

Tato metoda vyvolá výjimku, pokud ověření digitálního podpisu selže nebo nejsou splněny žádné požadavky na ověření.

Platí pro

CheckSignature(X509Certificate2Collection, Boolean)

Zdroj:
SignedCms.cs
Zdroj:
SignedCms.cs
Zdroj:
SignedCms.cs
Zdroj:
SignedCms.cs
Zdroj:
SignedCms.cs

Metoda CheckSignature(X509Certificate2Collection, Boolean) ověří digitální podpisy podepsané zprávy CMS/PKCS #7 pomocí zadané kolekce certifikátů a volitelně ověří certifikáty podepisujících.

public:
 void CheckSignature(System::Security::Cryptography::X509Certificates::X509Certificate2Collection ^ extraStore, bool verifySignatureOnly);
public void CheckSignature (System.Security.Cryptography.X509Certificates.X509Certificate2Collection extraStore, bool verifySignatureOnly);
member this.CheckSignature : System.Security.Cryptography.X509Certificates.X509Certificate2Collection * bool -> unit
Public Sub CheckSignature (extraStore As X509Certificate2Collection, verifySignatureOnly As Boolean)

Parametry

extraStore
X509Certificate2Collection

Objekt X509Certificate2Collection , který lze použít k ověření řetězu certifikátů. Pokud se k ověření řetězu certifikátů nemají použít žádné další certifikáty, použijte CheckSignature(Boolean) místo .CheckSignature(X509Certificate2Collection, Boolean)

verifySignatureOnly
Boolean

Hodnota Boolean , která určuje, zda jsou ověřeny pouze digitální podpisy bez ověření certifikátů podepisujících.

Pokud verifySignatureOnly je true, ověřují se pouze digitální podpisy. Pokud je false, ověří se digitální podpisy, ověří se certifikáty podepisujících a ověří se účel certifikátů. Účely certifikátu se považují za platné, pokud certifikát nepoužívá klíč nebo pokud použití klíče podporuje digitální podpisy nebo neodepisování.

Výjimky

Nulový odkaz byl předán metodě, která ji nepřijímá jako platný argument.

Kryptografickou operaci nelze dokončit.

Volání metody bylo pro aktuální stav objektu neplatné.

Poznámky

Tato metoda ověří všechny podpisy, včetně protisignatur, ve zprávě CMS/PKCS #7. Pokud zpráva obsahuje podepsané atributy, ověří se i tyto atributy. Pokud zvolíte možnost ověřování certifikátů, ověří se celá zahrnutá část řetězu certifikátů.

Tato metoda vyvolá výjimku, pokud ověření digitálního podpisu selže nebo nejsou splněny žádné požadavky na ověření.

Platí pro