LogoLogo
  • WELCOME TO ALEPH ZERO
  • EXPLORE
    • About Aleph Zero
    • AlephBFT Consensus
    • The Economy of Aleph Zero
    • Where to Buy AZERO
    • Decentralized Governance on Aleph Zero
    • Ecosystem
    • Aleph Zero Foundation Treasury Management
    • Community
    • Glossary
    • Audit & Research Papers
  • USE
    • Wallets
    • Explorer
    • Ledger
    • Telegram Notifications
    • Aleph Zero Signer
      • General introduction
      • What does Signer do?
      • What are Sub-accounts and Sub-account paths?
      • Why is it critical to store your Secret Phrase in a safe place?
      • How to forget and restore accounts?
      • What are Networks?
      • What are Trusted apps?
    • Dashboard
      • Dashboard basics
      • Overview
    • Stake
      • Staking Basics
      • Staking Menu Overview
      • How to Start Staking with the Aleph Zero Dashboard
      • How to Start Staking With the Developer Wallet
      • How to start staking using Ledger hardware wallet
      • How to Change Nominations
      • How to Stop Staking
      • Staking Rewards
      • Validators
      • Commission and Foundation Nodes
      • Proxy Accounts
    • Validate
      • Validating Overview
      • Hardware requirements
      • Running an Aleph Node on Testnet
        • Downloading and running the node
        • Verifying your setup
        • Customizing your setup
        • Building and running from source [advanced]
          • Building from source
          • Set environment variables
          • Download DB snapshot
          • Running the binary
        • Appendix: Ports, addresses, validators, and archivists
      • Running an Aleph Node on Mainnet
        • Running the node
        • Building and running from source [advanced]
      • Setting your identity
      • Making the node validate
      • Securing your validator
      • Troubleshooting
      • Elections and Rewards Math
      • Testnet Validator Airdrop
      • Foundation Nomination Program
    • Using the EVM-layer
    • Governance
      • Token
      • Multisig Accounts
  • BUILD
    • Aleph Zero smart contracts basics
      • Setting up a Testnet account
      • Installing required tools
      • Creating your first contract
      • Deploying your contract to Aleph Zero Testnet
      • Extending your contract
    • Cross contract calls
      • Using references
      • Using dynamic calls
    • Migrating from Solidity
    • Writing e2e tests with ink-wrapper
    • Aleph Zero Signer integration
    • Front-end app: smart contract interaction
    • Security Course by Kudelski Security
      • ink! Developers Security Guideline
      • Lesson 1 - Getting started with ink!
      • Lesson 2 - Threat Assessment
      • Lesson 3 - Integer Overflow
      • Lesson 4 - Signed-integer
      • Lesson 5 - Role-Based Access Control
      • Lesson 6 - Address Validation
      • Lesson 7 - Smart Contract Control
    • Development on EVM-layer
  • PROTOCOL DETAILS
    • Shielder
      • Overview
      • Design against Bad Actors
      • Preliminaries - ZK-relations
      • Notes and Accounts
      • ZK-ID and Registrars
      • Anonymity Revokers
      • PoW Anonymity Revoking
      • Relayers
      • Deterministic Secret Management
      • SNARK-friendly Symmetric Encryption
      • SNARK-friendly Asymmetric Encryption
      • Cryptography
      • Token shortlist
      • User Wallet
      • Versioning
      • PoC
      • Version 0.1.0
      • Version 0.2.0
    • Common DEX
      • Common Whitepaper - Differences
      • Dutch Auctions
  • FAQ
  • Tutorials
    • Withdrawing coins from exchanges
      • How to withdraw your AZERO coins from KuCoin
      • How to withdraw your AZERO coins from MEXC Global
      • How to withdraw your AZERO coins from HTX
  • Setting up or restoring a wallet
    • How to set up or recover your AZERO account using Aleph Zero Signer
    • How to set up or recover your AZERO account using the official mainnet web wallet
    • How to set up or recover your AZERO account using Nova Wallet
    • How to set up or recover your AZERO account using SubWallet
    • How to set up or recover your AZERO account using Talisman
  • Staking
    • How to stake via a direct nomination using the Aleph Zero Dashboard
    • How to stake via a nomination pool using the Aleph Zero Dashboard
    • How to destroy a nomination pool via the Aleph Zero Dashboard
Powered by GitBook
On this page
  • Rationale
  • Requirements
  • Algorithm
  • Timeline
  • Rationale behind the formula

Was this helpful?

  1. USE
  2. Validate

Foundation Nomination Program

This page describes the Foundation Nomination Program (FNP): an initiative to support community validators by delegating Aleph Zero Foundation's stake to them.

PreviousTestnet Validator AirdropNextUsing the EVM-layer

Last updated 1 month ago

Was this helpful?

Starting with era 795 the Foundation Nomination Program is live! Please read on for the rationale behind it, the requirements and rules, inner workings of the program and the exact timeline for validators.

Rationale

The rationale behind the Aleph Zero Foundation Nomination Program (FNP) is to support the community validators, especially the smaller ones. In a way, it is a continuation of our previous efforts to move the stake away from the Foundation nodes and to the community nodes. The high-level idea behind the program is to use the stake of the Aleph Zero Foundation accounts to nominate high-performing community validators.

Requirements

The requirements for the program are very simple:

  • your validator needs to have the minimal commission (5%);

  • your node needs to have high performance (i.e. produce at least 90% of the expected blocks each era).

An additional rule is that if you increase your commission while being a part of the FNP, you will be removed with the next era with no possibility of automatic return.

The Aleph Zero Foundation reserves the right to:

  • remove a validator from the Foundation Nomination Program if they engage in malicious behavior (e.g. equivocation)

  • introduce modifications to the rules, most notably: change the formula used to award the points to the validator (as the number of validators and amount of funds staked change, the formula may need to be adjusted to ensure a fair distribution of nominations).

If you are already enrolled in the Testnet Validator Airdrop, you won't need to pass the KYC again. Simply use the "Fractal ID" button to login using your Fractal credentials and you will be able to access the FNP form.

Algorithm

The algorithm for choosing nomination achieves a fair distribution of nominations over time. Given that there are 5 foundation accounts with different amounts of stake, we developed an algorithm that balances the nominations over time. It works like this:

  • the points are then normalised so that 1000 points in total are awarded each era;

  • each era, 5 validators with the highest amount of points are nominated;

  • a 1000 points in total is deducted from the nominated validators (proportionally to the stake the were nominated with), so that the next era different 5 are nominated. This means that your total number of points may fall below zero: that's perfectly ok and doesn't mean you've been penalized in any way.

Note that if your node is underperforming, you will fall behind in the ranking. However, this is not the same as being removed from the program, which will happen if you increase your commission after the start of the program.

Timeline

The timeline for the start of the program is a follows:

  • during eras 795-801 the points are accumulated to decide the initial ranking of validators,

  • starting with era 803 the nominations commence, following the algorithm described above,

  • starting with era 1054 the nominations commence, algorithm was slight modified to better reflect block performance calculations done on-chain.

Rationale behind the formula

To recap, the formula for awarding points is: performance * sqrt(own_stake). Let's break down the components of the formula:

  • including the validator's own stake in the calculation makes sure that splitting your stake into multiple validators is not incentivized. At the same time, using a square root of the stake instead of a linear function makes the calculation more beneficial for smaller validators;

  • the performance is 1 when your validator performed on-target in all sessions, in a given era. On-target performance in a session means exactly what block production scoring algorithm calculates, ie if produced blocks in single session / expected blocks in a session >= lenient threshold, where lenient threshold is at the moment 80%. For example, if your validator produced at least 15 blocks in all sessions it was in a block production committee, performance is 1. The performance is always a number from range [0; 1]. That means, no negative points are ever given for bad performance.

For example, if your node have performance equal to 0.95 in some some era and your own stake is 40000 AZERO, the calculation will be: 0.95 * sqrt(40000) = 0.95 * 200 = 190

you need to pass KYC and register your validator at (under the Foundation Nomination Program tab);

each era, every validator is awarded a certain amount of points based on their performance and the square root of own stake ( we explain why we chose this formula), with the exact calculation being: performance * sqrt(own_stake).

You can check when your node is going to be nominated next by visiting the . Please note that this 'ranking' is only used to determine the order in which nodes are nominated, it is not meant to serve as means of comparing validators. It will be constantly changing as next nodes are nominated.

The points which are finally applied are normalized using factor 1000, so what you see on might be different to what above formula states.

validators.alephzero.org
FNP ranking page
FNP ranking page
below