作者: tianshi0253 鏈接:http://tianshi0253.javaeye.com/blog/202896 發表時間: 2008年06月13日
聲明:本文系JavaEye網站發布的原創博客文章,未經作者書面許可,嚴禁任何網站轉載本文,否則必將追究法律責任!
package com.jqqd.ywc; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import sun.misc.BASE64Encoder; public class MakeMD5 { public String EncoderByMd5(String str) throws NoSuchAlgorithmException, UnsupportedEncodingException { // 確定計算方法 MessageDigest md5 = MessageDigest.getInstance("MD5"); BASE64Encoder base64en = new BASE64Encoder(); // 加密后的字符串 String newstr = base64en.encode(md5.digest(str.getBytes("GB2312"))); return newstr; } /** */ /** * 判斷用戶密碼是否正確 * * @param newpasswd * 用戶輸入的密碼 * @param oldpasswd * 數據庫中存儲的密碼--用戶密碼的摘要 * @return * @throws NoSuchAlgorithmException * @throws UnsupportedEncodingException */ public boolean checkpassword(String newpasswd, String oldpasswd) throws NoSuchAlgorithmException, UnsupportedEncodingException { if (EncoderByMd5(newpasswd).equals(oldpasswd)) return true; else return false; } public static void main(String[] args) throws Exception { MakeMD5 make = new MakeMD5(); System.out.println(make.EncoderByMd5("姚文超")); } }
增加一個功能,把結果寫入一個文件:
package com.jqqd.ywc; import java.io.FileWriter; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import sun.misc.BASE64Encoder; public class MakeMD5 { public String EncoderByMd5(String str) throws NoSuchAlgorithmException, UnsupportedEncodingException { // 確定計算方法 MessageDigest md5 = MessageDigest.getInstance("MD5"); BASE64Encoder base64en = new BASE64Encoder(); // 加密后的字符串 String newstr = base64en.encode(md5.digest(str.getBytes("GB2312"))); return newstr; } public String writeToFileResult(String newstr) { try { FileWriter fw = new FileWriter("D:/tt.xx"); fw.append(newstr); fw.flush(); fw.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return null; } /** */ /** * 判斷用戶密碼是否正確 * * @param newpasswd * 用戶輸入的密碼 * @param oldpasswd * 數據庫中存儲的密碼--用戶密碼的摘要 * @return * @throws NoSuchAlgorithmException * @throws UnsupportedEncodingException */ public boolean checkpassword(String newpasswd, String oldpasswd) throws NoSuchAlgorithmException, UnsupportedEncodingException { if (EncoderByMd5(newpasswd).equals(oldpasswd)) return true; else return false; } public static void main(String[] args) throws Exception { MakeMD5 make = new MakeMD5(); // System.out.println("setup 1"); String result = make.EncoderByMd5("姚文超"); System.out.println(result); // System.out.println("setup 2"); make.writeToFileResult(result); // System.out.println("setup 3"); } }
本文的討論也很精彩,瀏覽討論>>
JavaEye推薦
- 立刻報名,免費獲取門票,參加SOA技術論壇(廣州6月19日)
- 北京: 千橡集團暨校內網誠聘軟件研發工程師
- 搜狐網站誠聘Java、PHP和C++工程師
- Oracle專區上線,有Oracle最新文章,重要下載及知識庫等精彩內容,歡迎訪問。
文章來源:http://tianshi0253.javaeye.com/blog/202896