Skip to content

Comparison and analysis of stratum mining jobs across different pools to give insight and transparency.

License

Notifications You must be signed in to change notification settings

TrustlessMiner/StratumScope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

StratumScope

This is a monitoring and comparison tool for Stratum job broadcasts from multiple Bitcoin mining pools. From this miners can detect job inconsistencies in real-time.

Purpose

Mining pools should relay accurate and timely block templates to miners. Discrepancies in job announcements could signal non-transparent behavior. The discrepancies could theoritically be due to latency, censorship, or manipulation.

Key Insight: Comparing prevhash values across the indepedent monitors can allow instant detection of wrong chains.

Why This Matters

Miners make huge investments into hardware and energy but barely have sufficient real-time visibility into whether the work they are receiving is consistent or valid. They rely on pool-provided block templates, but have little insight into their accuracy across the network. This tool is an effort to assist:

  • Solo miners and farms to see if they are not receiving stale data and that they are at par with consensus chain.
  • Developers and researchers to identify systemic issues in job distribution.
  • General mining enthusiasts and advocates to gain a tool to audit pool behavior transparently.

Quick Setup (Run Locally)

Follow these simple steps to run locally:

1. Clone the repository

git clone git@github.com:TrustlessMiner/StratumScope.git
cd StratumScope

2. Create a virtual environment

python3 -m venv venv
source venv/bin/activate

3. Install dependencies

pip install -r requirements.txt

pip install -r requirements.txt

4. Run backend server

python run.py

or
python app.py

or python3 in some cases

5. Example dashboard

I have provided an example dashboard which you can access at:

http://localhost:8000

Please feel free to construct a Frontend that caters to your needs.

Contributions

Issue discussions and pull requests are welcome! If you need to add a feature, extend pool support or improve performance please do so!

To add a custom monitor or source, edit config/sources.json i.e:

{
  "name": "Custom Monitor",
  "url": "added monitor url",
  "type": "custom",
  "mode": "ws"
}

Remember

Always verify critical alerts through various sources before you take action on your own mining setup.

About

Comparison and analysis of stratum mining jobs across different pools to give insight and transparency.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published