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

Examine SSL/TLS Server Certificate

See more Socket/SSL/TLS Examples

Demonstrates how an application can examine and check a server's SSL/TLS certificate.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

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

Dim socket As ChilkatSocket
socket.Initialize("socket")

'  Connect to a server.
Dim useTls As Boolean = True
Dim maxWaitMs As Int = 2000
success = socket.Connect("www.intel.com", 443, useTls, maxWaitMs)
If success = False Then
    Log(socket.LastErrorText)
    Return
End If


'  If we get here, the TLS connection ws made..
'  In any SSL/TLS handshake, the server sends its certificate in a TLS handshake message.
'  Chilkat will keep it cached within the object that made the connection.
'  Get the server's cert and examine a few things.
Dim cert As ChilkatCert
cert.Initialize("cert")
socket.GetServerCert(cert)

Log("Distinguished Name: " & cert.SubjectDN)
Log("Common Name: " & cert.SubjectCN)
Log("Issuer Distinguished Name: " & cert.IssuerDN)
Log("Issuer Common Name: " & cert.IssuerCN)

Log("Expired: " & cert.Expired)
Log("Revoked: " & cert.Revoked)
Log("Signature Verified: " & cert.SignatureVerified)
Log("Trusted Root: " & cert.TrustedRoot)

'  Sample output:

'  Distinguished Name: C=US, ST=California, O=Intel Corporation, CN=*.intel.com
'  Common Name: *.intel.com
'  Issuer Distinguished Name: C=GB, ST=Greater Manchester, L=Salford, O=Sectigo Limited, CN=Sectigo RSA Organization Validation Secure Server CA
'  Issuer Common Name: Sectigo RSA Organization Validation Secure Server CA
'  Expired: False
'  Revoked: False
'  Signature Verified: True
'  Trusted Root: True