MD加密是目前常用的密码加密方式,可以让你在APP中输入的密码不至于明文显示在后台的数据库,工具类使用方法如下 加密后的密文分大小写的。下面用的是大写的,你可以用String s = Md5Utils.MD5(“1234”); 然后可以日志或者控制台打印一下这个s 看一下加密之后的铭文。
Md5Utils.MD5();// 加密后为大写
Md5Utils.md5();// 加密后为小写
Md5Utils.MD5(Pwd)
工具类代码如下:
public class Md5Utils { /** * 将字符串转成MD5值 * * @param string * @return */ public static String md5(String string) { byte[] hash; try { hash = MessageDigest.getInstance("MD5").digest(string.getBytes("UTF-8")); } catch (NoSuchAlgorithmException e) { e.printStackTrace(); return null; } catch (UnsupportedEncodingException e) { e.printStackTrace(); return null; } StringBuilder hex = new StringBuilder(hash.length * 2); for (byte b : hash) { if ((b & 0xFF) < 0x10) hex.append("0"); hex.append(Integer.toHexString(b & 0xFF)); } return hex.toString(); } private static final char HEX_DIGITS[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}; public static String MD5(String s) { try { StringBuilder sb = new StringBuilder(); byte[] data = s.getBytes("utf-8"); MessageDigest MD5 = MessageDigest.getInstance("MD5"); MD5.update(data); data = MD5.digest(); for (int i = 0; i < data.length; i++) { sb.append(HEX_DIGITS[(data[i] & 0xf0) >> 4] + "" + HEX_DIGITS[data[i] & 0xf]); } return sb.toString(); } catch (Exception e) { //CrashReport.postCatchedException(e); throw new RuntimeException(e); } } }