1. La Vulnerabilità Tecnica della Falsa Redazione (Vector Overlay Leak)
L'architettura interna del formato PDF renderizza i contenuti sovrapponendo livelli nidificati (content streams, oggetti vettoriali, form XObjects, metadati XMP e annotazioni). L'errore tecnico più diffuso consiste nell'eseguire l'oscuramento disegnando un rettangolo nero opaco sopra il testo sensibile tramite un editor grafico. Questa operazione si limita ad aggiungere un mero nodo grafico nello stack visivo in cima alla pagina. Il testo originale sottostante, l'albero degli oggetti vettoriali, le stringhe delle annotazioni e i livelli di testo invisibili generati dal riconoscimento ottico dei caratteri (OCR) rimangono integralmente intatti nel codice sorgente del file. Un potenziale attaccante non necessita di strumenti avanzati: è sufficiente selezionare l'area nera con il mouse, copiare il contenuto negli appunti e incollarlo in un editor di testo per svelare istantaneamente l'informazione protetta.
2. Come funziona la redazione distruttiva in questo strumento
Modificare in modo affidabile i content stream di un PDF qualsiasi è complesso: il testo può essere spezzato in frammenti, codificato con font incorporati o nascosto in livelli OCR. Per garantire che nulla resti sotto i riquadri, lo strumento usa la rasterizzazione della pagina, con `pdf.js` e `pdf-lib` eseguiti nel browser:
- la pagina selezionata viene disegnata a circa 180 DPI in un canvas;
- sul canvas vengono dipinti i rettangoli neri nelle posizioni tracciate;
- il risultato diventa un'immagine JPEG che sostituisce la pagina originale;
- viene creato un nuovo PDF che contiene le altre pagine copiate così come sono e la pagina ricostruita, senza gli oggetti della pagina originale né i metadati del documento, come autore e titolo.
Il prezzo della sicurezza è che la pagina oscurata non contiene più testo selezionabile o ricercabile. Le altre pagine restano identiche: se contengono dati personali vanno oscurate anch'esse, caricando il file già redatto e ripetendo l'operazione.
3. Firma digitale e integrità dopo la redazione
La redazione crea un file nuovo: un'eventuale firma digitale presente nel documento originale non è più valida. Se il file oscurato deve avere valore legale va firmato dopo la redazione con il proprio dispositivo di firma (PAdES o CAdES). L'integrità del file può essere documentata con un'impronta crittografica, per esempio:
$$H = \text{SHA-256}(\text{PDF}_{\text{Redacted}})$$
L'impronta $H$ è quella che il software di firma cifra con la chiave privata del firmatario: questo strumento non firma i documenti e non accede ai dispositivi di firma.
4. Gestione dell'Heap Memory V8 e Web Workers per Grandi Fascicoli
L'elaborazione di fascicoli processuali o perizie scansionate ad alta risoluzione che superano i 500 MB in un browser incontra stringenti limiti fisici d'allocazione memoria nell'heap del motore JavaScript (es. motore V8 di Chrome). Caricare un file massivo in un singolo buffer continuo (`ArrayBuffer`) provoca l'esaurimento della RAM allocabile e il crash imprevisto della tab (*Out of Memory - OOM*).
Lo strumento carica il file intero in memoria: la ricostruzione del documento avviene in un Web Worker, a cui i dati vengono passati come oggetti trasferibili (`Transferable Objects`) senza copiarli, così l'interfaccia resta reattiva. Su smartphone e con fascicoli molto grandi conviene prima estrarre solo le pagine da oscurare con lo strumento Unisci e Dividi.