次の方法で共有


SignedCms.CheckSignature メソッド

定義

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

オーバーロード

CheckSignature(Boolean)

CheckSignature(Boolean) メソッドは、署名済み CMS/PKCS #7 メッセージのデジタル署名を検証するだけでなく、オプションで署名者の証明書を検証します。

CheckSignature(X509Certificate2Collection, Boolean)

CheckSignature(X509Certificate2Collection, Boolean) メソッドは、指定した証明書コレクションを使用して、署名済み CMS/PKCS #7 メッセージのデジタル署名を検証するだけではなく、オプションで署名者の証明書を検証します。

CheckSignature(Boolean)

ソース:
SignedCms.cs
ソース:
SignedCms.cs

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 参照を有効な引数として受け付けないメソッドに null 参照が渡されました。

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

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

次の例は、メッセージの署名を CheckSignature(Boolean) 検証するために必要な手順の中での の配置を SignedCms 示しています。 この例では、メッセージの内容はデタッチされません。 メッセージの内容がメッセージに 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)

次の例は、メッセージの署名を CheckSignature(Boolean) 検証するために必要な手順の中での の配置を SignedCms 示しています。 この例では、メッセージコンテンツはデタッチされるため、メッセージコンテンツはメッセージとは独立して検証する 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)

ソース:
SignedCms.cs
ソース:
SignedCms.cs

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(Boolean) ではなく、CheckSignature(X509Certificate2Collection, Boolean) を使用してください。

verifySignatureOnly
Boolean

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

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

例外

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

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

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

注釈

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

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

適用対象