This project implements a basic E-Cheque System using Django, Python, and cryptographic signatures.
It allows users to:
- π Issue e-cheques
- π View a blockchain of issued cheques
- β Verify the validity of cheques
The system utilizes RSA encryption for signing and verification.
- βοΈ Issue E-Cheques
- π§± Blockchain of Cheques
- π΅οΈ Verification System
- βοΈ Django Admin Interface
- Python
- Django
- PyCryptodome
- SQLite
# Create and activate a virtual environment
python -m venv venv
# On Linux/macOS:
source venv/bin/activate
# On Windows:
venv\Scripts\activate
# Install required packages
pip install -r requirements.txt# requirements.txt
Django
pycryptodome# Navigate to the keys directory
cd keys
# Run key generation script
python generate_keys.py# This creates:
# - private.pem (keep this secure)
# - public.pem (used for verifying signatures)# Run migrations
python manage.py makemigrations cheques
python manage.py migrate# Start development server
python manage.py runserver# Access URLs:
# Admin Panel: http://127.0.0.1:8000/admin/
# Home Page: http://127.0.0.1:8000/cheques/# Create a Django superuser
python manage.py createsuperuser1. Go to: http://127.0.0.1:8000/cheques/create_cheque/
2. Fill in:
- Payee Name
- Amount
- Date
3. Submit to generate and sign a cheque.- Go to: http://127.0.0.1:8000/cheques/blockchain/
- View all cheques and block metadata in the chain.1. Go to: http://127.0.0.1:8000/cheques/verify_cheque_form/
2. Fill in:
- Payee
- Amount
- Date
- Signature
3. Copy the signature from the Admin Panel if needed.
4. Submit to validate the cheque.Homepage of the E-Cheque System
Blockchain listing all issued cheques
Form to verify cheque authenticity
# Set up virtual environment
python -m venv venv
# Activate it:
source venv/bin/activate # Linux/macOS
venv\Scripts\activate # Windows
# Install dependencies
pip install -r requirements.txt
# Run migrations
python manage.py migrate
# Collect static files (only if DEBUG=False)
python manage.py collectstatic
# Start server
python manage.py runserverCreated by [Satyam pote]
Built using Django, Python & Cryptography
Licensed under the MIT License