This project implements a comprehensive system for detecting fraudulent accounts on the Ethereum blockchain using both supervised and unsupervised machine learning approaches. It analyzes transaction patterns, account behaviors, and network relationships to identify potential fraud with high accuracy.
- Transaction pattern analysis
- Account behavior profiling
- Network relationship mapping
- Hybrid ML approach (supervised + unsupervised)
- Real-time detection capabilities
- Performance analytics dashboard
- Programming Language: Python 3.8+
- ML Libraries:
- scikit-learn
- TensorFlow
- XGBoost
- Blockchain Integration:
- Web3.py
- Etherscan API
- Data Processing:
- Pandas
- NumPy
- Visualization:
- Matplotlib
- Seaborn
- Clone the repository
git clone https://github.com/sabare12/ethereum-fraud-detection.git
cd ethereum-fraud-detection
- Set up virtual environment
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
- Install dependencies
pip install -r requirements.txt
- Configure environment variables
cp .env.example .env
# Edit .env with your API keys and configurations
├── data/ # Data storage
├── models/ # Trained models
├── notebooks/ # Jupyter notebooks
├── src/ # Source code
├── tests/ # Unit tests
└── docs/ # Documentation
- Data Collection
python src/data/collect_data.py
- Preprocessing
python src/data/preprocess.py
- Training Models
python src/models/train.py
- Running Detection
python src/models/detect.py
- Accuracy: 85%+
- False Positive Rate: <5%
- Detection Speed: <2s per transaction
- Fork the repository
- Create a feature branch
- Commit changes
- Push to the branch
- Open a Pull Request
MIT License
Victor Oketch Sabare
SCT213-C002-0061/2021
Jomo Kenyatta University of Agriculture and Technology
- Professor Isaac Kega (Project Supervisor)
- JKUAT School of Computing and Information Technology
- Ethereum Developer Community
- Email: sabarevictor@gmail.com
- GitHub: https://github.com/sabare12