`
happyqing
  • 浏览: 3149675 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java MD5加密工具类

    博客分类:
  • java
阅读更多

 

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.math.BigInteger;
import java.security.MessageDigest;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

/**
 * MD5加密工具类
 * @author happyqing
 */
public class MD5Util {
	
	private static final Log log = LogFactory.getLog(MD5Util.class);
	
	/**
	 * 字符串的MD5
	 * @param filePath
	 * @return
	 */
	public static String encode(String plainText) {
		try {
			MessageDigest md = MessageDigest.getInstance("MD5");
			md.update(plainText.getBytes());
			byte b[] = md.digest();

			int i;

			StringBuffer buf = new StringBuffer("");
			for (int offset = 0; offset < b.length; offset++) {
				i = b[offset];
				if (i < 0)
					i += 256;
				if (i < 16)
					buf.append("0");
				buf.append(Integer.toHexString(i));
			}
			return buf.toString();
			//System.out.println("result: " + buf.toString());// 32位的加密
			//System.out.println("result: " + buf.toString().substring(8, 24));// 16位的加密

		} catch (Exception e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return "";
	}
	
	/**
	 * 文件的MD5
	 * @param filePath
	 * @return
	 */
	public static String getFileMD5(String filePath){
		String value = null;
		FileInputStream in = null;
		try {
			File file = new File(filePath);
			in = new FileInputStream(file);
			MessageDigest md5 = MessageDigest.getInstance("MD5");
			byte[] buffer = new byte[8192];
			int c;
			while ((c = in.read(buffer)) != -1) {
				md5.update(buffer, 0, c);
			}
			BigInteger bi = new BigInteger(1, md5.digest());
			value = bi.toString(16).toUpperCase();
		} catch (Exception e) {
			log.error(e);
		} finally {
			if (null != in) {
				try {
					in.close();
				} catch (IOException e) {
					log.error(e);
				}
			}
		}
		return value;
	}
	
	public static void main(String args[]) {
		String str = "abc";
		Long b1 = System.currentTimeMillis();
		
		for(int i =0;i<1;i++){
			//MD5.encode(str);
			System.out.println(MD5Util.encode(str)); //900150983cd24fb0d6963f7d28e17f72
			
//			Md5PasswordEncoder md5 = new Md5PasswordEncoder();
//			//md5.setEncodeHashAsBase64(false);
//			//md5.encodePassword(str, "");
//			System.out.println(md5.encodePassword(str, ""));
		}
		Long e1 = System.currentTimeMillis();
		System.out.println("MD5.encode耗时:"+(e1-b1));
	}

}

 

分享到:
评论

相关推荐

    Java Md5加密工具类

    Java Md5加密工具类

    java MD5加密工具类

    java md5加密示例,包括页面,servlet和加密工具类

    java md5加密工具类

    java md5加密工具类

    Java MD5 加密工具类

    Java MD5加密工具类,MD5 Message-Digest Algorithm MD5信息摘要算法,一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输完整一致。

    MD5加密的工具类,可直接使用

    这是一个Java的工具类,进行加密操作的时候调用该类的方法就可以,工具类里面写了一个main,拿啦直接用就行。

    java中md5加密工具类

    private static final String hexDigits[] = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f" }; public static void main(String[] args){ String result = MD5Util.MD5...

    MD5加密工具类

    MD5加密算法,主要对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改。利用MD5算法来进行文件校验的方案被大量应用到软件下载站、论坛数据库、系统文件安全等方面。

    java MD5加密工具包

    用java封装的MD5加密工具包,创建对象,传递要加密的字符串,即可返回32位大写的MD5加密后的字符串

    Java_MD5加密工具类

    java的MD5加密工具类

    java常用类-MD5加密与DES加密解密

    java中常用的工具类,用于MD5的加密,里面还有切割了MD5加密的长度,有DES加密与解密,并且配有main函数可测试,可以根据自己的实际情况使用main函数测试使用

    Java MD5加密工具案例

    Java MD5加密工具案例,常用加密方式,提供MD5加密方法

    java加密工具类 md5 aes base64 urlencode

    加密工具类 包含md5加密 base加密解密 md5加密 aes加密解密 urlencoude

    java md5文件加密工具

    纯java代码编写的文件加密工具,采用MD5方式加密,一旦忘记密码不能恢复,请谨慎使用(作者不承担任何责任),本工具只做研究学习使用

    MD5生成工具类

    md5的长度,默认为128bit,也就是128个 0和1的 二进制串,128/4 = 32 换成 16进制 表示后,为32位了。可以生成md5,也可以生成数据库相关内容MD5 。需要传入的值,类中有详细说明。

    JavaMD5加密工具类

    JavaMD5加密工具类 algorithm = MessageDigest.getInstance("MD5"); algorithm.reset(); algorithm.update(s.getBytes("UTF-8")); byte[] messageDigest = algorithm.digest(); return messageDigest;

    md5加密工具类

    最为流行的md5算法加密,适用于java入门新手学习,可选择调用工具类。

    MD5加密算法的工具类

    java中的一个MD5 加密的工具类

    windows下MD5加密工具bat文件

    将md5加密制作成了windows下bat执行文件,可循环执行不同字符加密,输入quit可退出加密界面,附源码。

Global site tag (gtag.js) - Google Analytics