Cryptography - Syllabus

Course Overview and Structure

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

Key Topics

  • Introduction to E-commerce
    IN-1

    Overview of E-commerce and its significance in the digital age.

  • E-business vs E-commerce
    IN-2

    Understanding the differences between E-business and E-commerce.

  • Features of E-commerce
    IN-3

    Key characteristics and benefits of E-commerce.

  • Pure vs Partial E-commerce
    IN-4

    Types of E-commerce models and their applications.

Key Topics

  • Feistel Cipher Structure and Substitution Permutation Network (SPN)
    SY-1

    Feistel Cipher Structure is a design model for block ciphers, and Substitution Permutation Network (SPN) is a method of constructing block ciphers. Both are fundamental concepts in symmetric cryptography.

  • Data Encryption Standards (DES) and Variants
    SY-2

    Data Encryption Standards (DES) is a symmetric-key block cipher, and its variants include Double DES and Triple DES. These are important encryption algorithms in cryptography.

  • Finite Fields and Modular Arithmetic
    SY-3

    Finite Fields, including Groups, Rings, and Fields, are mathematical structures used in cryptography. Modular Arithmetic, Euclidean Algorithm, and Galois Fields are essential concepts in finite fields.

  • International Data Encryption Algorithm (IDEA)
    SY-4

    International Data Encryption Algorithm (IDEA) is a symmetric-key block cipher used for encrypting data. It is an important encryption algorithm in cryptography.

  • Advanced Encryption Standard (AES) Cipher
    SY-5

    Advanced Encryption Standard (AES) is a symmetric-key block cipher used for encrypting data. It is a widely used and secure encryption algorithm in cryptography.

  • Modes of Block Cipher Encryption
    SY-6

    Modes of Block Cipher Encryption include Electronic Code Book, Cipher Block Chaining, Cipher Feedback Mode, Output Feedback Mode, and Counter Mode. These modes determine how block ciphers are used in practice.

Key Topics

  • Number Theory
    AS-1

    Introduction to number theory concepts, including prime numbers, Fermat's theorem, Euler's theorem, primality testing, Miller-Rabin algorithm, extended Euclidean theorem, and discrete logarithms.

  • Public Key Cryptosystems
    AS-2

    Overview of public key cryptosystems, including their applications and uses.

  • Key Distribution
    AS-3

    Methods for distributing public and secret keys, including Diffie-Hellman key exchange and the risks of man-in-the-middle attacks.

  • RSA Algorithm
    AS-4

    In-depth explanation of the RSA algorithm, a widely used public key encryption technique.

  • Elgamal Cryptographic System
    AS-5

    Introduction to the Elgamal cryptographic system, a public key cryptosystem based on discrete logarithms.

Key Topics

  • Message Authentication
    CR-4.4

    Message authentication is the process of verifying the authenticity of a message. This topic covers message authentication functions and message authentication codes.

  • Hash Functions
    CR-4.5

    Hash functions are one-way encryption algorithms that take input data of any size and produce a fixed-size output. This topic covers properties and applications of hash functions.

  • Message Digests
    CR-4.6

    Message digests are the output of hash functions. This topic covers MD4 and MD5 message digest algorithms.

  • Secure Hash Algorithms
    CR-4.7

    Secure hash algorithms are a family of hash functions designed to be cryptographically secure. This topic covers SHA-1 and SHA-2 algorithms.

  • Digital Signatures
    CR-4.8

    Digital signatures are used to authenticate the source of a message. This topic covers direct digital signatures and arbitrated digital signatures.

  • Digital Signature Standard (DSS)
    CR-4.9

    The Digital Signature Standard (DSS) is a federal standard for digital signatures. This topic covers the DSS approach and digital signature algorithm.

  • RSA Digital Signatures
    CR-4.10

    RSA digital signatures use the RSA algorithm for digital signatures. This topic covers the RSA approach to digital signatures.

Key Topics

  • Introduction to Audience and Purpose
    AU-1

    An overview of the importance of understanding audience and purpose in technical writing, and how it sets the foundation for effective communication.

  • Meeting the Audience's Needs
    AU-2

    Understanding the audience's requirements, expectations, and preferences to tailor the content and ensure it meets their needs.

  • Planning Your Document's Purpose
    AU-3

    Defining the purpose of the document, including its goals, objectives, and key takeaways.

  • Defining Document Scope
    AU-4

    Determining the boundaries and limitations of the document to ensure it stays focused and relevant.

  • Selecting the Appropriate Medium
    AU-5

    Choosing the most suitable medium for the document, such as print, digital, or online, based on the audience and purpose.

  • Needham-Schroeder Scheme
    AU-6

    The Needham-Schroeder scheme is a protocol for secure communication that provides authentication and key exchange between two parties. It is a widely used protocol in secure communication systems.

  • Kerberos Protocol
    AU-7

    The Kerberos protocol is a secure authentication protocol that uses tickets and symmetric-key cryptography to provide secure authentication and communication between clients and servers.

Key Topics

  • Introduction to Matrices
    MA-1

    This topic introduces the concept of matrices, including their definition, notation, and basic operations. It lays the foundation for further study of matrices and their applications.

  • Types of Matrices
    MA-2

    This topic covers the different types of matrices, including square matrices, diagonal matrices, identity matrices, and zero matrices. It explains their properties and characteristics.

  • Equality of Matrices
    MA-3

    This topic defines and explains the concept of equality of matrices, including the conditions for two matrices to be equal and the rules for comparing matrices.

  • Algebra of Matrices
    MA-4

    This topic covers the basic algebraic operations of matrices, including addition, subtraction, multiplication, and scalar multiplication. It explains the rules and properties of these operations.

  • Determinants
    MA-5

    This topic introduces the concept of determinants, including their definition, calculation, and properties. It explains the importance of determinants in matrix theory and their applications.

Key Topics

  • Neurally Inspired Models of Information Processing
    NE-1

    This topic explores models of information processing inspired by the structure and function of the brain. It introduces the concept of neural networks and their application to information processing.

  • Single-Layer Networks and Boolean Functions
    NE-2

    This topic delves into the basics of single-layer neural networks and their relationship with Boolean functions. It covers the fundamentals of neural network architecture and its application to simple logical operations.

  • Multilayer Networks
    NE-3

    This topic builds upon the basics of single-layer networks and explores the architecture and functionality of multilayer neural networks. It discusses the advantages and limitations of multilayer networks in information processing.

  • Information Processing in Neural Networks
    NE-4

    This topic examines the process of information processing within neural networks. It covers how neural networks receive, process, and transmit information, and the implications for cognitive science.

  • Language Learning in Neural Networks
    NE-5

    This topic investigates the application of neural networks to language learning and processing. It explores how neural networks can be used to model language acquisition and understanding.

  • Neural Network Models of Children's Physical Reasoning
    NE-6

    This topic applies neural network models to the study of children's physical reasoning and cognitive development. It examines how neural networks can be used to understand and simulate children's problem-solving abilities.

  • Workstations in Distributed Systems
    NE-7

    This topic explores the role of workstations in distributed systems, including their configuration, management, and security.

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