Book Image

Learning Network Programming with Java

Book Image

Learning Network Programming with Java

Overview of this book

Network-aware applications are becoming more prevalent and play an ever-increasing role in the world today. Connecting and using an Internet-based service is a frequent requirement for many applications. Java provides numerous classes that have evolved over the years to meet evolving network needs. These range from low-level socket and IP-based approaches to those encapsulated in software services. This book explores how Java supports networks, starting with the basics and then advancing to more complex topics. An overview of each relevant network technology is presented followed by detailed examples of how to use Java to support these technologies. We start with the basics of networking and then explore how Java supports the development of client/server and peer-to-peer applications. The NIO packages are examined as well as multitasking and how network applications can address practical issues such as security. A discussion on networking concepts will put many network issues into perspective and let you focus on the appropriate technology for the problem at hand. The examples used will provide a good starting point to develop similar capabilities for many of your network needs
Table of Contents (16 chapters)
Learning Network Programming with Java
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Security


There are many security related terms whose meaning and purpose can be daunting when they are first encountered. Most of these terms are applicable to network applications. We will start with a brief overview of many of these terms. In later sections of this chapter, we will go into more details about the ones that are relevant to our discussion.

Central to most security related issues is encryption. This is the process of converting information that needs to be protected to an encrypted form using a key or a set of keys. The receiver of the encrypted information can use a key or set of keys to decrypt the information and revert it to its original form. This technique will prevent unauthorized access to the information.

We will demonstrate the use of both symmetric and asymmetric encryption techniques. Symmetric encryption uses a single key to encrypt and decrypt messages. Asymmetric encryption uses a pair of keys. These keys are frequently stored in a file called a keystore, which...