当前位置:网站首页>C# AES对字符串进行加密
C# AES对字符串进行加密
2022-07-06 05:02:00 【帅_shuai_】
C# AES对字符串进行加密
public class AESHelper
{
/// <summary>
/// AES加密的密钥 必须是32位
/// </summary>
public static string keyValue = "12345678123456781234567812345678";
/// <summary>
/// AES 算法加密
/// </summary>
/// <param name="content">明文</param>
/// <param name="Key">密钥</param>
/// <returns>加密后的密文</returns>
public static string Encrypt(string content, string Key)
{
try
{
byte[] keyBytes = Encoding.UTF8.GetBytes(Key);
RijndaelManaged rDel = new RijndaelManaged();
rDel.Key = keyBytes;
rDel.Mode = CipherMode.ECB;
rDel.Padding = PaddingMode.PKCS7;
ICryptoTransform cTransform = rDel.CreateEncryptor();
byte[] contentBytes = Encoding.UTF8.GetBytes(content);
byte[] resultBytes = cTransform.TransformFinalBlock(contentBytes, 0, contentBytes.Length);
string result = Convert.ToBase64String(resultBytes, 0, resultBytes.Length);
return result;
}
catch (Exception ex)
{
UnityEngine.Debug.LogError("加密出错:" + ex.ToString());
return null;
}
}
/// <summary>
/// AES 算法解密
/// </summary>
/// <param name="content"></param>
/// <param name="key"></param>
/// <returns></returns>
public static string Decipher(string content, string key)
{
try
{
byte[] keyBytes = Encoding.UTF8.GetBytes(key);
RijndaelManaged rm = new RijndaelManaged();
rm.Key = keyBytes;
rm.Mode = CipherMode.ECB;
rm.Padding = PaddingMode.PKCS7;
ICryptoTransform ict = rm.CreateDecryptor();
byte[] contentBytes = Convert.FromBase64String(content);
byte[] resultBytes = ict.TransformFinalBlock(contentBytes, 0, contentBytes.Length);
return Encoding.UTF8.GetString(resultBytes);
}
catch (Exception ex)
{
UnityEngine.Debug.LogError("解密出错:" + ex.ToString());
return null;
}
}
}
边栏推荐
- Ora-01779: the column corresponding to the non key value saving table cannot be modified
- Finance online homework
- 优秀PM必须经历这3层蜕变!
- 程序员在互联网行业的地位 | 每日趣闻
- Compilation and connection of shader in games202 webgl (learn from)
- 集合详解之 Collection + 面试题
- 组播和广播的知识点梳理
- [lgr-109] Luogu may race II & windy round 6
- Extension of graph theory
- A blog to achieve embedded entry
猜你喜欢
[classic example] binary tree recursive structure classic topic collection @ binary tree
二叉树基本知识和例题
Zynq learning notes (3) - partial reconfiguration
Pagoda configuration mongodb
程序员在互联网行业的地位 | 每日趣闻
nacos-高可用seata之TC搭建(02)
[FreeRTOS interrupt experiment]
TCP three handshakes you need to know
Three methods of Oracle two table Association update
Cve-2019-11043 (PHP Remote Code Execution Vulnerability)
随机推荐
MySQL time processing
Nestjs配置文件上传, 配置中间件以及管道的使用
The ECU of 21 Audi q5l 45tfsi brushes is upgraded to master special adjustment, and the horsepower is safely and stably increased to 305 horsepower
Yyds dry inventory SSH Remote Connection introduction
Flink kakfa data read and write to Hudi
从0到1建设智能灰度数据体系:以vivo游戏中心为例
ByteDance program yuan teaches you how to brush algorithm questions: I'm not afraid of the interviewer tearing the code
Some common skills on unity inspector are generally used for editor extension or others
[FreeRTOS interrupt experiment]
Oracle deletes duplicate data, leaving only one
TCP three handshakes you need to know
Ora-01779: the column corresponding to the non key value saving table cannot be modified
The underlying structure of five data types in redis
Realize a binary read-write address book
Raspberry pie 3.5-inch white screen display connection
On the solution of es8316's audio burst
Ad20 is set with through-hole direct connection copper sheet, and the bonding pad is cross connected
A blog to achieve embedded entry
关于imx8mp的es8316的芯片调试
Simple understanding of interpreters and compilers