password.java

来自「基于 C/S 模式的网上购物系统」· Java 代码 · 共 57 行

JAVA
57
字号
package RegisterAndLogin;

import java.security.MessageDigest;
public class Password {
   private final static String[] hexDigits={"0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"};
   //对inputString 加密
   public static String createPassword(String inputString)
   {
	   return encodeByMD5(inputString);
   }
   //验证输入的密码是否正确
   public static boolean authenticatePassword(String password,String inputString)
   {
	   if(password.equals(encodeByMD5(inputString)))
		   return true;
	   else
		   return false;
   }
   //对字符串进行MD5加密
   public static String encodeByMD5(String originString)
   {
	   if(originString!=null)
	   {
		  try{
			   MessageDigest md=MessageDigest.getInstance("MD5");		   
		   byte[] result=md.digest(originString.getBytes());
		   String resultString=byteArrayToHexString(result);
		   return resultString.toUpperCase();
		  }catch(Exception ex)
		  {
			  ex.printStackTrace();
		  }
	   }
	   return null;
   }
   //转换字节数组为十六进制字符串
   public static String byteArrayToHexString(byte[] b)
   {
	   StringBuffer resultSb=new StringBuffer();
	   for(int i=0;i<b.length;i++)
	   {
		   resultSb.append(byteToHexString(b[i]));
	   }
	   return resultSb.toString();
   }
   public static String byteToHexString(byte b)
   {
	   int n=b;
	   if(n<0)
	    n=256+n;
	   int d1=n/16;
	   int d2=n%16;
	   return hexDigits[d1]+hexDigits[d2];
   }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?