Java實現(xiàn)md5和base64加密解密的示例代碼
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)文章
Spring Boot Web 靜態(tài)文件緩存處理的方法
本篇文章主要介紹了Spring Boot Web 靜態(tài)文件緩存處理的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-02
Java的springcloud Sentinel是什么你知道嗎
這篇文章主要介紹了Java之springcloud Sentinel案例講解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-08-08
Java避免死鎖_動力節(jié)點Java學(xué)院整理
在有些情況下死鎖是可以避免的。本文將展示三種用于避免死鎖的技術(shù)。對java避免死鎖的相關(guān)知識感興趣的朋友一起通過本文學(xué)習(xí)吧2017-06-06
Java的NIO之并發(fā)環(huán)境下非阻塞IO技術(shù)詳解
這篇文章主要介紹了Java的NIO之并發(fā)環(huán)境下非阻塞IO技術(shù)詳解,Java NIO(New IO)是Java平臺提供的一種用于高效處理I/O操作的API,它引入了一組新的類和概念,以提供更好的性能和可擴(kuò)展性,需要的朋友可以參考下2023-09-09
java ArrayBlockingQueue阻塞隊列的實現(xiàn)示例
ArrayBlockingQueue是一個基于數(shù)組實現(xiàn)的阻塞隊列,本文就來介紹一下java ArrayBlockingQueue阻塞隊列的實現(xiàn)示例,具有一定的參考價值,感興趣的可以了解一下2024-02-02
Mybatis Plus條件構(gòu)造器ConditionConstructor用法實例解析
這篇文章主要介紹了Mybatis Plus條件構(gòu)造器ConditionConstructor用法實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-08-08
Java利用ITextPdf庫生成PDF預(yù)覽文件的具體實現(xiàn)
這篇文章主要給大家介紹了Java利用ITextPdf庫生成PDF預(yù)覽文件的具體實現(xiàn),文中通過代碼示例和圖文給大家介紹的非常詳細(xì),具有一定的參考價值,需要的朋友可以參考下2024-04-04
一篇文章帶你學(xué)會Spring?MVC表單標(biāo)簽
Spring MVC表單標(biāo)簽是網(wǎng)頁的可配置和可重復(fù)使用的構(gòu)建塊,下面這篇文章主要給大家介紹了如何通過一篇文章學(xué)會Spring?MVC表單標(biāo)簽的相關(guān)資料,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03

