Sample code for 30+ languages & platforms
Xojo Plugin

Verify SSL Server Certificate

See more Socket/SSL/TLS Examples

Demonstrates how to connect to an SSL server and verify its SSL certificate.

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

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

Dim socket As New Chilkat.Socket

Dim ssl As Boolean
ssl = True
Dim maxWaitMillisec As Int32
maxWaitMillisec = 20000

// The SSL server hostname may be an IP address, a domain name,
// or "localhost". 
Dim sslServerHost As String
sslServerHost = "www.paypal.com"
Dim sslServerPort As Int32
sslServerPort = 443

// Connect to the SSL server:
success = socket.Connect(sslServerHost,sslServerPort,ssl,maxWaitMillisec)
If (success = False) Then
    System.DebugLog(socket.LastErrorText)
    Return
End If

Dim cert As New Chilkat.Cert

Dim bExpired As Boolean
Dim bRevoked As Boolean
Dim bSignatureVerified As Boolean
Dim bTrustedRoot As Boolean

success = socket.GetServerCert(cert)
If (success <> False) Then

    System.DebugLog("Server Certificate:")
    System.DebugLog("Distinguished Name: " + cert.SubjectDN)
    System.DebugLog("Common Name: " + cert.SubjectCN)
    System.DebugLog("Issuer Distinguished Name: " + cert.IssuerDN)
    System.DebugLog("Issuer Common Name: " + cert.IssuerCN)

    bExpired = cert.Expired
    bRevoked = cert.Revoked
    bSignatureVerified = cert.SignatureVerified
    bTrustedRoot = cert.TrustedRoot

    System.DebugLog("Expired: " + Str(bExpired))
    System.DebugLog("Revoked: " + Str(bRevoked))
    System.DebugLog("Signature Verified: " + Str(bSignatureVerified))
    System.DebugLog("Trusted Root: " + Str(bTrustedRoot))

End If

// Close the connection with the server
// Wait a max of 20 seconds (20000 millsec)
success = socket.Close(20000)