CryptoTrace
Traces unknown crypto wallets to the exchange that most likely holds them, with an explainable score.
What it is
CryptoTrace helps investigators attribute an unknown wallet to the exchange (VASP) most likely to hold it. It follows transactions across one to three hops, matches against a registry of known exchange addresses, scores each candidate with five explainable factors, classifies risk and generates a requisition dossier.
How it works
- Wallet addresses are validated and fetched from Etherscan and TronGrid.
- A bounded one-to-three-hop graph traversal collects counterparties.
- Candidates are matched to a registry of exchange addresses.
- A five-factor score explains why a candidate ranks where it does.
- A Sankey flow view, timeline replay and a dossier export present the result.
Engineering and proof
- About 22 tests across 9 files (address validators, attribution, graph, discovery, risk, Tron).
- Frontend deployed on Vercel; Docker Compose for the backend.
- A LIMITATIONS document is explicit that attribution is probabilistic, not legal proof.
My role
Built solo by Sai Charan for Smart India Hackathon 2026.
Built with
- Python
- FastAPI
- SQLAlchemy
- Next.js 14
- TypeScript
- Etherscan
- TronGrid
- Docker