ScriptKiddy Posted October 29, 2010 Share Posted October 29, 2010 (edited) 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 October 29, 2010 by ScriptKiddy Link to comment

## Recommended Posts

## Create an account or sign in to comment

You need to be a member in order to leave a comment

## Create an account

Sign up for a new account in our community. It's easy!

Register a new account## Sign in

Already have an account? Sign in here.

Sign In Now