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 Share on other sites More sharing options...
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 accountSign in
Already have an account? Sign in here.
Sign In Now