Functions ========= The API can perform the following operations: - Enumerating all connected smart card readers, getting reader name and state (reader type, card presence, ...) - Reader event detection (card insertion/withdrawal, reader plug/unplug) - Connecting to a card, disconnecting from a card - Getting card information (label, manufacturer, model, serial number, ...) - Getting PIN information (number of PINs, label of each PIN, status, ...) - PIN verification, change, and unblocking - Enumerating card objects (certificates, keys, ...) - Getting object properties (object type, PKCS label and ID, ...) - For certificates, getting textual representation of X.509 attributes (subject, issuer, validity period, key usages, extensions, ...) - Checking certificate validity according to the system certificate stores configured on the client computer (and getting details about the certification path, the reasons why a certificate is not trusted, ...) - Getting the full PEM-encoded contents of a certificate - Performing cryptographic operations with the private keys (signature, decryption) - Importing a certificate in the card - Importing a PKCS#12 (certificate and key pair) in the card - Generating a new key pair in the card - Deleting objects from the card - Enumerating the system certificate stores - Enumerating the certificates contained in a stores - Adding a certificate to the store (Windows only) - Deleting certificates from the store (Windows only)