Nordek Docs
  • Summary
  • DOCUMENTATION
    • Learn about the Nordek Platform
      • Nordek Overview: vision, strategy and platform components
      • The Nordek Blockchain
        • Discovering the Network
        • Nordek Consensus
        • Delegation through Staking with Validators
        • Ethereum (EVM) Compatibility and Smart Contracts
        • Boosting Nordek's Scalability
      • Nordek Token (NRK)
        • NRK Tokenomics
        • Exchanges, Wallets, On-Ramps and DeFi Tools Supporting NRK
        • NRK on Other Chains
      • Interoperability
      • Nordek Governance and Development
        • Nordek Assembly
        • Nordek Improvement Proposals (NIPs)
      • Wallets supporting Nordek
    • Nordek for Business
    • Things you can do on Nordek
      • Interacting with the Nordek Blockchain
      • Nordek Ecosystem
      • Community
      • Grants and Bounties
    • Nordek Mobile Infrastructure Use Cases
  • Developers
    • Network Details
      • Nordek Mainnet
      • Nordek Testnet Spark
      • Token Faucets
      • Network Upgrades
        • Upgrade Guide
        • Upgrade Guide (explorer nodes)
        • Block 13,800,000 Fork
        • NIP's
    • Nordek Consensus
      • Contracts Overview
      • Stake, Delegate and Withdraw
      • Vote
      • End-of-Cycle Flow
      • Contract Addresses
    • How to run network nodes
    • Resources & Tools
      • TheGraph
      • WalletConnect on Nordek
    • How to become a validator
      • Getting started as a validator
  • Links
    • Discord
    • Facebook
    • GitHub
    • LinkedIn
    • Medium
    • Telegram
    • Twitter
Powered by GitBook
On this page
  • Consensus - 0x3014ca10b91cb3d0ad85fef7a3cb95bcac9c0f79
  • Block Reward - 0x7429fB101C317743369f3A161A6Ee78c3Ac45ADd
  • Voting - 0xC59D39E832316504219B7236Ea03919B9dF96FDD
  • Proxy Storage
  1. Developers

Nordek Consensus

PreviousNIP'sNextContracts Overview

Last updated 1 year ago

Consensus is a fault-tolerant mechanism used in blockchain systems to ensure agreement on the network's single state. The Nordek network utilizes a (DPoS) consensus model. DPoS is a variation of consensus.

In PoS, a group of validators is responsible for updating and validating the network's state. Validators take turns to update the network, while the other validators verify the validity of the updates.

The Consensus contract manages the list of network validators and delegators.

The BlockReward contract calculates the reward amount that validators and delegators receive for each validated block. The size of the reward is proportional to the validator's stake.

The Voting contract allows validators to vote on various changes related to the three fundamental contracts mentioned above. These contracts are proxied with an implementation that handles the logic. Changes to the implementations can only be made through the Voting process.

The bridge facilitates the transfer of Nordek native tokens between the Nordek and Ethereum networks.

This contract manages the DPos consensus of the network. It is responsible for storing the current set of validators and selecting a new validator set at the end of each cycle. The process of updating the validator set involves choosing a random snapshot from the snapshots taken during the cycle.

Snapshots are taken of pending validators, who are individuals that have staked an amount greater than the minimum required to become a network validator. Additionally, this contract handles the functionalities of staking, delegating, and withdrawing funds.

The stake amount for a validator is determined by the sum of the staked amount and the delegated amount associated with its address.

This contract is based on non-reporting ValidatorSet .

  • Minimum stake amount = 100,000 Nordek token

  • Cycle duration blocks = 34560 (approximately 2 days)

This contract's main purpose is to generate and distribute block rewards to the network validators based on the network specifications, which include a 5% yearly inflation rate.

Additionally, it has the responsibility of invoking the snapshot/cycle logic on the Consensus contract.

The primary function of this contract is to facilitate the opening of new ballots and enable voting to accept or reject proposed changes to other network contracts' implementations. Ballots essentially serve as proposals for modifying existing contracts.

Only network validators have the authority to initiate new ballots, while anyone can participate in voting. However, it's important to note that only the votes from validators are considered when determining the outcome of a closed ballot.

The opening and closing of ballots occur at the end of each cycle.

  • Max number of open ballots = 100

  • Max number of open ballots per validator = 100 / number of validators

  • Minimum ballot duration (cycles) = 2

  • Maximum ballot duration (cycles) = 14

This contract plays a crucial role in managing the implementation addresses of network contracts and facilitating their upgrades when deemed necessary through a voting process.

It's important to note that this contract is based on the non-reporting BlockReward as .

Delegated Proof of Stake
Proof of Stake
Consensus - 0x3014ca10b91cb3d0ad85fef7a3cb95bcac9c0f79
described in Parity Wiki
Block Reward - 0x7429fB101C317743369f3A161A6Ee78c3Ac45ADd
described in Parity Wiki
Voting - 0xC59D39E832316504219B7236Ea03919B9dF96FDD
Proxy Storage