Java tutorial
/* * Copyright 2005-2010 the original author or authors. * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ //package sdloader.util; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /** * ????????????Util * * @author shot * @author c9katayama */ public class MessageDigestUtil { protected static String ALGORHTYM = "MD5"; /** * ?????????????????????????? * * @param planeText * @return */ public static String digest(String planeText) { MessageDigest digest = createMessageDigest(); byte[] b = planeText.getBytes(); String hex = toHexString(digest.digest(b)); return hex; } /** * byte[]?16?????????? * * @param buf * @return */ public static String toHexString(byte[] buf) { String digestText = ""; for (int i = 0; i < buf.length; i++) { int n = buf[i] & 0xff; if (n < 16) { digestText += "0"; } digestText += Integer.toHexString(n).toUpperCase(); } return digestText; } /** * MessageDisgest??????? * * @return */ public static MessageDigest createMessageDigest() { try { return MessageDigest.getInstance(ALGORHTYM); } catch (NoSuchAlgorithmException e) { throw new ExceptionInInitializerError(); } } public static void setAlgorithm(String algorithm) { ALGORHTYM = algorithm; } public static void resetAlgorithm() { ALGORHTYM = "MD5"; } }