Sample code for 30+ languages & platforms
Lua Requires Chilkat v11.0.0+

Export Public Key from USB Token or Smartcard using the Apple Keychain

See more Apple Keychain Examples

Demonstrates how to export a public key from a USB token or smart card via the Apple Keychain.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

-- This example requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.

local cert = chilkat.Cert.new()

-- On MacOS and iOS, the LoadByCommonName function will search the Apple Keychain for the matching certificate.

-- A digital certificate's Common Name (CN) is a field in the certificate that specifies the name of the entity the
-- certificate is issued to. It is often used to identify the domain name, hostname, or organization the certificate represents.

-- For example:
-- - In an SSL/TLS certificate for a website, the CN typically contains the domain name (e.g., "www.example.com").
-- - For certificates representing individuals or organizations, the CN might include the person's name or the organization's name.

-- The CN is part of the certificate's Subject field and is crucial for verifying that the certificate corresponds
-- to the intended entity, especially in SSL/TLS communications.

local success = cert:load_by_common_name("Test 2048 bit RSA")
if not success then
    print(cert.last_error_text)
    return
end

local pubKey = chilkat.PublicKey.new()
cert:get_public_key(pubKey)

success = pubKey:save_pem_file(false, "rsaKeys/Test2048Rsa.pem")
if not success then
    print(pubKey.last_error_text)
end