Informações de revogação assinadas no Windows

A operação sign do Windows pode autenticar evidências de CRL e OCSP, incluí-las no signed attribute RevocationInfoArchival da Adobe, e publicar o PDF somente depois de validar o CMS realmente gerado e as evidências embutidas

Opções de assinatura

{"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 é opcional; enabled tem default true quando o objeto é fornecido, e evidências desabilitadas não podem conter certificados, respostas OCSP nem CRLs

trustedCAFile identifica explicitamente trust roots PEM e permanece aberto com compartilhamento de gravação negado durante toda a assinatura; a validação não confia silenciosamente num certificado só porque o PFX ou as evidências o contêm

Arrays de evidências contêm strings canônicas Base64 codificando certificados DER completos, CRLs ou valores OCSPResponse; pelo menos uma CRL ou resposta OCSP é exigida quando habilitado

O atributo assinado padrão contém CRLs DER e valores BasicOCSPResponse; entradas completas de OCSPResponse são normalizadas antes do embutimento, e certificados fornecem material adicional de cadeia de validação

HPDFNormalizeHeadlessOCSPResponse em HPDFHeadlessRevocationInfo expõe a conversão delimitada de respostas bem-sucedidas para chamadores Pascal; ela valida o enquadramento DER e extrai o BasicOCSPResponse, enquanto a validação criptográfica e de status permanece responsabilidade do verifier de assinatura ou LTV

Evidências autenticadas

A validação autentica a assinatura CMS real, o binding signing-certificate, a confiança explícita em certificados, a validade de certificados, assinaturas e intervalos de validade de CRLs, e assinaturas OCSP, autorização de responders, identificadores de issuers, status de respostas e tempos de atualização

As evidências precisam cobrir a cadeia de assinatura completa não raiz; evidências revogadas, desconhecidas, expiradas, incompletas, não autorizadas, não confiáveis ou malformadas não podem publicar um PDF

requireTimestamp exige um timestamp real de assinatura e autentica as evidências da cadeia do TSA também; use o transporte da aplicação e as configurações separadas de confiança do TSA descritas em Timestamps de assinatura no Windows

clockSkewSeconds aceita de 0 a 86400, enquanto maxOCSPAgeSeconds precisa ser positivo; ambos configuram a validação do tempo das evidências, em vez de mudar a confiança em certificados

Valores de seed e publicação

Uma constraint SV AddRevInfo true obrigatória exige este workflow validado de evidências assinadas; um valor required false exige a omissão do atributo

O workflow suporta campos de assinatura existentes e recém-criados, primeiras assinaturas de certificação, assinaturas de aprovação subsequentes permitidas, origens criptografadas suportadas e assinatura de documentos não assinados

O arquivo de confiança e as evidências decodificadas compartilham um teto de bytes de um oitavo de memoryBytes; as contagens de objetos de evidências são limitadas ao menor entre objectCount e 4096 antes da alocação

Base64 canônico, enquadramento DER, orçamentos, cancelamento, integridade do CMS e validade das evidências são checados antes da publicação binária; evidências rejeitadas preservam o handle original do documento e não publicam bytes PDF, enquanto os callbacks de publicação retêm a semântica existente de falhas de callbacks

Um resultado bem-sucedido reporta revocationInfo: true somente depois de autenticar o atributo assinado real; evidências desabilitadas ou omitidas reportam false

Veja HPDFNormalizeHeadlessOCSPResponse para a conversão nativa delimitada de um OCSPResponse completo para BasicOCSPResponse DER

Veja assinatura PFX incremental para snapshots da origem, permissões de criptografia, políticas de assinaturas anteriores, orçamentos de saída e semântica de publicação por callbacks