Caso Studio
Omissia: togliere i dati personali dagli atti
prima di darli all’AI, sul tuo computer.
Omissia è un’app desktop per macOS, Windows e Linux che trova i dati personali dentro atti, contratti, buste paga e cartelle cliniche con un modello AI che gira in locale, e li sostituisce con dei segnaposto. Puoi scegliere la pseudonimizzazione reversibile, con la chiave cifrata sul tuo computer, oppure l’anonimizzazione definitiva, che non costruisce nessuna chiave e non torna indietro. In nessuno dei due casi il documento esce dalla macchina.
Il progetto si chiamava PII Legal: oggi è Omissia
Il prodotto raccontato in questa pagina è nato con il nome di lavoro PII Legal, che descriveva la tecnologia e non diceva niente a chi la doveva usare. Da oggi si chiama Omissia, ha un sito suo con prezzi, download e documentazione, ed è cresciuto parecchio: gira anche su Windows e Linux, legge i PDF scansionati, ripulisce i metadati, si integra con Word, LibreOffice e Pages e mette a disposizione un canale locale per chi vuole collegarlo al proprio gestionale. Il caso studio qui sotto è aggiornato a quello che l’app fa adesso. Il sito del prodotto è omissia.com.
Panoramica
Il problema di chi vorrebbe usare l’AI ma non può
Un avvocato che chiede a un’intelligenza artificiale di riassumere un atto, un commercialista che le fa leggere un bilancio, un consulente del lavoro che le passa una busta paga, un ufficio HR che le dà la trascrizione di un colloquio: stanno tutti facendo una cosa utile e una cosa rischiosa nello stesso momento. Utile perché il tempo risparmiato è reale. Rischiosa perché dentro quel documento ci sono il nome della persona, il suo indirizzo, il codice fiscale, gli importi: materiale che non dovrebbe finire sui server di qualcun altro.
Omissia nasce da qui. È un’app che si installa sul computer e che legge il documento cercandoci dentro i dati delle persone, con un modello di riconoscimento che gira anch’esso in locale. Poi li sostituisce con dei segnaposto, uno per ogni soggetto, in modo che il testo continui ad avere senso: chi legge capisce ancora che il primo attore ha citato la seconda parte, ma non sa come si chiamano. Quel testo si può incollare in qualunque intelligenza artificiale senza consegnare niente di riservato.
Qui però serve una precisazione che molti strumenti evitano di fare. Quello che l’app fa di base è una pseudonimizzazione, non un’anonimizzazione: la corrispondenza fra segnaposto e nome vero esiste, resta cifrata sul computer, e proprio per questo il testo continua a essere un dato personale ai sensi dell’art. 4(5) GDPR. Servono ancora una base giuridica e, dove ricorrono i presupposti, la valutazione d’impatto. Chi lascia credere che dopo il mascheramento si sia fuori dal perimetro sta facendo un favore solo apparente. Proprio perché il testo resta un dato personale, conta anche a quale modello lo si dà: ne parliamo nella guida alle AI con residenza dei dati in UE.
La reversibilità però è metà del prodotto: quando l’AI risponde, si incolla il testo nell’app e i nomi tornano al loro posto. Per questo la chiave esiste, e per questo esiste anche il modo di non averla: una pratica creata in anonimizzazione definitiva non costruisce nessuna corrispondenza, e la scelta è irreversibile dal momento in cui la si fa. Sul perché questa distinzione conta più di quanto sembri abbiamo scritto il racconto tecnico del progetto.
La sfida
Cancellare non basta, caricare non si può
- I servizi online chiedono di caricare il documento, cioè proprio la cosa da evitare
- Coprire i dati con il nero rende la risposta dell’AI vaga e poco utile
- Chi cancella a mano dimentica sempre qualcosa, e un dato dimenticato non si recupera
- Molti regolamenti interni vietano del tutto l’invio di file all’esterno
La soluzione
Tutto in locale, e tu scegli se si torna indietro
- L’analisi lavora sul computer dell’utente, modello AI e lettura delle scansioni comprese
- I dati non spariscono, prendono un segnaposto stabile che tiene in piedi il testo
- Ogni sostituzione passa sotto gli occhi di una persona prima di essere applicata
- Pseudonimizzazione: la chiave resta cifrata sul computer e la risposta dell’AI si riporta ai nomi veri
- Anonimizzazione definitiva: nessuna chiave viene creata, e la scelta si fa alla nascita della pratica
Cosa fa l’app, dal riconoscimento alla sostituzione
Il documento resta dov’è
Il file non viene copiato, caricato o duplicato da nessuna parte. L’app lo legge quando serve e lavora sul testo, così l’unica copia dell’atto rimane dove lo studio l’ha sempre tenuta.
Un modello AI dentro l’app, non da qualche parte in rete
Il riconoscimento non chiama nessun servizio: il modello viaggia dentro l’app, viene installato insieme a lei e gira sul computer di chi la usa. Gli basta circa mezzo giga di RAM, quindi va su una macchina qualsiasi, senza scheda grafica dedicata. È lui a trovare 11 dei 23 tipi di dato: i nomi delle persone, i ruoli nel processo, gli indirizzi, le organizzazioni. Cioè tutto quello che non ha una forma fissa e che nessuna regola può cercare al posto suo.
Regole e verifiche matematiche per il resto
Codice fiscale, partita IVA, IBAN e carte di pagamento vengono ricalcolati con lo stesso metodo di chi li emette: o il codice è valido o non viene nemmeno segnalato. Altri otto tipi si riconoscono dalla forma. Insieme al modello coprono i 23 tipi previsti, divisi in tre famiglie: le persone, gli indirizzi, l’impresa e il denaro.
PDF, Word, ODT e anche le scansioni
Legge .pdf, .docx, .odt, il testo semplice (.txt, .md) e le immagini di una scansione (.jpg, .png, .tif), oltre al testo incollato al volo. Sui PDF che il testo non ce l’hanno riconosce da sé le pagine da leggere come immagine, e anche quelle restano sul computer: la scansione non viene mandata a nessun servizio di riconoscimento ottico.
Pseudonimizzazione reversibile, il comportamento normale
Di base l’app pseudonimizza: ogni dato prende un segnaposto stabile, del tipo [FULLNAME_1], e la corrispondenza fra segnaposto e valore vero resta sul computer, cifrata col portachiavi di sistema. È reversibile per costruzione, quindi il testo continua a essere un dato personale e GDPR e AI Act si applicano per intero. Se si cancella la pratica, la corrispondenza sparisce con lei.
Anonimizzazione definitiva, quando serve chiudere la porta
Una pratica può essere creata senza dizionario: nessuna corrispondenza viene costruita né scritta, e la scelta si fa alla creazione e non si può più togliere. Senza chiave non c’è ritorno. È la modalità per un documento che esce dallo studio, non per il lavoro di tutti i giorni.
Controllo prima di sostituire
Ogni dato trovato viene mostrato nel punto in cui compare, con il testo che gli sta intorno, e si può accettare o rifiutare. Un intero tipo di dato si può anche lasciar passare: in una perizia medica l’età serve, in una causa sui pagamenti servono gli importi.
Un dizionario per i termini che solo tu conosci
Nomi di controparti, sigle interne, denominazioni di società, codici di commessa: entrano nel dizionario della pratica e da lì in poi vengono trovati come tutto il resto. È il modo in cui l’app impara il vocabolario di uno studio senza che nessun documento debba uscire per addestrarla.
Quello che sfugge si copre a mano
Il riconoscimento automatico non è mai completo, e fingere il contrario sarebbe la promessa sbagliata. Su quello che resta si passa un rettangolo a mano, direttamente sulla pagina, e rientra nel documento in uscita come tutto il resto.
Anche i metadati sono dati
Proprietà del documento, revisioni e commenti conservano nomi che nessuno guarda mai: l’autore del file, chi ha fatto quale modifica, l’annotazione lasciata da un collega. Vengono ripuliti insieme al testo, perché un file anonimizzato con l’autore vero nelle proprietà non è anonimizzato. In redazione questa è la voce che conta di più: di documenti pubblicati con dentro il nome di chi li aveva scritti ne è pieno il mestiere.
Il pulsante dentro l’editor
Word, LibreOffice e Pages hanno un pulsante che manda il documento all’app senza passare da salvataggi ed esportazioni intermedie. Un passaggio in meno è anche una copia in meno che resta in giro sul disco.
Un’API locale per chi ha già un gestionale
Chi vuole collegare l’app al proprio software trova un canale su 127.0.0.1, sulla porta 5005, che si attiva dal consenso nelle impostazioni e non è raggiungibile da fuori dalla macchina. Le credenziali cambiano a ogni sessione, quindi un programma autorizzato ieri non resta autorizzato per sempre.
Segnaposto stabili e coerenti
Lo stesso nome riceve sempre lo stesso segnaposto all’interno della pratica. Il testo resta leggibile e l’intelligenza artificiale continua a capire chi ha fatto cosa, senza sapere di chi si tratta.
Un avviso sui dati particolari (art. 9)
Salute, condanne penali, appartenenza sindacale, convinzioni religiose e origine etnica hanno un regime più severo di un nome. L’app tiene un lessico chiuso che segnala quando un documento ne contiene, e dice chiaramente che si limita a segnalare: una diagnosi non ha una forma riconoscibile, e mascherarla resta una decisione di chi legge.
La risposta torna leggibile
Nelle pratiche reversibili, quando l’AI risponde basta incollare il testo nell’app per rivedere i nomi veri al posto dei segnaposto. Nelle pratiche definitive questo passaggio non esiste, ed è esattamente il punto.
Importi e date alterati ma coerenti
Se serve, invece di sparire, le date si spostano tutte della stessa quantità e gli importi si scalano tutti nello stesso modo. I rapporti fra le cifre restano veri, quindi una domanda sui conti ha ancora una risposta sensata, mentre i valori reali restano nascosti. È una scelta da attivare, non un comportamento automatico.
Quattro lingue, sistema compreso
L’interfaccia parla italiano, inglese, sloveno e tedesco, barra dei menu e dialoghi di sistema inclusi. Serviva per il confine orientale, dove uno studio lavora abitualmente su tre lingue nella stessa settimana.
Pseudonimizzare o anonimizzare: due cose diverse
Modalità normale
Pseudonimizzazione reversibile
- Ogni dato prende un segnaposto; la corrispondenza esiste e resta cifrata sul computer
- La risposta dell’AI si riporta ai nomi veri incollandola nell’app
- Il testo resta un dato personale: GDPR e AI Act si applicano per intero
- Servono ancora base giuridica e, dove ricorrono i presupposti, la valutazione d’impatto
- È la modalità giusta per lavorare, non per pubblicare
Modalità definitiva
Anonimizzazione senza ritorno
- Nessuna corrispondenza viene costruita, e nessuna viene scritta su disco
- La scelta si fa alla creazione della pratica e non esiste un comando che la annulli
- I segnaposto restano numerati, quindi si capisce ancora che due menzioni sono la stessa persona
- Senza chiave non c’è modo di risalire ai nomi, nemmeno per chi ha scritto l’app
- È la modalità per un documento che esce dallo studio o che viene pubblicato
La distinzione non è una sfumatura lessicale. Un testo pseudonimizzato resta dentro il perimetro del GDPR perché la chiave esiste da qualche parte; un testo davvero anonimo ne esce, ma solo se quella chiave non è mai stata creata. Dire «anonimizzato» quando si intende «pseudonimizzato» fa credere a un professionista di essere al sicuro mentre è ancora pienamente responsabile, e per questo in questa pagina i due termini non sono intercambiabili.
Che cosa esce davvero dal computer
I due soli indirizzi
Aggiornamenti e account, nient’altro
- Il controllo degli aggiornamenti è un GET su un file statico uguale per tutti: vede un indirizzo IP e uno user-agent, come qualunque scaricamento
- La verifica della licenza scambia l’email dell’account e un token, e nient’altro
- Nessuna analitica d’uso e nessuna segnalazione automatica di errore dentro il programma
- Documenti, valori trovati, segnaposto e persino i nomi dei file non escono mai
Il canale locale
Un’API che non esce dalla macchina
- Ascolta su 127.0.0.1, porta 5005: raggiungibile solo da programmi che girano sullo stesso computer
- È spenta finché non la si accende dalle impostazioni, quindi non esiste per chi non la usa
- Le credenziali cambiano a ogni sessione: un’autorizzazione di ieri non vale oggi
- Serve a collegare il gestionale dello studio senza far passare i documenti da internet
La versione precedente di questo caso studio diceva «zero richieste verso internet». Adesso che l’app è un prodotto con licenza e aggiornamenti quella frase sarebbe falsa, e una frase falsa in una pagina sulla riservatezza vale meno di zero. Il confine giusto è un altro, ed è quello che il test automatico continua a sorvegliare: l’analisi di un documento non apre nessuna connessione, e gli unici due indirizzi che l’app conosce non sanno niente dei documenti su cui sta lavorando.
Nel dubbio si nasconde, non si lascia passare
Un dato lasciato in chiaro e finito dentro un modello online non si recupera in nessun modo. Per questo, quando il riconoscimento non è sicuro, l’app copre e lascia all’utente la libertà di rimettere il dato al suo posto. Il contrario, cioè lasciar passare e sperare che qualcuno se ne accorga, non è mai una scelta accettabile. Per la stessa ragione l’app dice anche quello che non può garantire: sostituire i nomi pseudonimizza un fascicolo, non lo rende anonimo, il riconoscimento automatico è abbastanza buono da risparmiare la caccia ma non da sostituire la rilettura, e le categorie particolari dell’art. 9 — salute, condanne penali, appartenenza sindacale, convinzioni religiose, origine etnica — non hanno una forma che un programma possa riconoscere da sola. Su quelle l’app alza un avviso e si ferma lì, perché un’etichetta automatica su una diagnosi sarebbe una promessa che non possiamo mantenere.
Come è fatta
Il riconoscimento lavora su due piani. Il primo è fatto di regole precise e di verifiche matematiche: un codice fiscale o un IBAN vengono ricalcolati con lo stesso metodo che usa chi li emette, quindi o sono giusti o non vengono nemmeno segnalati. Sono 12 tipi di dato su 23. Il secondo è un modello di riconoscimento di entità che sta dentro l’app e gira sul computer in un processo separato, con circa mezzo giga di RAM e senza bisogno di una scheda grafica: copre gli altri 11 tipi, cioè tutto quello che non ha una forma fissa, a partire dai nomi delle persone e dai loro ruoli nel processo. A questi due piani si aggiunge il dizionario della pratica, dove finiscono i termini che solo lo studio conosce. Nessuno dei tre ha bisogno della rete.
Quattro mestieri, quattro insiemi di dati diversi
Avvocati
Atti di causa, comparse, verbali di udienza e fascicoli di parte: nomi delle parti, ruoli nel processo, numeri di procedura e importi. Chi fa ricerca giurisprudenziale con un modello ha bisogno del fatto, non del nome di chi lo ha vissuto.
Notai
Rogiti, visure e atti di compravendita, dove ai dati delle persone si aggiungono i dati catastali e gli importi. È il caso in cui la modalità definitiva serve più spesso, perché il documento è destinato a uscire.
Commercialisti e consulenti del lavoro
Bilanci, dichiarazioni, cedolini e buste paga: partite IVA, IBAN, codici fiscali e retribuzioni, cioè quasi tutto quello che l’app verifica con un controllo matematico invece di indovinarlo.
Giornalisti e redazioni
Un dossier arrivato da una fonte pone lo stesso problema di un atto, con una posta in gioco diversa: qui il dato di troppo non espone a una sanzione, espone una persona. Contano soprattutto la pulizia dei metadati e la modalità definitiva.
Le scelte utili in un rogito non sono quelle utili in un contenzioso, in un cedolino o in un dossier arrivato in redazione: cambiano i tipi di dato che contano e cambia quanto spesso serve la modalità definitiva. Per gli studi legali, i notai e i commercialisti il prodotto ha percorsi distinti, invece di una configurazione unica da rifare a ogni pratica; in redazione la combinazione che serve è di solito un’altra, cioè il dizionario della pratica per i nomi che ricorrono nell’inchiesta e la modalità definitiva su quello che viene pubblicato. Se il vincolo che avete assomiglia a questo ma i documenti sono altri, è esattamente il tipo di progetto di cui parliamo nella nostra consulenza GDPR e nello sviluppo software conforme.
Qualche numero
tipi di dato personale riconosciuti, di cui 11 trovati dal modello AI locale e 12 da regole e verifiche matematiche
controlli matematici ufficiali: codice fiscale, partita IVA, IBAN e carte di pagamento
sistemi operativi: macOS, Windows e Linux, con la stessa analisi in locale su tutti e tre
soli indirizzi contattati, aggiornamenti e account, e nessuno dei due riceve mai un documento
Sono numeri presi dal progetto, non stime: l’elenco dei tipi di dato, i controlli matematici, i documenti di prova e la sorveglianza sulle chiamate di rete stanno tutti nel codice dell’app e nei suoi test automatici. Sui documenti di prova vale la pena dirlo: i fascicoli veri non si possono usare per sviluppare uno strumento del genere, quindi il riconoscimento viene misurato su atti completi scritti apposta con dati inventati.
Domande frequenti su Omissia
È lo stesso prodotto, con lo stesso principio di fondo: cambia il nome, perché PII Legal descriveva la tecnologia e non diceva niente a chi la doveva usare. Da qui in avanti si chiama Omissia e ha un sito suo, omissia.com, con prezzi, download e documentazione. Il vecchio indirizzo di questa pagina continua a funzionare e porta qui.
No, e non c’è un server da cui possano passare. L’analisi gira sul computer di chi usa l’app, modello linguistico compreso, e l’app apre due soli indirizzi: il controllo degli aggiornamenti e l’account della licenza. Nessuno dei due riceve un documento, un nome trovato o il nome di un file.
Sì, per intero: aprire l’app, aprire una pratica, analizzarla ed esportarla non chiede la rete in nessun passaggio. La connessione serve solo al controllo degli aggiornamenti e alla verifica della licenza, che sono due cose separate dal lavoro sui documenti.
Oscurare vuol dire coprire: sotto il rettangolo nero non resta niente, e un testo pieno di buchi produce risposte vaghe perché il modello non capisce più chi ha fatto cosa. Omissia invece sostituisce con segnaposto stabili, così il testo resta leggibile, e nelle pratiche reversibili la sostituzione si può disfare.
Sì. L’app riconosce da sola le pagine che il testo non ce l’hanno e le legge come immagini, sul computer: la scansione non viene mandata a nessun servizio di riconoscimento ottico esterno. Oltre ai PDF legge .docx, .odt, il testo semplice e le immagini .jpg, .png e .tif.
macOS, Windows e Linux. Su macOS e Windows si aggiorna da sola, su Linux no. L’interfaccia è disponibile in italiano, inglese, sloveno e tedesco.
È uno dei casi in cui l’app fa esattamente il lavoro per cui è nata, con una posta in gioco diversa: in uno studio un dato di troppo espone a una sanzione, in redazione espone una persona. Le due parti che contano sono la pulizia dei metadati, perché un documento ricevuto da una fonte porta scritto dentro chi lo ha scritto e con quale computer, e la modalità definitiva, che non costruisce nessuna corrispondenza e quindi non lascia in giro una chiave che qualcuno possa chiedere. Sul resto vale la regola di sempre: l’app propone, la rilettura la fa una persona.
Si paga la postazione e non la pagina: una postazione costa 12,50 € al mese, fatturati 149,99 € l’anno IVA esclusa, e da due a quattro postazioni 37,50 € al mese, fatturati 449,99 € l’anno. Da cinque postazioni in su il prezzo si concorda. Registrandosi partono tre giorni di prova con tutte le funzioni attive.
No, e lo dice apertamente. Le categorie particolari dell’art. 9 non hanno una forma che un programma possa riconoscere con certezza: una diagnosi si può scrivere in mille modi. L’app tiene un lessico chiuso che alza un avviso quando il documento ne contiene tracce, e si ferma lì: mascherare o meno resta una decisione di chi legge.
Omissia si prova da sola, il resto lo costruiamo insieme
Se il problema è quello raccontato qui, Omissia si scarica, si prova per tre giorni e si compra dall’area account: si paga la postazione, non la pagina. Se invece i documenti sono altri, le regole interne sono diverse o serve che lo strumento si incastri in un gestionale che avete già, quello lo sviluppiamo su misura: Omissia è nata così.