(Unicode C++) Validate a Smartcard PIN
Validates a smartcard PIN. This example only runs on Windows and requires Chilkat v9.5.0.77 or greater.
#include <CkCertW.h>
void ChilkatSample(void)
{
// Note: Requires Chilkat v9.5.0.77 or greater.
CkCertW cert;
cert.put_SmartCardPin(L"000000");
// Load the certificate on the smartcard currently in the reader (or on the USB token).
// Pass an empty string to allow Chilkat to automatically choose the CSP (Cryptographi Service Provider).
// See Load Certificate on Smartcard for information about explicitly selecting a particular CSP.
bool success = cert.LoadFromSmartcard(L"");
if (success != true) {
wprintf(L"%s\n",cert.lastErrorText());
return;
}
// Check to see if the SmartCardPin property contains the valid PIN for the smartcard.
int pinValid = cert.CheckSmartCardPin();
if (pinValid < 0) {
wprintf(L"Unable to check the PIN validity.\n");
wprintf(L"%s\n",cert.lastErrorText());
return;
}
if (pinValid == 1) {
wprintf(L"PIN is valid.\n");
}
else {
wprintf(L"PIN is invalid.\n");
}
}
|