Mir3 Encryption

shorty606

Golden Oldie
Golden Oldie
Apr 10, 2005
867
0
102
Just a quick question - If the server is spread out over multiple machines (the server I'm testing my program on) will I have to change the IP my socket connecting to or should that be all handled server end and I jsut connect to LoginSrv on the port (like the game does)
EDIT:
The game sends you a packet containing new connection info - this is done just after server select. Problem is, after server select through my program - it won't send me that data...don't know why it wont. Looking into it now.
 
Last edited:

shorty606

Golden Oldie
Golden Oldie
Apr 10, 2005
867
0
102
Any ideas? It stops dead after I select server - it should send me connection information but it doesn't and I don't know hy. My program replicates the protcol exactly. It must be to so with how I'm sending it, but it works until that point :s.
 

shorty606

Golden Oldie
Golden Oldie
Apr 10, 2005
867
0
102
It's not sending anything back. I'm expecting this:
Code:
#<\<<<<\><<<<<<@<MrQhXbagGo<kH^xnH^xlGpiaWbMnVRhkHNxmGo@kH>x!
which decodes to:
Code:
141.45.***.194/7100/2454
which is the new ip and new port to connect to, along with session id needed in the next step.
Before this information is sent back - the client sends this:
Code:
#3<<<<<B\<<<<<<<<<OrmuWS<!
which is the server selected.
my protocol sends this:
Code:
#3<<<<<B\<<<<<<<<<OrmuWS<!
which is exactly the same. But I don't get the next step and I don't see why as I match the client protocol exactly.

Once I've worked out the method of loggin in, I'll share with all so all help is appreciated :).


EDIT: Fixed - I can't automate the process. Once Connected I must click on 'Select Server' button which then sends:
Code:
#3<<<<<B\<<<<<<<<<OrmuWS<!
I think I was sending the information too fast last time.

konnichiwa - I'm sorting out the log-in details for mir3G CD3.4 which I will share with everyone. also how to decode the protocol. Thought it might be useful to a few.
 
Last edited:

konnichiwa

LOMCN VIP
VIP
Mar 26, 2003
261
0
132
I had this problem trying to make a bot for Mir3, i think the problem is, it uses a different encryption mask for the later communication. I've been working on Mir3 for some time and this one has left me stumped, just getting the assembly out of the executable is difficult with all its security.

Edit: Hmm... maybe a different issue then! Are you trying to connect to the official Mir3 servers?
 

shorty606

Golden Oldie
Golden Oldie
Apr 10, 2005
867
0
102
No, not official mir3 servers. Just the CD 3.40 one. They should use older protocol as basically its JOB server with bits strapped on :P.
 
Mar 23, 2003
922
4
245
Cairo Orbital Defence Platform
shorty606 said:
No, not official mir3 servers. Just the CD 3.40 one. They should use older protocol as basically its JOB server with bits strapped on :P.

The CD 3.40 files have been modified likely in other ways, too.

Best to try to figure out the header encryption for the new style encoding, really.

That, or use a old mir3 server.

--

Anyway, the login process is already detailed in thedeath's server?
 

shorty606

Golden Oldie
Golden Oldie
Apr 10, 2005
867
0
102
Well I need this program I'm developing for a specific server and I'm working it out myself the protocol. More learning for me lol
 

shorty606

Golden Oldie
Golden Oldie
Apr 10, 2005
867
0
102
:)
Lol but I'm gonna bug you all more, the character select - I logged on twice using client to trace it and got this the first time:
Code:
shamtul/2626
**shamtul/Gelrik/1051905934/1420913087/-80524171/1
and this the second time
Code:
shamtul/2628
**shamtul/Gelrik/1051905928/1420913081/-80524171/1
The two middle numbers change each time and the only other thing that does is the session id (shamtul/26**) so I assume it is based on that but I don't know how to work it out. Help would be appreciated :).

It definately uses the session number to generate the two numbers...but I'm stumped how. This is the last hurdle for me, once this is done I can log in.
 
Last edited:

Coly

LOMCN Developer
Developer
Mar 31, 2005
1,401
36
275
Germany
-.- Session IDs and Client Version , the last ähmm I belive Logon New.

On the Last Newesd Korean Client the Entcryption Work fine .
 

Coly

LOMCN Developer
Developer
Mar 31, 2005
1,401
36
275
Germany
ahjee I have forgoten ^^ :

---Lenght: 26 -----( #3<<<<<B\<<<<<<<<<OrmuWS<! )----
Def Recog : 0
Def Ident : 104
Def Param : 0
Def Tag : 0
Def Series : 0
 

shorty606

Golden Oldie
Golden Oldie
Apr 10, 2005
867
0
102
So those two middle numbers (1051905934/1420913087) are worked out using client version and session id?
EDIT: They are definately based on session id e.g 2638 but I can't work out how.
Here are some more if some good mathmaticians can see how they fit together.

shamtul/2626
**shamtul/Gelrik/1051905934/1420913087/-80524171/1
shamtul/2628
**shamtul/Gelrik/1051905928/1420913081/-80524171/1
shamtul/2633
**shamtul/BluePhoenix/1051905925/1420913076/-80524171/1
shamtul/2650
**shamtul/Gelrik/1051905942/1420913063/-80524171/1
shamtul/2815
**shamtul/Gelrik/1051905843/1420912898/-80524171/1
shamtul/2832
**shamtul/Gelrik/1051905756/1420907650/-80515046/1
 
Last edited:

Damian

LOMCN Developer
Developer
Ravagers
Game Master
Jun 13, 2003
1,184
154
290
You would also need to know the correct client version number.
 

shorty606

Golden Oldie
Golden Oldie
Apr 10, 2005
867
0
102
The second to last code is the client versio number but I don't think this plays a part in it.