上图是一个简单的加密分类:今天主要介绍MD5加密算法的使用
目标:把任意一个长度的字节串变成一定长的16进制数字串
主要运用 杂凑算法,摘要算法,哈希算法等
不过更重要的是 它tm的已经被破解了是清华的一个叫兽搞得,听说当时老牛逼了
看代码吧:
public static String encoder(String psd) { try { // 加盐处理 psd = psd + "djfkldsajfklsdfjsdkal"; // 指定加密方式为MD5 MessageDigest digest = MessageDigest.getInstance("MD5"); // 将需要加密的字符串转换成byte类型的数组,然后进行随机哈希过程 byte[] bs = digest.digest(psd.getBytes()); StringBuffer stringbuffer = new StringBuffer(); // 循环遍历bs然后让其生成32位的字符串 // 拼接字符串过程 for (byte b : bs) { int i = b & 0xff; // int 类型的i需要转换成16进制 String hexString = Integer.toHexString(i); if (hexString.length() < 2) { hexString = "0" + hexString; } stringbuffer.append(hexString); } // System.out.println(stringbuffer); return stringbuffer.toString(); } catch (Exception e) { e.printStackTrace(); } return ""; }