Показать сообщение отдельно
Старый 07.05.2010, 18:08   #9
Новичок
 
Регистрация: 23.04.2010
Сообщений: 11
Сказал Спасибо: 0
Имеет 0 спасибок в 0 сообщенях
mr_green пока неопределено
По умолчанию

Спасибо за консультацию. Логин сервер я прошел. Ошибка при использовании RSA была в том что 1-й бит 128 байтного числа был 1 и Net класс BigInteger принимал это число за отрицательное. Сделав число 129 байтным добавив «00» в старшем регистре удалось «обмануть» BigInteger.
Теперь разбираюсь что поменялось в пакете InitKey (CryptInit) . в с4 ксор ключ был 8 байт, 4 шло в пакете CryptInit, 4 были константой. В новой версии
Код:
                writeC(0x2e);
39	                writeC(_id); //0 - wrong protocol, 1 - protocol ok
40	                for (int i = 0; i < 8; i++)
41	                {
42	                        writeC(_key[i]); // key
43	                }
44	                writeD(0x01);
45	                writeD(0x01); // server id
46	                writeC(0x01);
47	                writeD(0x00); // obfuscation key
Но пакет пришел чуть другой:
Код:
19 00 
2E 
01 
70 D9 A8 CF | 12 83 3D 5E 
01 00 00 00 
01 00 00 00 
00 
92 A3 C9 48
Какой длинны ключ в грации финал?
mr_green вне форума   Ответить с цитированием