This page contains Syllabus of Cryptography of CSIT.

Title | Cryptography |

Short Name | Crypto |

Course code | CSC316 |

Nature of course | Theory + Lab |

Fifth Semester | |

Full marks | 60 + 20 + 20 |

Pass marks | 24 + 8 + 8 |

Credit Hrs | 3 |

Elective/Compulsary | Compulsary |

### Course Description

**Course Description:** The course introduces the underlying the principles and design of
cryptosystems. The course covers the basics concepts of cryptography including: traditional ciphers,
block ciphers, stream ciphers, public and private key cryptosystems. The course also includes the
theory of hash functions, authentication systems, network security protocols and malicious logic.

**
Course Objectives:** The objectives of this course are to familiarize the students with cryptography
and its applications. The students will be able to develop basic understanding of cryptographic
mechanisms.

### Units and Unit Content

- 1. Introduction and Classical Ciphers
- teaching hours: 7 hrs
1.4. Security: Computer Security, Information Security, Network Security, CIA Triad,

Cryptography, Cryptosystem, Cryptanalysis, Security Threats and Attacks, Security Services,

Security Mechanisms

1.5. Classical Cryptosystems:

Substitution Techniques: Ceasar, Monoalphabetic, Playfair, Hill, Polyalphabetic ciphers,

One-time pad

Transposition Techniques: Rail Fence Cipher

1.6. Modern Ciphers: Block vs. Stream Ciphers, Symmetric vs. Asymmetric Ciphers

- 2. Symmetric Ciphers
- teaching hours: 10 hrs
2.4. Fiestel Cipher Structure, Substitution Permutation Network (SPN)

2.5. Data Encryption Standards (DES), Double DES, Triple DES

2.6. Finite Fields: Groups Rings, Fields, Modular Arithmetic, Euclidean Algorithm, Galois Fields

(GF(p) & GF(2n)), Polynomial Arithmetic

2.7. International Data Encryption Standard (IDEA)

2.8. Advanced Encryption Standards (AES) Cipher

2.9. Modes of Block Cipher Encryptions (Electronic Code Book, Cipher Block Chaining, Cipher

Feedback Mode, Output Feedback Mode, Counter Mode)

- 3. Asymmetric Ciphers
- teaching hours: 8 hrs
3.4. Number Theory: Prime Numbers, Fermat’s Theorem, Euler’s Theorem, Primility Testing,

Miller-Rabin Algorithm, Extended Euclidean Theorem, Discrete Logarithms

3.5. Public Key Cryptosystems, Applications of Public Key Cryptosystems

3.6. Distribution of public key, Distribution of secret key by using public key cryptography, Diffie-

Helman Key Exchange, Man-in-the-Middle Attack

3.7. RSA Algorithm

3.8. Elgamal Cryptographic System

- 4. Cryptographic Hash Functions and Digital Signature
- teaching hours: 8 hrs
4.4. Message Authentication, Message Authentication Functions, Message Authentication Codes

4.5. Hash Functions, Properties of Hash functions, Applications of Hash Functions

4.6. Message Digests: MD4 and MD5

4.7. Secure Hash Algorithms: SHA-1 and SHA-2

4.8. Digital Signatures: Direct Digital Signatures, Arbitrated Digital Signature4.9. Digital Signature Standard: The DSS Approach, Digital Signature Algorithm4.10. Digital Signature Standard: The RSA Approach- 5. Authentication
- teaching hours: 3 hrs
5.4. Authentication System,

5.5. Password Based Authentication, Dictionary Attacks,

5.6. Challenge Response System,

5.7. Biometric System

5.8. Needham-Schroeder Scheme, Kerberos Protocol

- 6. Network Security and Public Key Infrastructure
- teaching hours: 6 hrs
6.1. Overview of Network Security

6.2. Digital Certificates and X.509 certificates, Certificate Life Cycle Management

6.3. PKI trust models, PKIX

6.4. Email Security: Pretty Good Privacy (PGP)

6.5. Secure Socket Layer (SSL) and Transport Layer Security (TLS)

6.6. IP Security (IPSec)

6.7. Firewalls and their types

- 6. Malicious Logic
- teaching hours: 3 hrs
7.1. Malicious Logic, Types of Malicious Logic: Virus, Worm, Trojan Horse, Zombies, Denial of

Service Attacks,

7.2. Intrusion, Intruders and their types, Intrusion Detection System

### Lab and Practical works

**Laboratory Work Manual**Student should write programs and prepare lab sheet for all of theunits in the syllabus. Studentsshould implement cryptographic algorithmsand protocols mentioned in each. The choice ofprogramming language can be decided by the instructor and student as per their comfort. Theinstructors have to prepare lab sheets for individual units covering the concept of the units as per therequirement. All of the lab reports should be evaluated during the corresponding weeks of hands onpractice. The lab session for above chapters should be as per following description however thedepth of lab works are not limited to the below mentioned contents only. The lab report might coverthe following list of the programs.Write the program to illustrate the followings- Monoalphabetic Ciphers: Ceasar, Hill
- Polyalphabetic Cipher: Vigenere Cipher (Vernam, OTP), Playfair
- Transposition Cipher: Rail Fence Cipher
- Some basic components of DES like functioning of S-Box, Key generation
- Modular Arithmetic (Finding additive inverse, multiplicative inverse (Extended Euclidean algorithm, relatively prime)
- Number Theory (Primality testing, Totient function, Primitive root)
- Diffie-Helman Key Exchange, RSA Algorithm, Elgamal Cryptographic System
- Some basic logic for Malicious code