Sample code for 30+ languages & platforms
Go

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

Go
    success := false

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

    cert := chilkat.NewCert()

    cert.SetSmartCardPin("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 != true {
        fmt.Println(cert.LastErrorText())
        cert.DisposeCert()
        return
    }

    // Check to see if the SmartCardPin property contains the valid PIN for the smartcard.
    pinValid := cert.CheckSmartCardPin()
    if pinValid < 0 {
        fmt.Println("Unable to check the PIN validity.")
        fmt.Println(cert.LastErrorText())
        cert.DisposeCert()
        return
    }

    if pinValid == 1 {
        fmt.Println("PIN is valid.")
    } else {
        fmt.Println("PIN is invalid.")
    }


    cert.DisposeCert()