Sample code for 30+ languages & platforms
.NET Core C#

Iterate over Certificates on Connected Smart Cards and USB Tokens

See more Cert Store Examples

Demonstrates how to iterate over the certificates on connected smart cards and USB tokens.

Note: Requires Chilkat v10.1.2 or later.

Chilkat .NET Core C# Downloads

.NET Core C#
bool success = false;

Chilkat.CertStore certStore = new Chilkat.CertStore();

// Detects connected smart cards and USB tokens
// and loads the certificate store object with the certificates found.
// Works on Windows, MacOS, iOS, and Linux.
// Note: If something is not detected, contact info@chilkatsoft.com
// for help or for workarounds.
string argNotUsed = "";
success = certStore.OpenSmartcard(argNotUsed);
if (success == false) {
    Debug.WriteLine(certStore.LastErrorText);
    return;
}

Chilkat.Cert cert = new Chilkat.Cert();

int numCerts = certStore.NumCertificates;
int i = 0;

while (i < numCerts) {
    // Load the cert object with the Nth certificate found in the connected HSMs
    certStore.GetCert(i,cert);
    Debug.WriteLine(Convert.ToString(i) + ": " + cert.SubjectCN);
    i = i + 1;
}