Szyfrowanie na własną rękę z użyciem Hat.sh
Hat.sh to darmowe narzędzie o otwartym kodzie źródłowym. Pozwala szybko i łatwo zabezpieczać pliki hasłem.
Ma postać prostej stronki internetowej, więc powinien działać na większości urządzeń z przeglądarką. Może działać (oczywiście po pierwszym pobraniu) bez żadnego dostępu do sieci.
Po raz pierwszy użyłem go podczas tworzenia wpisu na temat kontroli czatów. Chciałem pokazać, że wścibskie apki służące do komunikacji dałoby się przechytrzyć, wrzucając do nich wyłącznie zaszyfrowane rzeczy.
Wstępna weryfikacja
Ale nie wierzcie na słowo jakiejś Ciemnej Stronie. Nim powierzymy Hatowi swoje tajemnice, trzeba go zweryfikować!
Na Githubie, stronie z kodem źródłowym, nasz Kapelusz ma ponad 1900 gwiazdek (pozytywnych ocen).
Jest też jednym z polecanych sposobów na szyfrowanie na stronie Privacy Guides.
Brzmi dobrze! Ale zdarzało się już, że ktoś podkupił popularną rzecz, żeby ją zmienić w złodzieja danych. Dlatego dla pewności wyszukałem nazwę stronki również w social mediach:
- na forum HackerNews;
- na Reddicie.
Żadnych aferek nie znalazłem. Na Reddicie parę sceptycznych głosów, ale dotyczących bardziej samego faktu, że ktoś używa nowinek zamiast sprawdzonego GPG. Zastrzeżeń do szyfrowania nie widziałem.
Dla pewności, gdyby Hat jednak stał się złośliwy od czasu publikacji tego wpisu, można sięgnąć do dawnych, pewnych wersji zarchiwizowanych na Archive.org (podlinkowałem do października 2022, ale migawek jest dużo więcej).
Kolejna sprawa to fakt, że Hat ma postać pojedynczej strony internetowej. I ta „internetowość” może niektórych zaniepokoić.
Zwłaszcza jeśli ktoś czytał „Internetową inwigilację”. W końcu przy każdej prośbie o dowolną stronę internetową wysyłamy trochę swoich informacji
Ale serwer Hata kontaktuje się z nami tylko raz, dając nam stronkę. A cały kod oraz interfejs już są w niej osadzone. Przetwarzanie plików zachodzi wewnątrz naszej przeglądarki. Nikt tych danych nie otrzymuje.
…Według zapewnień. Ale dla pewności zrobiłem jeszcze parę rzeczy:
-
Uruchomiłem stronkę w trybie prywatnym.
W ten sposób nie byłaby w stanie zapisać sobie jakichś informacji na później, w plikach cookies, żeby je gdzieś wysłać następnym razem, kiedy ją odwiedzimy.
W tym trybie nie jest jednak w stanie korzystać z niektórych funkcji, więc rozmiar przyjmowanych plików jest ograniczony do 1 GB.
-
Po tym, jak stronka się załadowała, wyłączyłem na laptopie łączność z internetem (przez dolny pasek menu).
Wszystko mimo to działało.
Wniosek: zapewnienia twórców wydają są prawdziwe, Kapelusz (na tę chwilę) nie wysyła obcym danych. No to go użyjmy.
Instrukcja korzystania
Nim zaczniemy – sprawa hasła. Jeśli chcemy wysyłać pliki innej osobie, a nie szyfrować wyłącznie na własne potrzeby, to warto dogadać się co do hasła jakimś zaufanym kanałem.
Po ludzku – możemy choćby spotkać się w świecie fizycznym i ustalić hasło przy piwie
Gdybyśmy koniecznie musieli wysłać nasze hasło taką samą drogą co szyfrowany plik, to Hat.sh daje możliwość skorzystania z kryptografii asymetrycznej.
Otrzymujemy wtedy klucz publiczny (który możemy normalnie, na widoku komuś wysłać), zaś po swojej stronie zachowujemy klucz prywatny.
Ale w tym samouczku zakładam, że nie mamy takiej sytuacji i że możemy ustalić hasło w bezpiecznym miejscu. Albo szyfrujemy tylko na swoje osobiste potrzeby.
Na początek mamy jakiś plik, który chcemy zaszyfrować, żeby go żadni złoczyńcy i stalkerzy nie podejrzeli. Format dowolny – obrazek, nagranie…
Do naszego przykładu wezmę najprostszy plik tekstowy z krótką wiadomością:
Ładujemy w przeglądarce stronkę Hata (pamiętając, że po załadowaniu możemy wyłączyć internet). Zaznaczamy, że chcemy coś zaszyfrować. Potem wybieramy opcję załadowania pliku z dysku.
Po wybraniu trybu Hat zapyta nas o hasło. Wpisujemy coś długiego, złożonego z wielkich i małych liter. Komputer zawsze będzie miał więcej „losowości” niż człowiek, więc najlepiej sobie wygenerować.
Ale w tym przykładzie użyję czegoś z ludzkich słów. Optymalizując pod łatwość zapamiętania, a nie bezpieczeństwo. NawetNieCzujęJakSzyfruję
.
Hasło oczywiście zapamiętujemy lub zapisujemy. Nikt tego za nas nie zrobi
Strona poinformuje nas, że zaszyfrowany plik jest gotów do pobrania. Klikamy dalej i zapisujemy go na dysk. Będzie miał rozszerzenie .enc
(od encrypted).
Odszyfrowywanie
Po zapisaniu zaszyfrowanego pliku możemy go wysłać znajomej osobie. Albo sami do niego wrócić, jeśli szyfrowaliśmy tylko na własne potrzeby (np. na czas trzymania na dysku zewnętrznym).
W każdym razie – osoba mająca szyfrowany plik również otwiera Hata, wybiera tryb deszyfracji, ładuje plik, wpisuje hasło. Po czym pobiera pierwotną, odszyfrowaną treść.
I to tyle! Miłego testowania życzę
Kto chce, ten może również użyć dodatku do przeglądarki SingleFile, żeby zapisać sobie stronkę w postaci pojedynczego pliku HTML (koniecznie trzeba zaznaczyć w opcjach, żeby nie usuwało JavaScriptu).
Sprawdziłem i wszystko działa. Jedynie interfejs ma parę wad (czerwone tło w jednym miejscu; nie widziałem tekstu wpisywanego w pole od deszyfracji, choć tam był).
Mając Hata w formie pliku, możemy z niego korzystać do woli, bez użycia internetu. A nawet rozsyłać go innym rebeliantom znajomym przez Bluetooth, żeby potem używali w swoich przeglądarkach. Bez żadnego internetu.