我关注Verify the Digital Signatures of XML Documents tutorial并遇到了麻烦。
现在我的智能卡包含三个额外的密钥值对,这些密钥值对是冗余的,我必须删除它们。
MSDN教程How to: Store Asymmetric Keys in a Key Container包含有关如何从容器中删除密钥的说明,但没有解释如何删除现有密钥。
当我重新启动包含以下代码的程序时:
// Create a new CspParameters object to specify
// a key container.
CspParameters cspParams = new CspParameters(1, "ActivClient Cryptographic Service Provider");
cspParams.Flags = CspProviderFlags.UseDefaultKeyContainer;
// Create a new RSA signing key and save it in the container.
RSACryptoServiceProvider rsaKey = new RSACryptoServiceProvider(cspParams);
rsaKey.PersistKeyInCsp = false;
然后程序将响应以下错误:安全令牌没有可用于其他容器的存储空间。
我是新手(智能卡),所以我完全迷失了。请帮忙。
答案 0 :(得分:0)
那是因为你已经达到了卡可以托管的密钥容器的限制。可以通过查询卡微型驱动程序(如果存在)来获得最大密钥容器的数量。