Part I (40 marks)
You have studied in class that Huffman compression is an efficient compression technique. In Part I of the TMA, you are required to perform some research about the Huffman compression technique and write a report describing this method. You report should contain the following information:
1- Huffman compression type (Lossless or lossy)(5 marks)
2- Information about the codeword lengths in Huffman compression (fixed or variable) (5 marks)
3- Explanation of prefix-free Huffman compression(5 marks)
4- Description of the tree building approach in Huffman compression (5 marks)
After learning about the Huffman compression method, you are required to implement this method on a simple example and include this example as part of your report. Consider a case where only four possible symbols can occur with the following probabilities: The first symbol occurs with a probability of 0.5625, the second symbol with a probability of 0.1875, the third with a probability of 0.1875, and the fourth symbol with a probability of 0.0625.
5- You are required to:
a. Build the Huffman tree for this example(6 marks)
b. Calculate the average symbol length after implementing the Huffman method(4 marks)
c. Calculate the codeword length needed to encode the four symbols if equal length codewords are used (no compression is performed) (3 marks)
d. What can you conclude after comparing the lengths calculated in parts b) and c) above?(3 marks)
6- Additional requirements concerning your report:
a. The report length should be between 400-600 words(2 marks)
b. References used should be included at the end of the report and correctly cited in the report(2 marks)
Part II (60 marks)
As you have seen in Block 2, Public Key Infrastructure is “a combination of services and encryption techniques thattogether are used to protect the security of data over networks”. It includes a number of entities such as: Registration authority (RA), certification authority (CA), directory services and certificate and key management services.
An organization might have one or more certification authorities depending on the organization structure. The certification authorities are structured in a tree-like organization where a “root CA” is at the root level and the rest of CAs are placed as internal nodes. The certificate generated for the users are the leaves of the tree. Figure 1 illustrates such a structure.
Figure 1- Certification Authority Hierarchy
The objective of this question is to create a CA hierarchy with multiple levels as shown in Figure 1. In this part, you will use a simple PKI tool to generate the above mentioned hierarchy.A quick internet search can easily show the availability of several tools for creating and managing CAs (sometimes referred to as Public key infrastructure management tools). In this TMA, you will be using a simple CA tool named xCA.It can be downloaded from: https://sourceforge.net/projects/xca/. The documentation for the tool can be found at: http://xca.sourceforge.net/.
In order to construct the CA hierarchy, the following steps needs to be followed:
1- Generation of a self-signed certificate for the Root CA.
2- Generation of certificates for the CAsat Level 1. These certificatesare signed by the root CA.
3- Generation of certificates for the CAs at Level 2. These certificatesare signed by the corresponding Level1 CAs.
4- Generation of certificates for the CA and end user at Level 3. These certificatesare signed by the corresponding Level2 CAs.
5- Generation of certificate for the end user at Level 4. This certificate is signed by the corresponding Level3 CA.
The generation of a certificate consists of the following steps:
1- Generation of a key pair (public/private)
2- Generation of certificate signing request (CSR) that includes all the necessary information about the certificate subject (the entity requesting the certificate) in addition to further information, in particular the requested certificate extensions.
3- Signature of the certificate by the certification authority (or self-signature in the case of root CA)
While doing the abovementioned steps, the following shall be taken into account:
1. The public key algorithm is RSA
2. The key sizes should be at least 4096 bits for the root CA, 2048 bits for the intermediate CA and 1024 for end users.
3. The information for each certificate shall be clear and significant; for instance, use appropriate common names for the certificate subject information (e.g., CA-Root as a common name for the root CA)
4. The extensions for each certificate shall be carefully selected for the certificate usage; certificate extensions might differ between root certification authority, intermediate certification authorities and user certificates.
5. All the certificates shall be exported and saved in DER format with file extension (.crt)
6. The naming for the certificate shall be done as follows:
a. Root CA certificate: CA-ROOT-(StudentName)-(StudentID) where (StudentName) and (StudentID) needs to be replaced by your name and your ID
b. Other CAs (intermediate CAs in the tree of Figure 1): CAx-Levely-(StudentName)-(StudentID), where “x” is the CA number and “y” is the corresponding level, as per Figure 1. For example, CA1-Level1-(StudentName)-(StudentID), or CA1-Level2-(StudentName)-(StudentID)
c. End user certificates: EndUsern-(StudentName)-(StudentID), where “n” is the end user number, e.g., EndUser2-(StudentName)-(StudentID)
The deliverables of this part (part II) are:
1- A report that explains how you generate each certificate
o You should take screenshots of each step that clearly shows the inputs.
o The screenshot should be clear and at the same time you should not use a very high resolution in order to keep the size of the TMA file reasonable.
o You should explain the choices you have taken in each step in particular regarding the choice of extensions for each certificate.
2- The certificates you have generated during the exercise. The question will not be validated if the files are not uploaded along with the TMA
The marks are distributed as follows:
• Thirty (30) marks for correctly generating the certificates. These marks are distributed as follows:
o Respecting the certification hierarchy (10 marks)
o correct algorithm (RSA) and key sizes (5 marks)
o Appropriate subject information (5 marks)
o Correct choice of extensions (5 marks)
o Correct naming convention (5 marks)
• Thirty (30) marks for the report distributed as follows:
o Screenshots of the different steps (including key generation, certificate signing request, certificate signature and export)(10 marks: 1 mark for each certificate generation process)
o Explanation of the different steps for certificate generation (20 marks: 2 marks for each certificate process)
1/2 mark of each two marks will be allocated for the explanation of your choice of extension for the certificate
حلول جميع الواجبات
موبايل – واتس أب
حلول مضمونة لجميع الواجبات ومشاريع التخرج
حلول الواجبات غير مكررة ونسبة التشابه أقل من 10%