Where can I find the latest warrock XOR Keys? Do I need to use WireShark? Any info would be great, thanks!
Could you perhaps explain with a simple example? Like what exactly is the last byte of the packet, and how do you xor it with 0x0A ( i find basic xor encryption/decryption but not specifically what u say)Quote:
Xor means if you know the original key, you can get the latest key. Just xor the last received byte with 0x0A and you'll get the xor key of that specific packet.
However i don't exactly know how to work this out in practise.Quote:
byte xorKey = packetBuffer[packteBuffer.Length -1] ^ 0x0A;
Thank you very much for your detailed explaination, I will try to get a better understanding. We'll have a chat if you don't mind :)Quote:
The WarRock packet structure is a string that is encrypted by a XOR cipher but since private servers where created nonstop they are forced to changed the structure. The As we know, keys are always the same for the login server. But in the newer versions of WarRock the keys of the game server change every update.
The packet it self is a string that has been all the data concatenated by a character. Every packet ends with an end line character (0xA). You should decoded the packet immediately when you receive any data and split them by the end line character Once you have made that you can parse the packet by separating them into blocks by splitting the packet on it's spaces.
An example packet send by the server to the launcher:
1234567 4112 0 25 40 100 0 0 [Only registered and activated users can see links. Click Here To Register...]
The first data block is the time stamp of the packet, this one is used to indicate when the packet was sent by the client. The value of this packet is the amount of ticks since the computer has been started.
1234567 4112 0 25 40 100 0 0 [Only registered and activated users can see links. Click Here To Register...]
The second block indicates the packet (ID) to tell the server what the rest of the data is. Packets can only contain an ID to ask the server for a certain response. It's easier to remember the packet IDs if you convert them to hexadecimal.
1234567 4112 0 25 40 100 0 0 [Only registered and activated users can see links. Click Here To Register...]
All the other data blocks are data for the client or server.
1234567 4112 0 25 40 100 0 0 [Only registered and activated users can see links. Click Here To Register...]
Start of a new connection
Every connection of all the servers start with a basic handshake. The server sends out the packet 4608(0x1200) with a random integer that has a length of 8 numbers as data block. The client responds with it's next packet after this packet was received.
I'll remove the time stamp from the packets since it isn't important and makes it easier to read the packets.
4608 50039730
Hope it helps.
Quote:
Beware of this guy. You have been warned!
I tried using the WR packet sniffer by phantom (i think) created back in 2014 and it only shows login server packets (as that xor key doesn't change) it also allows me to enter 2 xor keys for the game server (with the current xor keys its holding it does not work)Quote:
Actually, the packets on Port 10375 are not encrypted.
So you dont need any XOR-Key for them.
HxD editor gives me the same output as wireshark (in text ). only publicly stuff like room names and usernames are visible but other stuff looks encrypted to meQuote:
are decrypted all packets with wireshark, use HxD to read it better them
here an example to a packet to create room khali 32 players bighead ghosts
DE 64 00 00 00 73 05 00 45 56 45 4E 54 00 00 00 00 04 00 4E 55 4C 4C 04 00 00 00 17 00 00 00 00 00 00 00 FF FF FF FF 03 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 03 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ED
its not, you just dont know how to read it i guess^^Quote:
HxD editor gives me the same output as wireshark (in text ). only publicly stuff like room names and usernames are visible but other stuff looks encrypted to me
Can you explain reading it in HEX?Quote:
its not, you just dont know how to read it i guess^^
Its binary... so read it in HEX.
Also notice its little endian not big endian..
My old account is gone... somehow i cannot post images :confused: