Pierwsze pytanie: „Czy Splync jest bezpieczny”
Kiedy Splync osiągnął wersję MVP, kilku moich przyjaciół przetestowało aplikację w rzeczywistości. Zarejestrowali się za pomocą e-maila i hasła, tworzyli projekty i dodawali wydatki. Wszystko działało dobrze, z wyjątkiem kilku drobnych błędów. Jednak pierwsze pytanie, które zadali, nie dotyczyło wyglądu, funkcji ani szybkości. Chodziło o bezpieczeństwo. Czy naprawdę mogą zaufać Splync w kwestii codziennych wydatków? To słuszne i ważne pytanie. Dane dotyczące finansów osobistych są bardzo wrażliwe, a każda aplikacja, która je obsługuje, musi być bezpieczna.
Splync używa HTTPS, a nie HTTP
Splync potrzebuje Internetu, aby umożliwić użytkownikom łączenie danych, dzielenie się projektami i synchronizację wydatków na różnych urządzeniach. Oznacza to, że każda liczba, którą zapisujesz, i każdy przycisk, który naciskasz, przechodzi przez sieć, zanim dotrze do serwera. Bez ochrony, każda osoba na tej samej sieci Wi-Fi mogłaby obserwować ten ruch. Dlatego Splync używa HTTPS, a nie HTTP.
Dlaczego HTTP nie jest bezpieczny
HTTP (Hypertext Transfer Protocol) był kiedyś standardowym sposobem komunikacji w Internecie. Ale ma poważną wadę: przesyła informacje w formie zwykłego tekstu. Wyobraź sobie, że piszesz swoje sekrety na pocztówce, zamiast zamknąć je w kopercie. Każdy, kto obsługuje pocztę — pracownicy poczty, kurier, a nawet przypadkowa osoba zaglądająca przez okno — mógłby przeczytać każde słowo. Tak wyglądało stare połączenie „http” na początku istnienia sieci. Działało, ale nie było prywatne. HTTPS rozwiązuje ten problem, zamykając twoją wiadomość w zaszyfrowanej kopercie, którą otworzyć mogą tylko ty i oficjalny serwer.
Jak HTTPS cię chroni
Kiedy otwierasz Splync, twój smartfon i nasz serwer zaczynają się komunikować — ale nie ufają sobie od razu. Najpierw wykonują mały rytuał zwany handshake. To jak wymiana dowodów tożsamości przez dwoje obcych, zanim podzielą się sekretami. Podczas tego handshake twój telefon sprawdza cyfrowy certyfikat serwera, który potwierdza, że to naprawdę Splync, a nie oszust podszywający się pod nas. Gdy zaufanie zostaje ustanowione, obie strony uzgadniają tymczasowy klucz — rodzaj hasła używanego tylko podczas tej sesji.
Handshake rozpoczyna zabezpieczoną komunikację
Od tego momentu wszystko, co wysyłasz — twoje dane logowania, dane projektów, wydatki — jest szyfrowane za pomocą tego klucza. Gdyby ktoś próbował przechwycić sygnał, zobaczyłby jedynie losowe znaki, jak próba przeczytania rozmowy krzyczanej pod wodą. To wszystko dzieje się automatycznie, w milisekundach, za każdym razem, gdy otwierasz aplikację. Nigdy tego nie widzisz, ale HTTPS ciągle stoi na straży, zapewniając prywatność twoich danych. Dlatego nazywamy to niewidzialną tarczą: działa cicho w tle, ale bez niego Internet nadal byłby światem otwartych pocztówek.
Co jeśli aplikacja nie używa HTTPS
Aby zrozumieć, dlaczego HTTPS jest ważny, wyobraź sobie prostą scenę. Jesteś w kawiarni, pijesz kawę, przeglądając wydatki na publicznej sieci Wi-Fi. Bez HTTPS każde kliknięcie — twój e-mail, hasło, a nawet prywatne nazwy projektów — przemieszcza się w powietrzu jako zwykły tekst. Każdy w pobliżu z podstawowymi narzędziami mógłby przechwycić to połączenie i przeczytać wszystko, linijka po linijce. To tak zwany atak „man-in-the-middle”, który na początku istnienia Internetu był alarmująco powszechny, ponieważ większość stron nie szyfrowała swojej komunikacji.
Jak sprawdzić, czy strona jest bezpieczna
Obecnie przeglądarki aktywnie ostrzegają użytkowników, gdy strona nie jest chroniona przez HTTPS. Jeśli kiedykolwiek zobaczysz adres internetowy zaczynający się od „http://”, unikaj wprowadzania jakichkolwiek wrażliwych informacji — oznacza to, że połączenie nie jest zaszyfrowane. Zawsze sprawdzaj, czy adres URL zaczyna się od „https://” i czy obok pojawia się mała ikona kłódki. To małe „S” w HTTPS oznacza „Secure” i robi ogromną różnicę. Informuje, że twoje dane podróżują bezpiecznie w zaszyfrowanym tunelu, a nie na otwartej pocztówce.
Czy można sprawdzić URL w aplikacji
Możesz się zastanawiać, jak sprawdzić URL w aplikacji, który zwykle jest niewidoczny. Nowoczesne aplikacje są zaprojektowane tak, aby komunikować się tylko za pomocą bezpiecznych zapytań HTTPS. Deweloperzy określają dokładny adres serwera w kodzie źródłowym aplikacji, a system automatycznie blokuje wszelkie niebezpieczne połączenia „http://”. Na przykład na iPhone każda aplikacja musi domyślnie używać HTTPS. Apple wymusza to poprzez framework o nazwie App Transport Security (ATS), który odrzuca wszelką nieszyfrowaną komunikację, chyba że deweloper wyraźnie poprosi o wyjątek.
Splync jest bezpieczny z HTTPS
Twój smartfon sam działa jako strażnik, odrzucając każde połączenie, które nie jest zaszyfrowane. Więc nawet jeśli nigdy nie widzisz URL, za każdym razem, gdy Splync łączy się z naszym serwerem, podróżuje już przez tę samą niewidzialną tarczę HTTPS. HTTPS chroni drogę między twoim urządzeniem a naszym serwerem. Ale co z samym serwerem? To nasz kolejny temat, SSH.