Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
Verify SSL Server CertificateDemonstrates how to connect to an SSL server and verify its SSL certificate. Downloads: MS Windows Visual C/C++ Libraries Linux/CentOS C/C++ Libraries MAC OS X C/C++ Libraries Solaris C/C++ Libraries C++ Builder Libraries // Needs #include <CkSocket.h> // Needs #include <CkCert.h> CkString strOut; CkSocket socket; bool success; success = socket.UnlockComponent("Anything for 30-day trial"); if (success != true) { strOut.append("Failed to unlock component\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } bool ssl; ssl = true; long maxWaitMillisec; maxWaitMillisec = 20000; // The SSL server hostname may be an IP address, a domain name, // or "localhost". const char * sslServerHost; sslServerHost = "www.paypal.com"; long sslServerPort; sslServerPort = 443; // Connect to the SSL server: success = socket.Connect(sslServerHost,sslServerPort,ssl,maxWaitMillisec); if (success != true) { strOut.append(socket.lastErrorText()); strOut.append("\r\n"); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); return; } CkCert *cert = 0; bool bExpired; bool bRevoked; bool bSignatureVerified; bool bTrustedRoot; cert = socket.GetSslServerCert(); if (!(cert == 0 )) { strOut.append("Server Certificate:"); strOut.append("\r\n"); strOut.append("Distinguished Name: "); strOut.append(cert->subjectDN()); strOut.append("\r\n"); strOut.append("Common Name: "); strOut.append(cert->subjectCN()); strOut.append("\r\n"); strOut.append("Issuer Distinguished Name: "); strOut.append(cert->issuerDN()); strOut.append("\r\n"); strOut.append("Issuer Common Name: "); strOut.append(cert->issuerCN()); strOut.append("\r\n"); bExpired = cert->IsExpired(); bRevoked = cert->get_Revoked(); bSignatureVerified = cert->get_SignatureVerified(); bTrustedRoot = cert->get_TrustedRoot(); strOut.append("Expired: "); strOut.appendInt(bExpired); strOut.append("\r\n"); strOut.append("Revoked: "); strOut.appendInt(bRevoked); strOut.append("\r\n"); strOut.append("Signature Verified: "); strOut.appendInt(bSignatureVerified); strOut.append("\r\n"); strOut.append("Trusted Root: "); strOut.appendInt(bTrustedRoot); strOut.append("\r\n"); delete cert; } // Close the connection with the server // Wait a max of 20 seconds (20000 millsec) socket.Close(20000); SetDlgItemText(IDC_EDIT1,strOut.getUnicode()); |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.