Logo Search packages:      
Sourcecode: fex version File versions  Download package

AeSimpleMD5.java

package fix;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * Simple class for calculating an MD5-Hash.
 * 
 * $Date: 2010-02-04 12:01:01 +0100 (Thu, 04 Feb 2010) $
 * $Revision: 30 $
 * $Author: roth $
 * 
 * Copyright (C) 2008 Dominik Greibl
 * Copyright (C) 2009 Sebastian Roth
 * 
 * All Rights Reserved
 * 
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * 
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

00033 public class AeSimpleMD5 {

      /**
       * Converts a byte[] into a Hex String.
       * 
       * @param data
       * @return dataAsHex
       */
00041       private static String convertToHex(byte[] data) {
            StringBuffer buf = new StringBuffer();
            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();
      }

      /**
       * Calculates the MD5 Hash of the given String.
       * 
       * @param text
       * @return MD5HashOfText
       * @throws NoSuchAlgorithmException
       * @throws UnsupportedEncodingException
       */
00065       public static String MD5(String text) throws NoSuchAlgorithmException,
                  UnsupportedEncodingException {
            MessageDigest md;
            md = MessageDigest.getInstance("MD5");
            byte[] md5hash = new byte[32];
            md.update(text.getBytes("iso-8859-1"), 0, text.length());
            md5hash = md.digest();
            return convertToHex(md5hash);
      }
}

Generated by  Doxygen 1.6.0   Back to index