🌷🌷🌷🌷例子①:对称加密算法
🌷🌷🌷🌷例子②:非对称加密算法
🌷🌷🌷🌷例子③:哈希算法
🌷🌷🌷🌷例子④:敏感信息保护
例子①:对称加密算法
代码示例:
using System;
using System.Security.Cryptography;
public class SymmetricEncryptionExample
{
public static byte[] EncryptData(byte[] data, byte[] key, byte[] iv)
{
using (Aes aes = Aes.Create())
{
aes.Key = key;
aes.IV = iv;
using (MemoryStream memoryStream = new MemoryStream())
{
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, aes.CreateEncryptor(), CryptoStreamMode.Write))
{
cryptoStream.Write(data, 0, data.Length);
cryptoStream.FlushFinalBlock();
return memoryStream.ToArray();
}
}
}
}
public static byte[] DecryptData(byte[] encryptedData, byte[] key, byte[] iv)
{
using (Aes aes = Aes.Create())
{
aes.Key = key;
aes.IV = iv;
using (MemoryStream memoryStream = new MemoryStream())
{
using (CryptoStream cryptoStream = new CryptoStream(memoryStream, aes.CreateDecryptor(), CryptoStreamMode.Write))
{
cryptoStream.Write(encryptedData, 0, encryptedData.Length);
cryptoStream.FlushFinalBlock();
return memoryStream.ToArray();
}
}
}
}
}
解析:
例子①展示了使用对称加密算法进行数据加密和解密的过程。对称加密算法使用相同的密钥进行加密和解密,因此在加密和解密之前,发送方和接收方必须共享密钥。在这个示例中,我们使用了AES算法(高级加密标准)作为对称加密算法。首先,我们使用密钥和初始化向量(IV)创建Aes对象。然后,我们使用创建的Aes对象创建加密器或解密器,通过CryptoStream将数据写入内存流。最后,我们将加密或解密后的数据作为字节数组返回。
目录