md5加密(用于密码加密) md5加密简介 MD5消息摘要算法,属Hash算法一类。MD5算法对输入任意长度的消息进行运行,产生一个128位的消息摘要(32位的数字字母混合码)。加密不可逆可以用于密码加密
java工具类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 import org.springframework.stereotype.Service;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;public class Md5Utils { public String code (String str) { try { MessageDigest md = MessageDigest.getInstance("MD5" ); md.update(str.getBytes()); byte [] byteDigest = md.digest(); int i; StringBuffer buf = new StringBuffer ("" ); for (int offset = 0 ; offset < byteDigest.length; offset++) { i = byteDigest[offset]; if (i < 0 ) i += 256 ; if (i < 16 ) buf.append("0" ); buf.append(Integer.toHexString(i)); } return buf.toString(); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); return null ; } }
md5加密代码
1 String password = md5Utils.code("要加密的字符串" );
与数据库密码比对
1 user1.getPassword().equals(md5Utils.code(param.getString("password" )));
base64编码 base64简介 Base64是一种基于64个字符的编码算法,根据RFC 2045的定义:“Base64内容传送编码是以一种任意8位字节序列组合的描述形式,这种形式不易被人直接识别”。base64是一种编码方式,不是加密方法
工具类
1 2 3 4 5 6 7 8 9 10 11 12 13 14 import org.springframework.util.Base64Utils;public class Base64Util { public static byte [] decryptBASE64(byte [] key) throws Exception { return Base64Utils.decode(key); } public static String encryptBASE64 (byte [] key) throws Exception { return new String (Base64Utils.encode(key)); } }
base64简单使用
1 2 jiami = Base64Util.encryptBASE64("字符串" .getBytes()); String jiemi = new String (Base64Util.decryptBASE64(jiami.getBytes()), "UTF-8" );