Skip to content

Homnaadda/Ciphercraft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CipherCraft: A Learning Adventure in Data Encryption

Created by Homnaadda

Overview

CipherCraft is an educational web-based platform designed to showcase various encryption techniques and enhance understanding of data security and privacy. As cyber threats continue to rise, grasping the concept of encryption has become essential. This project serves as an interactive educational resource that demonstrates different encryption algorithms through hands-on learning experiences.

Project Description

The main goal of CipherCraft is to create an engaging, web-based platform that educates users about various encryption algorithms. By focusing on DES (Data Encryption Standard), AES (Advanced Encryption Standard), and RSA encryption techniques, CipherCraft aims to:

  • Enhance users' understanding of encryption and decryption processes
  • Highlight the distinct characteristics of each algorithm
  • Emphasize the critical importance of data security
  • Provide interactive demonstrations and simulations

Features

🔐 Encryption Algorithms Covered

  1. Data Encryption Standard (DES)

    • Historical context and significance
    • Key generation process
    • Encryption and decryption workflows
    • Feistel network structure
    • S-boxes and permutation tables
  2. Advanced Encryption Standard (AES)

    • Modern symmetric-key encryption
    • Key expansion process
    • SubBytes, ShiftRows, MixColumns transformations
    • Real-world applications (Wi-Fi, HTTPS, data storage)
  3. RSA Encryption

    • Public-key cryptosystem
    • Key generation with prime numbers
    • Mathematical foundations
    • Digital signatures and secure communication

🎯 Key Functions

  • User-Friendly Interface: Easy-to-navigate and intuitive design that enhances learning and exploration
  • Interactive Demonstrations: Step-by-step processes for encrypting and decrypting using DES, AES, and RSA algorithms
  • Educational Content: Detailed explanations of each algorithm, covering their history, applications, and importance in data security
  • Simulated Encryption Scenarios: Practical situations where users can implement encryption techniques to grasp their real-world uses
  • Process Logging: Detailed logs showing the internal workings of each algorithm during encryption/decryption

🛠️ Interactive Simulations

Each algorithm includes a dedicated simulation page where users can:

  • Input plaintext and encryption keys
  • Watch real-time encryption/decryption processes
  • View detailed process logs showing algorithm steps
  • Generate random keys for testing
  • Copy results for further analysis

Technology Stack

Backend

  • Python Flask: Web framework for routing and server-side logic
  • Gunicorn: WSGI HTTP Server for production deployment

Frontend

  • HTML5: Semantic markup structure
  • CSS3: Modern styling with custom properties and responsive design
  • JavaScript: Interactive functionality and algorithm implementations
  • Bootstrap 5: Responsive UI components and grid system
  • Font Awesome: Icon library for enhanced UI

Styling & Design

  • Custom CSS: Tailored design system with consistent color palette
  • Google Fonts: Nunito and Roboto Slab for typography
  • Responsive Design: Mobile-first approach with breakpoints
  • CSS Animations: Smooth transitions and hover effects

Project Structure

CipherCraft/
├── app.py                          # Main Flask application
├── requirements.txt                # Python dependencies
├── static/                         # Static assets
│   ├── css/                       # Stylesheets
│   │   ├── style.css              # Main stylesheet
│   │   ├── responsive.css         # Responsive design rules
│   │   └── font-awesome.min.css   # Icon fonts
│   ├── js/                        # JavaScript files
│   │   ├── custom.js              # Custom JavaScript
│   │   └── bootstrap.js           # Bootstrap components
│   ├── images/                    # Algorithm diagrams and illustrations
│   └── fonts/                     # Font files
├── templates/                      # HTML templates
│   ├── index.html                 # Homepage
│   ├── DES.html                   # DES algorithm page
│   ├── AES.html                   # AES algorithm page
│   ├── RSA.html                   # RSA algorithm page
│   └── Simulation/                # Interactive simulations
│       ├── DES_Simulation.html    # DES encryption demo
│       ├── AES_Simulation.html    # AES encryption demo
│       └── RSA_Simulation.html    # RSA encryption demo
└── Screenshots/                    # Project screenshots

Installation & Setup

Prerequisites

  • Python 3.7 or higher
  • pip (Python package installer)

Installation Steps

  1. Clone the repository

    git clone <repository-url>
    cd CipherCraft
  2. Install dependencies

    pip install -r requirements.txt
  3. Run the application

    python app.py
  4. Access the application Open your web browser and navigate to http://localhost:5000

Usage Guide

Navigation

  • Home: Project overview and introduction
  • DES: Learn about Data Encryption Standard
  • AES: Explore Advanced Encryption Standard
  • RSA: Understand RSA public-key cryptography
  • Simulation Dropdown: Access interactive demos for each algorithm

Using Simulations

  1. Navigate to any simulation page (DES, AES, or RSA)
  2. Enter your plaintext in the input field
  3. Generate or enter an encryption key
  4. Click "Encrypt" to see the encryption process
  5. Click "Decrypt" to reverse the process
  6. View the detailed process log to understand each step

Educational Value

CipherCraft provides comprehensive learning experiences through:

  • Visual Learning: Diagrams and step-by-step illustrations
  • Hands-on Practice: Interactive simulations with real-time feedback
  • Theoretical Foundation: Detailed explanations of mathematical concepts
  • Practical Applications: Real-world use cases and examples
  • Progressive Learning: From basic concepts to advanced implementations

Security Note

⚠️ Important: The simulations in this project are for educational purposes only and should not be used for actual encryption or security applications. The implementations are simplified demonstrations designed to illustrate cryptographic concepts rather than production-ready security tools.

Browser Compatibility

CipherCraft is compatible with modern web browsers including:

  • Chrome 80+
  • Firefox 75+
  • Safari 13+
  • Edge 80+

Contributing

This project was created as an educational resource. If you'd like to contribute improvements or additional features, please ensure that any changes maintain the educational focus and accessibility of the platform.

License

This project is created for educational purposes. Please respect the educational intent when using or modifying the code.

Acknowledgments

  • Encryption algorithm specifications from NIST and academic sources
  • Bootstrap team for the responsive framework
  • Font Awesome for the icon library
  • Google Fonts for typography resources

Contact

Created by Homnaadda

  • Student ID: 99220040642

CipherCraft - Making cryptography accessible through interactive learning

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages