AutoIt
AutoIt
Use a Custom Set of Trusted Root Certificates
See more Certificates Examples
Demonstrates how to build a set of trusted root certificates to be used globally by all Chilkat classes.Chilkat AutoIt Downloads
Local $bSuccess = False
; This example requires the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.
$oTrustedRoots = ObjCreate("Chilkat.TrustedRoots")
; Indicate that we will NOT trust any pre-installed certificates on the system.
$oTrustedRoots.TrustSystemCaRoots = False
; Thawte is a certificate authority that provides a .zip download of their
; root CA certificates: https://www.thawte.com/roots/index.html
; The direct download link is: https://www.verisign.com/support/thawte-roots.zip
; Note: The above URLs are valid at the time of writing this example (29-May-2015).
; Assuming the .zip has already been downloaded, open it and load each .pem file into
; our trusted roots object.
$oZip = ObjCreate("Chilkat.Zip")
; Open a .zip containing PEM files, among other things..
$bSuccess = $oZip.OpenZip("qa_data/certs/thawte-roots.zip")
If ($bSuccess = False) Then
ConsoleWrite($oZip.LastErrorText & @CRLF)
Exit
EndIf
$oEntry = ObjCreate("Chilkat.ZipEntry")
Local $sPemStr
$oCert = ObjCreate("Chilkat.Cert")
Local $sPattern = "*.pem"
Local $bHasMoreEntries = $oZip.EntryMatching($sPattern,$oEntry)
While $bHasMoreEntries = True
ConsoleWrite("Entry: " & $oEntry.FileName & @CRLF)
; Get the PEM of the CA cert:
$sPemStr = $oEntry.UnzipToString(0,"utf-8")
; Load it into a certificate object:
$bSuccess = $oCert.LoadPem($sPemStr)
If ($bSuccess <> True) Then
ConsoleWrite($oCert.LastErrorText & @CRLF)
EndIf
; Add it to the trusted roots.
$oTrustedRoots.AddCert($oCert)
$bHasMoreEntries = $oEntry.GetNextMatch($sPattern)
Wend
; Activate the trusted roots globally for all Chilkat objects.
; This call really shouldn't fail, so we're not checking the return value.
$bSuccess = $oTrustedRoots.Activate()