Il test: chi ha le chiavi?
"Cifrato" da solo dice poco. Quasi ogni servizio cifra i dati in transito e sui propri dischi, ma ne tiene anche le chiavi, quindi può leggere i tuoi dati, e lo può fare chiunque riesca a entrare o a costringerlo. Nella cifratura end to end le chiavi esistono solo sui tuoi dispositivi e il server riceve solo testo cifrato.
Un controllo rapido: l'azienda può reimpostare la tua password e restituirti i dati? Se sì, può leggerli, o ha un modo per farlo. Un vero progetto end to end significa che perdere sia la password sia la chiave di recupero fa perdere i dati.
Lo stesso test vale per lo strumento che custodisce gli accessi ai tuoi server: un gestore di chiavi SSH con vault cifrato deve superarlo.
Cosa può ancora vedere il server
La cifratura nasconde il contenuto. Non può nascondere tutto, perché il server deve comunque gestire un account e consegnare dati:
- La tua email e il tuo piano, e spesso i nomi dei tuoi dispositivi.
- Le date di attività, e il tuo indirizzo IP quando ti colleghi.
- Quanti elementi cifrati hai e più o meno quanto sono grandi. Il padding può sfocare la dimensione ma non eliminarla.
Il server può anche cancellare o bloccare i tuoi dati. La cifratura end to end protegge la riservatezza, e non garantisce la disponibilità, quindi tieni una tua copia di ciò che non puoi perdere.
Da cosa non protegge
- Una password debole. Se le tue chiavi derivano dalla tua password, chi ruba il database può provare a indovinarla offline, senza limite di tentativi. Vedi Argon2id spiegato.
- Un aggiornamento malevolo. L'app custodisce le tue chiavi, quindi chi controlla ciò che fa l'app può leggerle. La firma limita chi può distribuire un aggiornamento, ma ti fidi comunque del fornitore e della sua chiave di firma.
- Un dispositivo compromesso. Un malware su un dispositivo sbloccato può leggere ciò che leggi tu.
- Un dispositivo sbloccato in mani sbagliate, se l'app non ha un blocco proprio.
- Codice consegnato dal server. Una web app caricata dal server a ogni visita può essere sostituita da chi controlla quel server, e potrebbe rubare la tua password mentre la digiti.
Domande da fare a qualsiasi fornitore
- Dove avviene la cifratura, e le chiavi vengono mai inviate a voi, anche protette?
- Come diventa una chiave la password, e serve anche un secondo segreto, come una chiave creata sul mio dispositivo?
- Quali metadati conservate esattamente? I nomi e i tipi degli elementi sono cifrati?
- Cosa succede se dimentico la password? Qualsiasi risposta diversa da una chiave di recupero che custodisco io richiede una spiegazione.
- Un sito web o una web app vede mai la mia password?
Domande
La crittografia end to end è la stessa cosa di zero knowledge?
In pratica sì. Zero knowledge è un nome commerciale per la stessa idea: il fornitore conserva i tuoi dati senza le chiavi per leggerli.
Un servizio cifrato end to end può recuperare i miei dati se dimentico la password?
Solo con una chiave o un kit di recupero che hai tu. Se l'azienda può restituirti i dati con un semplice reset via email, ha una chiave per leggerli, e i dati non sono cifrati end to end.
La crittografia end to end nasconde i metadati?
No. Il server vede comunque la tua email, le date di attività e il numero e la dimensione approssimativa dei tuoi elementi. È nascosto solo il contenuto.