[devel] Как восстановить пароль на jabber?

Andrey Rahmatullin =?iso-8859-1?q?wrar-alt_=CE=C1_mail=2Eru?=
Пт Сен 29 21:34:06 MSD 2006


On Sat, Sep 30, 2006 at 12:18:02AM +0700, Slava Semushin wrote:
> Как это сделать на шелле? Впрочем исходник на Сях я тоже пойму :)
Исходник на сях является частью сорцов пси :)

В аттаче, короче. Компилять с -I/usr/lib/qt3/include -L/usr/lib/qt3/lib -lqt-mt

-- 
WBR, wRAR (ALT Linux Team)
Powered by the ALT Linux fortune(8):

Я, конечно, осознаю, что моя точка зрения нынче не в моде,
но что общего между наглядными столбиковыми диаграммами
и полным контролем за состоянием батарей?
		-- ldv in community@
----------- следующая часть -----------
#include <qstring.h>
#include <iostream>

int hexChar2int(char c)
{
        if(c >= 'A' && c <= 'F')
                return c - 'A' + 10;
        else if(c >= 'a' && c <= 'f')
                return c - 'a' + 10;
        else if(c >= '0' && c <= '9')
                return c - '0';

        return 0;
}

QString decodePassword(const QString &pass, const QString &key)
{
        QString result;
        unsigned int n1, n2;

        if(key.length() == 0)
                return pass;

        for(n1 = 0, n2 = 0; n1 < pass.length(); n1 += 4) {
                ushort x = 0;
                if(n1 + 4 > pass.length())
                        break;
                x += hexChar2int(pass.at(n1))*4096;
                x += hexChar2int(pass.at(n1+1))*256;
                x += hexChar2int(pass.at(n1+2))*16;
                x += hexChar2int(pass.at(n1+3));
                QChar c(x ^ key.at(n2++).unicode());
                result += c;
                if(n2 >= key.length())
                        n2 = 0;
        }
        return result;
}

int main()
{
    QString q = decodePassword("хэш из конфига", "JID");
    std::cout << q.local8Bit() << std::endl;
}
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 191 байтов
Описание: Digital signature
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20060929/17fbc68a/attachment-0001.bin>


Подробная информация о списке рассылки Devel