Introduction
Unlike Polkadot or other Proof-of-Stake consensus systems, Phala can manage as many as one million CPU cores from over 100k nodes, which requires our staking mechanism to outperform existing PoS in both performance and efficiency. That’s why we propose Stake Delegation, which introduces an extra role of StakePool into our system to connect computing nodes with PHA holders. Anyone can create a StakePool, and a PHA holder can delegate their PHA to the pool. Then the pool Owner can manage and stake for any Workers belonging to the pool. To secure the cloud of workers and the assigned jobs, the network will set a Worker Confidence Level for each worker’s CPU and require Staking (a delegation) to mine. Each worker can only earn value V if it first stakes several PHA tokens based on its CPU score, after which it can enter the staking system and start supplying compute power. Suppose a worker misbehaves or fails to respond. In that case, it will be punished by slashing the V, which strongly incentivizes participants to ensure their workers are running properly and disincentivizes attempts to cheat.Roles & Relationships
Roles
Role | Description |
---|---|
Worker | A CPU. Responsible for off-chain computation in the Phala network (in a private and secure enclave). |
Operator | Authorized by a Worker to act as administrator, responsible for managing the workers. |
PoolOwner | The account which creates the StakePool. A StakePool manager who is responsible for the management of the pool and all the Workers bound to it. |
StakePool | A pool of stake from a group of parties backing a group of Workers. It provides a middle layer of funds flowing between Workers and Delegators. It also provides on-chain management of staking. (Each StakePool is identified by a PID automatically generated by the system) |
Delegator | A PHA-holding address. It can participate in Phala Staking through Stake Delegation. |
Worker and StakePool

Figure 1
- Owner-A creates Worker
{A, B, C, D}
; - Owner-A creates Pool-1;
- Owner-B creates Pool-2;
- Since Owner-A is both the Owner of Pool-1 and the Operator of Worker
{A, B, C, D}
, Pool-1 can bind Worker{A, B, C, D}
to it, and Pool-1 can stake its PHA tokens for these Workers; - Owner-B is the Owner of Pool-2, while Pool-2 cannot add or manage any one of Worker
{A, B, C, D}
since Owner-B is not their Operator;
Other cases:
- After Worker-A authorized Owner-A as an Operator, it cannot authorize Owner-B at the same time. If Worker-A wants to transfer its control to Owner-B, it must first stop mining for Owner-A;
- An ownership transfer of a StakePool is currently not supported;
Delegator and Worker

Figure 2
- A StakePool can add and manage Workers;
- A Delegator delegates his/her PHA tokens to the StakePool;
- The StatePool stakes the PHA tokens from the Delegators for its Workers;
- Pool-1 is created, and it adds Worker
{A, B, C, D}
; - A PHA holder delegates his/her PHA tokens to Pool-1;
- Pool-1 stakes Delegator’s PHA from its Workers;
- The Workers starting mining;
- In each block, Phala Blockchain will reward all the StakePools according to their shares of computing power;
- Pool-1 will divide its rewards into two parts according to its Commission rate: one for Delegators and the other for the pool Owner;
Commission
To avoid the case that many Workers cannot start mining for insufficient staking, we create StakePool to enable Delegators to delegate their PHA tokens to the StakePool and stake for Workers. A StakePool needs to set up two parameters for the reward distribution:Parameter | Full Name | Meaning |
---|---|---|
Commission | Commission Rate | The commission rate of the StakePool.The commission portion is deposited into the pool’s Owner address. |
Cap | Capacity | The capacity of the PHA tokens in the StakePool. |
- Owner Rewards = StakePool Rewards × Commission
- Delegator-A Rewards = StakePool Rewards × (1 - Commission) × Delegator-A’s staking / All staking in StakePool
After Delegators delegate their tokens to the pool, there are two more parameters:
- If an Owner stakes to the pool, he/she is treated as a normal Delegator;
- All the staking in the pool can be divided into deposit and free;
Parameter | Full Name | Meaning |
---|---|---|
Cap Gap | Capacity Gap | The difference between Cap and the real amount of delegated tokens. It shows the number of tokens that can be further delegated to the pool. |
Free Delegation | Free Delegation | The difference between the amount of delegated tokens and the ones that have been staked. It shows the free tokens which can be used. |
- Add more Workers;
- Overstake for its Workers (to change the staking of a Worker requires it to stop mining first, and this can cause a drop in value );
- Just keep the free tokens in case of Delegators’ withdrawal;
Staking
Case 1: Insufficient Staking

Figure 3
- Since all the Workers in Pool-1 require a minimum total staking of 10000 PHA, the amount of PHA in the pool is not enough for all the Workers to start mining;
- Pool-1 could choose to only start Worker
{A, B, C}
;
Case 2: Commission Setup and Reward Distribution

Figure 4
- Pool-1 is created, and it adds Worker
{A, B, C, D}
with a minimum total staking of 10000 PHA. Its Commission is set to 60%; - 5 Delegators each delegates 1400 PHA to the pool. Now there are 7000 PHA in the pool;
- Pool-1 stakes 7000 PHA for the Worker
{A, B, C}
, and Worker-D has no staking since there are not enough PHA; - Worker
{A, B, C}
start mining; - Phala Blockchain rewards 10 PHA to Pool-1 for its computing power;
- Pool-1 divides its rewards into two parts according to the 60% Commission: 4 PHA is distributed equally to the 5 Delegators, with 0.8 PHA for each; 6 PHA to the pool Owner;
- Pool-1 is created, and it adds Worker
{A, B, C, D}
with a minimum total staking of 10000 PHA. Its Commission is set to 60%; - 5 Delegators each delegate 1400 PHA to the pool, and one more Delegator-Rich delegates 5000 PHA. Now there are 12000 PHA in the pool;
- Pool-1 only stakes the necessary amount of tokens for each Worker (10000 PHA in total), and leaves 2000 PHA Free Delegation;
- Worker
{A, B, C, D}
start mining; - Phala Blockchain rewards 10 PHA to Pool-1 for its computing power;
- Pool-1 divides its rewards into two parts according to the 60% Commission: 4 PHA is distributed to the Delegators, with 0.47 PHA for normal Delegator and 1.6 PHA for Delegator-Rich;
- 6 PHA is rewarded to the pool Owner;
Exit Staking
If the Owner and Delegators want to quit mining and withdraw their own staked PHA, they first suspend mining. After the request is initiated, the staked funds will undergo a 7-day freeze period in the StakePool, after which the balance will be unfrozen and returned. The Owner cannot withdraw other Delegators’ deposits.
Figure 5
How to reclaim
Summary
- A Delegator can exit staking in at most 14 days;
- The Owner of the StakePool should take care of the Free Delegation, and introduce extra delegation or reduce mining Workers as needed. Or all the Workers in the pool can be forced to stop mining.