I Suoi dati,
illeggibili anche per noi.
leggit applica gli standard moderni della cifratura end-to-end. Ecco, in chiaro, come funziona — e perché La protegge.
Il principio: zero-knowledge
«Zero-knowledge» significa letteralmente: leggit non ha alcuna conoscenza del contenuto delle Sue casseforti. I Suoi dati sono cifrati sul Suo dispositivo prima dell’invio, e la chiave che permette di decifrarli non lascia mai la Sua postazione, né quella dei Suoi destinatari.
In concreto, anche se i nostri server fossero sequestrati o compromessi, il contenuto resterebbe illeggibile — un file cifrato senza chiave è rumore casuale.
Dall'evoluzione E2EE (cifratura end-to-end) della piattaforma, questo principio non è più una promessa: è una garanzia tecnica verificabile. Per le Sue casseforti personali, cifratura e decifratura avvengono all'interno del Suo browser, in un Web Worker isolato che detiene da solo le Sue chiavi. Il server leggit riceve sempre soltanto blob cifrati opachi.
libsodium-wrappers è servita dai nostri server (niente CDN esterno → anti-supply-chain). Ogni script JavaScript critico è consegnato con un hash SRI (Subresource Integrity): il browser si rifiuta di eseguirlo se il codice è stato alterato in transito. Gli hash sono pubblicati nella nostra pagina di trasparenza E2EE; può ricalcolarli localmente con openssl per confermarne l'integrità. Depuis la version 1.0 de l'attestation, plusieurs modules ont été renforcés ou ajoutés au périmètre du chiffrement bout-en-bout (E2EE) :
-
Mode Prudent crypto-wallets — La table de substitution (photo scannée associée à un wallet) est désormais chiffrée dans votre navigateur AVANT envoi via le flux chunked E2EE (libsodium
secretstream_xchacha20, header + chunks séparés). leggit ne voit jamais l'image en clair, même temporairement. - Workflow dual-device (PC + téléphone) — Vous pouvez désormais saisir les mots substitués sur votre PC et scanner la table sur votre téléphone, sans qu'aucun appareil n'ait simultanément les deux secrets. Le pairing utilise un token long (256 bits, stocké en SHA-256 côté serveur) + un code court à 6 caractères (rate-limité 10 tentatives / 15 min).
- Révélation Prudent en 3 modes — Lors de la consultation d'un wallet Prudent, vous choisissez : « Mots seuls », « Table seule » (la seed n'est pas déchiffrée sur l'écran qui affiche la table), ou « Les deux ». Défense en profondeur cohérente avec le modèle dual-device.
- Référentiel des relations administrable — Les types de relations (Conjoint, Enfant, Parent, etc.) sont désormais centralisés dans une table administrée, avec leur miroir réciproque et un flag « Ayant droit par défaut » pour suggérer la propagation.
Voir l'attestation v2.0 complète — ou la version technique détaillée.
Cifratura a busta
Ogni elemento (testo, file, messaggio) è cifrato con una chiave casuale unica chiamata Data Encryption Key (DEK). Questa DEK è a sua volta cifrata con la Sua chiave maestra, derivata dalla Sua password tramite Argon2id (un algoritmo costoso che resiste agli attacchi massicci).
Vantaggio: il giorno in cui Lei cambia password, ricifriamo solo le DEK, non tutti i Suoi file.
Chiavi pubbliche X25519 per i destinatari
Ogni destinatario dispone di una coppia chiave pubblica / chiave privata generata sul proprio dispositivo. Per trasmettere un dato ad Alice, la Sua cassaforte cifra la DEK con la chiave pubblica di Alice: solo la chiave privata di Alice può decifrarla.
X25519 è l’algoritmo utilizzato da WireGuard, Signal, e tutte le soluzioni moderne di messaggistica cifrata.
Condivisione del segreto di Shamir
Per il recupero del Suo account o il rilascio post mortem, leggit suddivide una chiave critica in più parti matematicamente collegate. Per esempio in 5 parti, di cui 3 sono necessarie per ricostituire il segreto.
Nessuna parte da sola fornisce informazioni: occorre che il quorum sia raggiunto — ad esempio 3 persone di fiducia su 5 — per attivare la decifratura. Nessuno può agire da solo.
AEAD: integrità e riservatezza
Tutte le cifrature applicate utilizzano algoritmi AEAD (XChaCha20-Poly1305). Ciò significa che un attaccante non può né leggere il contenuto, né modificare di nascosto un byte del file senza che ciò venga rilevato al momento della decifratura.
Dove sono archiviate le chiavi?
- La Sua chiave maestra è derivata dalla Sua password a ogni accesso tramite Argon2id. Viene poi consegnata direttamente a un Web Worker isolato nel Suo browser, dove resta in RAM per tutta la Sua sessione. Non viene mai persistita in chiaro, e il thread principale JavaScript (DOM, script inline) non può accedervi — limitando così l'impatto di un eventuale XSS.
- Le chiavi private X25519 dei Suoi destinatari sono cifrate con la loro stessa password e archiviate nel loro account.
- Le parti di Shamir sono detenute dalle persone di fiducia da Lei designate, mai accessibili a leggit in chiaro.
- Al logout o alla chiusura della scheda, il Worker viene terminato: tutte le chiavi in RAM vengono cancellate immediatamente (
memzero).
Verifichi Lei stesso
Non deve crederci sulla parola: la catena crittografica lato browser è progettata per essere auditabile.
- Apra gli strumenti per sviluppatori del Suo browser (F12) → scheda Rete. Quando scrive o legge un elemento, vedrà transitare blob base64 (
cipher_blob_b64,my_wrap) — mai testo in chiaro. - Consulti la nostra pagina di trasparenza E2EE: espone in tempo reale gli hash SRI di ogni script crittografico con il comando per ricalcolarli localmente.
- Ispezioni il codice sorgente degli script (clic destro → "Visualizza sorgente pagina"). Tutto è leggibile, senza offuscazione, e identico al codice che pubblichiamo pubblicamente.
Il nostro modello di minaccia è documentato onestamente sulla pagina di trasparenza — incluso ciò da cui l'E2EE non protegge (compromissione del Suo stesso browser tramite malware locale, ad esempio).
Perimetro attuale dell'E2EE
Non tutto è ancora in E2EE puro di browser — ecco lo stato reale della copertura oggi:
- ✅ Casseforti personali (testi, password, file e video fino a 100 MB): E2EE browser completo. Scrittura, lettura, aggiunta destinatario (con ri-autenticazione), migrazione progressiva degli elementi legacy ed export RGPD: tutto passa dal Suo browser. Il server vede solo cipher blob opachi.
- 🔘 Casseforti familiari (condivise tra più membri): cifratura lato server con condivisione multi-chiave (Shamir + X25519 per membro). Il server ha accesso al contenuto durante le sessioni attive per assicurare la condivisione tra membri. Il passaggio all'E2EE browser è sulla roadmap.
- 🔘 Crypto-wallet (immagini di tabelle di sostituzione): cifratura lato server libsodium secretstream. Passaggio E2EE previsto.
- ⚙️ Messaggi programmati post mortem via email: legittimamente lato server. Il server DEVE poter decifrare il giorno della consegna per inviare l'email al destinatario — un'email puro E2EE sarebbe impossibile da consegnare.
- ⚙️ Pipeline di rilascio post mortem (eredità): combinazione Shamir + decifratura lato sessione dopo il quorum. Per le casseforti personali create in E2EE, la decifratura finale avviene nel browser del destinatario.
Roadmap pubblica: estensione ufficiale per browser e client desktop firmato per eliminare la dipendenza dal JavaScript servito dai nostri server (rimozione del rischio residuo "JS compromesso attivamente"). In preparazione.
Audit e trasparenza
Ogni operazione crittografica è registrata in un audit con marca temporale. Lei può consultare in qualsiasi momento la cronologia di accesso alla Sua cassaforte: chi ha visto cosa, quando, da dove. Per le casseforti personali E2EE, i dettagli sensibili (titoli, anteprime) sono a loro volta cifrati con la Sua chiave maestra all'interno del log stesso — solo Lei può rileggerli tramite il Suo browser.
Recupero della password senza leggit
Se dimentica la Sua password, non può seguire un classico «clicca qui per reimpostare»: leggit non ha accesso alla Sua chiave maestra. Lei ha designato all’iscrizione almeno 2 persone di fiducia per il recupero.
In caso di password dimenticata, le Sue persone di fiducia ricevono una notifica, convalidano la richiesta, e un meccanismo crittografico chiamato Shamir Secret Sharing ricostituisce allora una chiave che Le permette di definire una nuova password. leggit non apprende nulla nel processo.
Autenticazione a due fattori (2FA)
Oltre alla Sua password, può attivare un secondo livello di protezione: un codice a 6 cifre generato da un’applicazione di autenticazione standard (Google Authenticator, Authy, 1Password) sul Suo telefono.
Con la 2FA attiva, anche se qualcuno conosce la Sua password (per phishing, fuga o osservazione), non potrà accedere senza il Suo telefono. Fortemente raccomandata per le casseforti contenenti crypto-wallet o dati molto sensibili.
Procedura giudiziaria / requisizione
leggit può ricevere una requisizione giudiziaria da un magistrato o da un servizio dello Stato. Cosa si può consegnare? Unicamente ciò di cui leggit dispone: i blob cifrati, i metadati, la cronologia di accesso, l’identità dell’account. Non il contenuto in chiaro, perché non lo abbiamo mai.
Nessuna implementazione di «backdoor» tecnica per consentire una decifratura su richiesta. La crittografia è matematicamente impermeabile. Se la giustizia esige un contenuto, deve passare attraverso i destinatari o le persone di fiducia, che restano libere di cooperare o meno.
Continuità del servizio
Cosa succede se leggit chiude i battenti? Ci impegniamo su tre punti:
- Preavviso minimo di 6 mesi prima della cessazione effettiva dell’attività.
- Esportazione completa di ogni cassaforte fornita a ogni utente, in un formato aperto e leggibile (testo in chiaro + file).
- Trasmissione del codice sorgente, della documentazione tecnica e delle banche dati cifrate a una persona di fiducia designata, con meccanismo di escrow affinché un acquirente possa, se possibile, prendere il testimone.
Conformità GDPR
leggit rispetta il Regolamento Generale sulla Protezione dei Dati (GDPR) e la legge francese Informatique & Libertés. Lei ha in qualsiasi momento il diritto di accedere ai Suoi dati, di rettificarli, di esportarli, e di cancellarli definitivamente.
Per la trasmissione post mortem, leggit si inserisce nel quadro della legge francese République Numérique 2016 (art. 84-86 del Codice civile) che autorizza l’espressione e l’esecuzione di direttive digitali dopo il decesso. Il mandato post mortem firmato tramite DocuSeal ha valore giuridico probatorio.