Kadu

Z RNO-Wiki

Hasło w pliku kadu.conf.xml

Kiedyś potrzebowałem odzyskać hasło zaszyfrowane w pliku kadu.conf.xml. Poświęciłem chwilę przy czytaniu kodów programu Kadu i znalazłem funkcję, którą się szyfruje hasło. Ponieważ ona używa tylko operatora XOR, więc można się nią posłużyć do odszyfrowywania hasła.

Oto funkcja podobna do tej z programu Kadu (używa stringów i nie przejmuje się unicode'm):

string pwHash(const string &text)
{
        string newText = text;
        for (unsigned int i = 0, textLength = text.length(); i < textLength; ++i)
                newText[i] = text[i] ^ i ^ 1;
        return newText;
}

Można za jej pomocą szyfrować i odszyfrowywać hasła zapisane w pliku kadu.conf.xml

 <Entry value="Gail`Lfueg" name="Password" />

Wywołanie pwHash("Gail`Lfueg") zwraca string'a "FajneHaslo".

Uwaga: czasami w polu Password mogą znajdować się HTML'owe interpretacje. Na przykład zamiast " i & będzie napisane &quot; i &amp; Jak już napisałem wcześniej, moja funkcja nie zwraca na to uwagi i w takiej sytuacji wypisze złą odpowiedź. Muszisz niestety podać jej na wejściu zwykły ciąg znaków, a więc musisz sam pozamieniać np. wystąpienia &amp; na & itp.

--Rno 09:10, 2 mar 2007 (CET)

Osobiste