Symmetric Encryption
1 Overview
The learning objective of this coursework is for you to become familiar with the concepts in symmetric
encryption. After finishing the coursework, you should have first-hand experience on encryption algorithms,
encryption modes, and initialisation vectors (IV). Moreover, you will be able to use tools and write simple
scripts or programs to encrypt/decrypt messages.
This is an independent coursework and you are expected to work on your own to complete the coursework tasks. Your coursework submissions will be automatically checked for plagiarism. Here are some
further points to take into consideration:
Coursework reports must be written in your own words and any code in your coursework must be your own
code. If some text or code in the coursework has been taken from other sources, these sources must be
properly referenced.
Failure to reference work that has been obtained from other sources or to copy the words and/or code
of another student is plagiarism and if detected, this will be reported to the Schools Discipline
Committee. If a student is found guilty of plagiarism, the penalty could involve voiding the course.
Students must never give hard or soft copies of their coursework reports or code to another student.
Students must alway
s refuse any request from another student for a copy of their report and/or code.
Sharing a coursework report and/or code with another student is collusion, and if detected, this will be
reported to the Schools Discipline Committee. If found guilty of collusion, the penalty could involve
voiding the course.
And remember: the consequences of taking unacceptable short cuts in coursework are much worse than
getting a bad mark (or even no marks) on a piece of coursework. There has been one case this year
where a student was awarded on Ordinary degree (rather than an Honours degree) because
of the sanction imposed by the Universitys Discipline Committee. The offence was plagiarism of
coursework
You are required to submit a coursework report. At the end of each task, the information that you need
to provide to answer the task is indicated. For further information, including submission, see Section 4.
2 Lab Environment for Coursework
The tasks in this lab require access to a computing device that runs Linux OS. There are a few ways for you
to do this:
1. If
OpenSSL. In this lab, we will use openssl commands and libraries, which are installed on all Linux
lab machines. To confirm that you have openssl on your personal machine, your can type either of the
following commands: