EQEmulator Forums

EQEmulator Forums (https://www.eqemulator.org/forums/index.php)
-   Support::Windows Servers (https://www.eqemulator.org/forums/forumdisplay.php?f=587)
-   -   Login code (https://www.eqemulator.org/forums/showthread.php?t=31773)

blmille2 08-04-2010 12:35 AM

Login code
 
Is there a reason all of the login server code is locked down?

LOL I just want to start working on my new client that can log into eqemu, but I can't seem to get it to work.

I've been looking for a few days on how the encryption works, what the handshake is all about, etc.

I didn't think the hardest part would be getting the login part working.

Any pointers or tips would be GREATLY appreciated.

steve 08-04-2010 09:41 AM

It's locked down and the source not public because the login server code works with the Live game client.

trevius 08-04-2010 10:01 AM

The official Login Server source is locked down, but we do have an open source EQEmu Login Server available on the Google SVN here:

http://code.google.com/p/projecteqem...EmuLoginServer

It does everything that the Official EQEmu LS does and you can mess with the code all you like.

It already works fine with all of the clients that EQEmu currently supports including the current EQLive client. If you are considering trying to work on an older EQ client that isn't currently supported, then good luck, because without lots of packet collects from that particular client you will have an extremely hard time even getting the client to be able to log into the game much less make it functional enough to be playable.

blmille2 08-04-2010 12:10 PM

Thanks for the quick reply.

I've been looking at the EmuLoginServer code distributed with the eqemu server and see that the encryption/decryption is done inside a DLL (EQEmuAuthCrypto.dll I think).

I tried loading it into .NET several different ways, but it always has issues with it.
When adding it as a reference in C# .NET it says:

---------------------------
Microsoft Visual Studio
---------------------------
A reference to 'C:\test\EQEmuAuthCrypto.dll' could not be added. Please make sure that the file is accessible, and that it is a valid assembly or COM component.
---------------------------
OK
---------------------------

Is there a .NET-friendly Crypto dll or source code (not sure if this is going to open a can of worms or not)? Also, if someone can explain how the encryption is done, that'd be awesome.

I created a regular C++ application and call the encrypt/decrypt functions, but for some reason, the Decrypt function is complaining about the size not being a block size and spits out garbage.

This is what I did:
encrypted = encrypt_func(password,strlen(password),mode);
decrtypted=decrypt_func(encrypted,strlen(encrypted ),mode);
decrypted is not the same as password and is garbage (not to mention that there is that warning issued about the size not being a block size).

Thanks!

blmille2 08-04-2010 04:43 PM

Okay, so I know why VS .NET is mad about the DLL--it's unmanaged and you can't add references to unmanaged DLLs. However, I can still load the DLL and call the functions.

However, The encrypt (maybe more) function is accessing memory outside of its scope and causing the program to crash.

So, I'm still needing a way to access the encryption--whether I do it or I have a library that can do it.

Also, what am I doing wrong in the c++ application with the Encrypt/Decrypt?
I expected for the Decrypt to undo what Encrypt did.

Thanks!


All times are GMT -4. The time now is 07:22 AM.

Powered by vBulletin®, Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.