SENIOR PROJECT 2025/2026

Taking Back
Cloud Privacy

CryptaCloud keeps your files private and still lets you search inside them — without trusting the cloud provider.

Abstract

The Problem: Cloud storage is convenient, but privacy becomes a concern when you must trust a provider with your files. Many services can store your data safely, but the provider may still be able to access it.

The Solution: We built a desktop app that protects your files before they leave your device, while still allowing you to search inside encrypted files.

The Outcome: The cloud acts like a dumb storage: it only stores random encrypted file names. Inside the app, you see the real file names and can search the content to quickly find the right file.

Interactive Experience

The Cloud Trust Challenge

Two common choices — and why CryptaCloud exists.

If you store files on the cloud, what are the two common options?

Privacy Risk

If the provider can read the files or manage access, they can access your data whenever they want.

How CryptaCloud fixes it
Files are protected on your device first, and the cloud only stores random encrypted names.

Privacy… but a tradeoff

Encrypting by yourself protects privacy, but it usually makes searching inside files very hard or impossible.

What CryptaCloud changes
It removes the tradeoff: you keep privacy and you can still search inside files inside the app.

Project Objectives

🔒

Zero-Trust

The cloud stores data but cannot understand it.

🔎

Private Search

Search happens in the app without exposing your query to the cloud.

🛡️

Tamper Detection

The app checks files before opening them and rejects anything suspicious.

💻

Usability

A simple desktop app that non-technical users can use easily.

Methodology

All sensitive operations happen on the user’s device first — then encrypted data is uploaded to the cloud.

  • 1

    User Device (Trusted)

    The app prepares files locally (protects them, verifies them, and manages everything before uploading).

  • 2

    Local Search Index (On Your Device)

    The app keeps a local index that helps you search file content privately — without sending your search to the cloud.

  • 3

    Cloud Storage (Untrusted)

    The cloud stores encrypted files and encrypted backups only — no keys, no logic, no searching.

Data Flow (Simple)
Your Device
Protect files Private search Verify before open
UPLOAD AFTER LOCAL PROCESSING
Cloud Storage
Stores random encrypted files only

Technologies Used

Python Desktop GUI App Local Database (SQLite) Cloud Storage Backend PDF / Word Text Reading Threading (Smooth UI)

Results

The system was tested end-to-end to confirm privacy, safe storage behavior, and private search inside the app.

  • Protected Upload: The cloud receives random encrypted file names (no real names).
  • Private Search: Search happens in the app using a local index — the cloud doesn’t see your query.
  • Verification: The app checks files before saving/opening them and blocks tampered content.
Activity Log (App Style)

[START] batch upload of 3 file(s)...

[INFO] (1/3) Processing: Senior_Report.pdf

[INFO] Encrypting: Senior_Report.pdf

[OK] Uploaded: f81d5d2a9c7b4b5b8c1a0c2c1a6f7e9a.enc

[OK] Indexed 534 tokens for Senior_Report.pdf (local only)

[INFO] Syncing search index to the cloud...

[OK] Search DB synced to cloud

[END] Batch upload complete. 3 of 3 files uploaded.

[INFO] Searching for: "nebula"

[OK] Matches found (inside the app)

Project Demonstration

ARABIC

Elevator Pitch

ENGLISH

Elevator Pitch

LIVE DEMO
SYSTEM

Full Walkthrough

Tip: If a video doesn't load, check if embedding is enabled for the YouTube video.

Conclusion

CryptaCloud follows a zero-trust idea: the cloud is only a storage space. The user keeps control using a desktop app that protects files before upload, and still allows private searching inside files inside the app.

Future Work

  • Multi-User Sharing
  • Expanded File Support (Excel/PPT)
  • Performance Optimization
  • Automated Backup & Recovery
  • Cross-Platform Support

About the Project & Team

This project is a Final Year Senior Project completed during Semester 1 of the Academic Year 2025/2026 at the College of Information Technology — University of Bahrain.
Team Member

Ali Abbas Yahya Majed

Network Engineer

Email: AliMajedNe@gmail.com

Team Member

Mohammad Hamzah Abdulmalek

Network Engineer

Email: mohamadmurad756@gmail.com

Team Member

Ebrahim Abdulmoamen Abdo

Network Engineer

Email: ebrahimabdulmoamen@gmail.com

Project Supervisor
Dr. Ebrahim Abdulrahman Janahi