Tuts 4 You

# [KeygenMe] Help me create formula for this keygen ## Recommended Posts http://crackmes.de/users/the_binary_auditor/the_binary_auditor_splish_1/

There are solutions but none of them really explained how they mathematically did it.

It is suppose to satisfy the following condition:

serial=username+10*7 But why? Can someone explain it in more detail using the hashes formulas? Sorry for being nub Also, why is 7 used?

I am doing a level 1 or 2 keygen on crackmes.de that has already been solved. However, I do not want to look at the solution because I will be cheating myself and I would not have learned anything.

Here is what the keygen basically does:

`Create hash of username:int v = 0;do{v = ( i ^ username[i] % 10 ) + 2;if( (_BYTE)v >= 10 ) LOBYTE(v) = v - 10; userhash[i++] = v;} while( v != userLen );Create hash of password:v = 0;do{serialHash[v] = serialkey[v] % 10;++v;} while( v != serialLen );Compare the hashes loopfor( int i = 0; ; ++i ){if( i == userLen ) Correct serialif( userhash[i] != serialhash[i] ) break;}Bad serial;`

I am not entirely sure how to solve this, could someone mathematically explain to me how to do it? The userhash and serialhash have to be the same up. How do I do this mathematically? I am not sure.

Thanks.

Never mind, I figured it out. :

Since the modulus has to be equal to the input:

Assuming we input A then we will get 7 so we calculate it using the formula and add 7, then we times that by 10 so its a readable character.

Edited by ScriptKiddy