Вернуться   CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг > Шифрации серверов
Войти через OpenID

Шифрации серверов Здесь разбираемся с алгоритмами шифрации различных серверов

Чат (Новых сообщений с момента вашего последнего визита нет)
Загрузка...
Задавайте ваши вопросы на форуме. Чат предназначен для небольших разговоров.
 
Ответ
 
Опции темы Опции просмотра
Старый 19.09.2016, 05:20   #1
Местный
 
Регистрация: 04.11.2009
Адрес: Где-то в жопе европы
Сообщений: 316
Сказал Спасибо: 32
Имеет 42 спасибок в 39 сообщенях
wimax пока неопределено
По умолчанию

Трафик дишыфруеца с 3 пакета

Добавлено через 7 минут
Код:
public class Crypt implements ICrypt
{
	private final L2GameClient _client;
	private final byte[] _inKey = new byte[16];
	private final byte[] _outKey = new byte[16];
	private boolean _isEnabled;
	
	public Crypt(L2GameClient client)
	{
		_client = client;
	}
	
	public void setKey(byte[] key)
	{
		System.arraycopy(key, 0, _inKey, 0, 16);
		System.arraycopy(key, 0, _outKey, 0, 16);
	}
	
	@Override
	public void encrypt(ByteBuf buf)
	{
		if (!_isEnabled)
		{
			_isEnabled = true;
			onPacketSent(buf);
			return;
		}
		
		onPacketSent(buf);
		
		int a = 0;
		while (buf.isReadable())
		{
			final int b = buf.readByte() & 0xFF;
			a = b ^ _outKey[(buf.readerIndex() - 1) & 15] ^ a;
			buf.setByte(buf.readerIndex() - 1, a);
		}
		
		shiftKey(_outKey, buf.writerIndex());
	}
	
	@Override
	public void decrypt(ByteBuf buf)
	{
		if (!_isEnabled)
		{
			onPacketReceive(buf);
			return;
		}
		
		int a = 0;
		while (buf.isReadable())
		{
			final int b = buf.readByte() & 0xFF;
			buf.setByte(buf.readerIndex() - 1, b ^ _inKey[(buf.readerIndex() - 1) & 15] ^ a);
			a = b;
		}
		
		shiftKey(_inKey, buf.writerIndex());
		
		onPacketReceive(buf);
	}
	
	private void onPacketSent(ByteBuf buf)
	{
		byte[] data = new byte[buf.writerIndex()];
		buf.getBytes(0, data);
		EventDispatcher.getInstance().notifyEvent(new OnPacketSent(_client, data));
	}
	
	private void onPacketReceive(ByteBuf buf)
	{
		byte[] data = new byte[buf.writerIndex()];
		buf.getBytes(0, data);
		EventDispatcher.getInstance().notifyEvent(new OnPacketReceived(_client, data));
	}
	
	private void shiftKey(byte[] key, int size)
	{
		int old = key[8] & 0xff;
		old |= (key[9] << 8) & 0xff00;
		old |= (key[10] << 0x10) & 0xff0000;
		old |= (key[11] << 0x18) & 0xff000000;
		
		old += size;
		
		key[8] = (byte) (old & 0xff);
		key[9] = (byte) ((old >> 0x08) & 0xff);
		key[10] = (byte) ((old >> 0x10) & 0xff);
		key[11] = (byte) ((old >> 0x18) & 0xff);
	}
}

Последний раз редактировалось wimax, 19.09.2016 в 05:20. Причина: Добавлено сообщение
wimax вне форума   Ответить с цитированием
За это сообщение wimax нажился спасибкой от:
Старый 20.09.2016, 01:13   #2
Новичок
 
Регистрация: 12.09.2016
Сообщений: 6
Сказал Спасибо: 4
Имеет 0 спасибок в 0 сообщенях
Активист пока неопределено
По умолчанию

Код не понятен*(
Тему скриптинг гляну, там видел несколько похожих обозначений.

Нашел откуда этот код, теперь нужно его проанализировать*)
С тем, что был раньше.

Добавлено через 8 часов 43 минуты
Думал обойдусь без разбора полностью пакетов если просто пойму по какой формуле шифруется, но не тут то было, формулу не так просто найти, придется полностью весь код разбирать, что к чему, хоть ставь свой сервак и на его примере разбирайся как оно все пашет*(
Буду курить эти фак-и если есть что то по новее в смысле хроник GOD с небольшими изменениями, буду очень признателен.

http://www.la2kings.ru/la2bot/packets.html#PlayOk
http://fursoffers.narod.ru/Packets.htm

Последний раз редактировалось Активист, 20.09.2016 в 01:13. Причина: Добавлено сообщение
Активист вне форума   Ответить с цитированием
Ответ

  CoderX :: Forums > Lineage II > L2PacketHack > Скриптинг > Шифрации серверов



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

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


Часовой пояс GMT +4, время: 01:13.

vBulletin style designed by MSC Team.
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Locations of visitors to this page
Rambler's Top100

Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!