Related Articles: http://www.bkjia.com/Article/200811/30646.html
Compared with 32-bit MD5.asp and 40-bit MD5.asp files, the 40-bit encryption can find out the regular pattern, and we can also obtain 48-bit encryption. First read 32-bit encryption: MD5 = LCase (WordToHex (a) & WordToHex (B) & WordToHex (c) & WordToHex (d ))
Let's look at the 40-bit encryption: MD5 = LCase (WordToHex (c) & WordToHex (a) & WordToHex (B) & WordToHex (c) & WordToHex (d ))
32-bit encryption uses & connects 4 variables, and 40-bit encryption uses & connects 5 variables, so each variable occupies eight seats in the encrypted ciphertext, therefore, you only need to remove the first eight digits in the attack. However, this is only an encryption method. We can perform other 40-bit MD5 encryption methods, for example: MD5 = LCase (WordToHex (a) & WordToHex (B) & WordToHex (c) & WordToHex (d) WordToHex (c). Here I will set WordToHex (c) after the variable is moved to the back end, we need to remove the last eight digits to run MD5 when we crack it again. Other values can be put in the middle or doubled to get the result, and so on, but the premise is that we must know the connection variable rules, that is, you read the 40-bit encrypted MD5.asp file. Let's take a look at the differences between 40-bit MD5 encryption and 32-bit encryption:
32-bit admin encryption: 21232f297a57a5a743894a0e4a801fc3
40-bit admin encryption: 43894a0e21232f297a57a5a743894a0e4a801fc3
We can compare whether the first 8 bits in the 40-bit encryption are the WordToHex (c) variable in the 32-bit encryption, and so on. If we add a WordToHex (c) before the 40-bit MD5 encryption ), the encrypted result is 48-bit encryption.