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

本文关键字:压缩 加密 我应该 | 更新日期: 2023-09-27 17:55:39

我们开发了一种发送电子邮件的服务...在这一步相当微不足道。

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

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

这不一定是一个"高度复杂"的算法,因为我只想要一个针对更改/注入的基本检测......

需要明确的是:必须有机会解压缩/解密!

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

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

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

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