Java實現(xiàn)md5和base64加密解密的示例代碼
更新時間:2020年09月28日 11:23:45 作者:H.U.C-王子
這篇文章主要介紹了Java實現(xiàn)md5和base64加密解密的示例代碼,幫助大家更好的利用Java加密解密文件,感興趣的朋友可以了解下
import java.io.IOException; import java.security.MessageDigest; import sun.misc.BASE64Encoder; import sun.misc.BASE64Decoder; public class MD5Util { /** * MD5加密 */ public static String md5Encryption(String str) { MessageDigest md5 = null; try { md5 = MessageDigest.getInstance("MD5"); } catch (Exception e) { System.out.println(e.toString()); e.printStackTrace(); return ""; } char[] charArray = str.toCharArray(); byte[] byteArray = new byte[charArray.length]; for (int i = 0; i < charArray.length; i++) byteArray[i] = (byte) charArray[i]; byte[] md5Bytes = md5.digest(byteArray); StringBuffer hexValue = new StringBuffer(); for (int i = 0; i < md5Bytes.length; i++) { int val = ((int) md5Bytes[i]) & 0xff; if (val < 16) hexValue.append("0"); hexValue.append(Integer.toHexString(val)); } return hexValue.toString(); } /** * base64加密 */ public static String base64Encryption(String str) { if (str == null) return null; String encodeStr = ""; try { BASE64Encoder b64Encoder = new BASE64Encoder(); encodeStr = b64Encoder.encode(str.getBytes()); } catch (Exception e) { e.printStackTrace(); } return encodeStr; } /** * base64解密 */ public static String base64Dcrypt(String str) { if (str == null) return null; String decoderStr = ""; try { BASE64Decoder decoder = new BASE64Decoder(); byte[] b = decoder.decodeBuffer(str); decoderStr = new String(b); } catch (IOException e) { e.printStackTrace(); return null; } return decoderStr; } }
以上就是Java實現(xiàn)md5和base64加密解密的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于Java md5和base64加密解密的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Java實現(xiàn)文件監(jiān)控器FileMonitor的實例代碼
這篇文章主要介紹了Java實現(xiàn)文件監(jiān)控器FileMonitor的實例代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2019-12-12淺談SpringMVC+Spring3+Hibernate4開發(fā)環(huán)境搭建
MVC已經(jīng)是現(xiàn)代Web開發(fā)中的一個很重要的部分,本文介紹一下SpringMVC+Spring3+Hibernate4的開發(fā)環(huán)境搭建,有興趣的可以了解一下。2017-01-01Java中的notyfy()和notifyAll()的本質(zhì)區(qū)別
很多朋友對java中的notyfy()和notifyAll()的本質(zhì)區(qū)別不了解,今天小編抽空給大家整理一篇教程關(guān)于Java中的notyfy()和notifyAll()的本質(zhì)區(qū)別,需要的朋友參考下吧2017-02-02Springboot 讀取 yml 配置文件里的參數(shù)值
本文主要介紹了Springboot 讀取 yml 配置文件里的參數(shù)值,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-12-12java 出現(xiàn)Zipexception 異常的解決辦法
這篇文章主要介紹了java 出現(xiàn)Zipexception 異常的解決辦法的相關(guān)資料,出現(xiàn) java.util.zip.ZipException: error in opening zip file 異常的原因及解決方法,需要的朋友可以參考下2017-08-08Windows10 Java環(huán)境變量配置過程圖解
這篇文章主要介紹了Windows10 Java環(huán)境變量配置過程圖解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-07-07Java利用Dijkstra和Floyd分別求取圖的最短路徑
本文主要介紹了圖的最短路徑的概念,并分別利用Dijkstra算法和Floyd算法求取最短路徑,最后提供了基于鄰接矩陣和鄰接表的圖對兩種算法的Java實現(xiàn)。需要的可以參考一下2022-01-01