我有一个场景,我需要将结构序列化为字节数组或字符串,对其进行加密,然后将其存储在 SQL 表中。
问题在于该表可能会包含数百万行,因此大小非常重要。
我一直在使用 BinaryFormatter 序列化为 byte[],将其转换为 Ascii,然后使用 RijndaelManaged 提供程序对其进行压缩。
加密前,该字符串大约有 230 个字节。加密后,它超过 600 字节。
有谁知道是否有任何其他加密提供商会在这方面做得更好?或者,是否确实有更好的方法可以解决这个问题?
非常感谢,
Z
最佳答案
一般来说,加密算法只会增加固定的开销(对于 IV,在非对称加密算法的情况下,是加密的对称 key )。如果您看到大小增加了 2 倍,则表明您在加密之前或之后进行了一些操作,这增加了数据的大小。
我会删除 ascii 转换 - 加密算法在原始二进制数据上工作得很好 - 并确保你存储到数据库中的是原始二进制 blob,而不是 base64-ing 或类似的。如果您仍然遇到问题,请发布您正在使用的代码。
关于c# - 就大小而言,最好的对称 .net 加密提供程序是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4764966/