Какво знае нашето място за среща за теб
Да започнем с основите. Нашето място за среща знае точно три неща за теб: потребителското ти име, уникалния ти идентификатор и хеш на паролата ти. Хешът е необратима математическа трансформация — може да провери дали паролата ти е правилна, без да знае каква е. Истинската ти парола съществува само в главата ти и на твоето устройство.
Нищо повече. Не пазим с кого разговаряш нито какво казваш. Твоите тунели и имената на твоите контакти съществуват само на твоето устройство, криптирани, и нашата точка за срещи не може да ги отвори дори да иска.
Пощенските кутии
Представи си стена с номерирани пощенски кутии, като в стара поща. Когато приложението ти иска да се свърже с някого, оставя бележка в пощенска кутия с текст 'Искам да говоря с потребител X'. Нищо повече. Не казва кой си. Не казва за какво искаш да говориш. Просто бележка в пощенска кутия.
От време на време всички приложения, свързани със Solo2, проверяват кутиите дали някой не им е оставил бележка. Като да минеш през пощата и да попиташ: „Има ли нещо за мен?“. Ако твоят контакт намери бележката ти, иска от точката за срещи IP адреса, който си оставил. Тя му го дава. Адресът се съхранява в паметта на сървъра за няколко секунди и никога не се записва на диск.
От този момент нататък мястото за среща изчезва
След като двете устройства знаят адреса си, те говорят директно помежду си. Мястото за среща вече не участва. Ако директната връзка не е възможна, съобщенията преминават криптирани през нашето огледало, което не записва нищо. Не ги съхранява. Не знае дали връзката е установена или не. Не знае колко продължава. Не знае колко съобщения се обменят и с какъв размер са.
Дотолкова, че ако мястото за среща се изключи в този момент, при директна връзка двамата потребители щяха да продължат да говорят абсолютно по същия начин. Разговорът не зависи от него. Зависеше от него само за да се намерят двете устройства. Веднъж свързани, то е без значение.
Разговорът е защитен, преди дори да е започнал
Когато двама души създадат тунел в Solo2, устройствата им обменят публични криптографски ключове. От този момент всяко съобщение се криптира с ключа на получателя — и само получателят може да го декриптира. Това се случва преди началото на каквато и да е комуникация. Ключовете са готови от момента на създаването на тунела.
Затова, когато двете устройства се свържат директно, комуникацията вече е защитена. Не е нужно да договарят нищо. Не е нужно да искат разрешение от мястото за среща. Ключовете са техни, на устройствата им, и никой друг не ги притежава.
Какво означава това на практика
Че разговорите ти не се записват на нито един сървър. Няма база данни със съобщения, която да бъде хакната. Те пътуват криптирани от твоето устройство до това на другия човек.
Следващия път, когато някой ти каже, че приложение „криптира съобщенията ти от край до край“, попитай за всичко останало: кой знае контактите ти, по кое време говориш, колко често. Ако отговорът е „нашият сървър, но не го използваме за нищо лошо“, това е обещание. В Solo2 отговорът е друг: контактите ти са криптирани на твоето устройство и ние не пазим с кого разговаряш нито какво казваш.