Windows Signed Revocation Information
Windows-signeringsoperationen kan autentisera CRL- och OCSP-bevis, inkludera det i Adobes RevocationInfoArchival signerade attribut och publicera PDF:n först efter att den faktiska genererade CMS:n och det inbäddade beviset validerats
Signeringsalternativ
{"schemaVersion":1,"type":"sign","incremental":true,
"existingField":true,"fieldName":"ApprovalOne",
"pfxFile":"C:/keys/signer.pfx","pfxPassword":"password",
"cades":true,"digestMethod":"SHA384",
"revocationInfo":{"enabled":true,
"trustedCAFile":"C:/trust/signing-roots.pem",
"certificatesBase64":[],"ocspResponsesBase64":[],
"crlsBase64":["BASE64_DER_CRL"],
"requireTimestamp":false,"clockSkewSeconds":300,
"maxOCSPAgeSeconds":86400}}
revocationInfo är valfri; enabled är true som standard när objektet tillhandahålls, och avstängt bevis kan inte innehålla certifikat, OCSP-svar eller CRL:er
trustedCAFile identifierar explicit PEM-förtroenderötter och förblir öppen med skrivdelning nekad under hela signeringen; valideringen litar inte tyst på ett certifikat enbart för att PFX:n eller beviset innehåller det
Bevisarrayer innehåller kanoniska Base64-strängar som kodar completa DER-certifikat, CRL:er eller OCSPResponse-värden; minst en CRL eller OCSP-response krävs när aktiverat
Det standard signerade attributet innehåller DER-CRL:er och BasicOCSPResponse-värden; completa OCSPResponse-indata normaliseras före inbäddning, och certifikat tillhandahåller ytterligare valideringskedjematerial
HPDFNormalizeHeadlessOCSPResponse i HPDFHeadlessRevocationInfo exponerar den avgränsade lyckat-svar-konverteringen för Pascal-anropare; den validerar DER-ramning och extraherar BasicOCSPResponse, medan kryptografisk och statusvalidering förblir signerings- eller LTV-verifierarens ansvar
Autentiserat bevis
Validering autentiserar den faktiska CMS-signaturen, signeringscertifikatbindning, explicit certifikatförtroende, certifikatgiltighet, CRL-signaturer och giltighetsintervall samt OCSP-signaturer, svararauktorisering, utfärdaridentifierare, svarsstatus och uppdateringstider
Bevis måste täcka den completa icke-rot-signerarkedjan; spärrat, okänt, utgånget, ofullständigt, oauktoriserat, obetrott eller felformat bevis kan inte publicera en PDF
requireTimestamp kräver en faktisk signeringstidsstämpel och autentiserar bevis för dess TSA-kedja också; använd applikationstransporten och separata TSA-förtroendeinställningar som beskrivs i Windows-signeringstidsstämplar
clockSkewSeconds accepterar 0 till 86400, medan maxOCSPAgeSeconds måste vara positiv; båda konfigurerar bevistidsvalidering snarare än att ändra certifikatförtroende
Seed-värden och publicering
Ett obligatoriskt SV AddRevInfo true-krav fordrar detta validerade signerat-bevis-arbetsflöde; ett obligatoriskt false-värde kräver att attributet utelämnas
Arbetsflödet stödjer befintliga och nyskapade signaturfält, första certifieringssignaturer, efterföljande tillåtna godkännandesignaturer, stödda krypterade källor och signering av osignerade dokument
Förtroendefilen och det avkodade beviset delar en bytetak på en åttondel av memoryBytes; bevisobjektantal begränsas till det mindre av objectCount och 4096 före allokering
Kanonisk Base64, DER-ramning, budgetar, avbrott, CMS-integritet och bevisgiltighet kontrolleras före binär publicering; avvisat bevis bevarar det ursprungliga dokumenthandle:t och publicerar inga PDF-byte, medan publiceringsåteranrop behåller den befintliga återanropsfelsemantiken
Ett lyckat resultat rapporterar revocationInfo: true först efter att det faktiskt signerade attributet autentiserats; avstängt eller utelämnat bevis rapporterar false
Se HPDFNormalizeHeadlessOCSPResponse för den avgränsade nativa konverteringen från en completa OCSPResponse till BasicOCSPResponse-DER
Se inkrementell PFX-signering för källögonblicksbilder, krypteringsbehörigheter, tidigare signaturpolicyer, utdatabudgetar och återanropspubliceringssemantik