Tinklaraštis · 2026 m. balandžio 5 d.

Kaip Solo2 jungiasi serveriui nieko nežinant

Susitikimo vieta daro vieną dalyką: padeda dviems įrenginiams rasti vienas kitą. Tada ji dingsta.

Ką mūsų susitikimo vieta žino apie tave

Pradėkime nuo pagrindų. Mūsų susitikimo vieta žino tiksliai tris dalykus apie tave: tavo vartotojo vardą, tavo unikalų identifikatorių ir tavo slaptažodžio maišą (hash). Maišas yra negrįžtama matematinė transformacija — ji gali patikrinti, ar tavo slaptažodis teisingas, nežinodama, koks jis yra. Tavo tikrasis slaptažodis egzistuoja tik tavo galvoje ir tavo įrenginyje.

Nieko daugiau. Mes nesaugome, su kuo kalbi ar apie ką kalbi. Tavo tuneliai ir kontaktų vardai egzistuoja tik tavo įrenginyje, užšifruoti, ir mūsų susitikimo vieta negalėtų jų atidaryti, net jei norėtų.

Pašto dėžutės

Įsivaizduok sunumeruotų pašto dėžučių sieną, kaip senajame pašte. Kai tavo programėlė nori prisijungti prie kažko, ji palieka raštelį dėžutėje sakydama 'Noriu kalbėtis su vartotoju X'. Daugiau nieko. Ji nepasako, kas tu esi. Ji nepasako, apie ką nori kalbėti. Tik raštelis dėžutėje.

Retkarčiais visos prie Solo2 prijungtos programėlės patikrina pašto dėžutes, ar kas nors nepaliko joms žinutės. Tai tarsi užsukti į paštą ir paklausti: „Ar yra kas nors man?“. Jei tavo kontaktas randa tavo žinutę, jis paprašo susitikimo vietos tavo palikto IP adreso. Ši jį perduoda. Adresas serverio atmintyje lieka kelias sekundes ir niekada neįrašomas į diską.

Nuo to momento susitikimo vieta dingsta

Kai abu įrenginiai žino vienas kito adresą, jie kalba tiesiogiai tarpusavyje. Susitikimo vieta nebedalyvauja. Jei tiesioginis ryšys neįmanomas, žinutės eina užšifruotos per mūsų veidrodį, kuris nieko neišsaugo. Ji jų nesaugo. Ji nežino, ar ryšys buvo užmegztas, ar ne. Ji nežino, kiek jis trunka. Ji nežino, kiek žinučių apsikeičiama ir kokio jos dydžio.

Tiek, kad jei susitikimo vieta tą akimirką išsijungtų, esant tiesioginiam ryšiui du vartotojai toliau kalbėtųsi lygiai taip pat. Pokalbis nepriklauso nuo jos. Jis priklausė nuo jos tik tam, kad du įrenginiai rastų vienas kitą. Prisijungus ji yra nereikšminga.

Pokalbis yra saugus dar net neprasidėjęs

Kai du žmonės sukuria tunelį Solo2, jų įrenginiai apsikeičia viešaisiais kriptografiniais raktais. Nuo tos akimirkos kiekviena žinutė yra užšifruota gavėjo raktu — ir tik gavėjas gali ją iššifruoti. Tai vyksta prieš bet kokio pokalbio pradžią. Raktai yra paruošti nuo tunelio sukūrimo momento.

Todėl, kai du įrenginiai jungiasi tiesiogiai, komunikacija jau yra apsaugota. Jiems nereikia nieko derėtis. Jiems nereikia prašyti susitikimo vietos leidimo. Raktai yra jų, jų įrenginiuose, ir niekas kitas jų neturi.

Ką tai reiškia praktiškai

Kad tavo pokalbiai nėra saugomi jokiame serveryje. Nėra pranešimų duomenų bazės, kurią būtų galima nulaužti. Jie užšifruoti keliauja iš tavo įrenginio į kito žmogaus įrenginį.

Kitą kartą, kai kas nors tau pasakys, kad programėlė „šifruoja tavo žinutes nuo pradžios iki galo“, paklausk apie visa kita: kas žino tavo kontaktus, kokiu laiku kalbi, kaip dažnai. Jei atsakymas yra „mūsų serveris, bet mes jo nenaudojame niekam blogam“, tai tik pažadas. Solo2 atsakymas kitoks: tavo kontaktai užšifruoti tavo įrenginyje ir mes nesaugome, su kuo kalbi ar apie ką kalbi.

Susiję straipsniai