A blockchain forensics tool for tracking and analyzing cryptocurrency transactions, specifically focused on tracing funds related to hacks and suspicious activities.
- Transaction flow tracking and visualization
- Pattern recognition for suspicious activities
- Real-time monitoring of addresses
- Telegram alerts for suspicious transactions
- Graph-based analysis using Neo4j
- Support for multiple blockchain networks
- Python 3.8+
- Docker
- Neo4j (runs in Docker)
- Telegram Bot Token (for alerts)
- Clone the repository:
git clone https://github.com/yourusername/ClockInvestigator.git
cd ClockInvestigator- Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate- Install the package in development mode:
pip install -e .- Start the Neo4j database:
docker run -d --name neo4j \
-p 7474:7474 -p 7687:7687 \
-v neo4j_data:/data \
-e NEO4J_AUTH=neo4j/ClockInvestigator2024! \
-e NEO4J_ACCEPT_LICENSE_AGREEMENT=eval \
-e NEO4J_apoc_export_file_enabled=true \
-e NEO4J_apoc_import_file_enabled=true \
-e NEO4J_apoc_import_file_use__neo4j__config=true \
-e NEO4J_PLUGINS='["apoc", "graph-data-science"]' \
neo4j:5.13.0-enterprise- Initialize the database schema:
./database/restore.sh- Create a
.envfile in the project root:
NEO4J_URI=bolt://localhost:7687
NEO4J_USER=neo4j
NEO4J_PASSWORD=ClockInvestigator2024!
TELEGRAM_BOT_TOKEN=your_telegram_bot_token- Replace
your_telegram_bot_tokenwith your actual Telegram bot token.
To create a backup of the current database state:
./database/backup.shBackups are stored in database/backups/ with timestamps.
To restore the database to its initial state:
./database/restore.shClockInvestigator/
├── src/ # Source code
│ ├── blockchain/ # Blockchain interaction modules
│ ├── analysis/ # Analysis and pattern recognition
│ ├── visualization/ # Graph visualization
│ └── alerts/ # Telegram alert system
├── database/ # Database management
│ ├── schemas/ # Neo4j schema definitions
│ ├── backups/ # Database backups
│ ├── backup.sh # Backup script
│ └── restore.sh # Restore script
├── tests/ # Test files
└── setup.py # Package configuration
- Access the Neo4j browser at
http://localhost:7474to view and query the graph database. - Use the Python API to:
- Track transactions
- Analyze patterns
- Set up monitoring
- Receive alerts
- Install development dependencies:
pip install -e ".[dev]"- Run tests:
pytest- Keep your
.envfile secure and never commit it to version control - Regularly update dependencies for security patches
- Monitor system logs for suspicious activities
- Backup your database regularly
MIT