Cosa sa il nostro punto d'incontro su di te
Partiamo dalle basi. Il nostro punto d'incontro sa esattamente tre cose su di te: il tuo nome utente, il tuo identificativo unico e un hash della tua password. Un hash è una trasformazione matematica irreversibile — può verificare che la tua password sia corretta senza sapere qual è. La tua vera password esiste solo nella tua testa e sul tuo dispositivo.
Nient'altro. Non memorizziamo con chi parli né cosa dici. I tuoi tunnel e i nomi dei tuoi contatti esistono solo sul tuo dispositivo, cifrati, e il nostro punto d'incontro non potrebbe aprirli nemmeno se volesse.
Le cassette postali
Immagina un muro di cassette postali numerate, come in un vecchio ufficio postale. Quando la tua app vuole connettersi con qualcuno, lascia un biglietto in una cassetta che dice 'Voglio parlare con l'utente X'. Nient'altro. Non dice chi sei. Non dice di cosa vuoi parlare. Solo un biglietto in una cassetta.
Di tanto in tanto, tutte le applicazioni connesse a Solo2 controllano le caselle per vedere se qualcuno ha lasciato loro una nota. È come passare alle poste e chiedere: «C'è qualcosa per me?». Se il tuo contatto trova la tua nota, chiede al punto d'incontro l'indirizzo IP che hai lasciato. Esso glielo fornisce. L'indirizzo rimane nella memoria del server per pochi secondi e non viene mai scritto su disco.
Da quel momento in poi, il punto d'incontro scompare
Una volta che entrambi i dispositivi conoscono l'indirizzo dell'altro, parlano direttamente tra loro. Il punto d'incontro non partecipa più. Se la connessione diretta non è possibile, i messaggi passano crittografati attraverso il nostro specchio, che non salva nulla. Non li archivia. Non sa se la connessione è stata stabilita o no. Non sa quanto dura. Non sa quanti messaggi vengono scambiati né quanto sono grandi.
Tanto che se il punto d'incontro si spegnesse in quel momento, in una connessione diretta i due utenti continuerebbero a parlare esattamente allo stesso modo. La conversazione non dipende da esso. Dipendeva da esso solo perché i due dispositivi si trovassero. Una volta connessi, è irrilevante.
La conversazione è sicura prima ancora di iniziare
Quando due persone creano un tunnel in Solo2, i loro dispositivi scambiano chiavi crittografiche pubbliche. Da quel momento, ogni messaggio è crittografato con la chiave del destinatario — e solo il destinatario può decrittarlo. Questo avviene prima che qualsiasi conversazione inizi. Le chiavi sono pronte dal momento in cui il tunnel viene creato.
Ecco perché, quando i due dispositivi si connettono direttamente, la comunicazione è già protetta. Non devono negoziare nulla. Non devono chiedere il permesso al punto d'incontro. Le chiavi sono loro, sui loro dispositivi, e nessun altro le ha.
Cosa significa questo in pratica
Che le tue conversazioni non vengono salvate su alcun server. Non c'è un database di messaggi da violare. Viaggiano cifrati dal tuo dispositivo a quello dell'altra persona.
La prossima volta che qualcuno ti dice che un'app "cifra i tuoi messaggi end-to-end", chiedigli di tutto il resto: chi conosce i tuoi contatti, a che ora parli, con quale frequenza. Se la risposta è "il nostro server, ma non lo usiamo per nulla di male", è una promessa. Con Solo2 la risposta è un'altra: i tuoi contatti sono cifrati sul tuo dispositivo e non memorizziamo con chi parli né cosa dici.