(1) The user name and password are saved in the generally used database, and the password is not stored in the password.
Sometimes in the MD5 password, many languages provide methods or functions that give birth to the MD5 password. The encryption algorithm of MD5 is public.
Sometimes you can also use your own string encryption algorithm. This encryption algorithm is only known to you.
(2) The process of cracking MD5 is to calculate a large number of or all possible string MD5 values first, and then query to crack. Although some websites stipulate that the number of passwords is between 6 and 20 bits, it is quite troublesome to calculate so many string in advance and effectively organize storage and inquiries.
Because the number of MD5 is fixed, such as 16, 32,64, and the combination and length of the string are endless, this is conflict. But if you know that the length of the pre -encrypted strings is fixed, such as 6 ~ 20, this can still be cracked.
However, if you don't know the length of the character before the encryption, then this is endless. It seems that no one can crack yet.
MD5 password cracked website: you can search "MD5 decryption" on Baidu
(3) A mD5 password module program for generating a given string is given below.
Import java.Security.MessageDigest; Public Class MD5Test {Public Void Tomd5 (String Plaintext) {Try {// MESSAGEDIGest objects that realize the specified abstract algorithm. MessageDigest MD = MESSAGEDIGEST.Getinstance ("MD5"); // Use the specified byte array update summary. md.update (plaintext.getbytes ()); // Complete the hash calculation by performing final operations such as filling. byte b[] = md.digest(); //生成具体的md5密码到buf数组int i; StringBuffer buf = new StringBuffer(""); for (int offset = 0; offset < b.length; offset++) { i = b [offset]; if (i <0) i += 256; if (i <16) buf.append ("0"); buf.append (Integer.tohexstring (i));} System.out. Println ("32 -bit:" + BUF.TOSTRING ()); // 32 -bit encryption System.out.println ("16 -bit:" + buf.tostring (). substring (8, 24)); // 16 The encryption of the position is actually an intercept with 32 -bit encryption} Catch (Exception E) {e.printstacktrace ();}} Public Static void Main (String Agrs []) {new md5test (). Tomd5 ("lxd"); // Crypting lxd}}PS: Here is another 2 MD5 encryption tools. Interested friends can refer to:
MD5 online encryption tool:
http://tools.vevb.com/password/createmd5password
Online MD5/Hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160-160 encryption tool:
http://tools.vevb.com/password/hash_md5_sHa