Secure sockets
You can create secure socket applications on the IBM® i operating system by using the Global Security Kit (GSKit) APIs. The GSKit APIs provide communications privacy over an open communications network, which in most cases is the Internet.
These APIs allow client/server applications to communicate in a way that prevents eavesdropping, tampering, and message forgery. The Global Secure Toolkit (GSKit) APIs support server and client authentication and allow an application to use the Secure Sockets Layer (SSL)/Transport Layer Security (TLS) protocol. GSKit APIs are supported for all IBM systems. To enhance portability across systems, it is suggested that you use GSKit APIs when developing applications for secure socket connections.
Overview of secure sockets
Secure Sockets Layer (SSL) and Transport Layer Security (TLS) are generic terms for a set of industry standards that are used for enabling applications for secure communication sessions over an unprotected network, such as the Internet. SSL evolved into and was replaced by TLS. TLS is the more accurate term; however, SSL/TLS is used here to maintain a link to the term SSL, which remains embedded in existing application interfaces, documentation, and configuration. A few of the many applications that require secure communications are Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), Simple Mail Transfer Protocol (SMTP), and Telnet.
An SSL/TLS-enabled application
typically needs to use a port different from an application that is
not SSL/TLS-enabled. For example, an SSL/TLS-enabled browser accesses
an SSL/TLS-enabled HTTP Server with a Universal Resource Locator (URL)
that begins https rather than http.
In most cases, a URL of https attempts to open a
connection to port 443 of the server system instead of to port 80
that the standard HTTP Server uses.
There are
multiple versions of the SSL/TLS protocol defined. The latest version,
Transport Layer Security (TLS) Version 1.2, provides an evolutionary
upgrade from TLS Version 1.1. The GSKit APIs support TLS Version 1.2,
TLS Version 1.1, TLS Version 1.0, SSL Version 3.0, and SSL Version
2.0. For more information about TLS Version 1.2, see RFC 5246:
"The Transport Layer Security (TLS) Protocol Version 1.2"
.