OPERATING SYSTEMS COURSE PROJECT

File Encryption &
Decryption Tool

A C-based implementation demonstrating OS concepts with POSIX system calls

D

Dally

Developer

A

Amathziah

Developer

U

Udita

Developer

TEAM ROOT

Why File Encryption?

Understanding the critical need for data protection in modern computing

🏢

Enterprise

Protecting sensitive employee records & financial data.

☁️

Cloud

Zero-knowledge security against provider snooping.

📱

Device

Safeguard files on laptops & drives against theft.

🕵️

Privacy

Keeping personal chats & photos safe from prying eyes.

🔒

The Architecture of Security

A multi-layered approach to file protection

🎨 Interactive TUI

User-friendly ncurses menu for intuitive file selection.

🔐 Poly-Algorithm

Support for both Caesar and bitwise XOR encryption.

📁 Universal I/O

Binary-safe handling for Docs, Images, and PDFs.

⚡ Streamlined CLI

Fast, scriptable commands for automation workflows.

Live Encryption Playground

Type below to see encryption in action

PLAINTEXT

CIPHERTEXT

* Bidirectional: Type in either box!

Caesar Cipher Visualization

Interactive wheel demonstrating the modular shift character mapping.

Shift: 0
Map: A → A

Live XOR Cipher Demo

Interactive bitwise operation. Click the bits to toggle them.

INPUT BYTE
⊕ XOR
KEY BYTE (11001100)
= EQUALS

Anatomy of a System Operation

The Journey from User Input to Disk Persistence

🚪

Layer 1: The Gateway (System Calls)

Crossing the User/Kernel boundary using read() and write(). The OS takes control to perform privileged hardware operations.

📇

Layer 2: The Tracker (File Descriptors)

Managing resource handles. Every file is an entry in the Process Open File Table, abstracted as a simple integer (fd).

🌊

Layer 3: The Flow (Buffer Management)

Synchronizing disk speed with CPU logic. Data flows through 4096-byte memory pools to balance performance and reliability.

Engineering Highlights

Key Design Decisions & Optimizations

100%
Data Integrity

Binary-Safe I/O ensures images & PDFs never get corrupted.

100x
Faster I/O

4KB Buffer implementation reduced syscalls overhead drastically.

2-in-1
Hybrid Interface

Seamlessly switch between Interactive TUI and Scriptable CLI.

What's Next: Phase 2

Architecting a High-Performance Secure File Service

🌐 Clients

Remote Access

TCP / IP

Secure Sockets

👻 Daemon Service

Multi-threaded Worker Pool

AES-NI

Hardware Acceleration

💾 Storage

Persistent & Encrypted

The Vision: An "Encrypted Vault"

📤

1. The Drop

User A uploads a file. It is immediately encrypted by the daemon before hitting the disk.

🏦

2. The Vault

The system stores the locked file. It has zero knowledge of the contents.

🔐

3. The Access

User B downloads the blob, but can only open it if they possess the correct key.

* Moving from a local CLI tool to a scalable enterprise-grade system service.

Thank You

Questions & Discussion

💻 GitHub Repository

github.com/astro-dally/OS_mini_project.git