Дешифровка и каша для раздумья - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Сообщество Календарь
Вернуться   Форум администраторов игровых серверов > MMO > Другие игры / Other games > ArcheAge

ArcheAge Раздел, посвященный ArcheAge - новой многопользовательской ролевой онлайн игре от XLGames.

Ответ
Опции темы
Непрочитано 30.06.2014, 19:47   #1
Пользователь

Автор темы (Топик Стартер) Дешифровка и каша для раздумья

Код:
byte Inline(ref uint cry)
{
    cry += 3532013U;
    byte n = (byte)(cry >> 16);
    return (byte)(((int)n == 0) ? 254 : n);
}

byte[] CtoSDecrypt(byte[] BodyPacket, uint UnkKey)
{
    byte[] Array = new byte[BodyPacket.Length];
    uint cry = (uint)((ulong)UnkKey + (ulong)BodyPacket.Length) * UnkKey ^ 1973428001u;
    int n = 4 * (BodyPacket.Length / 4);
    for (int i = n - 1; i >= 0; i--)
        Array[i] = (byte)((uint)BodyPacket[i] ^ (uint)Inline(ref cry));
    for (int i = n; i < BodyPacket.Length; i++)
        Array[i] = (byte)((uint)BodyPacket[i] ^ (uint)Inline(ref cry));
    return Array;
}

byte[] StoCDecrypt(byte[] BodyPacket)
{
    byte[] Array = new byte[BodyPacket.Length];
    uint cry = (uint)(BodyPacket.Length ^ 522286496);
    int n = 4 * (BodyPacket.Length / 4);
    for (int i = n - 1; i >= 0; i--)
        Array[i] = (byte)((uint)BodyPacket[i] ^ (uint)Inline(ref cry));
    for (int i = n; i < BodyPacket.Length; i++)
        Array[i] = (byte)((uint)BodyPacket[i] ^ (uint)Inline(ref cry));
    return Array;
}
Так как я зашел в тупик и мне не кто не смог помочь, ну что....
Вот собственно то до чего я дошел с Идой.
Ну и собственно сама каша, где или что такое UnkKey который нужен для декрипта C->S пакетов.
nikes вне форума Ответить с цитированием
Непрочитано 30.06.2014, 19:52   #2
Пользователь

По умолчанию Re: Дешифровка и каша для раздумья

Лучше зацепится внутри клиента и вытаскивать чистые пакеты после дешифровки. Алгоритм шифрации наверняка будут постоянно усложнять и менять.
flopix вне форума Ответить с цитированием
Непрочитано 30.06.2014, 19:58   #3
Пользователь

Автор темы (Топик Стартер) Re: Дешифровка и каша для раздумья

Увы но для создание емуль мне нужна это декрипт.
nikes вне форума Ответить с цитированием
Непрочитано 30.06.2014, 22:23   #4
Пользователь

По умолчанию Re: Дешифровка и каша для раздумья

Цитата:
Сообщение от nikes Посмотреть сообщение
Код:
byte Inline(ref uint cry)
{
    cry += 3532013U;
    byte n = (byte)(cry >> 16);
    return (byte)(((int)n == 0) ? 254 : n);
}

byte[] CtoSDecrypt(byte[] BodyPacket, uint UnkKey)
{
    byte[] Array = new byte[BodyPacket.Length];
    uint cry = (uint)((ulong)UnkKey + (ulong)BodyPacket.Length) * UnkKey ^ 1973428001u;
    int n = 4 * (BodyPacket.Length / 4);
    for (int i = n - 1; i >= 0; i--)
        Array[i] = (byte)((uint)BodyPacket[i] ^ (uint)Inline(ref cry));
    for (int i = n; i < BodyPacket.Length; i++)
        Array[i] = (byte)((uint)BodyPacket[i] ^ (uint)Inline(ref cry));
    return Array;
}

byte[] StoCDecrypt(byte[] BodyPacket)
{
    byte[] Array = new byte[BodyPacket.Length];
    uint cry = (uint)(BodyPacket.Length ^ 522286496);
    int n = 4 * (BodyPacket.Length / 4);
    for (int i = n - 1; i >= 0; i--)
        Array[i] = (byte)((uint)BodyPacket[i] ^ (uint)Inline(ref cry));
    for (int i = n; i < BodyPacket.Length; i++)
        Array[i] = (byte)((uint)BodyPacket[i] ^ (uint)Inline(ref cry));
    return Array;
}
Так как я зашел в тупик и мне не кто не смог помочь, ну что....
Вот собственно то до чего я дошел с Идой.
Ну и собственно сама каша, где или что такое UnkKey который нужен для декрипта C->S пакетов.
лол, что это? Это ксор?
luna9966 вне форума Ответить с цитированием
Непрочитано 04.07.2014, 19:08   #5
Пользователь

По умолчанию Re: Дешифровка и каша для раздумья

было бы очень офигенно если бы кто-то поделился инфой откуда берется UnkKey
Onax вне форума Ответить с цитированием
Непрочитано 05.07.2014, 00:05   #6
Аватар для Deazer

По умолчанию Re: Дешифровка и каша для раздумья

Цитата:
Сообщение от Onax Посмотреть сообщение
было бы очень офигенно если бы кто-то поделился инфой откуда берется UnkKey
тебе об этом могут рассказать мои друзья Алиса и Боб
Deazer вне форума Ответить с цитированием
Сказали спасибо:
Непрочитано 05.07.2014, 01:29   #7
Пользователь

По умолчанию Re: Дешифровка и каша для раздумья

алиса присылает бобу его?
но я уже перепробовал все варианты типа ворлд-кукисов и прочей мути что идет в первых пакетах

данные меняются при каждом перелогине, ясно это что-то динамическое и присылает сервер(ему же распаков)
трабла что я не шарю в реверсе, если там банально (ворлдкукис ^ 0x25) я никак не найду этот 25
Onax вне форума Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 09:18. Часовой пояс GMT +3.

Вверх