Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

SmartCard minidriver

120 views
Skip to first unread message

ton4ik

unread,
Jul 12, 2012, 4:57:38 AM7/12/12
to
Hello,

We've developed a smart card minidriver for Windows XP. Now we are testing it
on
winlogon process.
After rebooting the logon with smart card works perfectly. But if I log off and
try to logon again with the same smard card, then after pin entering i receive
an error: "The requested key container does not exist on the smart
card".
If i insert card with different cardid, then logon is successful. But than i
can't use both cards for logon.
So after rebooting system i can use each card for logon onle once.


Log of logon with error:

CPAcquireContext
--CardAcquireContext called
--CardAcquireContext is done

--CardReadFile (cardid) called
----Data OUT
----FA 7A D5 0D 38 A3 1A A9 44 97 CD E7 9D 4B 4A 24
--CardReadFile (cardid) is done

--CardDeleteContext called
--CardDeleteContext is done



Log of successful logon:

CPAcquireContext
--CardAcquireContext called
--CardAcquireContext is done

--CardReadFile (cardid) called
----Data OUT
----FA 7A D5 0D 38 A3 1A A9 44 97 CD E7 9D 4B 4A 24
--CardReadFile (cardid) is done

--CardReadFile (cardcf) called
----Data OUT
----00 00 05 00 0D 00
--CardReadFile (cardcf) is done

--CardReadFile (cmapfile) called
----Data OUT
----61 00 64 00 30 00 37 00 33 00 66 00 34 00 66 00 2D 00 66 00 32 00 32 00 32
00 2D 00 34 00 35 00 65 00 65 00 2D 00 39 00 64 00 38 00 32 00 2D 00 32 00 63
00
66 00 34 00 38 00 36 00 31 00 64 00 62 00 39 00 35 00 39 00 00 00 00 00 00 00
00
00 03 00 00 00 00 04
--CardReadFile (cmapfile) is done

CPGetUserKey
...


As i understand it, Windows store the CardId and name of the key container. The
logon process is interrupted after reading known CardId.

Any ideas, what could be wrong?
0 new messages