When delegating your stake to a pool there is a certain amount of trust needed: a malicious pool could keep your profits or could not pay you the amount you deserve. For a novice this is impossible to notice.
Additionally, when staking, a fee of 5% (estimated pool fee) seems small but when owning larger amounts of NIM the fees will be a substantial amount of money.
Due to their simplicity, pools tend to grow and accumulate a large share of the market (see PoW Pools in 1.0). In terms of stability and decentralization this poses another problem.
The goal of this project is to solve these problems by enabling non-technical people to run a validator for themselves so they do not have to rely on a pool. Basically, the idea is to offer “Validators as a Service”.
Our proposal is to offer a service that requires very low trust for both parties. We will never be in control of the user’s money or even the money that is earned while staking (in contrast to a staking pool).
Instead of taking a cut of the rewards we plan to take a fixed fee for operating the validator nodes. This means for the user that our service is financially beneficial for the user once an amount of ~$35k is staked (in comparison to the average pool fees; based on $10 Validator, 7% Reward, 5% Pool Fee).
Having more independent validators, rather than big pools, will also help with decentralization and secure the network.
Finally, another positive side effect of our proposal is that it complies with German regulations as we are able to operate it without a crypto storage license.
-
Customer orders a validator for a fixed subscription fee
- The customer gets informed about the prices but will only be charged once everything is set up. When payment is complete, we fire up the validator as this is the main operating cost.
- (Explore HTLC as Postpaid alternative?)
-
Validator keys get generated in the browser (optionally external)
- Customer stores keys of validator wallet (this is where the rewards will be credited)
- Validator signing keys get send to operator (these keys can only produce blocks, cannot access the funds)
-
Running the validator
- Customer sends minimum required amount (10k NIM currently) to validator wallet or more (minimum validator requirements subject to change)
- (optional) customer delegates additional NIM to the validator (from another wallet)
- Validator starts staking as soon as the required minimum amount is received
- Staking rewards will be credited to the validator wallet
Project Team
-
Tobias Faber (Faberto)
- Role: Administration, Blockchain related development
- Background in Cybersecurity
- Introduced to Nimiq in 2017, First Blockchain Project
- Implemented a MiningPool in .NET Core (and NodeJS for blockchain interaction) on the first TestNet
- Operated a pool on mainnet release (nimiqpool.com, including Discord bots, website, etc.)
- Still running and maintaining a community seed node (since mainnet release, seed.nimiqpool.com:22001)
-
David Poetzsch-Heffter
- Role: Architecture Design / Deployment
- Head of Software Engineering at Mondata
- Lead developer for a number of projects with focus on backend APIs
- Experienced in running production workloads in the cloud for both internal projects and external clients
- Deep DevOps expertise, especially in the area of automatic testing and automated kubernetes deployments
-
Christian Meyer
- Role: Full stack development
- Senior Full Stack Software Engineer
- Experience with functional reactive frontend development based on Vue.js, Typescript
- Experience with backend and API development based on Node.js, TypeScript, Scala, Java
- Experience with frontend/backend hybrid solutions like Asp.NET, Razor, Blazor
- Experience with BDD, Unit- and E2E-Testing
- Experience with mobile app development Android/iOS, Cordova and Quasar
-
Infrastructure costs (like servers hosting)
- For the development and testing we will be using our own machines as much as possible.
- Hosting the website and the data collection nodes is negligible.
- For deploying the validators and testing this at scale funding will be required.
-
Security audits from Team Nimiq.
- We would like to have a conceptual audit. Code audits should not be required as everything is secure by design meaning that bugs do not have any impact on the customer other than uptime.
- Of course, advice is always welcome
-
Technical advice from Team Nimiq.
- As our prepaid payment solution still requires some trust, we would like to discuss what will be technically possible on the blockchain in the near future.
-
UI/UX design from Team Nimiq.
- Our goal is to make our application as user friendly as Nimiq. On that matter, feedback and advice is always welcome but not required
-
Misc costs required to create an MVP or, in the case of a not-for-profit project, costs to maintain the project.
- Team will invest time on this, laying off paid work.
Once the project is up and running it should be sustainable. Office and equipment costs will be covered by us.
The Project is a business case but with low expected income.
This project requires front- and backend development with strong focus on user friendly interface and infrastructure automation.
We intend to open source the project with viable documentation.
Current plans and expected development times for the project. Future ideas or follow-up projects are also appreciated.
There are a couple of different components which can be partially developed in parallel
-
Validator Setups
- Automatically deploying validators given specific options
- Optimizing the deployment to prevent having to sync the chain from scratch
- Monitoring the validators in the classic way (resources, response, errors)
- Process flow for staking
-
Node Setup
- Monitoring the validators through the blockchain
- Gathering information for the backend, e.g., amount staked, epochs, payments etc.
-
Backend
- Handling Payments
- Communicating with the Node
- Handling Validators
- Serving the frontend
-
Frontend
- Building Payment flow
- Creating Validator/Wallet Keys
- Configuring Validator
- Displaying statistics
- UX Design
- Providing chain details (e.g., links to blockchain explorer for the validators etc.)
- Miscellaneous
- Informational Website
- Infrastructure Setup
Detailed Funding Table
Hours | |
---|---|
Validator Setups | |
· Automatically deploying validators given specific options | 24 |
· Optimizing the deployment to prevent having to sync the chain from scratch | 24 |
· Monitoring the validators in the classic way (resources, response, errors) | 12 |
· Process Flow Staking | 12 |
Node Setup | 0 |
· Monitoring the validators through the blockchain | 36 |
· Gathering information for the backend, e.g., amount staked, epochs, payments etc. | 12 |
Backend | 0 |
· Handling Payments | 36 |
· Communicating with the Node | 12 |
· Handling Validators | 36 |
· Serving the frontend | 36 |
Frontend | 0 |
· Building Payment flow | 12 |
· Creating Validator/Wallet Keys | 12 |
· Configuring Validator | 24 |
· Displaying statistics | 36 |
· UX Design | 24 |
· Providing chain details (e.g., links to blockchain explorer for the validators etc.) | 12 |
0 | |
Miscellaneous | 0 |
· Informational Website | 24 |
· Infrastructure Setup | 24 |
Total | 408 |
Cost 35$/hr | $14.280,00 |
Thank you for reading and we hope that you will give us the support needed to realize this project