Function X: June Hash Out

Delegation on FX Core

Preface

The launch of the FX Core mainnet is just around the corner. We’d like to thank the community members and long-time supporters for their continuous support through the process. As mentioned in the previous article, the launching of FX Core will take place in stages, and we would like to take this opportunity to dive into each stage. In this issue, we start with the first stage: Delegation.

Function X network and FX Core

Every blockchain is a unique highway. Each has its own language, currency, rules and public ledgers. In normal circumstances, different blockchains cannot communicate or interact with one other.

Function X is a multi-chain structure network. The network provides inter-blockchain communication, connecting multiple blockchains, for example, Binance Smart chain, Ethereum and the upcoming Pundi X chain (payment chain). More chains may be added as time goes on.

To enable communication among blockchains, FX Core (blockchain) operates as the interchange and intercommunication point to connect with other blockchains. FX Core is the distributed ledger to record and verify the cross-chain and inter-chain transactions. With FX Core, users can complete their Ethereum transaction within seconds, or swap their ERC20 token to a BEP20 token seamlessly.

Delegator, validator and voting power

The underlying consensus model and algorithm of FX Core is Proof of Stake (PoS) and Practical Byzantine Fault Tolerance (pBFT). The block validation (or transaction verification) is through voting. Every transaction requires at least 2/3 of the total votes within the blockchain to approve verification and validation. If less than 2/3 of the votes within the blockchain approve the transaction, the transaction will be denied. All successfully verified transactions will be recorded in the new block (block creation) and cohere with the previous block to become a complete ‘blockchain’.

For example, if there are 10 million $FX delegated in FX Core, the new block needs at least 6.67 million $FX votes to pass the verification; if there are 100 million $FX delegated in FX Core, the new block needs at least 66.67 million $FX votes to pass the verification.

The party who is allowed to cast a vote for verification is a ‘validator’ (validator node). It is similar to a city election where people delegate their votes to the ‘city representative’ and that representative, in turn, will cast the vote (to make a decision) in the governing body on behalf of the voters who delegated their votes to him/her.

Validators have to be equipped with sufficient technical knowledge to set up the server, docker and network in order to maintain the uptime to run the routine block validation and at the same time, pay close attention to the development of the network and participate in the governance voting, when necessary. In exchange for the validator’s service, s/he is entitled to a commission from the block reward of the delegator.

Basically, the more validators participating, the longer the validation period is. It is similar to counting votes in a legislature. To balance performance, security and efficiency, the number of validators will be limited. Parties who would like to become validators will need to attract sufficient votes to stay competitive enough on the leaderboard. This competitive element will incentivize the validators to act with integrity, remain vigilant and provide better service.

Please note that the number of spots for validators in FX Core will be opened gradually at a later stage.

Delegation of $FX refers to users (delegators) delegating the voting power derived from the token ($FX) to the dedicated validator node in the FX Core to participate in the process of block validation. Thereafter, the validator node will cast the vote on behalf of the delegators who delegate their voting power to verify the block and earn the corresponding block reward in return. The minimum amount that can be delegated is 0.1 $FX.

100 $FX = 1 vote (a fixed value)

Only validators within the leaderboard (top 50 validators) can participate in the block validation by casting votes delegated from delegators. A delegator may delegate tokens to multiple validators. However, a single token can only be delegated to one validator node at a time.

It is worth noting that, FX Core considers the validator node and the voting power behind it as a single element. That is, validators and delegators are in the same boat; they will be receiving the same rewards if the validator performs well (eg., minimal downtime; no verifications of false transactions; no double spending, etc.); and vice versa, the delegator and validator will receive the same penalties if the validator breaks the rules.

Delegation

Delegation is the act of authorizing a validator to cast a vote on behalf of a delegator.

To participate in block verification, users have to have $FX in their private wallet and delegate (NOT transfer) his/her voting power to the dedicated validator node. Delegators need to do their own research (DYOR) to choose the validator node according to that node’s penalty history, uptime percentage, reputation, commission rate, etc.

Voting power is the derivative value of an $FX token. The delegation of voting power does not affect the ownership of an $FX token. That is, the ownership of an $FX token remains in the hands of delegators after the delegation. Delegators can pull out their votes by redeeming their $FX token anytime they want and, at the same time, a validator cannot transfer an $FX token for any other purpose than redeeming a delegator.

Risk and reward

Rewards and risks always co-exist.

FX validators and delegators will be rewarded through participating in the new block creation in FX Core. The rationale of the block rewards comes from the contribution of the security of the network. You can reference the reward estimation in https://functionx.io/staking-reward/#/delegator with the proposed parameter as follows:

To stabilize the network, the delegated (principal) $FX will take 21 days to be unlocked after the undelegated request (gas fee needed) has been made; the block rewards will take 8 hours to be released after the withdrawal request (gas fee needed) has been made.

One should keep in mind that the delegation of $FX is neither staking nor depositing, it is the act of ensuring the security of the network through participating in block validation.

Block validation is a rather long and complicated process and it might go wrong during the process, technical failure, human intervention, network congestion, etc. For example, if the network is down for x%, or the validator intends to double spend, etc. these would have a negative impact on the security of block validation. There is also a possibility of technical failure, network congestion which will cause validator nodes go offline or failure of synchronization of block.

Delegators also need to be aware of gas fees, transaction fees, opportunity costs, network fees and time involved.

Engaging in this process is challenging. It requires careful thought and an acute awareness that there are risks that accompany the potential rewards. The crypto space is full of uncertainty. No one will guarantee your loss.

Please do your own research (DYOR) and only put in what you can afford to lose.

A step by step guide of delegation will be updated later.

7 Likes

@eduardstal I am trying to get a clearer understanding of the risks of delegating, could you please further elaborate what risks a delegator may face?
We try to delegate via a good validator and do our research, but if it happens that the validator for reasons gets penalized, how will the delegator be affected by that?

What will the delegator notice in penalties if for example:
-The validator fails to validate transactions.

-The validator is malicious towards the chain.

-Other causes of penalty not mentioned appear.

1 Like

as a delegator most the penalty from my understanding would be in a loss of rewards, worse case is if the validator was shut down you would probably not want to be connected to them, point is reduce your risk by choosing Validators you know to be a great supporters, don’t put all your delegation on 1 validator, minimize risk, you will be able to see the status of nodes so you should get a clue if they are not performing, as a delegator your job is balance; so you don’t want to over impower a single node either to make it possible for them to try a malicious act, Most the early validators will be the most trust worthy as they are hand picked after that branch out carefully.

1 Like

Awesome, I am really looking forward to this next week, I am probably gonna diversify my tokens amongst a few validator nodes

2 Likes

This Hashout is very interesting.

However, I still have some doubts:

  • Is it possible to shift from 1 validator to another without unstaking like in other Blockchains, to avoid the lockout time of 21 days in this change?

  • Is it possible to restake directly the rewards like in other Blockchains or we need to claim rewards & then stake again the rewards?

  • Once Mainnet is working, there should be any way to check the evolution of Blockchain parameters in real time? I mean, it should be possible to check the variation of Staking Ratio or Annual Inflation Rate in real time?

  • The delegation tool in cryptoBnk will provide an estimation of the total FX to be rewarded (i.e daily or monthly) in base on your current delegated FX?

  • How much is the common fee in FX Core to Stake FX, claim rewards, unstake FX, etc.?

  • FX to pay the fees needs to be available outside of FX staked? I mean, if I stake 100% of my FX, I will not be able to claim rewards until I have more FX in FX Wallet or the claiming fees are discounted from FX rewards to be received?

to your last question, you need to keep a small amount of fx in your wallet for fee’s don’t empty your wallet 100%; no different to an eth private wallet if you empty it you will have to put more eth in to do any transaction

2 Likes

@eduardstal Is this a typo?

Every transaction requires at least 2/3 of the total votes within the blockchain to approve verification and validation. If less than 2/3 of the votes within the blockchain approve the transaction, the transaction will be denied.

What’s said in the hash out can be misinterpreted, the version above can’t.

Any other answer from the Team to my questions? :pray:t2:

The minimum amount that can be delegated is 0.1 $FX.

I think this is the maximum for network costs

To answer your questions:

  1. This option is unavailable at the moment

  2. users need to claim the block reward and stake , the ‘restake’ function is unavailable at the moment

  3. yes, there is a dashboard to show the real time parameter

  4. the ‘auto estimation calculator’ is unavailable at the moment

  5. that really depends on the action, but one thing is the gas fee on FX Core will be significantly lower than Ethereum

  6. Correct, some $fx will be required to perform action

4 Likes

Brilliant help here, thanks everyone (esp Danny and Eduardo) for your help!

Once delegated, when will it be possible to redeem/undelegate?

Delegation was fairly seamless process;

Had to look a few times at the fees to believe it; :raised_hands:t3::raised_hands:t3::raised_hands:t3::raised_hands:t3: Quicker than ERC-20 and 1/10th of the price!!!

1 Like