Sample code for 30+ languages & platforms
Go

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

Go
    success := false

    // On MacOS or iOS, this searches both the Default keychains and System keychains for the certificate
    // having the specified CN.
    cert := chilkat.NewCert()
    success = cert.LoadByCommonName("Certum CA")
    if success == false {
        fmt.Println(cert.LastErrorText())
        cert.DisposeCert()
        return
    }

    fmt.Println(cert.SubjectDN())

    // 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.
    cert2 := chilkat.NewCert()
    success = cert2.LoadByCommonName("Chilkat Software, Inc.")
    if success == false {
        fmt.Println(cert2.LastErrorText())
        cert.DisposeCert()
        cert2.DisposeCert()
        return
    }

    fmt.Println(cert2.SubjectDN())
    hasPrivKey := cert2.HasPrivateKey()
    fmt.Println("Has private key: ", hasPrivKey)

    fmt.Println("Success.")

    cert.DisposeCert()
    cert2.DisposeCert()