在托管环境中使用 RSACryptoServiceProvider 或 RSA
我想使用公共/私有加密,我的 Web 应用程序将使用私钥签署 xml 文档或一段数据,并将使用公钥在应用程序中进行验证,
是否可以在 .net 2.0 中使用 RSACryptoServiceProvider如果不是托管环境,还有其他可能的解决方法吗?
I would like to use Public/Private encryption where my web app would sign an xml document or a piece of data using a private key and it will be verified in the application using the public key,
Is it possible to use RSACryptoServiceProvider in .net 2.0 hosted environment if not what are other possible workarounds?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
是的,很有可能。
如果将用于数据签名的证书导出到 .pfx 文件中,则可以通过这种方式获取 digsig。
要使用此功能,您必须将 .pfx 文件上传到托管服务器。 您还需要该 pfx 文件的密码,您应该 安全地存储在应用程序配置设置中。 您可以对 .cer 文件执行类似的操作。
您还可以从常规 XML 加载 RSA 密钥。 如果您有一个通过从本地机器存储加载密钥来实例化的 RSACryptoServiceProvider,如下所示:
...然后您可以使用以下命令导出该密钥。
结果是一个字符串,包含您可以使用的 XML 文档可以保存到文件,然后上传到托管服务器。 作为密钥对存储的 .pfx 文件的替代方案。 小心。 该 xml 文档没有密码保护,并且不安全。 (阅读有关 ToXmlString() 的文档) 您可以加密此 XML 文档,就像加密任何其他设置一样。 (搜索)
在这种情况下你可以这样做来获取你的csp:
Yes, quite possible.
If you export the cert you will use for data-signing into a .pfx file, you can get a digsig this way.
To use this, you will have to upload a .pfx file to the hosted server. You also need a password for that pfx file, which you should store securely in application config settings. You can do something similar with a .cer file.
You can also load the RSA key from regular XML. If you have an RSACryptoServiceProvider that you instantiated by loading a key from your local machine store, like this:
...then you can export that key with
The result is a string, containing an XML document that you can save to a file, and then upload to the hosted server. An alternative to the .pfx file as a store for your key pair. Be careful. This xml document is not protected with a password, and is insecure. (read the doc on ToXmlString()) You can encrypt this XML doc, just as you would encrypt any other settings. (search)
In that case you can do this to get your csp:
请参阅此处:http://www.codeproject.com/KB/security/EZRSA.aspx
See here: http://www.codeproject.com/KB/security/EZRSA.aspx
是的,可以在托管环境中使用它,但要注意多线程 与其使用相关的问题
这些是最小化 ASP.NET 中线程问题的一些建议:
Yes, it is possible to use this in a hosted environment, but beware of the multi threaded issues relating to its use
These are some suggestions to minimize threading issues in ASP.NET: