Dzisiaj prezentujemy kolejną część cyklu, jak stworzyć bezpieczne hasło.

Niekiedy nasze hasło może być za długie, bądź korzysta ze zbyt wyszukanych znaków specjalnych i może zostać odrzucone przez system. Wtedy trzeba mieć w zanadrzu jakieś inne – krótsze i prostsze hasło bazowe, z którego skorzystamy. Dochodzi do tego problem nazwy użytkownika. O ile w przypadku maila nie ma problemu, gdyż korzystamy z jednego maila do wszystkich serwisów, to z nazwą użytkownika jest już gorzej. Często nasz ulubiony login jest już zajęty i trzeba go albo modyfikować, albo wymyślić coś innego. Do tego bardzo często spotyka się dość mocne ograniczenia na login (np. tylko znaki alfanumeryczne) i nasza standardowa modyfikacja przez dodanie na końcu znaku _ robi się bezużyteczna. Przy dużej ilości poświadczeń (poświadczenie = login + hasło) pojawi się problem nie tyle z pamiętaniem haseł, co z pamiętaniem wszystkich loginów. Dlatego świadomie wybraliśmy opcję przechowywania wszystkich haseł w jednym wspólnym magazynie.

Jednym z takich programów jest KeePass, o którym wspomnieliśmy w poprzednim artykule, a teraz przedstawimy go bardziej szczegółowo. Postaram się opisać go subiektywnie, czyli jak z niego korzystam oraz dlaczego przekonał mnie do siebie. Zacznijmy od zdobycia KeePassa.

Na co dzień korzystam z Windowsa, Linuxa oraz Androida. Na wszystkich tych platformach KeePass działa bardzo sprawnie. Z samym procesem instalacji poradzi sobie każdy początkujący użytkownik tych systemów. Zdobyć można go na stronie producenta: http://keepass.info/download.html dla niemalże wszystkich popularnych platform. Do tego jest dostępny na markecie (rodzaj sklepu internetowego) dla systemów mobilnych (WM7, Android, iOS) oraz w podstawowych repozytoriach (rodzaj marketu) dla wielu dystrybucji Linuxa.

Opiszę działanie KeePassa dla wersji 1.8, gdyż wersja 2.X jest nie do końca jeszcze prawidłowo wspierana na innych platformach niż Windows. Różnice nie są aż tak znaczące, aby kosztem funkcjonalności przejść na nową wersję. Warto nadmienić, iż przy odpowiedniej konfiguracji obie wersje programu są równie bezpieczne. Po pierwszym uruchomieniu okno programu wygląda następująco:

Okno Główne programu

Aby założyć nową bazę haseł, trzeba kliknąć ikonę New… zaznaczoną na powyższym obrazku. Pojawi się nowe okno, w którym możemy zdefiniować poziom zabezpieczeń naszej bazy:

Create New Password Database

W polu Master Password należy podać hasło, które będzie nam potrzebne w przyszłości do otworzenia bazy. Po jego prawidłowym wpisaniu uzyskamy dostęp do całej naszej bazy loginów i haseł, dlatego warto zadbać o to, aby było to silne hasło. Następnie, aby jeszcze bardziej wzmocnić naszą bazę, tworzymy klucz prywatny (trzeba zaznaczyć opcję Use master password and key file), bez którego dostęp do niej będzie niemożliwy. Poniżej wybieramy lokalizację i nazwę pod jaką chcemy klucz zapisać i klikamy OK. W kolejnym oknie zostaniemy poproszeni o powtórzenie hasła głównego. Gdy je wpiszemy, zaznaczamy OK. Pojawi się ostanie okno, w którym wygenerujemy losowo klucz szyfrujący.

Get Random

Można w tym celu skorzystać z klawiatury albo myszki. Wybierzemy myszkę. Klikamy Use Mouse as Random Source, a następnie wykonujemy losowe ruchy w polu Random mouse input (zaszumiony obszar) tak długo, aż pasek postępu zapełni się jak na powyższym obrazku. Klikamy OK. Pojawi nam się z powrotem główne okno KeePass’a. Wciskamy skrót klawiszowy Ctrl+I i w nowo otwartym oknie możemy ustalić sobie domyślną nazwę użytkownika dla nowych wpisów oraz ilość obrotów algorytmu szyfrującego, która przy odpowiedniej wartości wykluczy sensowność ataku typu Brute-force. Dobrym rozwiązaniem jest skorzystanie z guzika (zaznaczonego poniżej na czerwono), który dla naszego komputera przyjmie taką wartość, abyśmy czekali 1 sekundę zanim cała operacja się wykona:

Database Settings

Dla nas 1 sek czasu, który musimy odczekać po wpisaniu hasła, zanim baza się odszyfruje będzie prawie niezauważalna; jest to czas oczekiwania, który możemy bez problemu zaakceptować. Natomiast dla atakującego ta 1 sek dłużej przy każdej próbie może wydłużyć czas łamania hasła nawet o parę miesięcy. Np. dla słownika składającego się z 10 000 000 rekordów (mimo sporej liczby nie jest to bardzo obszerny słownik), czas wydłuży się o 115 dni.

W oknie głównym programu powinny nam się pojawić po lewej stronie grupy (Windows | Network | Internet | eMail | Homebanking) – można je w pełni modyfikować: dodawać, usuwać, zmieniać nazwy, tworzyć podgrupy. Mają one na celu lepszą segregację swoich poświadczeń przy ich większej ilości. W prawym kontenerze natomiast będą nam się wyświetlać wszystkie hasła z danej grupy. Aby dodać nowy wpis, na pasku szybkiego dostępu klikamy ikonę Add Entry… i pojawi nam się nowe okno, w którym możemy skonfigurować dany wpis:

Add Entry

Możemy wybrać grupę, do której wpis będzie należał, nadać mu odpowiednią ikonę. Wartość w polu Title jest nazwą wpisu, po której możemy go szybko wyszukać korzystając z pola wyszukiwania na pasku szybkiego dostępu. User name oraz Password są to pola, którymi będziemy się logować do danego serwisu. Jak widać losowe hasło tworzone wedle domyślnych reguł (można je zmienić w ustawieniach programu) jest już wygenerowane. Klikając ikonę obok pola Password można je podejrzeć. Klikając ikonę poniżej można wygenerować losowe hasło według innych niż domyślne reguł. Możemy manipulować jego długością oraz różnorodnością znaków. Poniżej prezentuję parę losowo wygenerowanych haseł za pomocą KeePass’a:

h-i"f&$d'ZQJw5Ce
KQUw[8b)QX{'wa$4
ngVg_"9B0s`uBO9-
kd'9+!;nJ+07&]*

Na pewno nie znajdziecie ich w żadnym słowniku, a próba odgadnięcia takiego hasła metodą brute-force jest bardzo czasochłonna.

Warto sobie również przejrzeć podstawowe opcje programu i zdefiniować jego działanie w momencie zablokowania ekranu czy minimalizacji go do paska systemowego (baza haseł może się przy określonych czynnościach zablokować). Ciekawym skrótem jest Ctrl+V, po wciśnięciu którego zaznaczony wpis zostaje bezpośrednio przesłany do formatki logowania i bez zbędnego wstukiwania nazwy użytkownika i hasła, zostajemy pomyślnie uwierzytelnieni na danej stronie. Również podwójne kliknięcie nazwy użytkownika bądź hasła, kopiuje ją na określony czas do schowka systemowego.

Dość ciekawym rozwiązaniem jest trzymanie zaszyfrowanej bazy na wirtualnym dysku, dzięki czemu mamy dostęp do niej z każdego miejsca na świecie. Co więcej, jeśli korzysta się z paru urządzeń i na jednym dokona się aktualizacji bazy, to automatycznie zostanie ona zsynchronizowana z bazami na innych urządzeniach. Oczywiście hasło główne warto mieć zanotowane jedynie w głowie, a klucz prywatny (plik *.key) nosić osobno, np. na pendrive.

Zobacz także: