Natywne znaczniki czasu RFC3161
HPDFHeadlessTimestamp dostarcza natywne tworzenie żądań OpenSSL 3 i uwierzytelnioną weryfikację odpowiedzi i tokenów RFC3161 na Linuksie i Windows
HPDFSignHeadlessCMS, SignToFile i SignPFXToFile hashują rzeczywiste oktety podpisu CMS przez SHA-256 i przypiętują zweryfikowany token odpowiedzi jako niepodpisany atrybut signatureTimeStampToken
Skonfiguruj THPDFHeadlessCMSOptions.Timestamp.TrustedCAFile i Transport przed podpisaniem i ustaw RequireTimestamp, gdy uwierzytelniony token jest obowiązkowy
Options := THPDFHeadlessCMSOptions.Default;
Options.TrustedCAFile := SignerTrustFile;
Options.RequireTimestamp := True;
Options.Timestamp.TrustedCAFile := TSATrustFile;
Options.Timestamp.TrustedCRLFile := TSACRLFile;
Options.Timestamp.RequireRevocation := True;
Options.Timestamp.Transport := RequestTimestamp;
Options.Timestamp.TransportContext := TransportContext;
Report := Document.SignPFXToFile(FieldIndex, OutputFile, IdentityPFX,
IdentityPassword, Options);
Transport należący do wywołującego otrzymuje kompletne żądanie DER TimeStampReq i zwraca kompletną odpowiedź DER TimeStampResp, pozwalając wywołującemu kontrolować uwierzytelnienie HTTP, politykę TLS, deadline i anulowanie podczas I/O sieciowego
Żądania zawierają świeże kryptograficzne nonce i żądają certyfikatów TSA; odpowiedzi muszą pasować do zarówno nonce żądania, jak i dostarczonej wartości podpisu
Weryfikacja uwierzytelnia kompletny token CMS, sprawdza ścieżkę certyfikatu TSA i krytyczne EKU znacznika czasu, weryfikuje wiązanie certyfikatu podpisującego ESS i sprawdza messageImprint SHA-256, SHA-384 albo SHA-512 względem rzeczywistych oktetów podpisu używając algorytmu niesionego przez TSTInfo
RequireRevocation wczytuje jawny plik CRL i włącza kontrole odwołań certyfikatów zweryfikowane przez wystawcę; brakujące, wygasłe albo odwołane dowody zawodzą, zamiast produkować zaufany wynik
Istniejące tokeny mogą być weryfikowane offline bez oryginalnego nonce żądania; świeża weryfikacja odpowiedzi dodatkowo sprawdza oryginalny nonce żądania i status odpowiedzi
Callbacki już dostarczające imprint
Funkcje ForImprint przyjmują wstępnie wyliczony digest SHA256, SHA384 albo SHA512 i jego wartość THPDFHeadlessTimestampDigest, po czym zachowują te dokładne bajty digestu w żądaniu RFC3161 bez ponownego hashowania
Użyj tych funkcji, gdy callback podpisujący już dostarcza messageImprint, włącznie z Windows THPDFCMSTimestampCallback; helpery żądań raw-signature nadal używają SHA256, podczas gdy offline weryfikacja tokena hashuje oryginalne oktety podpisu rzeczywistym wspieranym algorytmem TSTInfo
Token := HPDFRequestHeadlessTimestampForImprint(MessageImprint,
htdSHA384, TimestampOptions);
Długość imprintu musi wynosić 32, 48 albo 64 bajty dla wybranego digestu; weryfikacja związana z żądaniem dodatkowo sprawdza oryginalny świeży nonce, OID digestu, podpis CMS, wiązanie certyfikatu TSA, jawne korzenie zaufania, EKU i skonfigurowane dowody odwołań
Zobacz tworzenie żądań, weryfikację odpowiedzi, offline weryfikację tokena, transport i wartości digest
Poprawność zaufanych certyfikatów i CRL jest oceniana w czasie weryfikacji, więc zarchiwizowany token, którego certyfikat TSA wygasł, potrzebuje polityki i dowodów walidacji archiwalnej, a nie omijania bieżących kontroli zaufania
Zniekształcone tokeny, zduplikowane atrybuty znacznika czasu, niedopasowane imprinty, nieznane korzenie, niepoprawne EKU, wygasłe certyfikaty TSA, odwołane certyfikaty TSA, wygasłe CRL, budżety odpowiedzi i anulowanie są objęte natywnymi i niezależnymi testami akceptacji
Raporty weryfikacji znacznika czasu są osobne od zaufania do certyfikatów podpisujących dokument; znacznik czasu podpisu nie uwierzytelnia późniejszych niepodpisanych rewizji PDF
Funkcje znacznika czasu wczytują swoje symbole OpenSSL dopiero przy użyciu; ustaw HOTPDF_OPENSSL_LIBRARY na jawną współdzieloną bibliotekę OpenSSL 3 o pasującej architekturze, gdy potrzebne