我应该采取哪种压缩/加密?

时间:2011-05-10 06:59:23

标签: c# .net encryption compression

我们开发了一项服务,发送电子邮件......在这一步非常简单。

下一步将是:处理反弹 为了实现这一点,我需要在标题中添加一些信息...让我们说它是一个简单的字符串(以保持问题非常基本)。

当我在寻找内部包含校验和的算法时,我应该采用哪种压缩/加密(.net-built-in首选)(我不想创建CRC或类似的并将其添加到标题中或者) - 所以,更改加密/压缩字符串的一些字符并不意味着它有效!

这不一定是“高度软化”的算法,因为我只想对变更/注入进行基本检测......

请注意:必须有机会解压缩/解密!

3 个答案:

答案 0 :(得分:2)

如果您需要解压缩/解密邮件,则可能需要双向加密。我不是这里的专家,但我认为.NET带有对AES的内置支持,这是一种Rijndael算法。您可以获得更多信息here

答案 1 :(得分:0)

你有没有想过/读过OpenPGP? This SO线程对你来说可能是一个很好的起点。

答案 2 :(得分:0)

要回答它的压缩部分,您可能需要考虑使用System.IO.Compression.GZipStream或System.IO.Compression.DeflateStream类进行压缩。 DeflateStream使用LZW压缩(有点hackery),与ZLib兼容(http://stackoverflow.com/questions/70347/zlib-compatible-compression-streams)。