Secure Software Design & Development
Week 1 – Project Setup & Preparation Report
Project Title: Secure File Sharing System using AES Encryption
Student: Hina Sehar
Program: BS Cyber Security
Week: 1
Instructor: Sir Haider Ali
1. Week 1 Overview
This week I completed all the essential preparations for starting my Secure File Sharing
System project.
My focus was mainly on environment setup, tool installation, OS isolation, and gathering
the required technical resources for secure development.
2. Tasks Completed in Week 1
2.1 Virtual Machine Setup (Security-Based Decision)
To make sure that my project work, tools, and encryption testing remain isolated from my
personal system:
I did NOT use my personal Windows OS
Instead, I installed Windows 10 inside a VMware Virtual Machine
The VM is placed on a portable external storage device
All project-related tools, files, sample data, and configurations remain fully isolated
and secure
Reason:
This approach ensures that the development environment stays clean, controllable, and
protected from system disturbances or accidental data exposure.
2.2 Development Environment Setup
Inside the Windows 10 VM, I installed:
✔ Python 3.10
✔ Visual Studio Code with extensions
✔ Required environment variables
✔ Git (for version control & backups later)
This VM-based environment will be used throughout the project.
2.3 Required Libraries Installed
Using pip, I installed:
pip install flask
pip install pycryptodome
These libraries are necessary for AES encryption and web-based file handling.
2.4 Project Folder Structure Created
I created the initial structure:
SecureFileShare/
├── [Link]
├── static/
├── templates/
└── encryption/
This structure will help keep all modules organized before coding starts next week.
2.5 Research and Study Work
During Week-1, I studied the following topics to prepare myself:
AES-256 encryption flow
Flask file upload handling
OWASP Secure Coding Guidelines
Best practices for storing keys & files safely
Isolation of development environment
This research will help me build a more secure solution from the beginning.
3. Challenges Faced
VM performance tuning (RAM allocation, CPU settings)
Python path configuration inside Windows VM
Selecting a secure AES block mode
All issues were resolved and the environment is now stable.
4. Plan for Week 2
Next week, I will start:
Implementing AES encryption/decryption module
Creating Flask upload + decrypt interface
Testing small files
Writing baseline secure code
5. Conclusion
Week-1 was focused on secure environment preparation, tool setup, VM installation, and
research work.
All foundational components are ready, and the project can begin smoothly from Week-2.