1. 程式人生 > >java處理加密之.net轉java

java處理加密之.net轉java

由於之前開發的專案使用的是C#,使用者資訊使用的C#的MD5加密碼方式,而現在需要切換到Java平臺下,關鍵問題是如何將使用者資訊通過Java方式的MD5加密碼到與C#同樣的結果。

經過查詢資料與測試,Java與C#預設的MD5加密結果是一致的,主要是編碼問題。(以前使用了是.NET的Unicode編碼)

為了使當前j系統(java)能與以前的使用者登入使用的密碼一致(.net),只要是對java加密過程新增對應的編碼格式。

import java.security.MessageDigest;

public class MD5Util
{
  //生成MD5
  public static byte[] getMD5(String message) {
    String md5 = "";
    byte[] md5Byte=null;
    try {
      MessageDigest md = MessageDigest.getInstance("MD5");  // 建立一個md5演算法物件
      byte[] messageByte = message.getBytes("UTF-16LE");
      md.update(messageByte);
      md5Byte = md.digest();
    } catch (Exception e) {
      e.printStackTrace();
    }
    return md5Byte;
  }
}