public class EncryptionTool { /// /// AES256加密 /// /// 明文 /// 密钥 /// public static string AES256_Encrypt(string encryptStr, string key) { byte[] keyArray = UTF8Encoding.UTF8.GetBytes(key); byte[] toEncryptArray = UTF8Encoding.UTF8.GetBytes(encryptStr); RijndaelManaged rDel = new RijndaelManaged(); rDel.Key = keyArray; rDel.Mode = CipherMode.ECB; rDel.Padding = PaddingMode.PKCS7; ICryptoTransform cTransform = rDel.CreateEncryptor(); byte[] resultArray = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length); return Convert.ToBase64String(resultArray, 0, resultArray.Length); } /// /// AES256解密 /// /// 密文 /// 密钥 /// public static string AES256_Decrypt(string decryptStr, string key) { try { byte[] keyArray = UTF8Encoding.UTF8.GetBytes(key); byte[] toEncryptArray = Convert.FromBase64String(decryptStr); RijndaelManaged rDel = new RijndaelManaged(); rDel.Key = keyArray; rDel.Mode = CipherMode.ECB; rDel.Padding = PaddingMode.PKCS7; ICryptoTransform cTransform = rDel.CreateDecryptor(); byte[] resultArray = cTransform.TransformFinalBlock(toEncryptArray, 0, toEncryptArray.Length); return UTF8Encoding.UTF8.GetString(resultArray); } catch (Exception ex) { return decryptStr; } } /// /// md5不可逆加密 /// /// 明文 /// 编码 /// string public static string Md5HmacSha1Base64_HTKY(string toVerifyText, string key) { try { HMACSHA1 hmacsha1 = new HMACSHA1(); hmacsha1.Key = Encoding.UTF8.GetBytes(key); byte[] dataBuffer = Encoding.UTF8.GetBytes(toVerifyText); byte[] hashBytes = hmacsha1.ComputeHash(dataBuffer); toVerifyText = Convert.ToBase64String(hashBytes); MD5 md = new MD5CryptoServiceProvider(); return Convert.ToBase64String(md.ComputeHash(Encoding.GetEncoding(“UTF-8”).GetBytes(toVerifyText))); } catch (Exception ex) { return toVerifyText; } } }