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

Verify SSL Server Certificate

See more Socket/SSL/TLS Examples

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

Chilkat CkPython Downloads

CkPython
import sys
import chilkat

success = False

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

socket = chilkat.CkSocket()

ssl = True
maxWaitMillisec = 20000

#  The SSL server hostname may be an IP address, a domain name,
#  or "localhost". 

sslServerHost = "www.paypal.com"
sslServerPort = 443

#  Connect to the SSL server:
success = socket.Connect(sslServerHost,sslServerPort,ssl,maxWaitMillisec)
if (success == False):
    print(socket.lastErrorText())
    sys.exit()

cert = chilkat.CkCert()

success = socket.GetServerCert(cert)
if (success != False):

    print("Server Certificate:")
    print("Distinguished Name: " + cert.subjectDN())
    print("Common Name: " + cert.subjectCN())
    print("Issuer Distinguished Name: " + cert.issuerDN())
    print("Issuer Common Name: " + cert.issuerCN())

    bExpired = cert.get_Expired()
    bRevoked = cert.get_Revoked()
    bSignatureVerified = cert.get_SignatureVerified()
    bTrustedRoot = cert.get_TrustedRoot()

    print("Expired: " + str(bExpired))
    print("Revoked: " + str(bRevoked))
    print("Signature Verified: " + str(bSignatureVerified))
    print("Trusted Root: " + str(bTrustedRoot))

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