The CipherCash Express is a Python-based web application designed for secure fund transfers between users. It incorporates authentication, encryption, and consistency checks to ensure the security and integrity of transactions.
- [Installation]
- [Usage]
- [File Structure]
- [Dependencies]
- [Configuration]
- [Authentication]
- [Encryption]
- [Consistency Checks]
- [Database]
- [Verification]
- [Web Interface]
- Install dependencies: pip install -r requirements.txt
- Run the application: python main.py
- Access the application in a web browser at http://localhost:5000
CipherCash Express ├── accounts.csv ├── auth.py ├── consistency_checks.py ├── database.py ├── encryption.py ├── main.py ├── readme.md ├── requirements.txt ├── templates │ ├── index.html │ ├── transfer_amount.html │ └── transfer_form.html ├── transactions.csv ├── utils.py └── verification.py
- Flask
- Crypto (pycryptodome)
Install dependencies using: pip install -r requirements.txt
- Update configurations in the respective files if needed.
- The auth.py module handles user authentication using username, account number, phone number, and password.
- User authentication is done through the Flask web interface (main.py).
- The password is same as phone number.
- Encryption of sensitive data is implemented in the encryption.py module using the DES algorithm.
- Keys are generated dynamically for each transaction.
- Consistency checks are performed in the consistency_checks.py module.
- Checks include verifying unique transaction IDs, different sender and recipient accounts, and sufficient funds.
- The database.py module manages user accounts and transactions.
- It loads and saves data to CSV files (accounts.csv and transactions.csv).
- The verification.py module is responsible for verifying transfer requests.
- It checks the validity of the sender and recipient accounts, transaction amount, and other details.
- The web interface is implemented using Flask in main.py.
- HTML templates are stored in the templates directory.