在C#中,如何添加数据填充

本文关键字:添加 数据 填充 何添加 | 更新日期: 2023-09-27 18:22:10

有时需要将数据(字节流)填充到离散块大小。例如,ProtectedMemory只能对16字节倍数的数据块进行操作。我知道其他一些类,如ProtectedData、AESCryptoServiceProvider和AESManaged,都内置了对填充的支持,但对于那些没有内置填充的类。。。如何为ProtectedMemory填充数据?

当然,我可以自己写,遵守ANSIX923、ISO10126或PKCS7等标准,但必须有一个很好的方法让.Net做到这一点。我本以为该功能是Stream或MemoryStream的一部分。。。除了在专门的加密类中,我在任何地方都找不到它。

在C#中,如何添加数据填充

使用ProtectedMemory存储16或32字节的加密密钥,然后使用AESManaged或AESCryptoServiceProvider来保护&使用填充来存储数据。或者使用ProtectedMemory存储16或32字节的optionalEntropy,然后使用ProtectedData保护&使用填充来存储数据。