C# 或 C 的高性能 RSA 实现
我有一个执行许多 RSA 签名操作的 Web 服务。我使用 .net 中的 CryptograhyProvider。这使用 Windows 中的非托管 CyptoAPI。
我经常出现这样的错误:
System.Security.Cryptography.CryptographicException:Der RPC 服务器 这是 Vorgang zu stark ausgelastet 的一部分。 [=rpc服务器太 忙于完成交易]
北 System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32 hr) 北 System.Security.Cryptography.Utils._ImportKey(SafeProvHandle hCSP, Int32 keyNumber、CspProviderFlags 标志、对象 cspObject、 SafeKeyHandle& hKey) 贝 System.Security.Cryptography.RSACryptoServiceProvider.ImportParameters(RSAParameters 参数)
我宁愿用 DLLImport 替换我的 RSA 签名操作到高性能 RSA C 实现,而不是尝试修复此问题。
有人知道或者可以推荐一个吗?
OpenSSL 比 MS CryptoApi 更快吗? 我还怀疑加载密钥可能会导致严重的开销。
谢谢!
I have an webservice that performs many RSA-signature operations. I use the CryptograhyProvider from .net. This uses the unmanaged CyptoAPI from Windows.
I often have this error:
System.Security.Cryptography.CryptographicException: Der RPC-Server
ist für diesen Vorgang zu stark ausgelastet. [=The rpc server is too
busy to complete the transaction]bei
System.Security.Cryptography.CryptographicException.ThrowCryptogaphicException(Int32
hr) bei
System.Security.Cryptography.Utils._ImportKey(SafeProvHandle hCSP,
Int32 keyNumber, CspProviderFlags flags, Object cspObject,
SafeKeyHandle& hKey) bei
System.Security.Cryptography.RSACryptoServiceProvider.ImportParameters(RSAParameters
parameters)
Instead of trying to fix this, I'd rather replace my RSA-signing operation with an DLLImport to a high performance RSA C implementation.
Does someone know one or can recommend one?
Is OpenSSL faster than MS CryptoApi?
I also suspect that loading the key might cause serious overhead.
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我推荐 OpenSSL,但我不知道与 MS CryptoAPI 的比较。它使用简单,文档丰富,并提供示例源代码。
请在此处查看 API 的详细说明。
I would recommend OpenSSL but i dont know the comparison with MS CryptoAPI. Its simple to use and documentation is extensive along with sample source code.
Check the detailed description of the APIs here.
您可能还需要考虑NSS。 此已有 2 年历史,但仍然值得仔细阅读。
You may also want to consider NSS. This is 2 years old, but could still be worth perusing.
http://www.cryptopp.com/
可能是一个很好的图书馆。
本次速度测试中使用的是:
http://www.cryptopp.com/benchmarks.html
不幸的是,没有与 OpenSSL 进行比较可用的
http://www.cryptopp.com/
might be a good library.
It was used in this speed test:
http://www.cryptopp.com/benchmarks.html
Unfortunately there is no comparison with OpenSSL available