Flussi di firma nativi su Linux
L'ABI callback versionata esegue job sign con schemaVersion 1 su documenti caricati o su input callback espliciti; le revisioni sorgente originali, gli ID documento e le policy AES-256 R5/R6 autenticate restano conservati
Identità di firma
Fornisci certificatePEM e privateKeyPEM, oppure pfxBase64 in padding canonico e pfxPassword; mescolare queste forme di identità non è valido
password autentica l'input PDF esplicito; un contesto caricato conserva la propria password PDF, mentre la password PFX separata autentica il contenitore di firma
Il decodificatore PFX controlla alfabeto, padding e bit non usati prima che OpenSSL analizzi il contenitore delimitato; i buffer privati dell'identità vengono azzerati dopo l'operazione
Campi firma e aspetto
field seleziona un campo firma esistente non firmato; imposta createField: true per creare un nuovo nome campo completamente qualificato su page a base zero
Le coordinate del nuovo campo usano lo user space PDF: left, bottom, right e top valgono per default 36, 36, 240 e 108; un nome esistente non può essere ricreato
Un caption opzionale genera un aspetto Unicode esplicito con un font TrueType incorporato, mappatura ToUnicode e shaping nativo degli script complessi; fontFamily ha per default DejaVu Sans e fontSize 12
Profilo e certificazione
cades seleziona ETSI.CAdES.detached; trustedCAFile fornisce una policy CA esplicita per la verifica di trust al momento della firma, e reservedCMSBytes vale 16384 per default
certificationPermission è 0 per una firma di approvazione oppure 1, 2 o 3 per una firma di certificazione first-document; il writer crea la trasformazione DocMDP corrispondente e il binding dei permessi nel catalog
Le restrizioni dei permessi da user password, i campi read-only, le firme esistenti e i vincoli di certificazione restano applicati dalla policy nativa di firma del documento
Pubblicazione transazionale
L'API Pascal portabile TimestampToFile crea un DocTimeStamp indipendente con ETSI.RFC3161 sul ByteRange del PDF, inclusa la dichiarazione ESIC, la policy esplicita di trust e CRL della TSA e l'eccezione timestamp DocMDP/FieldMDP autenticata
Questo entry point per il timestamp del documento è un'API Pascal; la callback timestamp dell'ABI qui sotto fornisce i timestamp di firma per i job di firma esistenti
Trasporto timestamp via ABI esteso fornisce risposte RFC 3161 reali attraverso una callback sincrona di proprietà del chiamante, con byte di risposta delimitati, cancellazione condivisa e policy esplicita di trust/revoca della TSA
Le callback di output e result ricevono una firma completamente preparata; prima della pubblicazione via callback, l'ABI ricarica il candidato per validare il contesto del documento firmato
Solo una pubblicazione riuscita sostituisce il contesto caricato; identità non valide, creazione del campo, budget, cancellazione o fallimento della callback preservano il documento precedente e il suo albero di campi
Le callback di output sono di proprietà del chiamante e possono aver già consumato byte quando una callback successiva fallisce; i chiamanti che richiedono un rollback esterno devono gestire da soli lo staging di quei byte
Collaudo
Linux FPC 3.2.2 e 3.3.1 superano ciascuno 270 asserzioni ctypes reali, 228 controlli indipendenti su PDF/immagini/sicurezza/CMS, 33 asserzioni dell'ABI C e 80 operazioni concorrenti su handle condivisi
I controlli indipendenti autenticano ID e policy di sicurezza AES, validano CMS e CAdES con OpenSSL, respingono contenuto manomesso, ispezionano le trasformazioni di certificazione e i font degli aspetti incorporati, e verificano i pixel effettivi della firma visibile
ABI C nativa · Firma PFX in Pascal · Trasporto timestamp in Pascal