Local-first, reversible anonymization for Italian texts and documents before using cloud AI (MIT)
Python
2
1 commits
updated Oct 14, 2026
English version: README.en.md
Anonimizzazione locale e reversibile di testi e documenti italiani. Sostituisce nomi, IBAN, codici fiscali e recapiti con segnaposto, così il testo può andare a un assistente AI cloud — e al ritorno i valori originali vengono ripristinati byte per byte. Nessun dato lascia il computer.
«Il sig. Mario Rossi, IBAN IT60X0542811101000000123456» diventa «Il sig. «PERSONA_1», IBAN «IBAN_1»»
Non chiudere l'app tra il punto 2 e il 4: la corrispondenza etichette ↔ valori veri vive lì dentro.

Schermate con dati di esempio fittizi (Mario Rossi, IBAN e contatti inventati).
Via A — da sorgente (funziona oggi, macOS e Windows). Requisiti: Python 3.11, ~2 GB liberi per i modelli neurali (scaricati al primo avvio, poi tutto offline).
git clone https://github.com/Navras98/PrivacyBridge.git
cd PrivacyBridge
python3 -m venv venv && source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python -m spacy download it_core_news_sm
python src/avvio.py
Al primo avvio scarica i pesi del modello PII da Hugging Face (rizzo-pii-0.3B,
MIT — vedi NOTICE.txt); dal secondo avvio funziona anche senza connessione.
Per verificare che tutto funzioni: ./verifica_tutto.sh.
Via B — app macOS pronta. Il PrivacyBridge.dmg (2,3 GB, trascina in
Applicazioni) non può stare su GitHub — il limite è 100 MB per file nel repo
e 2 GB per allegato di Release — quindi il download arriverà su link esterno
(Google Drive): lo aggiungo qui appena pronto.
Ripristina(Anonimizza(X)) == X, byte per byte.python tests/test_garanzie.py.Onestà prima di tutto — il capitolo completo con i numeri misurati è in docs/CONSEGNA.md:
./verifica_tutto.sh # suite completa (motore, documenti, garanzie, UI)
./verifica_tutto.sh --rapido
8 suite, 861 test. Tempi misurati su Intel i7-8750H (CPU): ~7 s per 10.000 caratteri, ~2 min per 100.000. Dettagli in docs/MANUALE.md.
PrivacyBridge.dmg (trascina in Applicazioni; prima apertura con tasto
destro → Apri, app non firmata Apple). Ricetta in build/build_bundle.sh + build/*.spec.docs/BLOCCHI.md §11,
build/PrivacyBridge-windows.iss). Non distribuiamo exe mai provati: in questo repo
non ce n'è uno precompilato.Guida utente completa: docs/MANUALE.md · istruzioni non tecniche: PrivacyBridge-App/LEGGIMI.txt (fuori repo).
Andrea Sforna — [email protected] — https://github.com/Navras98
Segnalazioni, bug e idee sono benvenuti come issue GitHub.
src/ avvio.py, api/ (FastAPI + UI), backend/ (motore, vault, OCR), data/liste/
tests/ motore, tassonomia, avversariale, documenti+OCR, garanzie, UI
benchmark/ solo codice di misura (i documenti privati restano fuori da git)
docs/ MANUALE, CONSEGNA, DECISIONI, BLOCCHI, PROGRESSO, screenshots/
scripts/ liste nomi, gate finale, screenshot, contrasti
assets/ icone + sorgenti liste build/ ricette .spec/.sh/.iss (bundle escluso)
MIT — © 2026 Andrea Sforna. Vedi LICENSE. Terze parti (modello neurale, dizionari, spaCy, Presidio) in NOTICE.txt.
Local-first, reversible anonymization for Italian texts and documents before using cloud AI (MIT)
Python
2
1 commits
updated Oct 14, 2026
English version: README.en.md
Anonimizzazione locale e reversibile di testi e documenti italiani. Sostituisce nomi, IBAN, codici fiscali e recapiti con segnaposto, così il testo può andare a un assistente AI cloud — e al ritorno i valori originali vengono ripristinati byte per byte. Nessun dato lascia il computer.
«Il sig. Mario Rossi, IBAN IT60X0542811101000000123456» diventa «Il sig. «PERSONA_1», IBAN «IBAN_1»»
Non chiudere l'app tra il punto 2 e il 4: la corrispondenza etichette ↔ valori veri vive lì dentro.

Schermate con dati di esempio fittizi (Mario Rossi, IBAN e contatti inventati).
Via A — da sorgente (funziona oggi, macOS e Windows). Requisiti: Python 3.11, ~2 GB liberi per i modelli neurali (scaricati al primo avvio, poi tutto offline).
git clone https://github.com/Navras98/PrivacyBridge.git
cd PrivacyBridge
python3 -m venv venv && source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
python -m spacy download it_core_news_sm
python src/avvio.py
Al primo avvio scarica i pesi del modello PII da Hugging Face (rizzo-pii-0.3B,
MIT — vedi NOTICE.txt); dal secondo avvio funziona anche senza connessione.
Per verificare che tutto funzioni: ./verifica_tutto.sh.
Via B — app macOS pronta. Il PrivacyBridge.dmg (2,3 GB, trascina in
Applicazioni) non può stare su GitHub — il limite è 100 MB per file nel repo
e 2 GB per allegato di Release — quindi il download arriverà su link esterno
(Google Drive): lo aggiungo qui appena pronto.
Ripristina(Anonimizza(X)) == X, byte per byte.python tests/test_garanzie.py.Onestà prima di tutto — il capitolo completo con i numeri misurati è in docs/CONSEGNA.md:
./verifica_tutto.sh # suite completa (motore, documenti, garanzie, UI)
./verifica_tutto.sh --rapido
8 suite, 861 test. Tempi misurati su Intel i7-8750H (CPU): ~7 s per 10.000 caratteri, ~2 min per 100.000. Dettagli in docs/MANUALE.md.
PrivacyBridge.dmg (trascina in Applicazioni; prima apertura con tasto
destro → Apri, app non firmata Apple). Ricetta in build/build_bundle.sh + build/*.spec.docs/BLOCCHI.md §11,
build/PrivacyBridge-windows.iss). Non distribuiamo exe mai provati: in questo repo
non ce n'è uno precompilato.Guida utente completa: docs/MANUALE.md · istruzioni non tecniche: PrivacyBridge-App/LEGGIMI.txt (fuori repo).
Andrea Sforna — [email protected] — https://github.com/Navras98
Segnalazioni, bug e idee sono benvenuti come issue GitHub.
src/ avvio.py, api/ (FastAPI + UI), backend/ (motore, vault, OCR), data/liste/
tests/ motore, tassonomia, avversariale, documenti+OCR, garanzie, UI
benchmark/ solo codice di misura (i documenti privati restano fuori da git)
docs/ MANUALE, CONSEGNA, DECISIONI, BLOCCHI, PROGRESSO, screenshots/
scripts/ liste nomi, gate finale, screenshot, contrasti
assets/ icone + sorgenti liste build/ ricette .spec/.sh/.iss (bundle escluso)
MIT — © 2026 Andrea Sforna. Vedi LICENSE. Terze parti (modello neurale, dizionari, spaCy, Presidio) in NOTICE.txt.