I'm currently working on a Java emulator for the last client version for my personnal entertainment, I don't plan to sell it nor create a private server with it, this is just for the knowledge and the challenge.
I manage to go through the VersionRequest and ObfuscationRequest (by sending an abc.swf with empty encode/decode functions) but I've some struggle with and after the HandshakeRequest, here's what I understand:
* The HandshakeRequest and response are keys for ARC4 encoding.
* The ARC4 keys are RSA encoded.
Which, I guess, give something like this :
ARC4 plain key > RSA > abc ("by-passed" with empty functions).
So I manage to go through by sending the same packets that I found with Wireshark, to have an exemple of what's after that.
But I figured out that I can't go through HandshakeRequest without really understanding it.
This is where I'm asking for your help, could someone explain me how the Handshake keys work and if my understanding of HandshakeRequest is right? I'm not asking for code.
I tried to reproduce the PandorasBox encryption but I've struggle with the BigInteger class.
I can give more informations and samples of my code if needed !
I'll understand if nobody wants to help me but thank you very much anyway and have a nice day!
Best regards,
Ksama






