c# 实现AES加密算法
时间: 2024-09-28 18:06:04 浏览: 41
C#代码实现对AES加密解密
在 C# 中,使用 AES(Advanced Encryption Standard)进行加密,你需要使用 System.Security.Cryptography命名空间下的Aes类。以下是基本步骤:
1. 引入必要的命名空间:
```csharp
using System;
using System.IO;
using System.Security.Cryptography;
```
2. 创建 Aes 对象并加载密钥和初始向量(IV):
```csharp
byte[] key = Encoding.UTF8.GetBytes("你的密钥"); // 替换为你自己的密钥
byte[] iv = Encoding.UTF8.GetBytes("你的初始化向量"); // 替换为你自己的 IV
Aes aes = Aes.Create();
aes.Key = key;
aes.IV = iv;
```
3. 创建加密模式和填充模式:
```csharp
ICryptoTransform encryptor = aes.CreateEncryptor(aes.Key, aes.IV);
CryptoStream cs = new CryptoStream(new MemoryStream(), encryptor, CryptoStreamMode.Write);
```
4. 加密数据:
```csharp
string plainText = "要加密的文本";
byte[] plainTextBytes = Encoding.UTF8.GetBytes(plainText);
cs.Write(plainTextBytes, 0, plainTextBytes.Length);
```
5. 关闭流并释放资源:
```csharp
cs.FlushFinalBlock();
cs.Close();
// 获取加密后的字节数组
byte[] cipherTextBytes = cs.ToArray();
```
6. 可以选择将加密后的数据保存到文件或通过网络发送。
阅读全文