web3.0 多链挖矿 dapp 系统开发技术详情
多链(multi-chain)不同于跨链(cross-chain),多链不需要第三方的跨链桥、跨链协议,也不存在抵押增发跨链资产,项目开发 I34-合约 I633-部署 53I9,是指在相同的通信协议下无缝转移原生资产(native assets)。跨链与多链的本质性区别是安全性不一样,多链是确保状态一致,即如果回滚那么也会状态一致的回滚。但跨链受制于不同区块链的状态不同,无法做到同步一致,一旦发生攻击,那么跨链资产的平衡将会打破。
层次设计多链一共分为 3 层,链管理层 SMC,通过一个合约 SMC 管理验证节点押金,验证节点随机抽样等;Date 为具体的交易数据层,开发对接唯 hkkf5566,各个子链分别维护各个子链的全状态数据和主链的全状态;state 层主要是交易的产生层,也可以说是智能合约的执行层。
基本的分片结构假如一台计算机的处理能力为 C 笔交易,主链节点能观察 C 条子链,则整个系统能处理 C*C 笔交易。
多链系统中的大多数用户都会运行两部分程序。
多链架构图;主链变更
本子链协议可单独于现有 MainChain 主链实施。只需再主链中作出如下修改,其中第二个变更非技术必须。
在 MainChain 主链上增加合约;该合约支持存入 DEPOSIT_SIZE 的 ETH;deposit 函数以:
fields = {
}复制主链状态分为活跃状态和结晶状态两种。
以下为活跃状态
/ActiveState:
fields = {
}MainChain 主链处理
处理 MainChain 链与处理 bu1.0 链在很多方面非常类似。客户端下载并处理区块,维护当前“规范链”,终止于当前的“头部”。但是,由于主链链与现有 bu1.0 链的关系,并且本身是一个多链的架构,所以(处理)也存在一定的差异。
评论