Sample code for 30+ languages & platforms
PowerShell

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 PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

# Note: Requires Chilkat v9.5.0.77 or greater.

$cert = New-Object Chilkat.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.
$success = $cert.LoadFromSmartcard("")
if ($success -ne $true) {
    $($cert.LastErrorText)
    exit
}

# Check to see if the SmartCardPin property contains the valid PIN for the smartcard.
$pinValid = $cert.CheckSmartCardPin()
if ($pinValid -lt 0) {
    $("Unable to check the PIN validity.")
    $($cert.LastErrorText)
    exit
}

if ($pinValid -eq 1) {
    $("PIN is valid.")
}
else {
    $("PIN is invalid.")
}