Java版Mysql4.1之后的sha1加密算法。_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java版Mysql4.1之后的sha1加密算法。

Java版Mysql4.1之后的sha1加密算法。

 2013/10/29 18:57:53  完美天龙  程序员俱乐部  我要评论(0)
  • 摘要:packagemytest;importjava.io.UnsupportedEncodingException;importjava.util.ArrayList;importjava.util.List;importorg.apache.commons.codec.digest.DigestUtils;publicclassTest{publicstaticStringMySQLPassword(StringplainText
  • 标签:Java SQL MySQL 算法
class="java" name="code">package mytest;

import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;

import org.apache.commons.codec.digest.DigestUtils;

public class Test {
	public static String MySQLPassword(String plainText)throws UnsupportedEncodingException
	{
	    byte[] utf8 = plainText.getBytes("UTF-8"); 
	    byte[] test = DigestUtils.sha(DigestUtils.sha(utf8));
	    return "*" + convertToHex(test).toUpperCase();
	}
	
    private static String convertToHex(byte[] data)
    {
        StringBuilder buf = new StringBuilder();
        for (int i = 0; i < data.length; i++)
        {
            int halfbyte = (data[i] >>> 4) & 0x0F;
            int two_halfs = 0;
            do
            {
                if ((0 <= halfbyte) && (halfbyte <= 9))
                    buf.append((char) ('0' + halfbyte));
                else
                    buf.append((char) ('a' + (halfbyte - 10)));
                halfbyte = data[i] & 0x0F;
            }
            while(two_halfs++ < 1);
        }
        return buf.toString();
    }

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		try {
			System.out.println(MySQLPassword("123456"));
		} catch (UnsupportedEncodingException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}

}
发表评论
用户名: 匿名