MD5 MessageDigest
/* * file MD5.java * * This file is part of SourceHeader project. * * SourceHeader is software for easier maintaining source files' headers. * project web: http://code.google.com/p/source-header/ * author: Steve Sindelar * licence: New BSD Licence * * (c) Steve Sindelar */ //package sourceheader.core.util; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /** * * @author steve */ public class MD5 { public static String create(String content) throws MD5IsNotSupported { String result = ""; try { byte[] defaultBytes = content.getBytes(); MessageDigest algorithm = MessageDigest.getInstance("MD5"); algorithm.reset(); algorithm.update(defaultBytes); byte messageDigest[] = algorithm.digest(); StringBuffer hexString = new StringBuffer(); for (int i = 0; i < messageDigest.length; i++) { hexString.append(Integer.toHexString(0xFF & messageDigest[i])); } result = hexString.toString(); } catch (NoSuchAlgorithmException ex) { throw new MD5IsNotSupported(ex); } assert !result.isEmpty(); return result; } public static class MD5IsNotSupported extends NoSuchAlgorithmException { public MD5IsNotSupported(Throwable exception) { super("MD5 algorithm is not implemented in this java.", exception); } } }