SetPAdESSignatureTimeStampToken

Bảo mật và chữ ký

Mô tả

Xác minh một TimeStampToken RFC 3161 mã hóa DER và tiêm nó thành attribute không ký id-aa-signatureTimeStampToken trên SignerInfo CMS đang chọn

Phương thức xác minh chữ ký token, đòi duy nhất extended key usage critical phải là timeStamping, kiểm tra tên TSA đã encode khi có mặt, và so message imprint của token với digest đã cấu hình của signatureValue người ký

Các attribute timestamp chữ ký có sẵn trên người ký đang chọn bị thay thế, các attribute không ký không liên quan được giữ lại, và bộ attribute dựng lại được sắp DER

Cú pháp

Delphi

Function TPDFlib.SetPAdESSignatureTimeStampToken(STSProcessID: Integer;
  Const TimeStampTokenDER: AnsiString; SignerIndex: Integer= 0): Integer;

Tham số

STSProcessIDGiá trị do một trong các hàm NewPAdESSignatureTimeStampProcessFrom* trả về
TimeStampTokenDERTimeStampToken RFC 3161 mã hóa DER đầy đủ do TSA trả về
SignerIndexChỉ số người ký CMS (tính từ 0), mặc định là người ký đầu tiên

Giá trị trả về

0Process identifier không hợp lệ
1Token đã được xác thực và tiêm vào
11Token, CMS, người ký đang chọn, ràng buộc TSA hoặc message imprint không hợp lệ
OtherKhông chuẩn bị được PDF nguồn hay chữ ký đang chọn, như GetPAdESSignatureTimeStampProcessResult báo cáo

Workflow

  1. Reserve enough signature contents space with SetSignProcessReserveContentsBytes before creating the original signature
  2. Create a timestamp process and select the signature field and digest algorithm
  3. Call GetPAdESSignatureValueHashHex and send that message imprint to the TSA
  4. Pass the returned TimeStampToken to this method
  5. Finish with an EndPAdESSignatureTimeStampProcessTo* method

Thư viện kiểm tra và ghi lại CMS nhưng không thực hiện yêu cầu HTTP tới TSA

Xem thêm

GetPAdESSignatureValueHashHex, SetPAdESSignatureTimeStampDigestAlgorithm, SetSignProcessReserveContentsBytes, TPDFlibSignatureVerifier