About Staking Protocol
The Staking Protocol represents a solution that allows the creation of Ethereum-based staking platforms on demand. This means that a user/administrator must interact with the Staking Protocol to deploy a staking platform with a specific set of properties and rules. In this case, the rules dictate how and who can interact with the staking platform from a compliance standpoint, while the properties define the staking functionality.
The Staking Protocol consists of dozens of deployed smart contracts that are organized following the Multi-Facet Proxy (Diamond) Standard EIP-2535. Think of these smart contracts as templates containing various functions, that you can select arbitrarily to build your staking platform.
The simplified representation of the staking platform creation process is the following:
The selection of facets is essential for determining how your staking campaigns will operate on your staking platform. You can combine functions and storage layouts from different facets to create multiple unique staking campaigns on your platform, each with its own set of rules, reward distribution mechanisms, staking durations, and other configurations.
This highly modular approach allows:
- Selecting only the required functionality for your staking platform.
- Deploying the staking platform instantly without the need to write code and build a new solution from the ground up.
- Configuring staking campaigns flexibly.
At this stage, the following definitions must be introduced:
- Staking platform - A specific set of smart contracts(facets), each containing unique functions that are required to run staking campaign.
- Staking campaign - Each staking campaign represents a staking pool that follows the platform's rules, with eligible users (e.g., the issuer) configuring settings such as reward distribution, staking duration, and the assets to be staked.
In the diagram provided below you can see the process where users interact with the staking platform by staking their assets to the corresponding campaign:
Roles
The staking platform revolves around three main entities:
- Administrator - Manages the staking platform by granting or revoking roles and performing other administrative tasks.
- Eligible Issuer - Creates staking pools within the platform using a predefined configuration, which is initially set during the deployment of the staking platform. Each pool's configuration is limited to the functionality defined at the platform level.
- Eligible User - Participates in the staking pool.