To follow the discussion in this tutorial, you need
to know a few things about the Java language, starting with the basics of Java
programming in a client/server environment (that is, working with
classes, objects, threads, and so on). Because stream and socket
communication is central to our discussion, you need to know how
to use streams and sockets. In particular, you should know what a
stream is and what it is used for. You should know how to create a
Socket and a ServerSocket, how to get
streams from each, and how to communicate using those streams. You
also should know how to create and compile a .java file using the
JDK or an IDE.
Two developerWorks tutorials, "Java sockets 101" and "Introduction to Java I/O," both accessible from Resources, provide useful background information.
You do not need to know anything about encryption technology to
complete this tutorial. While a comprehensive overview of encryption
is beyond the scope of the discussion here, you will be given the
information you need to create secure client/server connections
within your applications.