Estas unidades expõem os injetores de nível de stream, validadores, operações de assinatura e records de suporte usados pelos métodos de conveniência correspondentes de TPdf
Use-as quando um fluxo de trabalho já possui streams de origem e de destino, ou precisa de opções de validação e de detalhes de resultado independentes de uma instância de TPdf
FPdfPdfCommon| Function | Purpose |
|---|---|
AnsiCountDictKeyTokens | Conta uma chave de nome decodificada no nível superior de um dicionário PDF bruto, pulando valores aninhados, strings e comentários |
TPdfParserResourceBudget | Define limites de recursão, tokens, objetos, bytes decodificados, taxa de expansão, alocação e prazo de todo o processo; Default retorna os padrões da biblioteca |
ConfigurePdfParserResourceBudget | Valida e substitui atomicamente a política de processo usada por operações posteriores de parser personalizado |
GetPdfParserResourceBudget | Retorna um snapshot thread-safe da política de processo atual |
ResetPdfParserResourceBudget | Restaura a política de processo padrão |
PdfParserStartTick, PdfParserDeadlineReached | Fornecem pontos de controle de prazo seguros contra wrap para implementações personalizadas de parser |
FPdfAssocFilesprocedure InjectAssociateFiles(Source: TStream; Dest: TStream; const Options: TAssocFilesOptions);
| Public type | Purpose |
|---|---|
TPdfAFRelationship | Valores AFRelationship da ISO 32000-2: afSource, afData, afAlternative, afSupplement, afUnspecified, afEncryptedPayload, afFormData e afTemplate, incluindo as adições do PDF 2.0 |
TAssociateFile | Um arquivo associado com FileName, Description, o payload Content, Relationship e MIMEType opcional |
TAssocFilesOptions | Lista Files de arquivos associados e TargetPage de catálogo ou de página, com padrões de TAssocFilesOptions.Default |
EPdfAssocFilesError | Disparada por InjectAssociateFiles quando a origem não tem trailer ou catalog legíveis, ou quando TargetPage é negativa ou não aponta uma página na ordem da árvore de páginas; o stream de destino permanece intacto |
FPdfPades| Function | Purpose |
|---|---|
InjectPadesDssMarkers | Adiciona material de DSS de certificados, OCSP, CRL e VRI por meio de uma atualização incremental |
RenewPadesArchiveTimestamp | Anexa um carimbo de tempo de documento e informa o nível de arquivo resultante e os metadados do carimbo |
ValidatePadesCompliance, ValidatePadesTrust | Validam a cardinalidade de entradas de assinatura de nível superior, a exclusão exata de tokens ByteRange e Contents, a integridade criptográfica, a confiança, a revogação e as evidências de carimbo de tempo |
AnalyzePadesSignatureRevisions | Classifica revisões posteriores, alterações de objetos, efeitos de FieldMDP e riscos de modificação |
BuildPadesEvidenceReport, BuildPadesEvidenceReportBytes | Constroem evidências limitadas de múltiplas assinaturas a partir de um stream ou de uma captura imutável existente dos bytes de origem |
EvaluatePadesSignatureAlgorithm, InspectPadesSignatureAlgorithm | Inspecionam os parâmetros de algoritmos de CMS e de certificados e avaliam seu status de segurança suportado, aplicando o perfil de curva elíptica do PDF 2.0 e os signature suites RSA da ETSI TS 119 312 |
VerifyCmsAlgorithmProtection | Verifica o atributo assinado de proteção de algoritmo do CMS contra os algoritmos de digest e de assinatura do signatário |
SignPadesBytes | Anexa uma assinatura PAdES local com carimbo de tempo RFC 3161 opcional |
PreparePadesRemoteSignature, CompletePadesRemoteSignature | Preparam e completam um fluxo de assinatura remota com placeholder de largura fixa vinculado |
SavePadesRemoteSigningRequest, LoadPadesRemoteSigningRequest | Persistem ou restauram os metadados de solicitação exigidos para completar a assinatura remota |
| Area | Types |
|---|---|
| Levels and validation | TPadesLevel (plUnknown, plNone, plB_B, plB_T, plB_LT, plB_LTA), TPadesValidationIssue, TPadesValidationIssues, TPadesValidationSourceStatus (pvssUnavailable, pvssOriginalBytes, pvssIncomplete), TPadesValidationResult |
| Cryptography | TPadesCryptoStatus (pcsNotChecked, pcsValid, pcsInvalid, pcsUnsupported, pcsIndeterminate), TPadesSignatureAlgorithmFamily (psafUnknown, psafRsa, psafEcdsa, psafEd25519, psafEd448), TPadesSignatureAlgorithmInfo, TPadesSignatureValidation, TPadesSignatureValidations |
| Trust validation | TPadesTrustNetworkPolicy (ptnpOffline, ptnpOnline), TPadesTrustValidationStage, TPadesTrustValidationProgress, TPadesTrustValidationProgressEvent, TPadesTrustValidationOptions, TPadesTrustValidationAsyncStatus, TPadesTrustValidationCompletion, TPadesTrustValidationReply |
| Revision analysis | TPadesRevisionAnalysisStatus (prasNotChecked, prasNoLaterChanges, prasAllowed, prasDisallowed, prasSuspicious, prasIndeterminate), TPadesRevisionDecision (prdAllowed, prdDisallowed, prdSuspicious, prdIndeterminate), TPadesFieldMdpAction (pfmaNone, pfmaAll, pfmaInclude, pfmaExclude, pfmaUnknown), TPadesRevisionChangeKind, TPadesRevisionRisk, TPadesRevisionRisks, TPadesFieldNames, TPadesRevisionObjectChange, TPadesRevisionObjectChanges, TPadesSignatureRevisionAnalysis, TPadesSignatureRevisionAnalyses, TPadesRevisionAnalysisReport |
| Evidence reports | TPadesHashStrings, TPadesObjectNumbers, TPadesEvidenceReportOptions, TPadesEvidenceMaterialKind, TPadesValidationMaterialEvidence, TPadesValidationMaterialEvidences, TPadesVriEvidence, TPadesVriEvidences, TPadesSignatureEvidence, TPadesSignatureEvidences, TPadesEvidenceReport |
| DSS and archive timestamps | TPadesDssMaterial, TPadesDssMaterials, TPadesDssIndexes, TPadesDssVri, TPadesDssVris, TPadesDssOptions, TPadesArchiveTimestampOptions, TPadesArchiveTimestampReport |
| Signing | TPadesSeedValueConstraint, TPadesSeedValueConstraints, TPadesSignatureFieldOptions, TPadesSignOptions, TPadesRemoteSignOptions, TPadesRemoteByteRange, TPadesRemoteSigningRequest |
TPadesValidationResult fornece o Level de arquivo, o conjunto Issues, SourceStatus, IntegrityStatus e o array Signatures por assinatura, com IsCompliant, IsCompliantAt, IsCryptographicallyValid e DocTimeStampCount contando dicionários Document Time-stamp; os records de opções fornecem um inicializador estático Default
TPadesSignatureAlgorithmInfo informa Family, DigestAlgorithmOid, SignatureAlgorithmOid, PublicKeyAlgorithmOid, CurveOid, DigestParametersPresent, DigestParameterBits, SignatureParametersPresent, PublicKeyParametersPresent, PublicKeyParametersAreNamedCurve e PolicyStatus; TPadesSignatureValidation adiciona os veredictos IsDocumentTimeStamp, CoveredRevisionLength, ByteRangeStatus, CmsSignatureStatus, AlgorithmPolicyStatus, SigningCertificateStatus, CertificateTrustStatus, QualifiedTrustStatus, RevocationStatus, TimeStampStatus, TimeStampSignatureStatus, TimeStampTrustStatus e TimeStampRevocationStatus, além de NativeSignatureError, NativeTrustError, SignerCertificateSha256, CertificateChainSha256 e as evidências aninhadas AlgorithmInfo e QualifiedTrust
TPadesTrustValidationStage percorre ptvsStarting, ptvsReadingSource, ptvsParsingSignatures, ptvsCryptographicIntegrity, ptvsCertificateChain, ptvsAiaRetrieval, ptvsOcspRetrieval, ptvsCrlRetrieval, ptvsTimestampToken e ptvsCompleted; TPadesTrustValidationProgress carrega Stage, SignatureIndex, SignatureCount e Percent; TPadesTrustValidationOptions seleciona NetworkPolicy, CheckRevocation, CheckTimeStamps, UrlRetrievalTimeoutMs, QualifiedTrustEvaluator, CancellationToken e OnProgress; TPadesTrustValidationAsyncStatus é ptvasSuccess, ptvasCancelled ou ptvasFailure, e TPadesTrustValidationCompletion retorna o Status assíncrono, Validation, ErrorMessage, ErrorClassName e CancellationReason
TPadesRevisionChangeKind classifica prckCrossReference, prckSignature, prckValidationMaterial, prckFormField, prckAnnotation, prckPageContent, prckDocumentStructure, prckMetadata, prckActiveContent, prckDeletedObject, prckCompressedObject e prckUnknown; TPadesRevisionRisk abrange prrMalformedRevisionChain, prrDuplicateObjectDefinition, prrUnreferencedObjectDefinition, prrSignatureObjectRedefined, prrPageContentChanged, prrDocumentStructureChanged, prrActiveContentAdded, prrFieldMdpUnresolved, prrCompressedObjectUnresolved, prrCoveredRevisionNotFound e prrResourceLimitExceeded
TPadesRevisionObjectChange informa RevisionIndex, ObjectNumber, Generation, Offset, ObjectStreamNumber, ObjectStreamIndex, Kind, Decision, IsAuthoritative e IsRedefinition; TPadesSignatureRevisionAnalysis adiciona SignatureIndex, SignatureObjectNumber, CoveredRevisionLength, CoveredRevisionIndex, DocMdpPermission, FieldMdpAction, FieldNames, LaterRevisionCount, Status, Risks e Changes; TPadesRevisionAnalysisReport agrega SourceStatus, RevisionCount, SignatureCount, Status, Risks, Signatures e ErrorMessage
TPadesEvidenceMaterialKind seleciona pemkCertificate, pemkOcsp ou pemkCrl; TPadesValidationMaterialEvidence informa Kind, ObjectNumber, StoredLength e Sha256 para cada stream armazenado; TPadesVriEvidence é indexado por Key e ObjectNumber e lista CertificateObjectNumbers, OcspObjectNumbers e CrlObjectNumbers
TPadesSignatureEvidence captura SignatureIndex, SignatureObjectNumber, IsDocumentTimeStamp, SubFilter, ByteRangeA, ByteRangeB, ByteRangeC, ByteRangeD, ContentsSha256, VriKey, SignaturePolicyOid, CommitmentTypeOid, HasMatchingVri, VriEvidenceIndex, TimeStampTokenSha256, TimeStampPolicyOid, TimeStampGenTime, TimeStampNonce, NativeFactsAvailable, NativeReason, NativeTime, NativeDocMdpPermission e o Validation e Revision aninhados
TPadesEvidenceReport agrega SourceLength, PdfiumSignatureCount, DssCertificateCount, DssOcspCount, DssCrlCount, DssVriCount, StoredValidationBytes, IsTruncated, Validation, RevisionAnalysis, Signatures, ValidationMaterials e VriEntries, limitado por TPadesEvidenceReportOptions com TrustOptions, MaxSourceBytes, MaxSignatures, MaxRevisionChangesPerSignature, MaxValidationMaterials, MaxStoredValidationBytes e MaxVriEntries
TPadesDssMaterial armazena um payload DerBytes de certificado, OCSP ou CRL; TPadesDssVri seleciona material de nível de documento por meio de SignatureContents, CertIndexes, OcspIndexes e CrlIndexes; TPadesDssOptions aceita Certs, Ocsps, Crls, Vris, EsicExtensionLevel e IncludeVri; TPadesArchiveTimestampOptions carrega TsaUrl, Nonce, ContentsSize, UpdateDss e o DssOptions aninhado; TPadesArchiveTimestampReport informa SourceLevel, ResultLevel, PreviousDocTimeStampCount, ResultDocTimeStampCount, SourceLength, ResultLength, DssUpdated, GenTime, PolicyOid e Nonce
TPadesSeedValueConstraint restringe psvcFilter, psvcSubFilter, psvcVersion, psvcReasons, psvcLegalAttestation, psvcAddRevocationInfo ou psvcDigestMethod; TPadesSignatureFieldOptions restringe FieldName, RequiredSeedValues, Reasons, LegalAttestations, AcceptableCertificates, CertificateRequired, LockAction, LockFields e CertificationPermission; TPadesSignOptions carrega CertificateThumbprint, PaddingScheme, Reason, LegalAttestation, Location, ContactInfo, Name, SigningTimeUtc, CommitmentTypeOid, ContentsSize, Level, TsaUrl, Nonce, o grupo SignaturePolicyOid, SignaturePolicyHash, SignaturePolicyUri e SignaturePolicyDocument, e o FieldOptions aninhado; TPadesRemoteSignOptions espelha o subconjunto seguro para uso remoto Reason, LegalAttestation, Location, ContactInfo, Name, SigningTimeUtc, CommitmentTypeOid, ContentsSize e FieldOptions; TPadesRemoteSigningRequest vincula FormatVersion, PreparedFingerprint, DocumentDigest, ByteRange, ContentsHexOffset e ContentsSize
TPadesTrustValidationOptions.QualifiedValidationTime seleciona o tempo de avaliação do histórico de serviço da trusted list, com zero selecionando o tempo atual
TPadesSignatureValidation também carrega RevocationReason: TPdfCmsRevocationReason, NativeRevocationError: Cardinal, TimeStampRevocationReason: TPdfCmsRevocationReason e NativeTimeStampRevocationError: Cardinal. Os diagnósticos da assinatura vêm da checagem detached CMS dela; os diagnósticos do timestamp vêm da checagem do token anexado, incluindo Document Time-stamps, e nunca substituem os diagnósticos da assinatura
Os reasons assumem pcrrNone e os erros nativos assumem zero quando a revogação está desabilitada ou a checagem CMS correspondente não é alcançada. Esses defaults não estabelecem sucesso; inspecione RevocationStatus e TimeStampRevocationStatus. ValidatePadesTrustAsync preserva esses campos no resultado de conclusão, e TPadesSignatureEvidence.Validation os retém para TPadesEvidenceReport.ToJson e ToCsv
Os campos de diagnóstico são anexados ao record público TPadesSignatureValidation, aumentando seu tamanho. Recompile aplicativos e pacotes que trocam esse record ou records que o contêm contra as units atualizadas; binários compilados antes não compartilham o novo layout do record
FPdfPdfaprocedure InjectPdfAMarkers(Source: TStream; Dest: TStream; const Options: TPdfASaveOptions);
function ValidatePdfACompliance(Source: TStream): TPdfAValidationResult;
function ReadPdfAInfoFieldPresence(const PdfData: TBytes): TPdfAMetadataFields;
function ComparePdfAInfoAndXmp(const Info: TPdfAMetadataValues; Packet: TPdfXmpPacket): TPdfAMetadataReport;
function SynchronizePdfAInfoToXmp(const Info: TPdfAMetadataValues; Packet: TPdfXmpPacket): TPdfAMetadataFields;
| Public type | Purpose |
|---|---|
TPdfAConformance | Parte e nível de conformidade PDF/A detectados ou solicitados |
TPdfAValidationIssue, TPdfAValidationIssues | Constatações individuais de preflight e sua representação em conjunto |
TPdfANameArray | Lista de strings usada pelas constatações de validação baseadas em nomes |
TPdfAMetadataField, TPdfAMetadataFields | Os oito mapeamentos de Info para XMP da Tabela 1 da ISO 19005-1 (pamfTitle, pamfAuthor, pamfSubject, pamfKeywords, pamfCreator, pamfProducer, pamfCreationDate, pamfModDate) e sua representação em conjunto |
TPdfAMetadataValues | Valores Info Unicode Title, Author, Subject, Keywords, Creator, Producer, CreationDate e ModDate, com a presença da chave rastreada por Present independentemente de texto vazio |
TPdfAMetadataState, TPdfAMetadataComparison, TPdfAMetadataComparisons, TPdfAMetadataReport | Evidências tipadas de equivalência por campo com os estados pamsNotRequired, pamsEquivalent, pamsXmpMissing, pamsXmpTypeMismatch, pamsValueMismatch, pamsInvalidInfoDate, pamsInvalidXmpDate, o Field, State, InfoValue e XmpValue por campo, o HasXmpPacket, XmpParseError, MismatchFields e o array Comparisons de nível de relatório, e o status agregado |
TPdfAValidationResult | Conformidade, o conjunto Issues e o resultado IsCompliant |
TPdfASaveOptions | Metadados, identificadores, bytes do perfil ICC em IccProfileData, output intent e configurações de conformidade com valores Default |
InjectPdfAMarkers usa busca esparsa da última revisão e cópia limitada da origem para layouts clássicos, xref-stream, híbridos e de object-stream válidos, mantendo o parser de compatibilidade para dados de referência cruzada não suportados ou malformados
A revisão incremental preserva as gerações de raiz e de Info, o estilo de xref da origem, os identificadores do trailer, o comportamento de recusa de criptografia e a semântica de rebaixamento do Level A
FPdfPdfeprocedure InjectPdfEMarkers(Source: TStream; Dest: TStream; const Options: TPdfESaveOptions);
function ValidatePdfECompliance(Source: TStream): TPdfEValidationResult;
| Public type | Purpose |
|---|---|
TPdfEConformance | Conformidade PDF/E detectada ou solicitada |
TPdfEValidationIssue, TPdfEValidationIssues | Constatações estruturais e de conteúdo de PDF/E, incluindo /XFA de AcroForm de nível superior e /NeedAppearances true indireto; campos comuns de AcroForm e ativos de engenharia embutidos continuam permitidos |
TPdfEValidationResult | Conformidade, o conjunto Issues e o resultado IsCompliant |
TPdfESaveOptions | PDF/E Version, metadados, identificadores de documento e padrões |
FPdfPdfr| Function | Purpose |
|---|---|
InjectPdfRMarkers | Grava a identificação PDF/R e as estruturas restritas de catálogo e de Info |
ValidatePdfRCompliance | Valida um stream com os limites padrão de documentos raster |
ValidatePdfRComplianceWithOptions | Valida um stream com requisitos de resolução, geometria, strip e criptografia selecionados por quem chama |
ValidatePdfRPageFacts | Valida geometria de páginas já coletada, contagens de objetos, características de imagens e filtros |
Os tipos públicos são TPdfRConformance, TPdfRValidationIssue, TPdfRValidationIssues, TPdfRValidationResult com seu conjunto Issues e resultado IsCompliant, TPdfRStringArray, TPdfRValidationOptions, TPdfRPageFacts e TPdfRSaveOptions
TPdfRValidationOptions ajusta MinimumResolutionDpi, MaximumResolutionDpi, GeometryTolerancePoints, RequireFullPageStrip e RequireEncryptedPdf20Profile; TPdfRSaveOptions carrega StripInfoOptionalEntries e StripCatalogOptionalEntries para limpar entradas de Info de origem ou de catálogo que a §6.4.3 ou a lista branca da §6.3 rejeitariam de outra forma; TPdfRPageFacts registra PageNumber, MediaWidth, MediaHeight, os limites ImageLeft, ImageBottom, ImageRight e ImageTop, ImageCount, TextObjectCount, PathObjectCount, FormObjectCount e ShadingObjectCount, a geometria raster PixelWidth, PixelHeight, HorizontalDpi, VerticalDpi e BitsPerPixel, além de ColorSpace e a cadeia Filters de cada página
FPdfPdfua| Function | Purpose |
|---|---|
InjectPdfUaMarkers | Adiciona marcadores de identificação PDF/UA, idioma, título, MarkInfo, preferência de visualizador e XMP |
ValidatePdfUaCompliance | Valida marcadores e estrutura PDF/UA-1 ou PDF/UA-2, usando opcionalmente os bytes originais para verificações de XMP |
PdfUaIsStandardStructType | Testa um nome de tipo de estrutura contra o conjunto padrão da ISO, incluindo títulos numerados |
PdfReadRoleMapPairs | Extrai chaves e valores de RoleMap diretos ou indiretos em arrays paralelos |
Os tipos públicos são TPdfUaConformance, TPdfUaValidationIssue, TPdfUaValidationIssues, TPdfUaValidationResult com seu conjunto Issues e resultado IsCompliant, TPdfUaSaveOptions e TPdfUaNameArray
A unidade PDFium também expõe TPdfUaLanguageSource, TPdfUaLanguageContentKind, TPdfUaLanguageResolution, TPdfUaLanguageSpan, TPdfUaLanguageSpans, TPdfUaLanguageCoverageOptions e TPdfUaLanguageCoverageReport para evidências limitadas de idioma efetivo
TPdfUaUnicodeObjectCoverage, TPdfUaUnicodeObjectCoverages, TPdfUaUnicodeCoverageOptions e TPdfUaUnicodeCoverageReport fornecem evidências limitadas de extração de Unicode direto e de ActualText no escopo de objetos
ValidatePdfUaPageContentTagging cruza as marcações nativas de objetos de página com os MCIDs de estrutura no escopo da página e informa tanto conteúdo real não marcado quanto conteúdo Artifact exposto na árvore de estrutura
TPdfUaSaveOptions.Default seleciona os padrões de PDF/UA-1, enquanto TPdfUaSaveOptions.PdfUa2 seleciona o perfil PDF/UA-2
TPdfUaSaveOptions carrega DocumentTitle, Language, os metadados Author, Subject, Keywords, Creator e Producer, CreationDate e ModDate, os UUIDs DocumentId e InstanceId, os identificadores Part, Revision, Amd e Corr, e as chaves EnsureMarkInfo e EnsureDisplayDocTitle para injetar as entradas de catálogo exigidas quando a origem não as tem
FPdfPdfvtprocedure InjectPdfVTMarkers(Source: TStream; Dest: TStream; const Options: TPdfVTSaveOptions);
function ValidatePdfVTCompliance(Source: TStream): TPdfVTValidationResult;
function ReadPdfVTDPartEvidence(Source: TStream): TPdfVTDPartEvidence;
| Public type | Purpose |
|---|---|
TPdfVTConformance, TPdfVTTrappedState | Conformidade PDF/VT e seleção de trapped-state herdada de PDF/X entre ptvUnspecified, ptvTrue e ptvFalse, com ptvUnspecified normalizado para ptvFalse na gravação |
TPdfVTValidationIssue, TPdfVTValidationIssues, TPdfVTValidationResult | Constatações de validação, o conjunto Issues, a conformidade e o resultado IsCompliant |
TPdfDpmEntry, TPdfDpmEntries, TDpmTarget | Entradas de Document Part Metadata com Name, Value e IsNestedDict, colocadas no destino dptRoot ou dptLeaf |
TPdfVTDPartEvidence | Hierarquia limitada de partes de documento e evidências de condição de impressão com PageCount, RecordLevel e RecipientRecordCount |
TPdfVTSaveOptions | Base PDF/X, bytes do perfil ICC em IccProfileData, output intent por meio de OutputCondition, OutputConditionIdentifier, RegistryName e OutputIntentInfo, estado Trapped, metadados, identificadores, DPart, DPM por meio de DpmEntries posicionadas por DpmTarget e configurações padrão |
FPdfPdfxprocedure InjectPdfXMarkers(Source: TStream; Dest: TStream; const Options: TPdfXSaveOptions);
function ValidatePdfXCompliance(Source: TStream): TPdfXValidationResult;
| Public type | Purpose |
|---|---|
TPdfXConformance, TPdfXTrappedState | Variante PDF/X e seleção de trapped-state do dicionário Info entre ptUnspecified, ptTrue, ptFalse e ptUnknown, com ptUnspecified omitindo a entrada |
TPdfXValidationIssue, TPdfXValidationIssues, TPdfXValidationResult | Constatações de validação, o conjunto Issues, a conformidade e o resultado IsCompliant |
TPdfXSaveOptions | Conformidade, bytes do perfil ICC em IccProfileData, output intent por meio de OutputCondition, OutputConditionIdentifier, RegistryName e OutputIntentInfo, estado Trapped, metadados, identificadores e padrões |
TPadesRsaPssParameters expõe Valid, HashAlgorithmOid, MaskGenAlgorithmOid, MaskGenHashAlgorithmOid, SaltLength e TrailerField; TPadesSignatureAlgorithmInfo.SignaturePss e PublicKeyPss relatam restrições de CMS e de SPKI de forma independente
InspectPadesSignatureAlgorithm exige parâmetros PSS de CMS, aceita a SEQUENCE vazia com os padrões do RFC e rejeita DER malformado, campos explícitos duplicados ou fora de ordem, codificações de inteiro não suportadas e blocos de parâmetros grandes demais
EvaluatePadesSignatureAlgorithm exige que o digest do CMS corresponda ao hash PSS; uma chave apenas PSS rejeita PKCS #1 v1.5, e chaves restritas exigem hash, hash de MGF e trailer correspondentes, com salt de assinatura no mínimo o mínimo da chave
Um hash MGF1 suportado diferente pode ser válido; algoritmos desconhecidos são Unsupported, hashes MGF fracos são Indeterminate e hashes quebrados são Invalid
Os blocos de parâmetros são limitados a 16 KiB e os valores de salt/trailer são inteiros de 32 bits não negativos; esta política estrutural complementa o backend criptográfico e não prova a força da chave RSA nem a validade da assinatura EMSA-PSS
Ao construir evidências de algoritmo manualmente, preencha SignaturePss e SignatureParametersPresent em vez de fornecer apenas o OID PSS
Os métodos TPdf.SaveAsPdfA, SaveAsPdfE, SaveAsPdfR, SaveAsPdfUa, SaveAsPdfVT, SaveAsPdfX e os métodos PAdES fornecem wrappers de instância de documento em torno destas unidades