Classic ASP
Classic ASP
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 Classic ASP Downloads
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<%
success = 0
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
set trustedRoots = Server.CreateObject("Chilkat.TrustedRoots")
' Indicate that we will NOT trust any pre-installed certificates on the system.
trustedRoots.TrustSystemCaRoots = 0
' 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.
set zip = Server.CreateObject("Chilkat.Zip")
' Open a .zip containing PEM files, among other things..
success = zip.OpenZip("qa_data/certs/thawte-roots.zip")
If (success = 0) Then
Response.Write "<pre>" & Server.HTMLEncode( zip.LastErrorText) & "</pre>"
Response.End
End If
set entry = Server.CreateObject("Chilkat.ZipEntry")
set cert = Server.CreateObject("Chilkat.Cert")
pattern = "*.pem"
bHasMoreEntries = zip.EntryMatching(pattern,entry)
Do While bHasMoreEntries = 1
Response.Write "<pre>" & Server.HTMLEncode( "Entry: " & entry.FileName) & "</pre>"
' 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 <> 1) Then
Response.Write "<pre>" & Server.HTMLEncode( cert.LastErrorText) & "</pre>"
End If
' Add it to the trusted roots.
success = trustedRoots.AddCert(cert)
bHasMoreEntries = entry.GetNextMatch(pattern)
Loop
' 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()
%>
</body>
</html>