【发布时间】:2011-12-13 11:17:37
【问题描述】:
我正在使用 Rijndael 加密/解密一些文档。我想知道是否存在允许多线程使用算法的 C# 实现,无论是手动还是使用 Parallel 框架?我认为这是不可能的,因为它基于流(CryptoStream),但仍然值得一问。
有人有资料可以查吗?
【问题讨论】:
标签: c# .net multithreading encryption
我正在使用 Rijndael 加密/解密一些文档。我想知道是否存在允许多线程使用算法的 C# 实现,无论是手动还是使用 Parallel 框架?我认为这是不可能的,因为它基于流(CryptoStream),但仍然值得一问。
有人有资料可以查吗?
【问题讨论】:
标签: c# .net multithreading encryption
我从未听说过 .NET 中的多线程 CryptoStream,但是,我认为这取决于您的加密模式。 如果加密模式是 ECB,当然,你可以很容易地用 Parallel.For 或 ForEach 手动使它成为多线程。 使用 CBC 或任何其他带有反馈的加密模式,您不太可能使其并行,除非您将使用多个初始化向量。 对于欧洲央行模式:
所以,我的想法是不使用 CryptoStream,而是必须调用加密 API 并直接操作纯文本字节。
【讨论】: