共用方式為


Rfc3161TimestampToken.VerifySignatureForData 方法

定義

驗證目前權杖是否為所提供資料的有效時間戳記權杖。

public bool VerifySignatureForData (ReadOnlySpan<byte> data, out System.Security.Cryptography.X509Certificates.X509Certificate2? signerCertificate, System.Security.Cryptography.X509Certificates.X509Certificate2Collection? extraCandidates = default);
public bool VerifySignatureForData (ReadOnlySpan<byte> data, out System.Security.Cryptography.X509Certificates.X509Certificate2 signerCertificate, System.Security.Cryptography.X509Certificates.X509Certificate2Collection extraCandidates = default);
member this.VerifySignatureForData : ReadOnlySpan<byte> * X509Certificate2 * System.Security.Cryptography.X509Certificates.X509Certificate2Collection -> bool
Public Function VerifySignatureForData (data As ReadOnlySpan(Of Byte), ByRef signerCertificate As X509Certificate2, Optional extraCandidates As X509Certificate2Collection = Nothing) As Boolean

參數

data
ReadOnlySpan<Byte>

要針對此時間戳記權杖進行驗證的資料。

signerCertificate
X509Certificate2

當此方法傳回時,則為簽署此權杖的時間戳記授權 (TSA) 中憑證;如果無法判斷簽署者憑證,則為 null。 這個參數會被視為未初始化。

extraCandidates
X509Certificate2Collection

除了權杖中可能包含的任何憑證之外,另有一個選擇性的憑證集合可視為時間戳記授權 (TSA) 憑證。

傳回

如果找到時間戳記授權 (TSA) 憑證,憑證公開金鑰即會驗證權杖簽章,且該權杖符合所提供資料的雜湊,則為 true;否則為 false

備註

此方法需要時間戳授權單位 (TSA) 憑證具有必要的擴充密鑰使用值, (1.3.6.1.5.5.5.5.7.3.8) , 會比對令牌的內嵌 ESSCertID 或 ESSCertID2 標識符、具有包含令牌時間戳值的有效範圍,而且具有可成功驗證令牌簽章的公鑰。

判斷適當的 TSA 憑證之後,這個方法會使用內嵌在令牌中的演算法標識碼來計算 的 data 摘要。 如果此摘要符合令牌的內嵌摘要,則會透過 signerCertificate 報告憑證,而方法會傳 true回 。

如果摘要不相符,或無法判斷 TSA 憑證,方法會報告 signerCertificatenull ,並傳 false回 。

適用於

另請參閱