C#文件加密
时间: 2023-07-12 21:12:26 浏览: 210
C#中文件加密的实现也可以分为以下几个步骤:
1. 读取文件内容:使用文件操作相关的类,例如`FileStream`类,将文件的内容读取到内存中。
2. 加密数据:选择一种加密算法,例如AES、DES等,将文件内容进行加密处理。加密算法可以使用`.NET Framework`提供的加密类实现,例如`AesManaged`、`DESCryptoServiceProvider`等。
3. 存储加密数据:将加密后的数据存储到新的文件中,可以使用文件操作相关的类,例如`FileStream`类,将加密后的数据写入到新的文件中。
以下是一个简单的C#文件加密示例代码:
```csharp
using System;
using System.IO;
using System.Security.Cryptography;
class FileEncryption
{
static void Main()
{
// 读取文件内容
FileStream inFile = new FileStream("example.txt", FileMode.Open);
byte[] data = new byte[inFile.Length];
inFile.Read(data, 0, (int)inFile.Length);
inFile.Close();
// 创建加密器
AesManaged aes = new AesManaged();
byte[] key = aes.Key;
byte[] iv = aes.IV;
ICryptoTransform encryptor = aes.CreateEncryptor(key, iv);
// 加密数据
byte[] encryptedData = encryptor.TransformFinalBlock(data, 0, data.Length);
// 存储加密数据到新文件
FileStream outFile = new FileStream("example_encrypted.txt", FileMode.Create);
outFile.Write(encryptedData, 0, encryptedData.Length);
outFile.Close();
}
}
```
在上述代码中,使用了`.NET Framework`提供的`AesManaged`类实现加密,`aes.CreateEncryptor()`用于创建加密器,`encryptor.TransformFinalBlock()`用于加密数据,`outFile.Write()`用于将加密后的数据写入到新文件中。
阅读全文