Swift
Swift
Load PKCS12 / PFX and Access Contents
See more PFX/P12 Examples
Loads a PKCS12 / PFX file and iterates over the contents which include private keys and certificates.Chilkat Swift Downloads
func chilkatTest() {
var success: Bool = false
let pfx = CkoPfx()!
// Load the PKCS12 from a file
success = pfx.loadFile(path: "/someDir/my.p12", password: "pfxFilePassword")
if success == false {
print("\(pfx.lastErrorText!)")
return
}
var numPrivateKeys: Int = pfx.numPrivateKeys.intValue
let privKey = CkoPrivateKey()!
print("Private Keys:")
var i: Int = 0
while i < numPrivateKeys {
pfx.privateKey(at: i, privKey: privKey)
// Do something with the private key ...
i = i + 1
}
let cert = CkoCert()!
var numCerts: Int = pfx.numCerts.intValue
print("Certs:")
i = 0
while i < numCerts {
pfx.cert(at: i, cert: cert)
print("\(cert.subjectDN!)")
// If the certificate has a private key (one of the private keys within the PFX)
// then it can also be obtained via the certificate object:
if cert.hasPrivateKey() == true {
print("Has private key!")
success = cert.getPrivateKey(privKey: privKey)
// ...
}
i = i + 1
}
}