Skip to content

Amey-Thakur/CRYPTOGRAPHY-AND-SYSTEM-SECURITY-AND-SYSTEM-SECURITY-LAB

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

112 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

University of Mumbai

Cryptography and System Security and System Security Laboratory

CSC604 & CSL604 · Semester VI · Computer Engineering

License: CC BY 4.0 University Institution Curated by

A comprehensive academic resource for Cryptography and System Security (CSS) and System Security Laboratory (SSL), covering classic encryption techniques, block ciphers, public key cryptography, system security, and lab experiments.


Overview  ·  Contents  ·  Reference Books  ·  Personal Preparation  ·  Assignments  ·  Quizzes  ·  Laboratory  ·  Mock Test  ·  Internal Assessment Test  ·  Semester Exam  ·  Question Papers  ·  Submission Report  ·  Syllabus  ·  Usage Guidelines  ·  License  ·  About  ·  Acknowledgments


Overview

Cryptography and System Security (CSC604) and System Security Laboratory (CSL604) are core subjects in the Third Year (Semester VI) of the Computer Engineering curriculum at the University of Mumbai. These courses provide foundational knowledge of secure communication, cryptographic algorithms, network security protocols, and techniques to protect systems from various threats.

Course Topics

The curriculum encompasses several key domains in Cryptography and System Security:

  • Introduction to Cryptography: Goals of security, security attacks, services, and mechanisms.
  • Classic Encryption Techniques: Substitution and Transposition ciphers (Caesar, Playfair, Hill, Vigenere).
  • Block Ciphers & Public Key Cryptography: DES, AES, RSA, Diffie-Hellman Key Exchange.
  • Hash Functions & Digital Signatures: MD5, SHA, HMAC, Digital Signature Standard (DSS).
  • System Security: Intruders, Malicious Software, Viruses, Firewalls, and Trusted Systems.
  • Network Security Protocols: SSL/TLS, IPSec, PGP, Kerberos.

Repository Purpose

This repository represents a curated collection of study materials, reference books, lab experiments, and personal preparation notes compiled during my academic journey. The primary motivation for creating and maintaining this archive is simple yet profound: to preserve knowledge for continuous learning and future reference.

As a computer engineer, understanding security principles is crucial for building robust and secure systems in an increasingly interconnected world. This repository serves as my intellectual reference point: a resource I can return to for relearning concepts, reviewing methodologies, and strengthening understanding when needed.

Why this repository exists:

  • Knowledge Preservation: To maintain organized access to comprehensive study materials beyond the classroom.
  • Continuous Learning: To support lifelong learning by enabling easy revisitation of fundamental security concepts.
  • Academic Documentation: To authentically document my learning journey through Cryptography and System Security and System Security Laboratory.
  • Community Contribution: To share these resources with students and learners who may benefit from them.

Note

All materials in this repository were created, compiled, and organized by me throughout my undergraduate program (2018-2022) as part of my coursework, laboratory assignments, and project implementations.


Repository Contents

Reference Books

This collection includes comprehensive reference materials covering all major topics:

# Resource Focus Area
1 CSS Techmax Complete syllabus coverage
2 Cryptography and Network Security Principles and Practice (Stallings) Standard Textbook (Stallings)
3 Cryptography and Network Security (Forouzan) Standard Textbook (Forouzan)
4 CSS Easy Solutions Solved questions and exam-oriented summaries
5 CSS - Easy Solutions Additional solved questions
6 CSS Question Bank Practice questions and important topics
7 CSS - IMCQ Important MCQs for entrance and exams
8 CSS VIVA Questions Frequently asked viva questions
9 CSS Viva Viva preparation guide
10 Cyber Security Interview Questions & Answers Interview preparation
11 BH Plan Study planning and strategy

Personal Preparation

Study materials and planning resources for effective exam preparation:

# Resource Description
1 Blueprint CSS exam blueprint and marking scheme
2 Semester 6 Timetable Academic schedule for Semester VI
3 Computer Semester 6 Timetable Detailed computer engineering timetable

Assignments

Academic assignments for comprehensive learning and practice:

# Assignment Description Date Marks
1 Assignment 1 Security Goals, Substitution & Transposition Ciphers, Chinese Remainder Theorem, Euclid & Fermat/Euler Algorithms, Diffie-Hellman, RSA 9/10
2 Assignment 2 Hashing (MD5, SHA, HMAC), X.509, Kerberos, DoS/DDoS Attacks, SSL, IPSec, PGP, IDS, Buffer Overflow, SQL Injection 9/10
3 Assignment 3 Beyond Syllabus: Internet Key Exchange (IKE), Biometric Techniques, Zero Knowledge Protocol February 23, 2021

Topics Covered: Modular Arithmetic · Euclidean Algorithm · Fermat's Little Theorem · Euler's Theorem · Chinese Remainder Theorem · Primitive Roots · Discrete Logarithms · RSA Algorithm · Diffie-Hellman Key Exchange · Hash Functions (MD5, SHA) · HMAC · Digital Signatures · X.509 Certificates · Kerberos · Network Attacks (DoS, DDoS, SQL Injection, Buffer Overflow) · Security Protocols (SSL, IPSec, PGP) · Biometrics · Zero Knowledge Protocol


Quizzes

CSS-specific quizzes conducted during the course:

# Quiz Topics Marks
1 Quiz 1 Introduction to Cryptography and Classical Encryption 10/10
2 Quiz 2 Block Ciphers and Data Encryption Standard (DES) 10/10
3 Quiz 3 Advanced Encryption Standard (AES) and Public Key Cryptography 10/10
4 Quiz 4 RSA Algorithm and Key Management 10/10
5 Quiz 5 Message Authentication and Hash Functions 10/10
6 Quiz 6 System Security and Network Security 10/10

System Security Laboratory

The laboratory component (CSL604) focuses on hands-on implementation of cryptographic algorithms and security protocols including substitution/transposition ciphers, RSA, and hashing algorithms.

Total Experiments Status Language

Tip

Lab Insight: This laboratory curriculum progresses from implementing core cryptographic primitives (Substitution, RSA, Hashing) to practical network security operations (Reconnaissance, Sniffing, Spoofing). Mastering the underlying algorithms is just as critical as understanding how to deploy and defend against network-based attacks.

# Experiment Date Marks Report
1 Design and Implementation of a product cipher using Substitution and Transposition ciphers January 29, 2021 9/10 View
2 Implementation and analysis of RSA cryptosystem and Digital signature scheme using RSA/El Gamal February 11, 2021 9/10 View
3 For varying message sizes, test the integrity of the message using MD-5, SHA-1, and analyze the performance of the two protocols February 18, 2021 9/10 View
4 Study the use of network reconnaissance tools like WHOIS, dig, traceroute, nslookup to gather information about networks March 09, 2021 9/10 View
5 Design a network and implement packet sniffing on telnet traffic using Wireshark March 30, 2021 9/10 View
6 Implement ARP spoofing using Ettercap April 20, 2021 9/10 View
7 Download and install Nmap. Use it with different options to scan open ports, perform OS fingerprinting, do a ping scan etc April 04, 2021 9/10 View
8 Perform SQL injection on a vulnerable website April 20, 2021 9/10 View
9 Simulate DOS attack using hping, hping3 and other tools April 20, 2021 9/10 View
10 Explore the GPGwin tool and implement email security April 20, 2021 8/10 View

Program Details

Experiment 1: Design and Implementation of a Product Cipher (3 Programs)
Program Category Description Code
Product_Cipher.py Product Cipher Implementation of combined Substitution and Transposition cipher View
Substitution_Cipher.py Substitution Implementation of Substitution cipher logic View
Transposition_Cipher.py Transposition Implementation of Transposition cipher logic View
Experiment 2: RSA Cryptosystem & Digital Signature (2 Programs)
Program Category Description Code
RSA.py RSA Algorithm Standard RSA encryption and decryption implementation View
RSA_Math.py RSA Math Mathematical foundational operations for RSA View
Experiment 3: Message Integrity using MD5 & SHA-1 (4 Programs)
Program Category Description Code
Available_Algorithms.py Utility Lists all available hashing algorithms in standard library View
MD5.py MD5 Hashing Implementation and analysis of MD5 Hashing View
SHA1.py SHA-1 Hashing Implementation and analysis of SHA-1 Hashing View
MD5_SHA1.py Comparison Comparison script for MD5 and SHA-1 output size and format View
Experiment 4: Network Reconnaissance Tools (1 Program)
Program Category Description Code
Network_Reconnaissance.py Reconnaissance Automation of standard network recon tools (whois, dig, etc.) View
Experiment 5: Packet Sniffing (Telnet) (1 Program)
Program Category Description Code
Packet_Sniffer.py Sniffing Packet sniffing implementation using scapy View
Experiment 6: ARP Spoofing (1 Program)
Program Category Description Code
ARP_Spoofer.py Spoofing ARP Spoofing implementation using scapy View
Experiment 7: Nmap Scanning & OS Fingerprinting (1 Program)
Program Category Description Code
Nmap_Scanner.py Scanning Automation of Nmap scans (Intense, OS, etc.) View
Experiment 8: SQL Injection (1 Program)
Program Category Description Code
SQL_Injection_Tester.py Injection Automation of sqlmap utilization View
Experiment 9: Denial-of-Service (DoS) (1 Program)
Program Category Description Code
DoS_Attack_Simulator.py Attack Automation of DoS simulation using hping3 View
Experiment 10: Email Security (PGP) (1 Program)
Program Category Description Code
PGP_Email_Security.py Encryption Automation of PGP operations via GPG View

Laboratory Documentation

# Resource Description
1 Lab README Detailed navigation guide with program descriptions

Mock Test

Technical mock test conducted for placement preparation:

# Resource Description
1 Technical Mock Test Campus Corners Mock Test for Terna Engineering College

Internal Assessment Test

Internal assessment evaluations conducted during the course:

IAT - 1

# Resource Description Marks
1 Question Paper CSS Internal Assessment Test 1 Question Paper
2 Answer Sheet CSS Internal Assessment Test 1 Answer Sheet 18/20
3 MCQ CSS Internal Assessment Test 1 MCQ

IAT - 2

# Resource Description Marks
1 Answer Sheet CSS Internal Assessment Test 2 Answer Sheet

Additional Resources:

# Resource Description
1 Answer Sheet Template IAT Answer Sheet Template

Semester Exam

Important

COVID-19 Impact: This coursework was completed during the COVID-19 pandemic. All examinations and assessments were conducted in a digital format.

Final semester examination submission:

# Resource Description Date
1 MCQ CSS Semester Exam MCQ Paper June 9, 2021
2 Question 2 CSS Semester Exam Answer Sheet (Q2) June 9, 2021
3 Question 3 CSS Semester Exam Answer Sheet (Q3) June 9, 2021

Additional Resources:

# Resource Description
1 Answer Sheet Template Semester Exam Answer Sheet Template
2 Questions Document CSS Exam Questions
3 Reference Document Answer Sheet Exam Details Template
4 CSS Answersheet Template Answer Sheet Layout

Question Papers

University of Mumbai examination papers from 2013-2019:

# Exam Session Syllabus Resource
1 May 2019 CBCGS View
2 December 2019 CBCGS View
3 May 2018 CBCGS View
4 December 2018 CBCGS View
5 May 2017 CBCGS View
6 December 2017 CBCGS View
7 May 2016 CBCGS View
8 December 2016 CBCGS View
9 May 2015 CBGS View
10 December 2015 CBGS View
11 May 2014 CBGS View
12 December 2014 CBGS View
13 May 2013 CBGS View

Submission Completion Report

Course completion documentation:

# Document Description
1 Submission Report Final coursework submission report

Syllabus

Official CBCGS Syllabus
Complete Third Year Computer Engineering syllabus document from the University of Mumbai, including detailed course outcomes, assessment criteria, and module specifications for Cryptography and System Security and System Security Laboratory.

Important

Always verify the latest syllabus details with the official University of Mumbai website, as curriculum updates may occur after this repository's archival date.


Usage Guidelines

This repository is openly shared to support learning and knowledge exchange across the academic community.

For Students
Use these resources as reference materials for understanding cryptographic algorithms, system security concepts, and preparing for examinations. All content is organized for self-paced learning.

For Educators
These materials may serve as curriculum references, lab examples, or supplementary teaching resources. Attribution is appreciated when utilizing content.

For Researchers
The documentation and organization may provide insights into academic resource curation and educational content structuring.


License

This repository and all linked academic content are made available under the Creative Commons Attribution 4.0 International License (CC BY 4.0). See the LICENSE file for complete terms.

Note

Summary: You are free to share and adapt this content for any purpose, even commercially, as long as you provide appropriate attribution to the original author.


About This Repository

Created & Maintained by: Amey Thakur
Academic Journey: Bachelor of Engineering in Computer Engineering (2018-2022)
Institution: Terna Engineering College, Navi Mumbai
University: University of Mumbai

This repository represents a comprehensive collection of study materials, reference books, assignments, and personal preparation notes curated during my academic journey. All content has been carefully organized and documented to serve as a valuable resource for students pursuing Cryptography and System Security & System Security Laboratory.

Connect: GitHub  ·  LinkedIn  ·  ORCID

Acknowledgments

Grateful acknowledgment to the faculty members of the Department of Computer Engineering at Terna Engineering College for their guidance and instruction in Cryptography and System Security. Their clear teaching and continued support helped develop a strong understanding of secure communication and system protection.

Special thanks to the mentors and peers whose encouragement, discussions, and support contributed meaningfully to this learning experience.



Computer Engineering (B.E.) - University of Mumbai

Semester-wise curriculum, laboratories, projects, and academic notes.

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages