Sample code for 30+ languages & platforms
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

AutoIt
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()