Sample code for 30+ languages & platforms
VB.NET Requires Chilkat v11.0.0+

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 VB.NET Downloads

VB.NET
Dim success As Boolean = False

'  This example requires the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

Dim trustedRoots As New Chilkat.TrustedRoots

'   Indicate that we will NOT trust any pre-installed certificates on the system.
trustedRoots.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.
Dim zip As New Chilkat.Zip

'  Open a .zip containing PEM files, among other things..
success = zip.OpenZip("qa_data/certs/thawte-roots.zip")
If (success = False) Then
    Debug.WriteLine(zip.LastErrorText)
    Exit Sub
End If


Dim entry As New Chilkat.ZipEntry
Dim pemStr As String
Dim cert As New Chilkat.Cert

Dim pattern As String = "*.pem"
Dim bHasMoreEntries As Boolean = zip.EntryMatching(pattern,entry)
While bHasMoreEntries = True

    Debug.WriteLine("Entry: " & entry.FileName)

    '  Get the PEM of the CA cert:
    pemStr = entry.UnzipToString(0,"utf-8")

    '  Load it into a certificate object:
    success = cert.LoadPem(pemStr)
    If (success <> True) Then
        Debug.WriteLine(cert.LastErrorText)
    End If


    '  Add it to the trusted roots.
    trustedRoots.AddCert(cert)

    bHasMoreEntries = entry.GetNextMatch(pattern)
End While

'   Activate the trusted roots globally for all Chilkat objects.
'   This call really shouldn't fail, so we're not checking the return value.
success = trustedRoots.Activate()