cover photo

COURSEWORK

Keshava's CL-CY-001 course work. Lv 2

Keshava Karthik C NAUTHORACTIVE
This Report is flagged by a Coordinator and it probably requires some changes to be approved.

Level 2 Report

29 / 10 / 2024


Task 1: Basic Chat Application Using Node.js and Socket.io

A simple real-time chat app using Node.js and Socket.io allows multiple users to send messages simultaneously. Each user is assigned a unique ID, and messages are broadcast in real-time to all participants.

  • Node.js: A JavaScript runtime built on Chrome's V8 engine, known for its event-driven, non-blocking I/O model that supports high performance.
  • Socket.io: Facilitates real-time, bi-directional communication, adding features like automatic reconnection and cross-browser compatibility, making it ideal for group communication.
  • Hosting: The client side uses the Live Server extension, while the server side is run in development mode, offering hot reloading and debugging.
  • Functionality: Users are assigned unique IDs, and their messages are broadcast in real time, creating an interactive chat experience.

Screenshot of chat app Screenshot of chat app messages Server side output


Task 2: Introduction to Git Bash and GitHub

  • Git Bash: A Unix-like command-line tool for Windows, providing an environment to use Git commands and Unix tools. It simplifies scripting and Git operations, making version control easier for developers accustomed to Linux systems.
  • Common Commands: git init, git clone , git add , git commit -m "", and git push.
  • GitHub: A web-based platform for hosting repositories. It supports collaboration, version control, issue tracking, code reviews, and branching/merging to manage code efficiently.
  • Importance: Essential for collaborative projects, GitHub allows remote access, version history, and simplifies team contributions.

Screenshot of Git Bash in use


Task 3: Understanding the OSI Model

The OSI Model standardizes network communication into seven layers: Application, Presentation, Session, Transport, Network, Data Link, and Physical.

  • Purpose: Simplifies networking concepts, aids in troubleshooting, and ensures interoperability between devices.
  • Key Layers:
    • Application: Interfaces with software, handling user services (HTTP, FTP).
    • Transport: Ensures reliable data transfer (TCP, UDP).
    • Network: Manages routing and logical addressing (IP).
    • Physical: Handles the transmission of raw data (cables, hubs).
  • Importance: Though the TCP/IP model is more common, the OSI Model is fundamental in understanding network protocols and troubleshooting.

OSI Model Diagram


Task 4: Kali Linux and SSH

  • Kali Linux: A Debian-based OS for penetration testing, preloaded with tools like Nmap and Wireshark for cybersecurity tasks. It supports extensive hardware, is open-source, and is customizable for different needs.
  • SSH (Secure Shell): A secure protocol for remote access and data transfer, offering encryption, secure tunneling, and key-based authentication. It’s critical for safely managing remote servers.
  • Nmap: A versatile tool for network scanning, detecting open ports, operating systems, and services. Essential for network audits and security assessments.
  • Use Case: Kali and SSH are key for ethical hacking, with SSH facilitating secure connections and Kali providing a rich testing environment.

Screenshot of Kali Linux in use


Task 5: IP Addressing and Protocols

  • IP Addressing: Uniquely identifies devices on a network. IPv4 (32-bit) is widely used, while IPv6 (128-bit) addresses the growing need for IP addresses.
  • TCP/IP Model: The backbone of internet communication, split into four layers: Link, Internet, Transport, and Application. TCP manages reliable data transfer, while IP handles addressing and routing.
  • Web Scraping: Tools like Beautiful Soup in Python simplify data extraction from HTML/XML files. It’s powerful, easy to use, and integrates seamlessly with requests for efficient scraping.

IP Addressing and Web Scraping


Task 6: Encryption Techniques

  • Encryption: Protects data by converting it into an unreadable format.
  • Symmetric Encryption: Uses the same key for encryption and decryption. AES is secure and fast, while DES is outdated and vulnerable.
  • Asymmetric Encryption: Utilizes a key pair (public and private) for secure communication, exemplified by RSA. It’s essential for data transmission and digital signatures.
  • Hashing: Generates fixed-size outputs from variable-length input data. SHA-256 is reliable, whereas MD5 is outdated. Hashing is crucial for data integrity and secure password storage.

Encryption Techniques


Task 7: Databases

  • Databases: Organize and manage structured data efficiently. MySQL is a popular open-source relational database that offers high performance, security, and cross-platform support.
  • CRUD Operations: The backbone of database management:
    • Create: Add new data.
    • Read: Retrieve data.
    • Update: Modify existing records.
    • Delete: Remove records.

These operations enable effective data management and are fundamental in software applications.

UVCE,
K. R Circle,
Bengaluru 01