Mida server sinu kohta teab
Alustame põhitõdedest. Solo2 server teab sinu kohta täpselt kolme asja: su kasutajanime, su unikaalset identifikaatorit ja su parooli räsi. Räsi on pöördumatu matemaatiline teisendus — server saab kontrollida, et su parool on õige, teadmata, mis see on. Su päris parool eksisteerib ainult su peas ja su seadmes.
Ja see ongi kõik. Server ei tea, kellega sa räägid. Ta ei tea, mitu tunnelit sul on. Ta ei tea su kontaktide nimesid. See teave eksisteerib ainult su seifis, krüpteerituna su seadmes. Server ei suudaks seda avada, isegi kui tahaks.
Postkastid
Kujuta ette nummerdatud postkastidega seina, nagu vanas postkontoris. Kui su äpp tahab kellegagi ühenduda, jätab ta postkasti sedeli kirjaga 'Tahan rääkida kasutajaga X'. Mitte midagi enamat. See ei ütle, kes sa oled. See ei ütle, millest sa tahad rääkida. Lihtsalt sedel postkastis.
Perioodiliselt kontrollivad kõik Solo2-ga ühendatud äpid postkaste, et näha, kas keegi on neile sedeli jätnud. See on nagu postkontorist läbi astuda ja küsida: 'Kas minu jaoks on midagi?'. Kui su kontakt leiab su sedeli, küsib ta serverilt IP-aadressi, mille sa jätsid. Server annab selle ja see teave kustutatakse mälust kohe. Seda ei kirjutata kunagi ühelegi kettale. See elab serveri ajutises mälus millisekundid, mis on vastamiseks vajalikud.
Sellest hetkest alates server kaob
Kui mõlemad seadmed teavad teineteise aadressi, räägivad nad otse omavahel. Server ei osale enam. Ta ei edasta sõnumeid. Ta ei salvesta neid. Ta ei tea, kas ühendus loodi või mitte. Ta ei tea, kui kaua see kestab. Ta ei tea, kui palju sõnumeid vahetatakse ega kui suured need on.
Nii väga, et kui server sel hetkel välja lülituks, jätkaksid kaks kasutajat rääkimist täpselt samamoodi. Vestlus ei sõltu serverist. See sõltus sellest ainult selleks, et kaks seadet teineteist leiaksid. Kui nad on ühendatud, on server ebaoluline.
Vestlus on turvaline enne, kui see üldse algab
Kui kaks inimest loovad Solo2-s tunneli, vahetavad nende seadmed avalikke krüptograafilisi võtmeid. Sellest hetkest on iga sõnum krüpteeritud saaja võtmega — ja ainult saaja saab selle dekrüpteerida. See juhtub enne mis tahes vestluse algust. Võtmed on valmis hetkest, mil tunnel luuakse.
Seepärast, kui kaks seadet otse ühenduvad, on suhtlus juba kaitstud. Neil pole vaja midagi läbi rääkida. Neil pole vaja serverilt luba küsida. Võtmed on nende omad, nende seadmetes, ja kellelgi teisel neid pole.
Mida see praktikas tähendab
See tähendab, et üheski serveris pole su vestluste kohta mingit kirjet. Pole metaandmeid analüüsimiseks. Pole ajalugu kohtumäärusele üleandmiseks. Pole andmebaasi häkkimiseks. Solo2 server ei saa üle anda seda, mida tal pole. Ja tal pole midagi, sest tal polnud kunagi.
Järgmine kord, kui keegi ütleb sulle, et äpp 'krüpteerib su sõnumid otsast otsani', küsi, mis juhtub kõige muuga. Kes teab, kellega sa räägid. Kes teab, mis ajal. Kes teab, kui tihti. Kui vastus on 'meie server, aga me ei kasuta seda millekski halvaks' — see on lubadus. Solo2-s on vastus teistsugune: keegi ei tea. Sest pole kedagi, kellelt küsida.