Algorytm kodownia w G-G

Algorytm kodowania Gadu-Gadu jest chyba najprostszym z jakim zetknąłem się do tej pory. Plik z hasłem („config.dat”) znajduje się w katalogu \Users\<Nazwa użytkownika>. Jeśli użytkownik wybrał opcję zapisania hasła, to hasło zapisane jest po ciągu znaków „Password2”. Długość zakodowanego hasła jest równa podwojonej długości prawdziwego hasła.

 

- Kodowanie cyfr

Przykładowe hasło złożone tylko z cyfr: BDCDDDEDFD (12345)

Cyfry od zera do dziewięciu odpowiadają odpowiednio literom z alfabetu: od A do J. Aby program wiedział, że w haśle występuje cyfra, to za zakodowaną cyfrą znajduje się „D”. W ten sposób jedna cyfra zajmuje 2 bajty w pliku: zakodowana cyfra i „D”.

 

- Kodowanie małych liter

Przykładowe hasło złożone tylko z małych liter: BGCGDGEGFG (abcde)

Są 2 przedziały liter:

 

Od a do o

„a” w haśle odpowiada „B” w pliku

...

„o” w haśle odpowiada „P” w pliku

 

Od p do z

„p” w haśle odpowiada „B” w pliku

...

„z” w haśle odpowiada „K” w pliku

 

Aby program mógł odróżnić jaka jest litera zapisana w pliku, to za zakodowaną literą znajduje się:

W przypadku liter z przedziału od a do o „G”

W przypadku liter z przedziału od p do z „H”

Litera w haśle                Litera w pliku

a                                    BG

p                                    BH

 

-Kodowanie dużych liter

Przykładowe hasło złożone tylko z dużych liter: BECEDEEEFE (ABCDE)

Są 2 przedziały liter:

 

Od A do O

„A” w haśle odpowiada „B” w pliku

...

„O” w haśle odpowiada „P” w pliku

 

Od P do Z

„P” w haśle odpowiada „B” w pliku

...

„Z” w haśle odpowiada „K” w pliku

 

Aby program mógł odróżnić jaka jest litera zapisana w pliku, to za zakodowaną literą znajduje się:

W przypadku liter z przedziału od A do O „E”

W przypadku liter z przedziału od P do Z „F”

Litera w haśle                Litera w pliku

a                                    BE

p                                    BF

 

Miłej zabawy z łamaniem hasła ;)

Ripped by Rufous

 

Powrót