当前位置: 首页 > 文档资料 > MOAC 中文 WIKI >

部署应用链合约

优质
小牛编辑
114浏览
2023-12-01

【功能简介】

子链合约定义了用户DAPP所需的子链控制功能和业务逻辑功能。子链控制功能包括:

  • 1.所采用的协议、子链的SCS个数、子链刷新周期、子链每个区块的报酬和每个TX的报酬
  • 2.SCS参与子链的调用过程,以及子链的刷新过程
  • 3.子链的资金控制

子链的业务逻辑定义SCS节点运行的业务流程。这个业务逻辑可以是基于solidity的binary代码,也可以是任意语言的script或者bin代码,只要SCS模块能够执行。

子链的控制功能在底层v-node端以全局合约的方式执行,业务逻辑由上层执行。

墨客提供一个POS 子链的实现,SubchainBase.sol。

【功能模块】

  1. Protocol:指向子链协议合约部署后的地址
  2. MinMember/MaxMember,参与这个子链的最低/最高SCS节点数
  3. FlushInRound:刷新等待周期
  4. Funccode:子链业务逻辑代码
  5. NodeList/NodeCount:参与子链的SCS节点/数
  6. MatchSelTarget:比较合约地址以确定SCS是否被选中参与子链
  7. RegisterAsSCS:SCS 调用此函数来确认自己成为子链的节点
  8. RegisterOpen:Dapp部署者设置子链注册开放
  9. RegisterClose:Dapp部署者设置子链注册关闭
  10. GetEstFlushBlock:获得预计的下次刷新的等待区块数
  11. CreateProposal:SCS调用此函数来创建一个新的刷新请求
  12. DisputeProposal:SCS调用此函数来创建一个反驳的刷新请求
  13. VoteOnProposal:SCS调用此函数来投票支持哪个刷新请求
  14. CheckProposalStatus:查询当前proposal状态
  15. RequestProposalAction:SCS调用此函数来执行刷新
  16. AddFund/WithDraw:Dapp部署者增加/减少可用资金