【发布时间】:2025-11-24 17:55:01
【问题描述】:
我有一个包含大量敏感数据的大型 xml 文档。我有一个用 Rijndael 加密这些数据的算法。
byte[] encrypted;
using (RijndaelManaged rijAlg = new RijndaelManaged())
{
rijAlg.Key = EncyptionManager.RijndaelKey;
rijAlg.IV = EncyptionManager.RijndaelIV;
rijAlg.Padding = PaddingMode.PKCS7;
ICryptoTransform encryptor = rijAlg.CreateEncryptor(rijAlg.Key, rijAlg.IV);
using (MemoryStream msEncrypt = new MemoryStream())
{
using (CryptoStream csEncrypt = new CryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write))
{
using (StreamWriter swEncrypt = new StreamWriter(csEncrypt))
{
swEncrypt.Write(plainText);
}
encrypted = msEncrypt.ToArray();
}
}
}
return encrypted;
假设绝大多数文件需要加密存储,是创建 xml 文档并对文件的全部内容进行加密,还是保留 xml 架构并仅加密特定字段更有效?
【问题讨论】:
-
您是在问加密一个块是否比加密多个块效率更高或更低?
-
@PeterRitchie,是的-假设较小块的总数小于单个块的长度。换句话说,最大的消耗是加密的大小还是数量?
标签: c# performance security encryption