java中加密的實(shí)現(xiàn)方法(MD5,MD2,SHA)
java中加密的實(shí)現(xiàn)方法(MD5,MD2,SHA)
實(shí)例代碼:注釋都很清楚,
import java.security.MessageDigest; import javax.xml.bind.annotation.adapters.HexBinaryAdapter; public class Main { static String src = "Hello,sahadev!"; public static void main(String[] args) { MD5(); MD2(); SHA(); } /** * MD5加密 */ public static void MD5() { try { // 獲取MD5加密工具 MessageDigest md = MessageDigest.getInstance("MD5"); // 加密 byte[] digest = md.digest(src.getBytes()); // 獲取二進(jìn)制十六進(jìn)制互轉(zhuǎn)工具 HexBinaryAdapter hexBinaryAdapter = new HexBinaryAdapter(); // 將二進(jìn)制數(shù)組轉(zhuǎn)換為十六進(jìn)制字符串 String marshal = hexBinaryAdapter.marshal(digest); // 輸出結(jié)果 System.out.println(marshal); } catch (Exception e) { e.printStackTrace(); } } /** * MD2加密 */ public static void MD2() { try { // 獲取MD2加密工具 MessageDigest md = MessageDigest.getInstance("MD2"); // 加密 byte[] digest = md.digest(src.getBytes()); // 獲取二進(jìn)制十六進(jìn)制互轉(zhuǎn)工具 HexBinaryAdapter hexBinaryAdapter = new HexBinaryAdapter(); // 將二進(jìn)制數(shù)組轉(zhuǎn)換為十六進(jìn)制字符串 String marshal = hexBinaryAdapter.marshal(digest); // 輸出結(jié)果 System.out.println(marshal); } catch (Exception e) { e.printStackTrace(); } } public static void SHA() { try { // 獲取MD2加密工具 MessageDigest md = MessageDigest.getInstance("SHA"); // 加密 byte[] digest = md.digest(src.getBytes()); // 獲取二進(jìn)制十六進(jìn)制互轉(zhuǎn)工具 HexBinaryAdapter hexBinaryAdapter = new HexBinaryAdapter(); // 將二進(jìn)制數(shù)組轉(zhuǎn)換為十六進(jìn)制字符串 String marshal = hexBinaryAdapter.marshal(digest); // 輸出結(jié)果 System.out.println(marshal); } catch (Exception e) { e.printStackTrace(); } } }
輸出結(jié)果:
MD5 : 8FC69C57ACC2258C7B4A9D39DC4C940B MD2 : 9EAF08289903A29C3C58D2AAA25BD83D SHA : 1B1330BFC6257FC9F4B4ED5CB605FA4109608CCA
以上就是java 加密的實(shí)例,如疑問(wèn)請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
JDBC實(shí)現(xiàn)Mysql自動(dòng)重連機(jī)制的方法詳解
最近在工作中發(fā)現(xiàn)了一個(gè)問(wèn)題,通過(guò)查找相關(guān)的資料終于解決了,下面這篇文章主要給大家介紹了關(guān)于JDBC實(shí)現(xiàn)Mysql自動(dòng)重連機(jī)制的相關(guān)資料,文中給出多種解決的方法,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-07-07MyBatis實(shí)現(xiàn)表連接查詢(xún)寫(xiě)法(三種對(duì)應(yīng)關(guān)系)的方法總結(jié)
這篇文章主要介紹了MyBatis實(shí)現(xiàn)表連接查詢(xún)寫(xiě)法(一對(duì)一關(guān)系、一對(duì)多關(guān)系、多對(duì)多關(guān)系)的方法,文中的示例代碼講解詳細(xì),感興趣的可以了解一下2023-01-01java獲取新insert數(shù)據(jù)自增id的實(shí)現(xiàn)方法
這篇文章主要介紹了java獲取新insert數(shù)據(jù)自增id的實(shí)現(xiàn)方法,在具體生成id的時(shí)候,我們的操作順序一般是:先在主表中插入記錄,然后獲得自動(dòng)生成的id,以它為基礎(chǔ)插入從表的記錄,需要的朋友可以參考下2019-06-06Java Spring的數(shù)據(jù)庫(kù)開(kāi)發(fā)詳解
這篇文章主要介紹了Spring的數(shù)據(jù)庫(kù)開(kāi)發(fā),主要圍繞SpringJDBC和Spring Jdbc Template兩個(gè)技術(shù)來(lái)講解,文中有詳細(xì)的代碼示例,需要的小伙伴可以參考一下2023-04-04idea使用spring Initializr 快速搭建springboot項(xiàng)目遇到的坑
這篇文章主要介紹了idea使用spring Initializr 快速搭建springboot項(xiàng)目遇到的坑,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11