多链管理该怎样去实现

区块链

576人已加入

描述

区块链作为一种分布式账本技术,可以被应用在金融、健康医疗、供应链、资产管理等诸多领域,但是受吞吐量、网络孤立性、伸缩性等因素的制约,目前的区块链项目并不能很好地服务于商业应用。在区块链所面临的诸多问题中,网络孤立性阻碍了不同区块链之间的协同操作,极大程度的限制了区块链的发挥空间。

一、引言

上次我们讲到了实现本体跨链的六个主要模块,分别为:多链管理合约、区块头同步合约、跨链管理合约、ONG(x) 合约、dApp 合约和信息状态同步者 Relayer。

今天为大家详细分析多链管理合约的主要功能和具体实现。

二、多链管理合约

多链管理合约负责管理所有侧链,包括侧链索引、资金状态和验证人质押状态等信息。主要实现以下功能:

2.1 侧链注册

侧链注册到主链需要使用 ONT ID 完成 KYC 认证,并提交创世块信息等基本信息到主链。同时,侧链需要在主链上抵押一定的 ONG 作为保证金。该保证金由侧链初始验证人共同抵押,侧链验证人各自抵押的 ONG 量由侧链验证人协商确定。在提交注册信息前,若抵押量不足,则会导致注册失败。若侧链存在恶意行为(例如,侧链验证人恶意增发侧链上的 ONGx 资产),则会扣除保证金作为惩罚。

主链治理委员会审核侧链提交的基本信息,并在审核通过后根据保证金数量为侧链分配一个资金池,用于管理该链与其它链交互所用的资产。

可以看到,侧链的 ONGx 资产总量取决于其在主链中资金池的大小。某个侧链一旦作恶,那么该链在主链上质押的保证金可以用来偿付用户。因此,通常情况下,为了保证足够的安全性,侧链资金池的容量应该小于等于其抵押的保证金。

2.2 验证人信息变更

若某条侧链的验证人信息发生变更,那么需要新的验证人在变更前先去主链先抵押足够的 ONG,并要求其抵押量不能低于旧的验证人。当信息状态同步程序 Relayer 将包含新的共识周期验证人区块头提交到主链时,主链会验证新验证人总抵押是否足够。若不足,则该区块头同步将会被拒绝。

旧的侧链验证人抵押的 ONG 将会在接下来两次验证人信息变更后被解锁。

2.3 跨链资产兑换

侧链注册完成后,用户可以将其在主链上的 ONG 锁定在某条侧链注册在主链的资金池中,换取该侧链上相应的资产。

区块链

用户在某条侧链注册在主链上的资金池中锁定ONG 后,主链会生成相应 IOU 信息,若主链资金池被充满则锁定失败。若主链锁定成功,Relayer 或用户可基于主链生成的 IOU 信息在侧链释放对应比例的ONGx。反之,用户在侧链中销毁 ONGx,可根据侧链生成的 IOU 信息在主链资金池中释放对应的 ONG。

2.4 侧链资产动态管理

若侧链想扩大在主链中的资金池容量,则侧链可增加自己在主链中的保证金,并向主链提交申请。若审核通过,侧链在主链上的资金池容量会被扩大,侧链的资产供应量后续也会相应的增加。

类似的情况是,侧链想减小在主链中的资金池容量,则侧链需要先向子链提交申请。若审核通过,侧链在主链上的资金池容量会减少,侧链的资产容量也会相应减少。值得注意的是,侧链的资金池容量不得大于侧链验证人的保证金总量,并且不允许小于当前所有用户锁定的 ONG 总量。

2.5 侧链注销

若侧链需要注销退出,则需要向主链提交注销申请,并等待一段时间的挑战期。在挑战期内,用户可自主地将侧链资产兑回主链。挑战期结束后,若该侧链上还有没被兑回的 ONGx,则这部分的 ONGx 后续不能再被转回主链。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分