Kiedy zakładasz konto w prywatnym komunikatorze, zwykle wybierasz hasło. Jak dotąd, nic nadzwyczajnego. To, co nie jest takie normalne, to to, co dzieje się pod spodem.
W większości serwisów twoje hasło jest kluczem do wszystkiego. Jeśli je stracisz, tracisz dostęp. Jeśli zostanie skradzione, tracisz wszystko. Twoją tożsamość, wiadomości, pliki. Wszystko zależy od jednej rzeczy, którą wpisałeś na klawiaturze pewnego wtorkowego popołudnia.
24 słowa działają inaczej. To nie jest hasło, które wybierasz. To klucz, który system generuje losowo, z 256 bitami prawdziwej entropii. Żeby dać ci pojęcie: złamanie tego klucza metodą brute-force wymagałoby więcej energii niż słońce wyprodukuje przez całe swoje istnienie. To nie metafora. To obliczenie matematyczne.
Dwa klucze do dwóch drzwi
Twoje hasło łączy cię z usługą. To klucz do drzwi wejściowych. Jeśli je zapomnisz, możesz wejść tylnymi drzwiami za pomocą swoich 24 słów. Jeśli twoje hasło zostanie skradzione, możesz je natychmiast zmienić, a nic innego się nie zmieni.
Twoje 24 słowa to coś innego. To reprezentacja twojego klucza głównego. Klucza, z którego wywodzi się twoja tożsamość kryptograficzna, który chroni twoje dane, który identyfikuje cię wobec twoich kontaktów. Jeśli stracisz 24 słowa i także hasło, twoje dane są nie do odzyskania. Jak w Bitcoin. I to, choć brzmi surowo, jest dokładnie tym, czego chcesz od bezpiecznego systemu.
Bo alternatywą jest to, że ktoś może odzyskać twoje dane za ciebie. A jeśli ktoś może odzyskać twoje dane, może też uzyskać do nich dostęp.
Papier ma znaczenie
Zapisz swoje 24 słowa na kartce papieru. Prawdziwej kartce, staromodnej. Schowaj ją w bezpiecznym miejscu. Nie na telefonie, nie w cyfrowej notatce, nie w mailu do siebie. Kartka w szufladzie, w sejfie, albo tam, gdzie trzymasz rzeczy, które mają znaczenie.
Może się wydawać staromodne. Ale kartki papieru nie da się zhakować zdalnie, nie da się przechwycić przez internet i nie potrzebuje baterii. Czasem najstarsza technologia jest najbezpieczniejsza.
Dla tych, którzy chcą zgłębić temat
24 słowa są zgodne ze standardem BIP39, używanym przez portfele Bitcoin. Reprezentują 256 bitów entropii wygenerowanych przez CSPRNG systemu operacyjnego (crypto.getRandomValues). Z tych 256 bitów wyprowadzany jest klucz tożsamości (Ed25519 do podpisów + X25519 do wymiany kluczy) za pomocą HKDF-SHA256 z separacją domen. Hasło opakowuje ten klucz za pomocą Argon2id + AES-256-GCM przed wysłaniem go na serwer. Serwer przechowuje zaszyfrowany blob, ale nie może go odczytać.