Sample code for 30+ languages & platforms
Lianja

Verify SSL Server Certificate

See more Socket/SSL/TLS Examples

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

Chilkat Lianja Downloads

Lianja
llSuccess = .F.

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

loSocket = createobject("CkSocket")

llSsl = .T.
lnMaxWaitMillisec = 20000

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

lcSslServerHost = "www.paypal.com"
lnSslServerPort = 443

// Connect to the SSL server:
llSuccess = loSocket.Connect(lcSslServerHost,lnSslServerPort,llSsl,lnMaxWaitMillisec)
if (llSuccess = .F.) then
    ? loSocket.LastErrorText
    release loSocket
    return
endif

loCert = createobject("CkCert")

llSuccess = loSocket.GetServerCert(loCert)
if (llSuccess <> .F.) then

    ? "Server Certificate:"
    ? "Distinguished Name: " + loCert.SubjectDN
    ? "Common Name: " + loCert.SubjectCN
    ? "Issuer Distinguished Name: " + loCert.IssuerDN
    ? "Issuer Common Name: " + loCert.IssuerCN

    llBExpired = loCert.Expired
    llBRevoked = loCert.Revoked
    llBSignatureVerified = loCert.SignatureVerified
    llBTrustedRoot = loCert.TrustedRoot

    ? "Expired: " + str(llBExpired)
    ? "Revoked: " + str(llBRevoked)
    ? "Signature Verified: " + str(llBSignatureVerified)
    ? "Trusted Root: " + str(llBTrustedRoot)

endif

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


release loSocket
release loCert