SignedCms.CheckSignature Methode

Definition

Überprüft die digitalen Signaturen der CMS/PKCS #7-Meldung.

Überlädt

CheckSignature(Boolean)

Die CheckSignature(Boolean)-Methode überprüft die digitalen Signaturen auf der CMS/PKCS #7-Meldung und validiert optional die Zertifikate der Signaturgeber.

CheckSignature(X509Certificate2Collection, Boolean)

Die CheckSignature(X509Certificate2Collection, Boolean)-Methode überprüft die digitalen Signaturen der CMS/PKCS #7-Meldung mithilfe der angebenen Auflistung von Zertifikaten und validiert optional die Zertifikate der Signaturgeber.

CheckSignature(Boolean)

Die CheckSignature(Boolean)-Methode überprüft die digitalen Signaturen auf der CMS/PKCS #7-Meldung und validiert optional die Zertifikate der Signaturgeber.

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

Parameter

verifySignatureOnly
Boolean

Ein Boolean-Wert, der angibt, ob nur die digitalen Signaturen überprüft werden, ohne die Zertifikate der Signaturgeber zu validieren.

Wenn verifySignatureOnlytrue ist, werden nur die digitalen Signaturen überprüft. Bei false werden die digitalen Signaturen überprüft sowie die Zertifikate der Signaturgeber und die Zwecke der Zertifikate validiert. Der Zertifikatszweck ist gültig, wenn das Zertifikat keine Schlüsselverwendung aufweist bzw. wenn die Schlüsselverwendung die digitalen Signaturen oder eine Nichtabstreitbarkeit unterstützt.

Ausnahmen

Ein NULL-Verweis wurde an eine Methode übergeben, die diesen nicht als gültiges Argument annimmt.

Ein kryptografischer Vorgang konnte nicht abgeschlossen werden.

Ein Methodenaufruf für den aktuellen Zustand des Objekts war ungültig.

Beispiele

Im folgenden Beispiel wird die Platzierung zwischen CheckSignature(Boolean) den erforderlichen Schritten gezeigt, um die Signaturen in einer SignedCms Nachricht zu überprüfen. In diesem Beispiel wird der Nachrichteninhalt nicht getrennt. Der Nachrichteninhalt ist in der SignedCms Nachricht enthalten.

// 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)

Im folgenden Beispiel wird die Platzierung zwischen CheckSignature(Boolean) den erforderlichen Schritten gezeigt, um die Signaturen in einer SignedCms Nachricht zu überprüfen. In diesem Beispiel wird der Nachrichteninhalt getrennt, sodass der Nachrichteninhalt unabhängig von der SignedCms Nachricht überprüft werden muss.

// 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)

Hinweise

Diese Methode überprüft alle Signaturen, einschließlich Gegensignaturen, auf der CMS/PKCS #7-Nachricht. Wenn signierte Attribute in der Nachricht enthalten sind, werden diese Attribute auch überprüft. Wenn die Option zum Überprüfen von Zertifikaten ausgewählt wird, wird der gesamte enthaltene Teil der Zertifikatkette überprüft.

Diese Methode löst eine Ausnahme aus, wenn die Überprüfung einer digitalen Signatur fehlschlägt oder die Überprüfungsanforderungen nicht erfüllt sind.

Gilt für

CheckSignature(X509Certificate2Collection, Boolean)

Die CheckSignature(X509Certificate2Collection, Boolean)-Methode überprüft die digitalen Signaturen der CMS/PKCS #7-Meldung mithilfe der angebenen Auflistung von Zertifikaten und validiert optional die Zertifikate der Signaturgeber.

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)

Parameter

extraStore
X509Certificate2Collection

Ein X509Certificate2Collection-Objekt, mit dem die Zertifikatskette validiert werden kann. Wenn keine weiteren Zertifikate zur Validierung der Zertifikatskette herangezogen werden sollen, verwenden Sie CheckSignature(Boolean) anstelle von CheckSignature(X509Certificate2Collection, Boolean).

verifySignatureOnly
Boolean

Ein Boolean-Wert, der angibt, ob nur die digitalen Signaturen überprüft werden, ohne die Zertifikate der Signaturgeber zu validieren.

Wenn verifySignatureOnlytrue ist, werden nur die digitalen Signaturen überprüft. Bei false werden die digitalen Signaturen überprüft sowie die Zertifikate der Signaturgeber und die Zwecke der Zertifikate validiert. Der Zertifikatszweck ist gültig, wenn das Zertifikat keine Schlüsselverwendung aufweist bzw. wenn die Schlüsselverwendung die digitalen Signaturen oder eine Nichtabstreitbarkeit unterstützt.

Ausnahmen

Ein NULL-Verweis wurde an eine Methode übergeben, die diesen nicht als gültiges Argument annimmt.

Ein kryptografischer Vorgang konnte nicht abgeschlossen werden.

Ein Methodenaufruf für den aktuellen Zustand des Objekts war ungültig.

Hinweise

Diese Methode überprüft alle Signaturen, einschließlich Gegensignaturen, auf der CMS/PKCS #7-Nachricht. Wenn signierte Attribute in der Nachricht enthalten sind, werden diese Attribute auch überprüft. Wenn die Option zum Überprüfen von Zertifikaten ausgewählt wird, wird der gesamte enthaltene Teil der Zertifikatkette überprüft.

Diese Methode löst eine Ausnahme aus, wenn die Überprüfung einer digitalen Signatur fehlschlägt oder die Überprüfungsanforderungen nicht erfüllt sind.

Gilt für