工具類之生成MD5
阿新 • • 發佈:2019-01-11
首先關於MD5這種加密演算法,我就不解釋了,網上有很多。而Java 運用java.security.MessageDigest類來實現MD5,SHA這種雜湊函式 ,(以前老師上課都講過的,可惜當時因為選修課,沒怎麼注意聽講o((⊙﹏⊙))o.) 這裡推薦一篇文章,大家可以看看:文章。
話不多說,直接貼程式碼了:
import java.math.BigInteger; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public class MD5Utils { public static String getMd5Instance(String str){ try { MessageDigest md = MessageDigest.getInstance("MD5"); md.reset(); md.update(str.getBytes()); return new BigInteger(1, md.digest()).toString(16); } catch (NoSuchAlgorithmException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } }
其中這裡的reset方法是為了重用MessageDigest物件。呼叫MessageDigest.reset()方法會對state進行重置,以免這次計算資料會對下一次的計算造成影響,從而導致計算結果錯誤。