Sample code for 30+ languages & platforms
C++

Find Certificate by Email Address

Locate the certificate containing the specified email address in either the RFC822 Name or the Subject.

Note: This example requires Chilkat v10.1.2 or later.

Chilkat C++ Downloads

C++
#include <CkCertStore.h>
#include <CkJsonObject.h>
#include <CkCert.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkCertStore certStore;

    //  This opens the Current User certificate store on Windows,
    //  On MacOS and iOS it opens the default Keychain.
    bool readOnly = true;
    success = certStore.OpenCurrentUserStore(readOnly);
    if (success == false) {
        std::cout << certStore.lastErrorText() << "\r\n";
        return;
    }

    //  Locate the certificate containing the specified email address in either the RFC822 Name or the Subject.
    CkJsonObject json;
    const char *email_address = "harold@example.com";
    json.UpdateString("email",email_address);

    CkCert cert;
    success = certStore.FindCert(json,cert);
    if (success == true) {
        //  Show the full distinguished name of the certificate.
        std::cout << "Found: " << cert.subjectDN() << "\r\n";
    }
    else {
        std::cout << "Not found." << "\r\n";
    }
    }