• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Can anyone recognize this coding?

Kleston

New Member
Joined
Oct 28, 2013
Messages
31
Reaction score
3
Can anyone recognize this coding?
Or is it encrypted with some program? If anyone knows, please help in deciphering OTC files

34761
 
So the cipher knows only who encrypted it? Well, that is nothing we can do. I just wanted to know how I can make my own client for classictibia.com. Namely, when I enter all the data, I do not want to display the character list. Stops on the window connecting to the server.
 
ok technically if there is modules that are vanilla ( 1:1 otc and are encrypted) you can pretty much compare it and find encryption key within seconds and then decrypt all of the files but thats all you gonna hear from me.
 
I will not play with it;) This server also uses a regular client converted to version 772. But I can not connect using the standard OTClient. Maybe you know what I need to have to connect via standard OTClient?

3477034771
 
Last edited:
1 check with ollydbg the Pushes
and make OTC report as exact same version the other thing is something like this might give you idea when i try to connect with classic tibia client to my server:
SAVE: Complete in 1.461 seconds using binary house storage.
[13:32:10.709] [Warning - Protocol::RSA_decrypt] Not valid packet size (IP: xxxxxxxxx) other error is msg byte != 0


C++:
bool Protocol::RSA_decrypt(NetworkMessage& msg)
{
    if(msg.size() - msg.position() != 128)
    {
        std::clog << "[Warning - Protocol::RSA_decrypt] Not valid packet size";
        int32_t ip = getIP();
        if(ip)
            std::clog << " (IP: " << convertIPAddress(ip) << ")";

        std::clog << std::endl;
        return false;
    }

    uint16_t size = msg.size();
    RSA_private_decrypt(128, (uint8_t*)(msg.buffer() + msg.position()), (uint8_t*)msg.buffer(), g_RSA, RSA_NO_PADDING);
    msg.setSize(size);

    msg.setPosition(0);
    if(!msg.get<char>())
        return true;

    std::clog << "[Warning - Protocol::RSA_decrypt] First byte != 0";
    int32_t ip = getIP();
    if(ip)
        std::clog << " (IP: " << convertIPAddress(ip) << ")";

    std::clog << std::endl;
    return false;
}
 
Last edited:
Back
Top