FACHOWA CHI╤SZCZYZNA: DESZYFRATORY

Algorytm
Algorytm szyfruj╣cy okre£la metodΩ kodowania danych podczas szyfrowania. Im bardziej wyrafinowany algorytm, tym bezpieczniejszy szyfr.

Atak na tekst zaszyfrowany
Atak na tekst zaszyfrowany (tzw. ciphertext only attack) stanowi statystyczn╣ metodΩ ujawniania kluczy. Oto przyk│ad: liter╣, kt≤ra najczΩ£ciej wystΩpuje w polskich tekstach, jest ma│e äe". Deszyfrator wyszukuje zatem w zaszyfrowanym tek£cie najczΩ£ciej pojawiaj╣cy siΩ znak i zak│ada, ┐e odpowiada on literze äe". Podobnie postΩpuje z pozosta│ymi znakami. Je£li do zaszyfrowania tekstu u┐yto prostego algorytmu, mo┐na w ten spos≤b obliczyµ fragment klucza. Metoda statystyczna jest bezskuteczna w przypadku, gdy dokument jest pusty lub zawiera zbyt ma│o tekstu.

Atak za pomoc╣ tekstu jawnego
W przypadku ataku za pomoc╣ tekstu jawnego (tzw. known plain text attack) deszyfruj╣cy zna fragment niezaszyfrowanego tekstu lub przypuszcza, ┐e w zaszyfrowanym tek£cie wystΩpuj╣ okre£lone wyrazy czy zdania. NajczΩ£ciej wypr≤bowuje siΩ np. standardowe nag│≤wki i formu│ki grzeczno£ciowe. Przy prostym algorytmie szyfrowania por≤wnanie tekstu jawnego z tekstem zaszyfrowanym pozwala obliczyµ klucz szyfruj╣cy. Jako ätekst" jawny mo┐e pos│u┐yµ tak┐e znajomo£µ struktury dokumentu. Jest ona taka sama dla wszystkich dokument≤w danego formatu, zatem nie jest nie mo┐e byµ utajona.

Dictionary attack
Wyszukiwanie s│ownikowe

D│ugo£µ klucza
Dane koduje siΩ przy pomocy klucza, kt≤ry zazwyczaj generuje siΩ na podstawie has│a. D│ugo£µ klucza zale┐y od stosowanego
algorytmu szyfruj╣cego. Im d│u┐szy klucz, tym trudniej z│amaµ zabezpieczenia i ujawniµ dane.

Metoda brute force
Metoda brute force to najprostszy spos≤b wyszukiwania tajnych kluczy i hase│. Polega na wypr≤bowywaniu (podstawianiu) wszystkich mo┐liwych kombinacji znak≤w w obrΩbie ca│ej przestrzeni klucza do momentu jego odnalezienia. Brute force znajduje zastosowanie wtedy, gdy wszystkie inne metody okazuj╣ siΩ bezskuteczne. Podej£cie t╣ metod╣ mo┐e byµ ogromnie czasoch│onne zale┐nie od d│ugo£ci has│a i mocy obliczeniowej komputera. Przy za│o┐eniu, ┐e zbi≤r znak≤w u┐ytych w kluczu obejmuje 92 znaki (wielkie i ma│e litery, cyfry i czΩsto stosowane znaki specjalne), liczba kombinacji - czyli mo┐liwych hase│ - wynosi 92n, przy czym n oznacza d│ugo£µ has│a. Na komputerze Pentium 166 MHz, kt≤ry wykorzystali£my do naszych test≤w, programy deszyfruj╣ce podstawia│y maksymalnie 13.000 hase│ na sekundΩ. Podczas gdy odnalezienie has│a o d│ugo£ci trzech znak≤w przebiega na wspomnianym pececie do£µ kr≤tko (trwa to oko│o minuty), ta sama operacja z has│em o siedmiu znakach mog│aby zaj╣µ ok. 181 lat. By korzystaj╣c z wymienionego sprzΩtu odnaleƒµ do roku 2000 has│o o d│ugo£ci o£miu znak≤w, poszukiwania nale┐a│oby rozpocz╣µ ju┐ w epoce kamienia │upanego.

Szyfrowanie RC4
DziΩki zmiennej
d│ugo£ci klucza algorytm szyfruj╣cy RC4 oferuje akceptowalny stopie± bezpiecze±stwa. Jednak w przypadku produkt≤w z USA d│ugo£µ klucza jest czΩsto ograniczona do 40 bit≤w.

Wyszukiwanie s│ownikowe
Wyszukiwanie s│ownikowe (tzw. atak z u┐yciem zbior≤w odpowiedzi) to szybszy wariant metody
brute force. Podstawowym za│o┐eniem metody jest przypuszczenie, ┐e do zaszyfrowania tekstu u┐yto naturalnego s│owa (a nie dowolnych kombinacji liter) pochodz╣cego z jΩzyka, kt≤rym w│ada szyfruj╣cy. Program deszyfruj╣cy podstawia zatem wyrazy zawarte w dostΩpnym mu zbiorze (s│owniku). Odpowiednie s│owniki dla wielu jΩzyk≤w mo┐na znaleƒµ w Internecie. Uwaga: hakerzy czΩsto uzupe│niaj╣ s│owniki o has│a pochodz╣ce z bliskiego otoczenia osoby, kt≤ra zaszyfrowa│a dany tekst. Do takich wyraz≤w nale┐╣ przyk│adowo imiona cz│onk≤w rodziny czy znajomych, ksywki, marki samochod≤w itp.