對應c#加密方法
#region aes加解密
/// ///aes加密(加密步驟)
///1,加密字串得到2進製陣列;
///2,將2禁止陣列轉為16進製制;
///3,進行base64編碼
///
/// 要加密的字串
/// 金鑰
public string encrypt(string toencrypt, string key)
/// /// aes解密(解密步驟)
/// 1,將base64字串轉為16進製制陣列
/// 2,將16進製制陣列轉為字串
/// 3,將字串轉為2進製資料
/// 4,用aes解密資料
///
/// 已加密的內容
/// 金鑰
public string decrypt(string encryptedsource, string key)
/// /// 2進製轉16進製制
///
string hex_2to16(byte bytes)
for (int i = 0; i < ilength; i++)
hexstring = strb.tostring();
}return hexstring;
}/// /// 16進製制轉2進製
///
byte hex_16to2(string hexstring)
byte returnbytes = new byte[hexstring.length / 2];
for (int32 i = 0; i < returnbytes.length; i++)
return returnbytes;
}#endregion
/** * 加密--把加密後的byte陣列先進行二進位制轉16進製制在進行base64編碼
* @param ssrc
* @param skey
* @return
* @throws exception
*/public static string encrypt(string ssrc, string skey) throws exception
if (skey.length() != 16)
byte raw = skey.getbytes("ascii");
secretkeyspec skeyspec = new secretkeyspec(raw, "aes");
cipher cipher = cipher.getinstance("aes");
cipher.init(cipher.encrypt_mode, skeyspec);
byte encrypted = cipher.dofinal(ssrc.getbytes("utf-8"));
string tempstr = parsebyte2hexstr(encrypted);
base64encoder encoder = new base64encoder();
return encoder.encode(tempstr.getbytes("utf-8"));
} /**
*解密--先 進行base64解碼,在進行16進製制轉為2進製然後再解碼
* @param ssrc
* @param skey
* @return
* @throws exception
*/public static string decrypt(string ssrc, string skey) throws exception
if (skey.length() != 16)
byte raw = skey.getbytes("ascii");
secretkeyspec skeyspec = new secretkeyspec(raw, "aes");
cipher cipher = cipher.getinstance("aes");
cipher.init(cipher.decrypt_mode, skeyspec);
base64encoder encoder = new base64encoder();
byte encrypted1 = encoder.decode(ssrc);
string tempstr = new string(encrypted1, "utf-8");
encrypted1 = parsehexstr2byte(tempstr);
byte original = cipher.dofinal(encrypted1);
string originalstring = new string(original, "utf-8");
return originalstring;
} /**
* 將二進位制轉換成16進製制
* * @param buf
* @return
*/public static string parsebyte2hexstr(byte buf)
} return sb.tostring();
} /**
* 將16進製制轉換為二進位制
* * @param hexstr
* @return
*/public static byte parsehexstr2byte(string hexstr)
return result;
}
AES加密解密方法
aes加密解密方法 加密方法 param data 要加密的資料 param key 加密key param iv 加密iv return 加密的結果 throws exception public static string aesencode string data,string key,str...
C 加密解密 AES
using system namespace encrypt aes解密 需要解密字串 解密後字串 public static string decrypt string str aes加密 需要加密的字串 32位金鑰 加密後的字串 public static string encrypt stri...
C 實現對AES加密和解密的方法
aes簡介 aes the advanced encryption standard 是美國國家標準與技術研究所用於加密電子資料的規範。它被預期能成為人們公認的加密包括金融 電信和 數字資訊的方法。aes 是乙個新的可以用於保護電子資料的加密演算法。明確地說,aes 是乙個迭代的 對稱金鑰分組的密碼...