Scenario: Normally our user-registered password is saved to the database and will not be stored in plaintext. are encrypted. Because the security of the user is guaranteed. We usually use the MD5 algorithm to encrypt it.
This can only be regarded as a tool class. There is no need to know how it is implemented. You can use it to get it.
Md5util.java
PackageCom.mmall.util;Importlombok.extern.slf4j.Slf4j;Importjava.security.MessageDigest; @Slf4j Public classMd5util { Public Final Staticstring Encrypt (string s) {CharHexdigits[] = {' 0 ', ' 1 ', ' 2 ', ' 3 ', ' 4 ', ' 5 ', ' 6 ', ' 7 ', ' 8 ', ' 9 ', ' A ', ' B ', ' C ', ' D ', ' E ', ' F ' }; Try { byte[] Btinput =s.getbytes (); //MessageDigest object for obtaining the MD5 digest algorithmMessageDigest mdinst = messagedigest.getinstance ("MD5"); //updates the digest with the specified bytesmdinst.update (btinput); //Get ciphertext byte[] MD =mdinst.digest (); //convert ciphertext to 16-binary string form intj =md.length; CharStr[] =New Char[J * 2]; intK = 0; for(inti = 0; I < J; i++) { byteBYTE0 =Md[i]; Str[k+ +] = hexdigits[byte0 >>> 4 & 0xf]; Str[k+ +] = hexdigits[byte0 & 0xf]; } return NewString (str); } Catch(Exception e) {log.error ("Generate MD5 error, {}", S, e); return NULL; } } Public Static voidMain (string[] arg) {System.out.println (Md5util.encrypt ("123456")); }}
Java Implementation MD5 encryption tool class