SignedCms.CheckSignature メソッド

定義

署名された CMS/PKCS #7 メッセージのデジタル署名を検証します。

オーバーロード

名前 説明
CheckSignature(Boolean)

CheckSignature(Boolean)メソッドは、署名された CMS/PKCS #7 メッセージのデジタル署名を検証し、必要に応じて署名者の証明書を検証します。

CheckSignature(X509Certificate2Collection, Boolean)

CheckSignature(X509Certificate2Collection, Boolean)メソッドは、指定した証明書のコレクションを使用して署名済み CMS/PKCS #7 メッセージのデジタル署名を検証し、必要に応じて署名者の証明書を検証します。

CheckSignature(Boolean)

CheckSignature(Boolean)メソッドは、署名された CMS/PKCS #7 メッセージのデジタル署名を検証し、必要に応じて署名者の証明書を検証します。

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

パラメーター

verifySignatureOnly
Boolean

署名者の証明書を検証せずにデジタル署名のみを検証するかどうかを指定する Boolean 値。

verifySignatureOnlytrueされている場合は、デジタル署名のみが検証されます。 falseされている場合は、デジタル署名が検証され、署名者の証明書が検証され、証明書の目的が検証されます。 証明書の目的は、証明書にキーの使用法がない場合、またはキー使用法がデジタル署名または否認をサポートしている場合に有効と見なされます。

例外

有効な引数として受け入れられないメソッドに null 参照が渡されました。

暗号化操作を完了できませんでした。

オブジェクトの現在の状態に対するメソッド呼び出しが無効でした。

次の例は、SignedCms メッセージの署名を確認するために必要な手順の中でCheckSignature(Boolean)を配置する方法を示しています。 この例では、メッセージの内容はデタッチされません。 メッセージの内容は、 SignedCms メッセージに含まれます。

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

次の例は、SignedCms メッセージの署名を確認するために必要な手順の中でCheckSignature(Boolean)を配置する方法を示しています。 この例では、メッセージコンテンツはデタッチされるため、メッセージの内容は SignedCms メッセージとは別に検証する必要があります。

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

注釈

このメソッドは、CMS/PKCS #7 メッセージで、署名を含むすべての署名を検証します。 メッセージに含まれる署名付き属性がある場合は、これらの属性も検証されます。 証明書を検証するオプションを選択すると、証明書チェーンの含まれる部分全体が検証されます。

デジタル署名の検証が失敗した場合、または検証要件が満たされていない場合、このメソッドは例外をスローします。

適用対象

CheckSignature(X509Certificate2Collection, Boolean)

CheckSignature(X509Certificate2Collection, Boolean)メソッドは、指定した証明書のコレクションを使用して署名済み CMS/PKCS #7 メッセージのデジタル署名を検証し、必要に応じて署名者の証明書を検証します。

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)

パラメーター

extraStore
X509Certificate2Collection

証明書チェーンの検証に使用できる X509Certificate2Collection オブジェクト。 証明書チェーンの検証に追加の証明書を使用しない場合は、CheckSignature(X509Certificate2Collection, Boolean)ではなくCheckSignature(Boolean)を使用します。

verifySignatureOnly
Boolean

署名者の証明書を検証せずにデジタル署名のみを検証するかどうかを指定する Boolean 値。

verifySignatureOnlytrueされている場合は、デジタル署名のみが検証されます。 falseされている場合は、デジタル署名が検証され、署名者の証明書が検証され、証明書の目的が検証されます。 証明書の目的は、証明書にキーの使用法がない場合、またはキー使用法がデジタル署名または否認をサポートしている場合に有効と見なされます。

例外

有効な引数として受け入れられないメソッドに null 参照が渡されました。

暗号化操作を完了できませんでした。

オブジェクトの現在の状態に対するメソッド呼び出しが無効でした。

注釈

このメソッドは、CMS/PKCS #7 メッセージで、署名を含むすべての署名を検証します。 メッセージに含まれる署名付き属性がある場合は、これらの属性も検証されます。 証明書を検証するオプションを選択すると、証明書チェーンの含まれる部分全体が検証されます。

デジタル署名の検証が失敗した場合、または検証要件が満たされていない場合、このメソッドは例外をスローします。

適用対象