Szyfrowanie tekstu hasłem
Szyfruj i odszyfrowuj tekst hasłem w przeglądarce, z AES-256-GCM i PBKDF2 (600 000 iteracji). Nic nie jest przesyłane. Uczciwie opisane ograniczenia.
Użyj długiego hasła, np. pięciu lub więcej losowych słów. Nikt nie odzyska zapomnianego hasła, a zaszyfrowany tekst jest tylko tak silny jak ono.
Jak zaszyfrować i odszyfrować tekst
- Wpisz lub wklej wiadomość w pierwszym polu albo kliknij Otwórz plik .txt.
- Wpisz Hasło, a potem to samo hasło w polu Potwierdź hasło (przy szyfrowaniu). Zaznacz Pokaż hasła, aby sprawdzić, co wpisałeś. Wiersz z oceną siły daje przybliżone pojęcie, jak trudno odgadnąć hasło.
- Kliknij Zaszyfruj. Wyprowadzenie klucza celowo trwa około sekundy (patrz niżej). Wynik to blok tekstu zaczynający się od BEGIN ENCRYPTED TEXT. Kopiuj go do e-maila, czatu lub notatki albo użyj Pobierz .txt, aby zachować go jako plik.
- Aby go odczytać, wklej cały blok (lub otwórz plik .txt) w pierwszym polu, wpisz hasło i kliknij Odszyfruj. Pole potwierdzenia nie jest potrzebne przy odszyfrowywaniu.
Jeśli hasło jest błędne albo choć jeden znak bloku został zmieniony, dostaniesz jasny komunikat o błędzie zamiast zniekształconego tekstu.
Co dzieje się z twoim tekstem
Wszystko działa w twojej przeglądarce za pomocą wbudowanego Web Crypto API. Tekst i hasło nigdy nie są nigdzie wysyłane. Narzędzie korzysta ze standardowych, dobrze przebadanych elementów:
- Wyprowadzanie klucza: PBKDF2 z HMAC-SHA-256 i 600 000 iteracji – ustawienie zalecane przez OWASP Password Storage Cheat Sheet dla PBKDF2-HMAC-SHA256. Przy każdym szyfrowaniu generowana jest nowa losowa 16-bajtowa sól, więc to samo hasło za każdym razem daje inny klucz, a tablice obliczone z góry są bezużyteczne. 600 000 rund sprawia, że każda próba odgadnięcia hasła jest dla atakującego powolna, i to z ich powodu szyfrowanie chwilę trwa.
- Szyfrowanie: AES-256 w trybie GCM (NIST SP 800-38D) z nowym losowym 12-bajtowym IV. GCM to szyfrowanie uwierzytelnione: 16-bajtowy znacznik wykrywa każdą modyfikację. Niewielki nagłówek (wersja formatu, liczba iteracji, sól i IV) również jest uwierzytelniany.
- Wynik: Base64 z nagłówkiem. Blok zawiera wersję formatu, więc przyszłe wersje tego narzędzia nadal odczytają dzisiejsze wiadomości. Dwukrotne zaszyfrowanie tego samego tekstu daje dwa różne bloki – tak ma być.
Uczciwie o ograniczeniach
To narzędzie służy do codziennej prywatności: wysłania znajomemu hasła do Wi-Fi, ukrycia osobistej notatki przed przypadkowym spojrzeniem albo przekazania krótkiego sekretu kanałem, któremu nie ufasz w pełni, gdy hasło przekazujesz inną drogą (osobiście lub telefonicznie).
- Hasło jest wszystkim. Słabym punktem nie jest sam AES-256, tylko hasło, które da się odgadnąć. Krótkie lub popularne hasło może zostać złamane offline, mimo 600 000 iteracji, przez każdego, kto ma zaszyfrowany blok. Użyj pięciu lub więcej losowych słów albo długiego losowego hasła z generatora. Ocena siły to tylko wskazówka: nie rozpozna, że „Lato2024!” to popularny wzorzec.
- Brak odzyskiwania. Nie ma tylnej furtki, resetu ani kopii twojego hasła. Zapomnisz je – tekst przepada na zawsze.
- Twoje urządzenie musi być godne zaufania. Złośliwe oprogramowanie, rozszerzenie przeglądarki albo ktoś zaglądający ci przez ramię może przeczytać tekst przed zaszyfrowaniem.
- Metadane nie są ukryte. Długość bloku zdradza w przybliżeniu długość wiadomości.
- To nie zastępuje sprawdzonych narzędzi. Do plików, kopii zapasowych, archiwów długoterminowych i wszystkiego, co wrażliwe (sprawy prawne, medyczne, tajemnice firmowe), używaj audytowanych narzędzi stworzonych w tym celu: age, GnuPG (OpenPGP) albo szyfrowania end-to-end komunikatora, takiego jak Signal.
Najczęściej zadawane pytania
Czy to szyfrowanie jest bezpieczne?
Algorytmy są te same, których używają banki i rządy, zastosowane w zalecany sposób (losowa sól i IV, szyfrowanie uwierzytelnione). W praktyce bezpieczeństwo jest takie, jak twoje hasło i urządzenie, z którego korzystasz.
Dlaczego moje hasło jest „błędne”, skoro jestem pewien, że jest dobre?
Hasła rozróżniają wielkość liter, a spacje się liczą. Sprawdź Caps Lock i układ klawiatury (np. polski programisty a inny układ, w którym litery z ogonkami wpisuje się inaczej) i upewnij się, że skopiowano cały blok, od BEGIN do END. Ucięty lub zmieniony blok celowo daje ten sam błąd co złe hasło.
Czy możecie odszyfrować mój tekst, jeśli zgubię hasło?
Nie. Nikt nie może: hasło nie jest nigdzie zapisywane, a sprawdzanie wszystkich możliwości jest właśnie tym, co ta konstrukcja czyni niewykonalnym.
Czy mogę odszyfrować blok innym programem?
Format jest opisany na stronie i korzysta ze standardowych prymitywów: 1 bajt wersji, 4-bajtowa liczba iteracji, 16-bajtowa sól, 12-bajtowy IV, a następnie szyfrogram AES-GCM i jego 16-bajtowy znacznik, wszystko w Base64; 33-bajtowy nagłówek jest przekazywany jako dodatkowe dane uwierzytelniane. Programista odszyfruje go kilkoma linijkami kodu z użyciem OpenSSL, pakietu cryptography w Pythonie lub Web Crypto.
Czy to lepsze niż szyfr Cezara albo ROT13?
To zupełnie co innego: tamte jedynie przebierają litery i można je złamać w kilka sekund. AES-GCM z silnym hasłem to nowoczesna kryptografia, której nie da się złamać, próbując przesunięć czy analizując częstość liter.
Podobne narzędzia
- Generator haseł Darmowy generator haseł, który tworzy silne, losowe hasła od 4 do 128 znaków w twojej przeglądarce. Nic nie jest zapisywane ani wysyłane.
- Generator fraz hasłowych Twórz silne, łatwe do zapamiętania frazy hasłowe z listy słów EFF lub francuskiej, z entropią w bitach. Generowane bezpiecznie w twojej przeglądarce.
- Generator hashy Generuj hashe MD5, SHA-1, SHA-256 i SHA-512 z tekstu lub plików dowolnej wielkości i sprawdzaj sumy kontrolne. Wszystko działa w twojej przeglądarce.
- Szyfr Cezara i ROT13 Szyfruj i odszyfruj tekst szyfrem Cezara, ROT13 lub ROT47, zobacz przesunięty alfabet i złam nieznany klucz, sprawdzając wszystkie 25 przesunięć.