The founders of the project wanted to apply their hardware production experience in a new field. They came to us with the request to develop a mining tool that would accommodate their crypto production as well as their partners' hardware.
Developing a mining pool presents very common challenges - the platform has to be safe, fast, and functional. As the pool will grow and accommodate more users, Sigmapool should be able to continue working impeccably.
The infrastructure of the pool is based on the Kubernetes cluster for comfortable service management. All external connections are processed by CloudFlare so the service is protected from DDOS‑attacks.
We chose Node.js + Koa combination for web application and integrated it with the MongoDB - an independent database for backup copies of essential data. The additional database takes the workload from the main base in PostgreSQL which is now used only for mining data.
We implemented Coin Daemon technology for transaction processing. The pool has an active backup instance - the service resets to the previously saved version in case of an emergency.
Comfortable maintenance due to auto-deployment of repository's application - the service downloads the necessary components automatically, saving the team's time and resources.
We took pointers from the biggest and most popular mining pools in the industry - Antpool, BTC.com and others. The first priority was to deliver the essential functionality: remembering hashing of all pool members, controlling computing power, recording each member's activities, and assigning reward in an honest and transparent way.
When we were working on Sigmapool, we had a list of must-follow criteria that we based our product requirements on throughout the entire project.
The high number of connected servers assure constant availability: a technical issue on one server doesn't influence the performance of the mining pool.
If the platform experiences a technical issue, it's automatically transferred to the reserve address. As soon as the service is back, the data returns to the main location.
The load is balanced with Nginx reverse proxy.
SSH Key authentication, HTTPS for user data safety.
Firewalls to block any unnecessary connections (restrict access).
File Auditing and Intrusion Detection System.
All critically important services work via whitelists and are isolated in a private network. The structure of each coin is also isolated - tampering with one coin won't lead to damaging others.
Two-factor authentication, CloudFlare hides real IP addresses, and all actions are confirmed via email.
We built-in notification system that notifies the system about increased server workloads - so that the platform can react in time and maximize its processing capacity.
Centralized auto-deployment of the repository code allows fast functionality release and management.
Team has access to admin panel for keeping track of platform's functionality and supporting users.
Merged mining allows getting bonuses up to 106% - users can mine several Aux currencies simultaneously (Vertcoin, Dogecoin, Myriadcoin, Namecoin, and others).
All users can participate in the referral system and receive rewards for attracting new users.
MinerTools: the tool enables centralized management of the group of miners. Miners can switch between their sub-accounts and pools. Miner Tools simplify communication and collaboration on the platform.
Cloud Mining: all data on mined resources and activity is re-saved to the Cloud storage.
Wallet: miners can transfer cryptocurrencies to a personal multi-wallet. An encrypted wallet stores every coin, mined in the pool, and can be accessed on the web page and in the mobile app.
All users get precise forecasts and reports on their previous activities, that can be exported in XLS and CSV.
Mining can be automated via SigmaPool's custom MinerTools.
We implemented connected authentication: users only have to log in once to be able to access all Sigmapool services - Cloud mining, pool, Sigmaminer, wallet.