qiyadeng

          專注于Java示例及教程
          posts - 84, comments - 152, trackbacks - 0, articles - 34

          用java寫個MD5加密的類

          Posted on 2005-09-20 21:24 qiyadeng 閱讀(478) 評論(0)  編輯  收藏 所屬分類: J2EE

          由于一個應用,我需要一個MD5算法加密數據,我查看了網上一些資料,發現其他的語言都是要自己實現的,但是Java就很簡單,因為java中的類已經處理好了,而且還可以選其他的加密算法,如SHA,下面就給一個例子

          /*
           * Created on 2005-5-21
           *
           * TODO To change the template for this generated file go to
           * Window - Preferences - Java - Code Style - Code Templates
           */
          package com.merrylin.util;

          import java.security.MessageDigest;
          import java.security.NoSuchAlgorithmException;

          /**
           * @author Administrator
           *
           * TODO To change the template for this generated type comment go to
           * Window - Preferences - Java - Code Style - Code Templates
           */
          public class MD5Class {

           public static String MD5Encrypt(String inStr) {
            MessageDigest md = null;
            String outStr = null;

            try {
             md = MessageDigest.getInstance("MD5");       //可以選中其他的算法如SHA
             byte[] digest = md.digest(inStr.getBytes());       //返回的是byet[],要轉化為String存儲比較方便
             outStr = bytetoString(digest);
            } catch (NoSuchAlgorithmException nsae) {
             nsae.printStackTrace();
            }

            return outStr;
           }

           public static String bytetoString(byte[] digest) {
            String str = "";
            String tempStr = "";

            for (int i = 1; i < digest.length; i++) {
             tempStr = (Integer.toHexString(digest[i] & 0xff));
             if (tempStr.length() == 1) {
              str = str + "0" + tempStr;
             } else {
              str = str + tempStr;
             }
            }

            return str.toLowerCase();
           }

          }

          簡單吧,如果你只是要應用,就可以不知道MD5的算法了,但是要想知道更多,可以參看網上的源碼或是http://www.donews.net/qiyadeng/archive/2005/05/26/399340.aspx。但是注意MD5加密算法,破解還是很困難,雖然報道稱山東大學的王小云教授好像是已經尋找到了破解的方法。

          主站蜘蛛池模板: 临汾市| 讷河市| 景泰县| 通化县| 荣昌县| 祥云县| 吴桥县| 霍林郭勒市| 沅江市| 育儿| 澎湖县| 永宁县| 武汉市| 宣恩县| 青岛市| 虹口区| 潼南县| 南乐县| 泰顺县| 同江市| 炉霍县| 沂源县| 贵南县| 恩平市| 曲周县| 罗田县| 车险| 漳浦县| 理塘县| 南郑县| 连云港市| 景泰县| 乌海市| 富阳市| 新化县| 贵阳市| 博乐市| 赤水市| 江北区| 黄冈市| 阿拉善右旗|