In this course the emphasis is on countering threats to information as it travels from source to destination over a public internet. Such threats include interruption, interception, modification, and fabrication of information. The course pays little attention to threats within a computer system, such as viruses or worms, even though they may have been delivered to the computer through a network connection.
Beginning with the 2003 offering of this course, there is a required security lab
The textbook used in the course is "Network Security Essentials," by William Stallings (third edition, Prentice Hall, 2007). This book is a shorter version of the author's "Cryptography and Network Security," which includes more of the mathematical details.
Security services include confidentiality during transit, authentication of participant's identity, integrity of received information, and non-repudiation (protection against a sender's denying sending a message, or a receiver's denying receiving it). Incidentally, the term "authentication" is sometimes used to include both authentication of participant and integrity of information.
The Secure Hash Function (SHA) provides a "fingerprint" of a message, such that even the smallest change in the message changes the fingerprint. This, plus a pre-shared secret, are the components of the "Hashed Message Authentication Code" (HMAC) method, which confirms that the message received is the same as that sent. This is the basis of both the authentication and integrity services.
Encryption algorithms underlie the confidentiality service. These algorithms fall into two classes. The first class is "symmetric" cryptography, which relies on a single pre-arranged key known only to the participants ("secret key"); in this class the new "Advanced Encryption Standard" is rapidly replacing the older "Digital Encryption Standard." The second class is "public/private key cryptography," which uses a related pair of keys for each participant. One of the keys is made public and the other kept private; one is used for encryption of information and the other for decryption. The best-known examples of this type of cryptography are Diffie-Hellman and RSA.
Kerberos is a system that enables an organization to establish an open distributed environment in which an authenticated user can sit down at any workstation and securely access servers distributed throughout the network. Kerberos uses conventional cryptography in an elaborate procedure to authenticate users and authorize their access to specific information.
A major problem with public/private key cryptography is the reliable dissemination of a user's public key. This has given rise to the "Public Key Infrastructure" (PKI), in which a "Certification Authority" not only distributes the public key but guarantees that the apparent owner is the actual owner. The best-known examples of PKI use the X.509 certificate format.
Two packages for e-mail security are available: "Pretty Good Privacy" (PGP) and "Secure/Multipurpose Internet Mail Extensions" (S/MIME). The developer of PGP, Phil Zimmerman, published his work and made it freely available in 1991. He selected the best available cryptographic algorithms as building blocks, and integrated these into a package that provides confidentiality and authentication service for e-mail or file storage. Convenient handling of the keys is provided by public and private "key rings." A "Web of Trust" avoids the use of a formal Certification Authority. PGP is the subject of the first lab session.
The more recent S/MIME provides functionality similar to that of PGP, but uses the standard X.509 certificates issued by a Certification Authority.
A fundamental problem is how to provide secure communication (for example between an organization's offices in different cities, or between an employee working at home and the central office) over the public Internet, which must be regarded as highly insecure. The "IPSec" extensions to the Internet Protocol (IP) provide confidentiality and authentication services in this situation. The result is known as a "Virtual Private Network" (VPN). IPSec is most often implemented in a firewall, but can be implemented in individual workstations. An elaborate key exchange protocol (ISAKMP) is included. IPSec is the subject of the second lab session.
Web security considerations are similar to those that led to the VPN. For electronic commerce to be successful there must be a way to provide confidentiality and authentication for the two-way connection between the customer (client) and the merchant (server). An additional problem here (compared to the VPN) is that the two parties may never have communicated before, and that an acceptable protocol must not burden a relatively unsophisticated customer. The "Secure Sockets Layer" (SSL), developed by Netscape in the early 1990s, provides a solution to these problems. SSL is the subject of the third lab session.
As stated in the overview, this is not a primary topic of the course, but a brief introduction is provided.
An organization inserts a firewall between an internal internetwork ("intranet") and the external, global, Internet to establish a security wall or perimeter between the two. This provides a controlled link that can protect the intranet from Internet-borne attacks.