I've tested all encryptions and it works well . but when I send my session and id / pw to the game server , I get no response . Is there a solution to this problem ?
I've tested all encryptions and it works well . but when I send my session and id / pw to the game server , I get no response . Is there a solution to this problem ?
Well, it also happens when you send too fast the packets to world server.
Yes it's random. (Just generate it 1 time and add for new packet +1)
You have to send the SessionID...(Wait 1sec~)...IP|PW same packet.
Like:
Code:
// You need it like this:
std::vector<byte> bytes;
bytes.push_back(EncryptGame("IDENTIFIER ID")); //EncryptGame("25555 Test")
bytes.push_back(0xFF);
bytes.push_back(EncryptGame("IDENTIFIER PW")); //EncryptGame("25556 Rofl")
send(bytes);
Yes it's random. (Just generate it 1 time and add for new packet +1)
You have to send the SessionID...(Wait 1sec~)...IP|PW same packet.
Like:
Code:
// You need it like this:
std::vector<byte> bytes;
bytes.push_back(EncryptGame("IDENTIFIER ID")); //EncryptGame("25555 Test")
bytes.push_back(0xFF);
bytes.push_back(EncryptGame("IDENTIFIER PW")); //EncryptGame("25556 Rofl")
send(bytes);
There is not a rule about ID|PW, server is async and splits by delimiter.. 1s is right pause ~
"32 2 H:\DevC++\Dev-Cpp\MinGW64\lib\gcc\x86_64-w64-mingw32\4.9.2\include\c++\bits\c++0x_warning.h [Error] #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
md5.h No such file or directory"
for hex.h too. Missing md5.h and hex.h, where can i find it?
public static ArrayList<String> DecryptGamePacketTest(ArrayList<Integer> buf) {
int len = buf.size();
ArrayList<String> output = new ArrayList<String>();
ArrayList<Integer> current_packet = new ArrayList<Integer>();
char keys[] = { ' ', '-', '.', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'n' };
int index = 0;
int currentByte = 0, length = 0, first = 0, second = 0;
while (index < len) {
currentByte = buf.get(index);
++index;
if (currentByte == 0xFF) {
output.add(ArrayListToString(current_packet));
//System.out.println("RECEIVED: "+ArrayListToString(current_packet));
current_packet = new ArrayList<Integer>();
continue;
}
length = (currentByte & 0x7F);
if (((currentByte & 0x80) & 0xFF) != 0 && currentByte!=0) {
while (length != 0) {
if (index < len) {
currentByte = buf.get(index);
++index;
try{
first = keys[(((currentByte & 0xF0) ) >> 4) - 1];
if (first != 0x6E)
current_packet.add(first);
if (length <= 1)
break;
second = keys[(currentByte & 0xF) - 1];
if (second != 0x6E)
current_packet.add(second);
length -= 2;
}
catch(Exception e){System.out.println("Exception packet: "+ArrayListToString(current_packet));}
} else {
--length;
}
}
} else {
while (length != 0) {
if (index < len) {
//current_packet.add(buf.get(index) ^ 0xFF);¨
current_packet.add(buf.get(index) ^ 0xFF);
++index;
}
--length;
}
}
}
return output;
}
This is DecryptGamePacket function i currently use in Java and i have problems with chars with diacritics (ěščřžýáíé). Probably becouse java uses 2 byte chars and in this function it is only 1 byte. But in client diacritics and other **** chars are working. Is it working for you? How this can be fixed?
public static ArrayList<String> DecryptGamePacketTest(ArrayList<Integer> buf) {
int len = buf.size();
ArrayList<String> output = new ArrayList<String>();
ArrayList<Integer> current_packet = new ArrayList<Integer>();
char keys[] = { ' ', '-', '.', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'n' };
int index = 0;
int currentByte = 0, length = 0, first = 0, second = 0;
while (index < len) {
currentByte = buf.get(index);
++index;
if (currentByte == 0xFF) {
output.add(ArrayListToString(current_packet));
//System.out.println("RECEIVED: "+ArrayListToString(current_packet));
current_packet = new ArrayList<Integer>();
continue;
}
length = (currentByte & 0x7F);
if (((currentByte & 0x80) & 0xFF) != 0 && currentByte!=0) {
while (length != 0) {
if (index < len) {
currentByte = buf.get(index);
++index;
try{
first = keys[(((currentByte & 0xF0) ) >> 4) - 1];
if (first != 0x6E)
current_packet.add(first);
if (length <= 1)
break;
second = keys[(currentByte & 0xF) - 1];
if (second != 0x6E)
current_packet.add(second);
length -= 2;
}
catch(Exception e){System.out.println("Exception packet: "+ArrayListToString(current_packet));}
} else {
--length;
}
}
} else {
while (length != 0) {
if (index < len) {
//current_packet.add(buf.get(index) ^ 0xFF);¨
current_packet.add(buf.get(index) ^ 0xFF);
++index;
}
--length;
}
}
}
return output;
}
This is DecryptGamePacket function i currently use in Java and i have problems with chars with diacritics (ěščřžýáíé). Probably becouse java uses 2 byte chars and in this function it is only 1 byte. But in client diacritics and other shit chars are working. Is it working for you? How this can be fixed?
The NosTale Client uses the Windows-1252 encoding. You have to encode ‘current_packet’ in win1252.
[PHP - CLIENT] Login Cryptography 11/02/2013 - Nostale - 30 Replies Hi community ! :pimp:
today i open this thread for release the login cryptography written in php..
// encrypt 'NoS0575..' packet
function packet_enc($packet)
{
$str_enc = "";
for($i = 0; $i < strlen($packet); $i++)
$str_enc .= chr((ord($packet)^195) + 15);
Auth Cryptography 02/01/2013 - CO2 Private Server - 3 Replies i Wonder if the Auth Cryptography has changed at patch 5698 cuz i couldnt login into My Pserver ... after checking PasswordSeed (1059) & Login (1052) & Auth Response (1055) .. none of them has changed
Regards
Shadowman123
Help with cryptography 05/16/2012 - CO2 Programming - 10 Replies Hello ppl, so ive been learning general hacking methods for quite a decent while now, first i started out with small things such as memory hacks and then i started learning even more which led me to packet sniffing and that led me to the idea of fiddling around with conquer. Now that ive had a chance to play around with it i decided to hook the connect function of the game and i was successful at doing so, i also managed to get the client to connect to my socket first rather than connect to the...
Client Server Cryptography? 07/14/2009 - Archlord - 7 Replies i was wondering, the communication between alefcient and the game server is encrypted, and alefclient binary seems to use Cryptography API (CNG) with most of its functions like:
BCryptCloseAlgorithmProvider
BCryptCreateHash
BCryptDecrypt
BCryptDeriveKey
BCryptDestroyHash
BCryptDestroyKey
BCryptDestroySecret
BCryptDuplicateHash