91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

c# stream的加密解密方法

c#
小樊
91
2024-07-26 02:09:13
欄目: 編程語言

在C#中,可以使用System.Security.Cryptography命名空間下的類來實現流的加密解密操作。下面是一個簡單的示例代碼:

using System;
using System.IO;
using System.Security.Cryptography;

public class StreamEncryption
{
    public static void EncryptStream(Stream inputStream, Stream outputStream, string key)
    {
        using (Aes aesAlg = Aes.Create())
        {
            aesAlg.Key = Encoding.UTF8.GetBytes(key);
            aesAlg.IV = new byte[16]; // 16 bytes IV for AES

            using (CryptoStream cryptoStream = new CryptoStream(outputStream, aesAlg.CreateEncryptor(), CryptoStreamMode.Write))
            {
                inputStream.CopyTo(cryptoStream);
            }
        }
    }

    public static void DecryptStream(Stream inputStream, Stream outputStream, string key)
    {
        using (Aes aesAlg = Aes.Create())
        {
            aesAlg.Key = Encoding.UTF8.GetBytes(key);
            aesAlg.IV = new byte[16]; // 16 bytes IV for AES

            using (CryptoStream cryptoStream = new CryptoStream(inputStream, aesAlg.CreateDecryptor(), CryptoStreamMode.Read))
            {
                cryptoStream.CopyTo(outputStream);
            }
        }
    }
}

在上面的示例中,EncryptStream方法將輸入流使用AES算法加密后寫入輸出流,DecryptStream方法將輸入流使用AES算法解密后寫入輸出流。在使用時,可以將需要加密的數據流和加密后的數據流傳入這兩個方法進行加密和解密操作。

需要注意的是,對稱加密算法需要提供密鑰(key)和初始化向量(IV),這兩者都需要保密。

0
五台县| 赤壁市| 宽甸| 栖霞市| 志丹县| 平和县| 安达市| 大关县| 芒康县| 阳山县| 济阳县| 上杭县| 贵溪市| 永春县| 中卫市| 海南省| 宁海县| 喜德县| 邵东县| 镇安县| 阿巴嘎旗| 衡阳市| 锡林浩特市| 微山县| 乌拉特中旗| 邵东县| 荔波县| 香格里拉县| 建瓯市| 旌德县| 岳西县| 海盐县| 正镶白旗| 连云港市| 建阳市| 勃利县| 大化| 绵阳市| 桐城市| 吴桥县| 双桥区|