Critical Evaluation And Analysis Of The Cryptographic Protocols Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

This work involves the critical evaluation and analysis of the cryptographic protocols that can be implemented to secure a system. It is undertaken as an assignment for the course CIS014-6 (CRYPTOGRAPHY) in the department of Computer science and Technology, of the University of Bedfordshire. It focuses on encryption algorithms developed by Ronald Rivest, this work is performed on a specific case-study.

The choice of an encryption key type (i.e. symmetric vs. asymmetric) is a crucial part of the development of an encryption architecture. There are important differences between these key types from both an IT security and a management perspective. Choosing the appropriate key requires weighing an organization's security needs against the cost of implementing and maintaining the chosen encryption solution.

There are several factors that affect the choice of an encryption algorithm, the two main factors being speed, and security. No single algorithm is ideal for all situations, but generally the following principles apply:

Strong encryption generally consumes more CPU resources than weak encryption.

Long keys generally yield stronger encryption than short keys.

Asymmetric encryption is stronger than symmetric encryption using the same key length, but it is relatively slow.

Block ciphers with long keys are stronger than stream ciphers.

Long, complex passwords are stronger than short passwords.

If you are encrypting lots of data, you should encrypt the data using a symmetric key, and encrypt the symmetric key with an asymmetric key.

Encrypted data cannot be compressed, but compressed data can be encrypted. If you use compression, you should compress data before encrypting it.

Below (FIGURE 1) is the network diagram from our case-study, I am going to take in to consideration two parts of the network. The first part being the wireless segment of the given network, and the second part is the wired Local Area network (LAN).

For the wireless segment of the network, I am going to look at Wired Equivalent Privacy (WEP). For the wired part of the network, I am going to look at KERBEROS. I am going to discuss these two protocols, because they both make use of encryption algorithms created by Ronald Rivest. They are both cryptosystems that are based on the RC4 (Rivest Cipher 4) algorithm.




WEP is a security algorithm for IEEE (Institute of Electrical and Electronics Engineers) 802.11 wireless networks. It was designed to provide data confidentiality comparable to that of a traditional network. WEP is widely in use, and it is often the first security choice presented to users by most router configuration tools. It uses the stream cipher RC4 (Rivest Cipher 4) for confidentiality, and CRC-32 (Cyclic Redundancy Check) checksum for integrity.

Because wireless networks broadcast messages using radio, they are susceptible to eavesdropping. WEP provides security by encrypting data over radio waves so that it is protected as it is transmitted from one end point to another. WEP was the encryption scheme considered to be the initial standard for first generation wireless networking devices. However, it has been found that WEP is not as secure as once believed. WEP is used at the two lowest layers of the OSI model - the data link and physical layers; it therefore does not offer end-to-end security.

Standard 64-bit WEP uses a 40 bit key (also known as WEP-40), which is concatenated with a 24-bit initialization vector (IV) to form the RC4 traffic key. At the time that the original WEP standard was being drafted, U.S. Government export restrictions on cryptographic technology limited the key size. Once the restrictions were lifted, all of the major manufacturers eventually implemented an extended 128-bit WEP protocol using a 104-bit key size (WEP-104).

A 128-bit WEP key is almost always entered by users as a string of 26 hexadecimal (base 16) characters (0-9 and A-F). Each character represents four bits of the key. 26 digits of four bits each give 104 bits; adding the 24-bit IV produces the final 128-bit WEP key.

A 256-bit WEP system is available from some vendors, and as with the 128-bit key system, 24 bits of that is for the IV, leaving 232 actual bits for protection. These 232 bits are typically entered as 58 hexadecimal characters. (58 Ã- 4 = 232 bits) + 24 IV bits = 256-bit WEP key. WEP uses two methods of authentication, Open system authentication and shared key authentication.

In Open System authentication, the WLAN client need not provide its credentials to the Access Point during authentication. Thus, any client, regardless of its WEP keys, can authenticate itself with the Access Point and then attempt to associate. In effect, no authentication (in the true sense of the term) occurs. After the authentication and association, WEP can be used for encrypting the data frames. At this point, the client needs to have the right keys.

In Shared Key authentication, the WEP key is used for authentication. A four-way challenge-response handshake is used:

The client station sends an authentication request to the Access Point.

The Access Point sends back a clear-text challenge.

The client has to encrypt the challenge text using the configured WEP key, and send it back in another authentication request.

The Access Point decrypts the material, and compares it with the clear-text it had sent. Depending on the success of this comparison, the Access Point sends back a positive or negative response.

After the authentication and association, the pre-shared WEP key is also used for encrypting the data frames using RC4. It is possible to derive the key stream used for the handshake by capturing the challenge frames; hence it is advisable to use the open system authentication for WEP authentication.


WEP relies on a secret key that is shared between a mobile station (e.g. a laptop with a wireless Ethernet card) and an access point (i.e. a base station). The secret key is used to encrypt packets before they are transmitted, and an integrity check is used to ensure that packets are not modified in transit. The standard does not discuss how the shared key is established. In practice, most installations use a single key that is shared between all mobile stations and access points.

WEP encryption uses a shared key authentication and sends the same key with data packets being transmitted across the wireless network. If malicious users have enough time and gather enough data they can eventually piece together their own key

Another disadvantage to using WEP encryption is that if the master key needs to be changed, it will have to be manually changed on all devices connected to the network. This can be a tedious task if you have many devices connected to your network. Use of encrypted tunnelling protocols (e.g. IPsec, Secure Shell) can provide secure data transmission over an insecure network.

The University of California at Berkley and the University of Maryland performed studies on WEP and found that they could typically decrypt a WEP key in at least 8 hours to several days. A more recent study by AT&T Labs outlines a modification of this technique that enables retrieval of the network key in fifteen minutes or less! Even more recently the FBI demonstrated the 3-minute WEP crack. Why is this scary? It's scary because this means that an attacker can have unrestricted access to the networks resources within minutes!

From the above mentioned disadvantages, it is clear to see that WEP is not an appropriate encryption protocol to be deployed in the wireless network segment. One major remedy to WEP is WPA2 (Wi-Fi protected access 2).


Wi-Fi Protected Access (WPA) is a much stronger encryption algorithm created specifically by the networking industry to mitigate the problems associated with WEP. Like WEP, WPA uses the same encryption/decryption method with all devices on the wireless network, but does not use the same master key. Devices connected to a WPA encrypted wireless network use temporary keys that are dynamically changed to communicate.

Pre-shared key mode (PSK, also known as Personal mode) is designed for home and small office networks that don't require the complexity of an 802.1X authentication server. Each wireless network device encrypts the network traffic using a 256 bit key. This key may be entered either as a string of 64 hexadecimal digits, or as a passphrase of 8 to 63 printable ASCII characters. If ASCII characters are used, the 256 bit key is calculated by applying the PBKDF2 key derivation function to the passphrase, using the SSID as the salt and 4096 iterations of HMAC-SHA1.

Shared-key WPA remains vulnerable to password cracking attacks if users rely on a weak passphrase. To protect against a brute force attack, a truly random passphrase of 13 characters (selected from the set of 95 permitted characters) is probably sufficient. To further protect against intrusion, the network's SSID should not match any entry in the top 1000 SSIDs as downloadable rainbow tables have been pre-generated for them and a multitude of common passwords.

WPA uses much stronger encryption algorithms than its predecessor. WPA uses a Temporary Key Integrity Protocol (TKIP), which dynamically changes the key as data packets are sent across the network. Since the key is constantly changing, it makes cracking the key much more difficult than that of WEP. If the need arises to change the global key, WPA will automatically advertise the new key to all devices on the network without having to manually change them.

Disadvantages to using WPA are few, with the biggest issue being incompatibility with legacy hardware and older operating systems. WPA also has a larger performance overhead and increases data packet size leading to longer transmission.

If possible, you should choose WPA over WEP when configuring your wireless network. It provides much better security and is the newer standard. If you are unable to configure your network with WPA, having WEP encryption is better than having no encryption at all. Securing your network will stop malicious users from stealing bandwidth from your network or gaining access to private information.



Kerberos is a computer network authentication protocol, which allows all devices communicating over a non-secure network to prove their identity to each other in a secure way. Its creators aimed primarily at a client-server model, and it provides mutual authentication - the user and the server have to verify each other's identity. Kerberos protocol messages are protected against eavesdropping and replay attacks. Kerberos was built on symmetric key cryptography and requires a trusted third party, and sometimes may use public-key cryptography by utilizing asymmetric key cryptography during certain stages of authentication. The Massachusetts Institute of Technology (MIT) provide a suite of free Kerberos software. By default, Kerberos makes use of port 88.

Kerberos is based on the symmetric Needham-Schroeder protocol. Kerberos uses a trusted third party, called a key distribution centre (KDC), the KDC is made up of two logically separate parts: an Authentication Server (AS) and a Ticket Granting Server (TGS). Kerberos makes use of "tickets" which serve to prove the identity of the user .The KDC stores a database of secret keys; each node on the network - whether a client or a server - shares a secret key known only to itself and to the KDC. Knowledge of this key serves to prove a device's identity. For communication between two devices, the KDC generates a session key which they can use to secure their communication. The security of the protocol relies primarily on participants maintaining loosely synchronized time and on short-lived affirmations of authenticity called Kerberos tickets.

The Internet is not a secure place. Most of the protocols used on the Internet do not provide any form of security. Tools to "sniff" passwords off of the network are commonly used by malicious hackers. Thus, applications which send unencrypted passwords over the network are extremely vulnerable. Worse yet, client/server applications rely on the client program to be "honest" about the identity of the user who is using it. Other applications rely on the client to restrict its activities to those which it is allowed to do, with no other enforcement by the server.

Some sites attempt to use firewalls to solve their network security problems. Unfortunately, firewalls assume that "the bad guys" are on the outside, which is often a very bad assumption. Most of the really damaging incidents of computer crime are carried out by insiders. Firewalls also have a significant disadvantage in that they restrict how your users can use the Internet. (After all, firewalls are simply a less extreme example of the dictum that there is nothing more secure then a computer which is not connected to the network(closed network --- and powered off!) In most cases, these restrictions are simply unrealistic and unacceptable. Kerberos was created by MIT as a solution to these network security problems. The Kerberos protocol uses strong cryptography so that a client can prove its identity to a server (and vice versa) across an insecure network channel. After a client and server have used Kerberos to prove their identity, they can also encrypt all of their communications to assure privacy and data integrity as they go about their business.

Below is a simple diagram that attempts to describe the Kerberos process:



Kerberos is not effective against attacks that employ password guessing techniques; if a user chooses a weak password, then an attacker guessing that password can impersonate the user. Similarly, Kerberos requires a trusted path through which passwords are entered. If the user enters a password to a program that has already been modified by an attacker ( using a Trojan horse or some other kind of spyware or malware), or if the path between the user and the initial authentication program is being monitored, then an attacker may obtain sufficient information to impersonate the user. Kerberos can be used in combination with other methods, as described later, to address these drawbacks.

To be useful, Kerberos must be integrated with other parts of the system. It does not protect all communication between two devices; it only protects the messages from software that has been written or modified to use it. While it may be used to exchange encryption keys when establishing link encryption and network level security services, this would require changes to the network software of the hosts involved.

It requires the central server be available at all times. If the Kerberos server goes down, no user will be able to log in. This problem can be solved by using multiple Kerberos servers ( in a redundant setup) and failback authentication mechanisms. Since authentication is controlled by a centralized KDC, compromise of this authentication set-up will allow an attacker to impersonate any user.


Based on all the concepts and terminologies explained above, it clear to see that WEP is not a good choice for encryption in the wireless network part of our network infrastructure. WPA 2 (Wi-Fi Protected Access-version 2) is a very good alternative to WEP; WPA 2 attempts to correct all the limitations and short comings of WEP. I'll strongly suggest that we use WPA 2 in the wireless network.

Similarly, in our wired network area it is recommended that Kerberos be employed as the main network authentication protocol. Kerberos is the De-facto standard used in most enterprise networks, its simplicity and ease of use makes it a first choice for most network professionals. I recommend that Kerberos be used in the wired part of the network.