Sample code for 30+ languages & platforms
C++

Apple Keychain - Get Certificate by Common Name

See more Apple Keychain Examples

Retrieves the certificate from the Apple Keychain that matches the specified common name (CN).

Note: This example requires Chilkat v10.0.0 or greater.

Chilkat C++ Downloads

C++
#include <CkCert.h>

void ChilkatSample(void)
    {
    bool success = false;

    // On MacOS or iOS, this searches both the Default keychains and System keychains for the certificate
    // having the specified CN.
    CkCert cert;
    success = cert.LoadByCommonName("Certum CA");
    if (success == false) {
        std::cout << cert.lastErrorText() << "\r\n";
        return;
    }

    std::cout << cert.subjectDN() << "\r\n";

    // Note: In the Apple Keychain, a certificate with its private key represents an identity because it combines the certificate and its private key.
    // When Chilkat loads a certificate from the Apple Keychain, it also gets the associated private key.
    // You can simply use the cert in other places in Chilkat where a cert w/ private key is required.
    CkCert cert2;
    success = cert2.LoadByCommonName("Chilkat Software, Inc.");
    if (success == false) {
        std::cout << cert2.lastErrorText() << "\r\n";
        return;
    }

    std::cout << cert2.subjectDN() << "\r\n";
    bool hasPrivKey = cert2.HasPrivateKey();
    std::cout << "Has private key: " << hasPrivKey << "\r\n";

    std::cout << "Success." << "\r\n";
    }