Folks, I'm working on a certificate authentication app that will authenticate user based on CAC inserted. How do I know when the CAC is inserted / removed? I'll be "catching" that event in C++ or Java. Thanks.
And if not, it probably could be.
Tim Post
2010-06-25 15:25:59
As a smart card will not show up as a device, why should it be reported via udev? Smart card readers (or USB tokens) that actually connect to a USB port are reported via udev but not smart cards (AFAIK)
martin
2010-06-27 13:54:42
+1
A:
You have two options:
- If you go for "low level" (which you apparently want to do) is to use PC/SC level (pcsc-lite) and the SCardGetStatusChange function (or the equivalent in Java, what is javax.smartcardio.CardTerminal.waitForCardPresent())
- If you're working with higher level abstractions and go for PKCS#11 (and if your PKCS#11 provider implements it correctly), C_WaitForSlotEvent can be used.
martin
2010-06-25 15:23:53