You are on page 1of 7

School of Engineering Department of Computer and Communication Engineering CENG625 Cryptography & Advanced Computer Security Fall 2013-2014

Supervisor: Dr. Zouhair El-Bazzal

Done by: Ibrahim Wazneh Khadija Zahwe Mohammad Gaith Mohammad Dhainy

January 16, 2014

Introduction:
The MD5 message-digest algorithm is a widely used cryptographic hash function producing a 128-bit (16-byte) hash value, typically expressed in text format as a 32 digit hexadecimal number. MD5 has been utilized in a wide variety of cryptographic applications, and is also commonly used to verify data integrity. Thus, we have created our project based on MD5 encryption. The proposed project is centered on a web server connecting two (or more) different clients. Figure 1 shows the main layout of the application consisting of four main buttons: Send, ReadNew, ReadHistory , and Delete all msgs .

Figure1: Main Layout of the Project

Use Case:
As mentioned before, a web server connects both clients (sender and receiver). The procedure of sending and receiving is illustrated by explaining the functions of the four buttons as follows: Send Button: When pressing the send button, a new layout is presented, allowing the user (where his phone number is already retrieved from the device itself) to enter the destination phone number in the first field (Figure 2), and the message to be encrypted and sent in the other field. Next, the message is encrypted using the MD5 encryption algorithm, using the key = LIUcryptography and initial vector iv = MD5(MD5(iv)).

Figure 2: Filled Fields to Send a Plaintext

When the send button is pressed in the above layout, the message is encrypted as illustrated before, and then sent as a cipher text where the user is notified as shown in figure 3:

Figure 3: User Notification of Encrypted Sent Message

Before completing the explanation of the remaining buttons, we would like to clarify the web server characteristics. Our web server consists of a database table saving the features shown in table 1 (example illustrated in figure 4):
Table 1: Web Server Features

From

To

Message (Encrypted)

Time

Read

From: contains the phone number of the sender To: contains the phone number of the destination Message: contains the encrypted sent message Time: automated time added by the server itself when a new message is added Read: Boolean column to show whether the message is seen (true) or not seen (false by default)

Figure 4: Database Web Server

ReadNew Button: When pressing the readNew button, the client retrieves the new messages (unread messages) from the web server. Messages are searched based on two fields: To field = client phone number and Read field = False (message not read). As a result, the messages are shown, as in figure 5, for the client number: 03734475

Figure 5: New Messages Receieved to Client: 03734475

Then, the user realizes (if pressing the ReadNew button again) that the layout contains no messages (Figure 6). Thats due to the change of flag Seen (Seen field is changed from False True) after the first press on the button.

Figure 6: No New Messages for a Second Press

ReadHistory Button: After pressing this button, the client retrieves a history of his messages from the webserver. Such messages are explored based on the field: To = client phone number. Figure 7 shows a simple example of retrieving history of messages for the client whose number: 03734475

Figure 7: Message's History for Client: 03734475

Delete All Msgs Button : By pressing this button , all messages that are found in the ReadHistory table are deleted. Figure 8 shows that all messages that were sent to 96170027249 device are deleted and then return to the main page.

Figure 8: Deleting messages and returning to the main page

You might also like