Lua Requires Chilkat v10.0.0+
Lua
Apple Keychain - Create RSA Signature
See more Apple Keychain Examples
Using an RSA private key stored in the Apple Keychain, create a signature by signing the SHA-256 hash of the provided string, then return the signature encoded in Base64 format.Chilkat Lua Downloads
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("Example, Inc.")
if not success then
print(cert.last_error_text)
return
end
local rsa = chilkat.Rsa.new()
success = rsa:set_x509_cert(cert, true)
if not success then
print(rsa.last_error_text)
return
end
-- Generate an RSA signature by signing the SHA-256 hash of the provided string,
-- then return the signature encoded in Base64 format.
rsa.encoding_mode = "base64"
local sigBase64 = rsa:sign_string_enc("to be signed", "sha256")
if not rsa.last_method_success then
print(rsa.last_error_text)
return
end
print("RSA Signature:")
print(sigBase64)