当前位置: 代码迷 >> Web前端 >> 《JavaWeb-利用md5算法失去数据的指纹,再利用baset64算法获取计算后的字符串》
  详细解决方案

《JavaWeb-利用md5算法失去数据的指纹,再利用baset64算法获取计算后的字符串》

热度:726   发布时间:2012-09-29 10:30:01.0
《JavaWeb---利用md5算法得到数据的指纹,再利用baset64算法获取计算后的字符串》
package com.fenghuo.md5;

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import sun.misc.BASE64Encoder;

public class TestMd5 {

	/**
	 *  Title:利用md5获取字符串的指纹,再利用baset64算法获取字符串
	 *  Copyright: Copyright (c) 2012
	 *  @author: 烽火
	 *  @version 1.0 2012-09-23
	 */
	public static void main(String[] args) {
		
		String str = "烽火";
		
		try {
			//得到MD5算法的MessageDigest
			MessageDigest dm = MessageDigest.getInstance("md5");
			//对数据进行处理,得到处理后的字节
			byte[] md5 = dm.digest(str.getBytes());
			
			//这个算法sun公司没有公布相对应的API,在运行时可能会报错
			//那我们就得采取一些手段了,
			//如果你有eclipse编译,可以先将
			//系统库移除在加进去就可以用了。
			//得到baset64算法的对象
			BASE64Encoder encoder = new BASE64Encoder();
			//对用MD5处理后的数据进行计算,得到处理后的字符串
			String baset64 = encoder.encode(md5);
			
			System.out.println(baset64);
			//运行后结果IThqiGsEuh0FGy/B71PeTw==
			
		} catch (NoSuchAlgorithmException e) {
			throw new RuntimeException(e);
		}

	}

}