2011-12-07 49 views
2

我正在用C#4編寫一個需要簽名XML文件的應用程序。我沒有遇到太大的問題,直到我碰到這個問題:訪問智能卡/令牌以獲取其證書和私鑰。
沒有開箱即用,只需獲取基於密碼的證書和密鑰即可。來自pkcs#11令牌或智能卡的訪問證書和私鑰

有沒有人知道如何做到這一點沒有任何支付框架?

回答

5

Microsoft Crypto API支持與硬件設備開箱即用的交互功能。這將要求你的卡有製造商提供的驅動程序。根據卡和操作系統的不同,驅動程序可能已經爲您下載。下面的.NET文章應該至少可以幫助你開始,並且看看你是否可以使用一些開箱即用的MSoft API。 http://msdn.microsoft.com/en-us/library/ms229931.aspx

如果您有關於正在使用的卡的類型的附加信息,您可以使用PC/SC和特定的APDU命令來要求卡爲您簽名或加密信息。出於安全原因,卡小程序不允許檢索證書私鑰是很常見的。

祝你好運。如果您對此有更多疑問,請添加評論。