Visual FoxPro
Visual FoxPro
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 Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loPfx
LOCAL lnNumPrivateKeys
LOCAL loPrivKey
LOCAL i
LOCAL loCert
LOCAL lnNumCerts
lnSuccess = 0
loPfx = CreateObject('Chilkat.Pfx')
* Load the PKCS12 from a file
lnSuccess = loPfx.LoadPfxFile("/someDir/my.p12","pfxFilePassword")
IF (lnSuccess = 0) THEN
? loPfx.LastErrorText
RELEASE loPfx
CANCEL
ENDIF
lnNumPrivateKeys = loPfx.NumPrivateKeys
loPrivKey = CreateObject('Chilkat.PrivateKey')
? "Private Keys:"
i = 0
DO WHILE i < lnNumPrivateKeys
loPfx.PrivateKeyAt(i,loPrivKey)
* Do something with the private key ...
i = i + 1
ENDDO
loCert = CreateObject('Chilkat.Cert')
lnNumCerts = loPfx.NumCerts
? "Certs:"
i = 0
DO WHILE i < lnNumCerts
loPfx.CertAt(i,loCert)
? loCert.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 (loCert.HasPrivateKey() = 1) THEN
? "Has private key!"
lnSuccess = loCert.GetPrivateKey(loPrivKey)
* ...
ENDIF
i = i + 1
ENDDO
RELEASE loPfx
RELEASE loPrivKey
RELEASE loCert