共用方式為


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
來源:
SignedCms.cs
來源:
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 參考已傳遞至不接受它做為有效引數的方法。

密碼編譯作業無法完成。

物件目前狀態的方法呼叫無效。

範例

下列範例顯示驗證訊息簽章所需的步驟中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)

來源:
SignedCms.cs
來源:
SignedCms.cs
來源:
SignedCms.cs
來源:
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 參考已傳遞至不接受它做為有效引數的方法。

密碼編譯作業無法完成。

物件目前狀態的方法呼叫無效。

備註

此方法會驗證 CMS/PKCS #7 訊息上的所有簽章,包括計數器。 如果訊息包含已簽署的屬性,這些屬性也會經過驗證。 如果選擇選項來驗證憑證,則會驗證憑證鏈結的整個包含部分。

如果數位簽名的驗證失敗或不符合任何驗證需求,這個方法會擲回例外狀況。

適用於