Cryptography - Syllabus

Embark on a profound academic exploration as you delve into the Cryptography course (Crypto) within the distinguished Tribhuvan university's CSIT department. Aligned with the 2074 Syllabus, this course (CSC316) seamlessly merges theoretical frameworks with practical sessions, ensuring a comprehensive understanding of the subject. Rigorous assessment based on a 60 + 20 + 20 marks system, coupled with a challenging passing threshold of , propels students to strive for excellence, fostering a deeper grasp of the course content.

This 3 credit-hour journey unfolds as a holistic learning experience, bridging theory and application. Beyond theoretical comprehension, students actively engage in practical sessions, acquiring valuable skills for real-world scenarios. Immerse yourself in this well-structured course, where each element, from the course description to interactive sessions, is meticulously crafted to shape a well-rounded and insightful academic experience.


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

Introduction and Classical Ciphers

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



Symmetric Ciphers

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)



Asymmetric Ciphers

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



Cryptographic Hash Functions and Digital Signature

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 Signature

4.9. Digital Signature Standard: The DSS Approach, Digital Signature Algorithm

4.10. Digital Signature Standard: The RSA Approach


Authentication

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



Network Security and Public Key Infrastructure

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



Malicious Logic

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 works

  • Laboratory Work Manual
    Student should write programs and prepare lab sheet for all of theunits in the syllabus. Students
    should implement cryptographic algorithmsand protocols mentioned in each. The choice of
    programming language can be decided by the instructor and student as per their comfort. The
    instructors have to prepare lab sheets for individual units covering the concept of the units as per the
    requirement. All of the lab reports should be evaluated during the corresponding weeks of hands on
    practice. The lab session for above chapters should be as per following description however the
    depth of lab works are not limited to the below mentioned contents only. The lab report might cover
    the 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