在CryptoAPI中识别CSP提供程序

时间:2013-03-19 17:10:15

标签: c++ cryptography digital-signature hsm mscapi

我正在使用MS CAPI API来使用USB令牌进行数字签名。

使用CryptAcquireContext,我可以打印出所有可用的CSP的名称,但我怎么知道哪个CSP与插入的USB令牌相关联?

此外,如果有多个令牌插入电脑怎么办?

应用程序应该如何选择CSP?

1 个答案:

答案 0 :(得分:1)

Windows CAPI中的智能卡或令牌与加密提供程序之间没有任何关系。此外,多个提供商可以支持相同的令牌。

智能卡和令牌开发人员有一个很好的做法是为“Microsoft基础智能卡加密提供商”实施“智能卡微型驱动程序”。但这不是强制性的。

UPD: 如果将多个令牌插入PC,则需要手动将“智能卡读卡器”属性设置为提供商。可以通过SCardListReaders函数获取可用读者列表。

此外,某些提供商可以在一个池中混合来自所有读者的密钥。