使用commons-codec包加密字符串(MD5,SHA1,BASE64)

忘了哪里看到了。就不写源地址了


[1].[代码] MD5 跳至 [1] [2] [3]

1 String str = "abc";
2 DigestUtils.md5Hex(str);
3  
4 //附.net生成MD5的方法,生成内容跟java一致:
5 String str = "abc";
6 FormsAuthentication.HashPasswordForStoringInConfigFile(str, "MD5");

[2].[代码] SHA1 跳至 [1] [2] [3]

1 String str = "abc";
2 DigestUtils.shaHex(str);
3  
4 //附.net生成SHA1的方式,生成内容跟java一致:
5 String str = "abc";
6 FormsAuthentication.HashPasswordForStoringInConfigFile(str, "SHA1");

[3].[代码] BASE64 跳至 [1] [2] [3]

1 //加密
2 String str= "abc"// abc为要加密的字符串
3 byte[] b = Base64.encodeBase64(str.getBytes(), true);
4 System.out.println(new String(b));
5  
6 //解密
7 String str = "YWJj"// YWJj为要解密的字符串
8 byte[] b = Base64.decodeBase64(str.getBytes());
9 System.out.println(new String(b));


Commons Codec提供了消息摘要的工具类-----DigestUtils类。DigestUtils类是对Sun提供的MessageDigest类的一次封装,提供了MD5和SHA系列消息摘要算法的实现。
//sun提供的MessageDigest实现MD5加密
public static String getMD5String(String str) {
		MessageDigest messageDigest = null;
		try {
			messageDigest = MessageDigest.getInstance("MD5");
			messageDigest.reset();
			messageDigest.update(str.getBytes("UTF-8"));
		} catch (NoSuchAlgorithmException e) {
			System.out.println("NoSuchAlgorithmException caught!");
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		byte[] byteArray = messageDigest.digest();
		StringBuffer md5StrBuff = new StringBuffer();
		for (int i = 0; i < byteArray.length; i++) {
			if (Integer.toHexString(0xFF & byteArray[i]).length() == 1)
				md5StrBuff.append("0").append(Integer.toHexString(0xFF & byteArray[i]));
			else
				md5StrBuff.append(Integer.toHexString(0xFF & byteArray[i]));
		}
		return md5StrBuff.toString();
	}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值