Parameters

The parameters for flushing microchains are defined in subchainbase.sol. The parameters are as follows:

1.

The number of flushing cycles per Round: Defines after how many blocks the microchain will flush. If the microchain has 100 nodes, and blocks is generated by each node equally, and the round is defined as 5, then the microchain will be flushed every 500 blocks.

2.

The index of the current flushing id: defines the index of the next flushing id in the Node list

3.

Flush expiration: the designated id must complete the flushing in block [0, 2*expiration], or flushing will be restarted by the next id.

4.

Penalty against cheating in flushing: if the node cheats in proposing, disputing or voting, the corresponding penalty (MOAC) will be deducted from the paid bond, and the node will be removed from the Node list.

Flow

1.

Proposal format:

2.

When a flush round comes, the SCS node will call the create-proposal of the microchain contract to start the flush transaction proposal flushTX.

3.

The corresponding logic will be processed after the flushTX is received by the Vnode, and a push message will be sent to the corresponding SCS node to report the new proposal.

4.

If no problem is found by SCS node, there will be no response.

5.

If the SCS node discovers anything wrong with the proposal, a new proposal will be initiated, and DisputeProposal will be called through TX; then the Vnode will be triggered to push the message to the corresponding SCS node. Once the message is received by the SCS node, all SCS nodes must respond, and one SCS can only vote for one of them (guaranteed by the smart contract).

6.

If a timer is set by the SCS node initiating the proposal and dispute, the voting will be completed in the specified period. If more than 50% of the votes are obtained, the node will start a TX to call the Approval function of the microchain contract.

7.

The legitimate proposal will be accepted and recorded on the blockchain, and the wrong proposal and all voters for the wrong proposal will be punished by deducting the corresponding bond.

Where to Find Us

Website: https://moac.io/

GitHub: https://github.com/MOACChain/moac-core

Twitter: https://twitter.com/moac_io

Reddit: https://www.reddit.com/r/MOAC/

Medium: https://medium.com/moac

Steemit: https://steemit.com/@moac-official

Telegram(International): https://t.me/moacblockchain

Telegram(Developers): https://t.co/8m3m9RD5ix

Telegram(China): https://t.co/73rU9sHWLH

YouTube (Event Channel):https://www.youtube.com/channel/UCBU405W7vfOPBicLwW9-QOA

Youtube (Technical Channel)Ã‚Â :

https://www.youtube.com/channel/UC_U54wsGNrm_Yivj5bH9i7Q?view_as=subscriber

Facebook: https://www.facebook.com/moacchain/