当前位置: 代码迷 >> 综合 >> Md5,base64加密
  详细解决方案

Md5,base64加密

热度:79   发布时间:2023-10-31 14:49:00.0

MD5的加密是不可逆的,而base64的加密是可逆的,下面看下具体的实现

import com.sun.org.apache.xerces.internal.impl.dv.util.HexBin;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.math.BigInteger;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;public class TestDemo01 {public static void main(String[] args) throws IOException, NoSuchAlgorithmException {// base64("helloword");md5("helloword");}//base64加密public static  void base64(String s) throws IOException {//建立BASE64Encoder对象BASE64Encoder encoder=new BASE64Encoder();//进行加密String encode =encoder.encode(s.getBytes());System.out.println("加密后:"+encode);//解密BASE64Decoder decoder =new BASE64Decoder();String decode = new String(decoder.decodeBuffer(encode));System.out.println("解密后:"+decode);}//Md5加密,md5加密是不可逆的public static  void md5(String str) throws NoSuchAlgorithmException, UnsupportedEncodingException {byte[] digest = null;MessageDigest md5 = MessageDigest.getInstance("md5");digest  = md5.digest(str.getBytes("utf-8"));//16是表示转换为16进制数String md5Str = new BigInteger(1, digest).toString(16);System.out.println(md5Str);}
}

 

  相关解决方案