Blog (4)
Komentarze (40)
Recenzje (1)
@twoloszynskiO tworzeniu haseł i ich praktycznym zastosowaniu

O tworzeniu haseł i ich praktycznym zastosowaniu

07.09.2011 | aktual.: 07.09.2011 13:15

W ciągu ostatnich kilkunastu godzin na dobrych programach pojawiły się dwa wpisy sugerujące jaki mechanizm zastosować, aby nasze hasło było nie tylko trudne do złamania, ale także praktyczne w użyciu dla nas czyli najprościej mówiąc, aby było je łatwo wpisać.

Wpis Januszka

Wpis Ziggurad'a

Pierwszy z nich, wpis Januszka, sugeruje użycie tzw. karty haseł. Właściwie pomysł nie jest nowy - szwajcarska firma, Savernova, zajmująca się bezpieczeństwem IT już jakiś czas temu umożliwiła pobranie losowo wygenerowanej tzw. karty haseł w formie PDF.

Pomysł niemal przełomowy i rzekłbym bardzo bezpieczny, ale czy praktyczny?

Chyba nie do końca, gdy stosujemy się do ogólnych zasad ochrony naszych tożsamości w internecie, a więc nie używamy do różnych kont tego samego hasła dostępu. Jak właściwie użyć wtedy takiej karty? Można ustalić sobie jeden punkt początkowy i kilkanaście różnych przebiegów kolejnych znaków, problem polega na tym, jak zapamiętać, który z mechanizmów był użyty do konta w serwisie X, a który w serwisie Y?

Można także wydrukować kilka/kilkanaście takich kart, ale wtedy taka "zabawa" nie jest ani praktyczna ani poręczna.

Szyfr Cezara

Metoda, którą zaproponował Ziggurad to nic innego, jak tzw. Szyfr Cezara. Jest to bardzo podstawowa technika stosowana w kryptografii. Jeśli nasz mechanizm przesunięć jest bardzo prosty, a do tego zawsze ten sam - hasło jest, wbrew pozorom, bardzo łatwe do złamania.

Wyobraźmy sobie sytuację, że do serwisu dobreprogramy.pl stosujemy metodę zaproponowaną przez Ziggurad'a czyli przesunięcie o jeden znak w prawo.

hasło:fpntr[tphts,u/[;

Dla jasności dodam, że hasło wpisałem samodzielnie - nie kopiowałem go, a nie popełniłem ani jednego błędu, bo mechanizm tworzenia tego hasła jest bardzo prosty. Jeśli tego samego mechanizmu użyliśmy w innych serwisach - zachodzi duże prawdopodobieństwo, że nasze bezpieczeństwo jest iluzją. Natomiast w momencie, gdy używamy różnych sposobów tworzenia hasła dla konkretnych witryn, ale są one równie proste czyli np. przesunięcie w górę o jeden znak, a jeśli jest ono niemożliwe to w prawo o jeden znak ; przesunięcie w dół o jeden znak, a jeśli jest ono niemożliwe to w lewo o jeden znak, jest to oczywiście pewne utrudnienie dla intruza, ale nadal łatwe do przejścia, gdy wie on, że wykorzystaliśmy metodę przesunięć.

[/] (Znak ten został umieszczony, gdyż edytor wpisów uznaje znaki nawiasu kwadratowego umieszczone w hasłach za znaki rozpoczynające tagi edytowania. Aby zastosować formatowanie tekstu w liniach poniżej konieczne jest ich zamknięcie.)

Metoda przesunięć dla zaawansowanych

Jest oczywiście sposób na wykorzystanie Szyfru Cezara w sposób bezpieczny - niestety obrzydliwie niepraktyczny. Przykład?

dobreprogramy.com

hasło : f[,iI1d[fcS2xpjaO3xs

Oto hasło powstałe z przekształcenia metodą przesunięć "wyrazu" dobreprogramy.pl - hasło bezpieczne w skali 1 - 5 myślę, że na 4- .

[/] (Znak ten został umieszczony, gdyż edytor wpisów uznaje znaki nawiasu kwadratowego umieszczone w hasłach za znaki rozpoczynające tagi edytowania. Aby zastosować formatowanie tekstu w liniach poniżej konieczne jest ich zamknięcie.)

Dlaczego tak nisko?

To nadal hasło powstałe w wyniku metody przesunięć z wykorzystaniem nazwy serwisu, do którego się logujemy. Przy użyciu jakiegoś zapamiętanego przez nas 12 znakowego "wyrazu" np. siałababamak i przekształceniu go sposobem przeze mnie zastosowanym otrzymujemy moim zdaniem bardzo bezpieczne hasło, przy założeniu, że wyrazu "siałababamak" nie będziemy nigdzie zapisywać, ani go nikomu podawać.

Reasumując hasło hiperbezpieczne i właściwie niemożliwe do bezbłędnego wpisania w czasie poniżej 90 sekund (strzelam).

Jak ono powstało?

Wyraz "dobreprogramy.com" został zapisany następującym przekształceniem

n - kolejność znaku w wyrazie

przesunięcie o n+1 w prawo (liczymy włączając w to znak zawarty w wyrazie czyli np. d jest pierwszym znakiem wyrazu, a więc 1+1 = 2 , co skutkuje, że 2 znakiem liczonym od d włącznie jest znak f) i co 5 znak tworzonego hasła pisany jest wielką literą, co 6 znak tworzonego hasła jest cyfrą począwszy od 1, następnie 2, 3 itd. , cyfr używamy tylko w co 6 znaku, pomijamy je w pozostałych, pomijamy klawisze, które nie mogą być użyte w haśle np. enter czy shift i przechodzimy do następnej linii znajdującej się powyżej lub poniżej.

Jest całkiem prawdopodobne, że gdzieś przy tworzeniu hasła się pomyliłem.

Eeee... więc jak?

Moim zdaniem hasła powinniśmy przechowywać w menadżerach haseł i przy pomocy zawartych w nich generatorów tworzyć je. Inne metody również są w porządku, jednak musimy odpowiedzieć sobie na pytanie czy zależy nam na bezpieczeństwie, czy łatwości wpisywania, czy na tym i na tym.

Menadżery też mają swoje wady, przede wszystkim, jeśli jest to program offline to najczęściej wszystkie hasła są przechowywane stacjonarnie w pliku bazy danych w postaci zaszyfrowanej, ale jednak są narażone na pewne ataki.

Reasumując każdy wybierze swoją metodę - jeden uzna za wystarczająco bezpieczny sposób zapisanie w kalendarzu, inny kartę haseł, ktoś użyje Szyfru Cezara, a ktoś inny menadżera haseł z plikiem klucza.

Wybrane dla Ciebie
Komentarze (11)