다음을 통해 공유


Rfc3161TimestampToken.VerifySignatureForSignerInfo 메서드

정의

현재 토큰이 제공된 SignerInfo에 대해 유효한 타임스탬프 토큰인지 확인합니다.

public bool VerifySignatureForSignerInfo (System.Security.Cryptography.Pkcs.SignerInfo signerInfo, out System.Security.Cryptography.X509Certificates.X509Certificate2? signerCertificate, System.Security.Cryptography.X509Certificates.X509Certificate2Collection? extraCandidates = default);
public bool VerifySignatureForSignerInfo (System.Security.Cryptography.Pkcs.SignerInfo signerInfo, out System.Security.Cryptography.X509Certificates.X509Certificate2 signerCertificate, System.Security.Cryptography.X509Certificates.X509Certificate2Collection extraCandidates = default);
member this.VerifySignatureForSignerInfo : System.Security.Cryptography.Pkcs.SignerInfo * X509Certificate2 * System.Security.Cryptography.X509Certificates.X509Certificate2Collection -> bool
Public Function VerifySignatureForSignerInfo (signerInfo As SignerInfo, ByRef signerCertificate As X509Certificate2, Optional extraCandidates As X509Certificate2Collection = Nothing) As Boolean

매개 변수

signerInfo
SignerInfo

타임스탬프가 해당 서명자에 대해 빌드된 것이 맞는지 확인할 CMS 서명자 정보입니다.

signerCertificate
X509Certificate2

이 메서드가 반환될 때 이 토큰을 서명한 TSA(타임스탬프 기관)의 인증서이거나 서명자 인증서를 확인할 수 없는 경우 null입니다. 이 매개 변수는 초기화되지 않은 것으로 처리됩니다.

extraCandidates
X509Certificate2Collection

토큰에 포함된 인증서에 더해 TSA(타임스탬프 기관) 인증서로 간주해야 할 선택적인 인증서 컬렉션입니다.

반환

TSA(타임스탬프 기관) 인증서가 있고, 인증서 퍼블릭 키가 토큰 서명의 유효성을 검사하며, 토큰이 signerInfo의 서명과 일치하면 true이고 그렇지 않으며 false입니다.

예외

signerInfonull입니다.

설명

이 메서드는 IETF RFC 3161 부록 A(CMS를 사용하는 서명 타임스탬프 특성) SignerInfo에 따라 CMS(암호화 메시지 구문)에 타임스탬프 토큰이 유효한지 확인합니다.

이 메서드를 사용하려면 TSA 인증서에 필요한 확장 키 사용 값(1.3.6.1.5.5.7.3.8)이 있어야 하고, 토큰의 포함된 ESSCertID 또는 ESSCertID2 식별자와 일치하고, 토큰의 타임스탬프 값을 포괄하는 유효성 범위가 있으며, 토큰 서명의 유효성을 성공적으로 검사하는 공개 키가 있어야 합니다.

적절한 TSA 인증서를 확인한 후 이 메서드는 제공된 signerInfo 의 서명 값이 토큰의 다이제스트 및 알고리즘 식별자와 일치하는지 확인합니다. 서명이 signerInfo 토큰의 다이제스트 및 알고리즘 식별자와 일치하는 경우 인증서는 를 통해 signerCertificate 보고되고 메서드는 를 반환합니다 true.

서명이 signerInfo 일치하지 않거나 TSA 인증서를 확인할 수 없는 경우 메서드는 를 로 null 보고 signerCertificate 하고 를 반환합니다false.

이 메서드는 고려 중인 의 signerInfoUnsignedAttributes 사용하지 않으며 서명이 서명된 것으로 추정되는 데이터에 서명이 적절한지 signerInfo 여부를 결정하지도 않습니다.

적용 대상

추가 정보