Sunday, October 4, 2009

Asking for it..

Pseudo-code:
VerifyLicense()
{
    char
         readbuf[16],
         plaintext[16],
         uuid[32]; 
    int hLic = open(LICENSE_FILE);
    get_uuid(uuid);
    read(hLic, readbuf, 16);
    raw_decrypt(readbuf, plaintext);
    memcmp(plaintext, uuid, 16);
}
Where raw_decrypt is an AES symmetric cypher function -)
Even more amazingly, raw_encrypt function is ALSO present in the code!