从http://www.mentalis.org/forum/thread.qpx/971重新发布,因为我需要一个答案。我希望你们能帮助我。CryptographicException:无法获取加密服务提供商方面
有问题的组件是Org.Mentalis.SecurityServices.dll。
嘿所有。我有麻烦。
CryptographicException:无法获取加密服务提供程序上下文。
堆栈跟踪:
at Org.Mentalis.SecurityServices.Cryptography.CryptoHandle.CreateInternalHandle(IntPtr handle, String container)
at ORG.Mentalis.SecurityServices.Cryptography.CryptoHandle.get_Handle()
at Org.Mentalis.SecurityServices.Cryptography.RC4CryptoServiceProvider.ctor()
at <place in my app where I try to create the RC4 CryptoServiceProvider>
我不得不用手该异常跟踪复制,从客户端发送给我的截图。
从本质上讲,我已经创建了一个XP使用的RC4CryptoServiceProvider从启动时的.ini文件加载加密的用户详细信息的.NET 3.5 WinForms应用程序。它几个月来工作得很好。
大约一个星期前,我在我的电脑上得到了这个确切的异常消息。我在网上做了一些狩猎,但找不到太多 - 我发现的一切都与网站有关。
我最终偶然发现了一种解决方法,它可以让我的电脑正常工作。
C:当我从以下三个文件夹删除的文件\的Documents and Settings \所有用户\应用数据\微软\加密\ RSA \ MachineKeys的\
C:\ Documents和Settings \所有用户\应用数据\微软\加密\ RSA \记号\
C:\ Documents和Settings \ my_username \应用数据\微软\加密\ RSA \记号\
的问题就走了。下次运行应用程序时,这些文件夹会重新填充新信息。
我原以为这只是唯一以我自己的开发环境的东西 - 我已经下载了一些奇怪的是损害我的加密文件和文件夹。这不是一个我是专家的领域 - 我只是使用这个组件,它只是工作。那么......直到现在。
的问题是,我公司的客户之一,最近刚开始遇到了同样的错误,我不舒服,要求他们只是清除出自己的加密文件,而不能解释为何。另外,这似乎并不是由于我下载的东西有些奇怪,因为这个例外是由一系列商业终端服务器引起的。
我一直在四处寻找在这个问题上的支持,但我没有多少运气。我会继续环顾四周。外面的任何人都可以看到这种情况吗?
谢谢你的时间。
明显的起点是您找到解决方法的地方。有没有解释? – 2009-09-23 21:05:23
我没有在任何地方找到解决方法。首先,我使用procmon和DLLTool来查找应用程序在做什么。我注意到有一个参考出来C:\ Documents and Settings \ my_username \ Application Data \ Microsoft \ Crypto \ RSA \ token \ filename - 在这一点上,我只是去删除该文件和等效文件All Users文件夹。之后,问题就消失了。从来没有发现任何网上推荐这个 - 我只是试过,它的工作。感谢编辑,顺便说一句。 – 2009-09-23 21:12:11