This is a project for MATH319 course. Full information is in this pdf file. Our project idea to make a secure photo gallery application using python. Users are able to store their images securly and retrieve them.
The application successfully meets all project constraints. We have documented our process in a report and presented our work, and we got full marks for the project.
- User Authentication: Users can register and log in to securely manage their photos.
- Photo Upload: Users can upload images that are automatically encrypted before storage.
- AES Encryption: Images are encrypted using the AES cryptosystem to ensure data privacy.
- Decryption for Viewing: Users can view their images, which are decrypted on-the-fly when accessed.
- User Interface: A simple and intuitive web interface for user interactions.
- Python
- Django
- Cryptography (for AES encryption)
- HTML/CSS (for the frontend)
Through the development of this project, we gained practical experience in:
- Implementing AES encryption and decryption in Python.
- Utilizing Django for web application development.
- Understanding user authentication and session management.
- Managing file uploads and handling binary data securely.
- Designing a user-friendly interface for web applications.
Ready to explore the project? Follow this guide to clone and run the application on your own machine!
- Python: Ensure you have Python installed (version 3.6 or higher).
- pip: The package installer for Python should be included with your Python installation.
-
Clone the Project Repository: Begin by cloning the project to your local machine:
git clone https://github.com/CuzImAzizx/Secure-Photo-Gallery-Application/ cd Secure-Photo-Gallery-Application
-
Install the Dependencies: Use pip to install the required packages:
pip install -r requirements.txt
-
Run Database Migrations: Set up the database by applying migrations:
python manage.py migrate
-
Run the Development Server: Start the Django development server to access the application:
python manage.py runserver
-
Access the Application: Open your web browser and navigate to
http://127.0.0.1:8000/
to start using the app.