Smart Card minidriver (using Base CSP) for WinXP

Skip to first unread message


Sep 2, 2008, 5:04:44 PM9/2/08

I'm starting the development of a smart card minidriver (using MS Base CSP). I have a question that I would appreciate any help with.

I followed the minidriver_Spec_V5 for registering the minidriver in the registry but when testing windows logon it does not load my dll.
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Cryptography\Calais\SmartCards\Test Card Minidriver]
"Crypto Provider"="Microsoft Base Smart Card Crypto Provider"
The minidriver is a simple skeleton with DllMain, CardAcquireContext(checking some flags and ATR, no function pointers used/set). I write log entries to a file in DllMain and in other functions, but nothing at all is generated. It seems that BaseCSP is not loading my minidriver. Without the registry entry Winlogon doesn't recognize the card, but with the registry entry it prompts for a PIN and then it always shows the error: "The system could not log you on. The requested key container does not exist on the smart card". Whether I put/remove the 80000001 in the registry entry I get the exact same error and my minidriver is not loaded (ever). I am also able to rename/delete the tcm.dll from the system32 dir after booting, shouldn't it be locked by the system.

Thanks for any help.



Sep 4, 2008, 2:20:28 PM9/4/08
I figured out what it was, so in importance of completeness and perhaps someone else who is beginning the minidriver journey and encounters the same issue.

The default Microsoft Base Cryptographic Provider is a non-smart card CSP. You have to download a Microsoft Windows Update #KB909520 in order to have the new smart card architecture Base CSP.


Reply all
Reply to author
0 new messages