You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A Byzantine Fault Tolerant (BFT) voting mechanism is proposed to allow producers to reach consensus on the correct fork.
@@ -1056,18 +1005,16 @@ Penalties are enforced to deter malicious actions or protocol violations. Slasha
1056
1005
-**Definition**: A validator casts multiple votes for different forks or outcomes in a single voting phase. This action is considered malicious and undermines the voting process.
1057
1006
-**Penalty**: The validator's stake is slashed, and their voting rights are suspended for one or more epochs. The network may also distribute the slashed amount among honest validators as a reward for maintaining integrity.
1058
1007
1059
-
3.**Ignoring Votes:**
1060
-
1061
-
-**Definition**: A validator deliberately ignores valid votes when creating a "Finalize" transaction, attempting to force a minority or incorrect outcome. This is only an offense if the ignored votes
1062
-
would change the outcome. This is so that it is not an attack to send in a late vote for the majority
1063
-
outcome and then slash the validator for not including it.
1064
-
-**Penalty**: The validator's stake is partially slashed, and they are penalized with a temporary ban from participating in leader elections or block production if their deposit stakes fall below the minimum.
1008
+
3.**Not producing blocks:**
1065
1009
1066
-
4.**Submitting an incorrect block, or not submitting a block in time**: If a block producer's block has been replaced by holes more than 50% of the time during one epoch.
1010
+
-**Definition**: A validator that was chosen leader but that does not produce any
1011
+
valid or in time blocks during an epoch.
1012
+
-**Penalty**: The validator's stake is partially slashed down below minimum stake,
1013
+
causing a temporary ban from participating in leader elections and block production.
1067
1014
1068
-
5.**Ignoring the finalize_epoch fork**: This is a minor event just as any other incorrect block. It should probably just be ignored with no penalty.
1015
+
4.**Ignoring the finalize_epoch fork**: This is a minor event just as any other incorrect block. It should probably just be ignored with no penalty.
1069
1016
1070
-
6.**Ignoring a correctly pinned fork**: This is a minor event just as any other incorrect block. It should probably just be ignored with no penalty.
1017
+
5.**Ignoring a correctly pinned fork**: This is a minor event just as any other incorrect block. It should probably just be ignored with no penalty.
Copy file name to clipboardExpand all lines: staking.md
+48-33Lines changed: 48 additions & 33 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -424,7 +424,7 @@ the whole locking period.
424
424
- Serves as a placeholder to maintain the continuity of the blockchain.
425
425
- **No Rewards for Holes**:
426
426
- Validators producing holes do **not** receive any rewards for these blocks.
427
-
- The missed block's potential rewards are effectively forfeited, including the award of fees for following the previous block.
427
+
- The missed block's potential rewards are effectively forfeited, including the award of fees for following the previous block, and for the following block.
428
428
429
429
430
430
## Reward Distribution for Correct Blocks
@@ -439,34 +439,43 @@ When a validator successfully produces a block on time, the rewards are distribu
439
439
### Distribution Breakdown
440
440
441
441
- **Block Producer (Current Validator)**:
442
-
- Receives **X% of the block fees**, X defaults to 75% but is configurable in genesis.
442
+
- Receives **X% of the block fees**, X defaults to 40% but is configurable in genesis.
443
443
- Receives the **full epoch coinbase reward**.
444
444
- **Incentive**: Encourages validators to produce blocks promptly and include transactions to maximize fees.
445
445
446
446
- **Next Validator (Following Validator)**:
447
-
- Receives **(100-X)% of the block fees** from the previous block.
447
+
- Receives **Y% of the block fees**, Y defaults to 30% from the previous block.
448
448
- **Role**:
449
449
- Validates the correctness of the previous block.
450
450
- Builds upon it by producing the next block in the chain.
451
451
- **Incentive**: Motivates validators to participate actively in the validation process and ensures they have a stake in the accuracy of preceding blocks.
452
452
453
+
- **Previous Producer (Preceding Validator)**:
454
+
- Receives **(100-(X+Y))% of the block fees** from the following block.
455
+
- **Role**:
456
+
- Validates the correctness of the previous block.
457
+
- Is encouraged to produce the block in time so that the next validator builds on top of it.
458
+
- **Incentive**: Motivates validators to produce blocks in a timely manner.
0 commit comments