Alright, as of today I declare the pool software developed by LucasJones and I in a tested, stable, and working state:
https://github.com/zone117x/node-cryptonote-poolThe three important features of a pool were all officially working about two days ago: 1) Share distribution and management , 2) Block solving, and 3) Paying out miners.
And as of today several pool ops running our software have confirmed it is working.
On top of building the basic pool that the bounty calls for: we have implemented many other extra, important pool features which are listed here:
https://github.com/zone117x/node-cryptonote-pool#featuresI'll quote the features here as well:
- IP banning to prevent low-diff share attacks
- Socket flooding detection
- Payment processing (with splintered transactions to deal with max transaction size)
- Detailed logging
- Ability to configure multiple ports - each with their own difficulty
- Variable difficulty / share limiter
- Share trust algorithm to reduce share validation hashing CPU load
- Clustering for vertical scaling
- Modular components for horizontal scaling (pool server, database, stats/API, payment processing, front-end)
- Live stats API (using CORS with AJAX and HTML5 EventSource)
- Currency network/block difficulty
- Current block height
- Network hashrate
- Pool hashrate
- Each miners' individual stats (hashrate, shares submitted, total paid, etc)
- Blocks found (pending, confirmed, and orphaned)
- An easily extendable, responsive, light-weight front-end using API to display data
- Worker login validation (make sure miners are using proper wallet addresses for mining)
The github readme has fully detailed instructions on pool usage as well as other useful instructions/information.
LucasJones has also implemented Cryptonight mining into CPUMiner (
https://github.com/LucasJones/cpuminer-multi) which is another huge contribution to the community as reliance on simpleminer is a bad position to be in.
I have also built a noob-friendly Windows app to help Windows user's start mining by simply downloading and clicking "start". The pool front-end links to it on the "getting started" page, and pool ops can easily configure the app to automatically mine on their pool once downloaded and ran. Here it is on github:
https://github.com/zone117x/cryptonote-easy-minerLucasJones and I claim first working and verified pool server - along with many additional tools and features along with it. The pool server and other tools are also still in development as we believe in this community & technology, and would like to continue improving these tools to help facilitate the adoption of this technology.