Ridgepig 0 Report post Posted May 20, 2016 Hi, Does anyone know how CoD4 calculates a player's GUID? I'm aware that in Quake 3 the GUID simply gets calculated from the keycode. However, if I do so in CoD4 it doesn't result in my GUID. I hope someone can provide me with the answer. Share this post Link to post Share on other sites
IJzzo 1,072 Report post Posted May 21, 2016 In CoD4 1.0 to 1.7 it gets calculated from the cdkey as well. Method: MD5 over the 1st 16 lowercase characters. But MD5 uses a custom initialization vektor. Share this post Link to post Share on other sites
Ridgepig 0 Report post Posted May 21, 2016 (edited) Must be the initialisation vector then. Is it the same one as for Quake 3 (as seen here: http://aluigi.altervista.org/papers/q3_guid.h ) ?\ Edit: after some testing it doesn't appear to be the same initialization vector. Do you happen to have the one used for CoD4? Edited May 21, 2016 by Ridgepig Share this post Link to post Share on other sites
IJzzo 1,072 Report post Posted May 21, 2016 md5.buf[0] = 0x6F1CD602; md5.buf[1] = 0x226C74BE; md5.buf[2] = 0xB31C088D; md5.buf[3] = 0x555A9639; md5.bits[0] = 0; md5.bits[1] = 0; MD5Update(&md5 , buffer, 16); MD5Final(&md5, digest); sprintf(final, "%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x", digest[0], digest[1], digest[2], digest[3], digest[4], digest[5], digest[6], digest[7], digest[8], digest[9], digest[10], digest[11], digest[12], digest[13], digest[14], digest[15] ); Share this post Link to post Share on other sites
Ridgepig 0 Report post Posted May 21, 2016 As I mentioned on Steam: thank you a lot! Share this post Link to post Share on other sites