exif.tools
Strumenti dati
Lingua: Italiano

Progettazione tecnica

Metodologia e limiti di sicurezza

L'implementazione privilegia la provenienza dei dati, la mutazione minima, l'incertezza esplicita e la verifica ripetibile rispetto alla conversione solo per comodità.

1. Identificazione dell'ingresso

Il parser non si basa esclusivamente sul nome del file. Controlla ZIP, OLE, JSON, XML e le firme di testo, quindi ispeziona i membri del pacchetto ove applicabile. La normalizzazione del percorso rifiuta percorsi assoluti, barre rovesciate, componenti trasversali, nomi normalizzati duplicati, crittografia, compressione non supportata, archivi multi-disco, ZIP64, conteggi di voci eccessivi, dimensioni espanse eccessive e rapporti di compressione sospetti.

2. Lettura ridondante

Testo delimitato

Una macchina a stati orientata ai byte registra l'intervallo di valori grezzi di ciascun campo rispettando i delimitatori tra virgolette, le virgolette con escape e le terminazioni di riga incorporate. Una macchina a stati con stringa decodificata separata analizza lo stesso input. Le loro matrici vengono confrontate prima che sia consentito l'output con conservazione dei byte.

OOXML

Il lettore di pacchetti risolve le relazioni tra cartelle di lavoro e fogli di lavoro, stringhe condivise, stili, sistemi di date e inventari di contenuti. Ogni foglio di lavoro selezionato viene analizzato una volta tramite le API DOM XML del browser e nuovamente tramite uno scanner di celle XML non elaborate. Valori, testo della formula e tipi di archiviazione vengono riconciliati.

3. Corrispondenza gene-simbolo

I record di riferimento sono indicizzati in base al simbolo approvato, ai simboli precedenti, agli alias e agli identificatori stabili. La corrispondenza è classificata anziché appiattita in un'unica sostituzione:

Solo le mappature supportate non ambigue sono idonee per una raccomandazione predefinita. Le mappature degli alias sono disabilitate per impostazione predefinita perché gli alias spesso hanno una semantica più debole rispetto ai simboli precedenti.

4. Classificazione del rischio Excel

Quando possibile, le regole di protezione operano sulla stringa originale anziché su un numero JavaScript. Rilevano zeri iniziali, numeri interi lunghi, modelli di notazione scientifica, forme di mese/data/ora, prefissi di formule, posizionamento problematico di virgole, spazi bianchi di confine, modelli di virgolette, caratteri di controllo e il limite di lunghezza della formula legacy Excel.

5. Percorsi di uscita

FonteScrittore preferitoVerifica
UTF-8 CSV/TSV/TXTSostituzione dell'intervallo di byte non elaborato per i campi approvatiAccordo del lettore e byte invariati al di fuori degli intervalli di patch
XLSX/XLSMSostituzione cella XML del foglio di lavoro all'interno del pacchetto esistenteRiapri l'output, conferma le celle modificate, confronta ogni parte del pacchetto non compresso non modificato e confronta i macro byte
JSON/ODS o testo non conservabile in byteNuovo XLSX minimo che utilizza testo esplicito e celle numeriche conservatriciRilettura del pacchetto e manifest delle modifiche; etichettato come conversione piuttosto che come conservazione della fonte
Solo scansioneNessuna uscita datiPacchetto di controllo con inventario, risultati, avvisi e metadati di riconciliazione

6. Casi bloccati o vincolati

7. Artefatti di riproducibilità

L'audit ZIP include un manifest JSON leggibile dalla macchina, serie di modifiche CSV e JSON, avvisi e l'output primario quando ne esiste uno. Il manifest registra l'hash di input, l'hash di output, la versione dell'applicazione, il flusso di lavoro, la versione di riferimento, i nomi dei lettori, lo stato di riconciliazione, i conteggi delle modifiche, il conteggio delle ambiguità non risolte e il risultato della verifica.