https://github.com/thanh-vt/ewallet-manager
https://github.com/thanh-vt/ewallet-manager
Last synced: 21 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/thanh-vt/ewallet-manager
- Owner: thanh-vt
- Created: 2025-05-09T03:53:59.000Z (28 days ago)
- Default Branch: main
- Last Pushed: 2025-05-13T11:45:57.000Z (24 days ago)
- Last Synced: 2025-05-13T12:42:34.378Z (24 days ago)
- Language: C++
- Size: 68.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Thành viên
1. Vũ Tất Thành - __K24DTCN638__
2. Nguyễn Quang Đạo -
3. Nguyễn Việt -
4. Nguyễn Viết Tùng - __K24DTCN633__# E-Wallet Management System
A console-based e-wallet management system with user authentication, 2FA support, and point transfer capabilities.
## Features
1. User Management
- Create user accounts with auto-generated passwords
- Enable/disable 2FA authentication
- Change passwords
- Admin user with special privileges2. Wallet Management
- Create and manage wallets
- Transfer points between wallets
- View transaction history
- View wallet balance3. Security
- Password hashing using SHA-256
- Two-factor authentication using TOTP
- Transaction rollback on failure
- Secure data persistence## Requirements
- C++17 compatible compiler
- CMake 3.31 or higher
- OpenSSL
- Boost (system and filesystem components)## Building
1. Clone the repository:
```bash
git clone
cd ewallet-manager
```2. Create a build directory and build the project:
```bash
mkdir build
cd build
cmake ..
cmake --build .
```## Usage
1. Run the executable:
```bash
./ewallet_manager
```2. Default admin credentials:
- Username: admin
- Password: admin1233. Follow the on-screen menu to:
- Create new users
- Manage wallets
- Transfer points
- View transaction history## Data Storage
- User data and wallet information are stored in `database.dat`
- All data is automatically saved when the program exits
- Data is loaded when the program starts## Security Notes
- Change the default admin password after first login
- Enable 2FA for additional security
- Keep your wallet ID secure
- Regularly check transaction history for unauthorized activities