Sample code for 30+ languages & platforms
PHP

Validate a Smartcard PIN

See more Certificates Examples

Validates a smartcard PIN. This example only runs on Windows and requires Chilkat v9.5.0.77 or greater.

Chilkat PHP Downloads

Chilkat2 PHP
<?php

use Chilkat2\Cert;

// Note: Requires Chilkat v9.5.0.77 or greater.

$cert = new Cert();

$cert->SmartCardPin = '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.
try {
    $cert->LoadFromSmartcard('');
} catch (\Chilkat2\Exception $e) {
    echo $e->getMessage(), "\n";
    exit;
}

// Check to see if the SmartCardPin property contains the valid PIN for the smartcard.
$pinValid = $cert->CheckSmartCardPin();
if ($pinValid < 0) {
    echo "Unable to check the PIN validity.\n";
    echo $cert->LastErrorText, "\n";
    exit;
}

if ($pinValid == 1) {
    echo "PIN is valid.\n";
} else {
    echo "PIN is invalid.\n";
}