Md5密码加密

Java常用的对密码加密的方法(MD5,SHA) ,主要使用到了MessageDigest这个类

     MD5加密

    首先把字符串转换为相应的byte,之后创建方法MessageDigest md5 = MessageDigest.getInstance("md5")声明采用MD5加密算法,对传入的字节码进行MD5加密byte[] digest =md5.digest(b),得到一个字节数组,得到字节数组之后,可以自己定义一个16位的char类型的数组,里面的值可以自己定义。char[] c ={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};。然后用定义的这个数组来转换密码。

public static String Md5(){
		String str = "123456";
		try {
			MessageDigest md5 = MessageDigest.getInstance("md5");
			//把密码转换为byte类型
			byte[] b = str.getBytes();
			//加密
			byte[] digest =md5.digest(b);
			//16进制的字符
			char[] c ={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
			//用于储存加密后的字符串
			StringBuffer sb = new StringBuffer();
			//处理为16进制的字符串
			for(byte bb:digest){
                            //15的8进制是0000,1111
				sb.append(c[(bb>>4)&15]);
				sb.append(c[bb&15]);
				System.out.println(sb.toString());
			}
			return sb.toString();
		} catch (NoSuchAlgorithmException e) {
			e.printStackTrace();
		}
		return null;
	}

你可能感兴趣的:(Md5密码加密)