在如今常见的区块链项目中,所有交易信息均存储在单链区块当中,使得整个系统面对不断增长的交易规模时缺乏足够的灵活性。在?Bigbang Core?中,主链数据与应用数据进行了分割处理,以“安全主链 + 多重应用支链”的树状区块结构来存储BBC的系统数据。
一、安全主链
安全主链为?Bigbang Core?树状结构中的主链,所有的支链均为其“后代”,其被用于支撑全区块系统的安全和共识,在 P2P 网络中主链的同步广播消息转发优先级高于应用支链。安全主链除了记录主链 BBC 转移,还保留 EDPoS 节点协商关键过程数据。
安全主链以区块系统创世区块为起点,通过 EDPoS+CPoW 共识顺序产生区块。安全主链被用于支撑全区块系统的安全和共识,所有应用分支节点都需要同步和校验主链区块头信息。新节点接入网络后,首先完成主链同步,才开始进行对应应用分支同步。
主链特殊交易
在安全主链中,鉴于功能特殊性,有三类与共识机制相关交易是安全主链独有的:EDPoS 节点投票交易;EDPoS 节点登记交易;CPoW 出块奖励交易。
1. EDPoS 投票交易
EDPoS 节点产生一个 Delegate 模板地址,首次需要自己发送 BBC到该地址,完成 Delegate 地址链上发布;用户使用与 EDPoS 节点相同的参数创建 Delegate 地址,并将BBC寄存于该Delegate地址,完成BBC投票。EDPoS节点可以使用Delegate地址的投票作为权重参与EDPoS协商过程。用户将币寄存Delegate地址进行投票时,所有权依然属于用户,并且可以随时取出,但是一旦取出,相应节点的投票数量也随之相减。
2. EDPoS 登记交易
EDPoS 节点在每轮协商需要筹集足够 BBC 投票,并以此创建登记交易提前在链上进行登记和发布自己初始协商参数,只有协商轮次开始前完成登记的节点(超过总票数的 2%)才允许进入协商过程以及获取出块权。
3. CPoW 出块奖励交易
CPoW 共识缺省情况下只用于主链共识出块,对应出块奖励通过这类交易提供给参与者。该类交易的作用类似 Bitcoin 中 coinbase 交易。
二、应用支链
在 Bigbang Core 中,应用方通过在父链发送一种特殊类型的交易——分叉交易,用于创建应用支链。应用支链的区块产生间隔需要和安全主链一致,其它主要参数可以在创建分支初始化过程中由创建者配置,可配置参数包括 BBC 总量和分布、出块奖励和增发方式等。新创建支链的第一个区块(分支起始块)被保存在分叉交易中。支链的BBC 分布可由创建者定义,有三种方式:
1. 创建独立分支,分支起始块重新设置 BBC 总数和分配方式;
2. 完整继承分叉点 BBC 分布;
3. 继承分叉点 BBC 分布,并在此基础上进行增发,增发部分的分布方式在分支起始块中定义。
自分叉点之后,支链 BBC 和主链是完全隔离的。
跨分支交易
跨分支交易可以用于实现 Bigbang Core 分支之间无信任情形下同步价值交换。实际应用中,往往可以将业务按照业务流程、设备种类、空间地域等关联因素进行划分,分散到多个分支中。互动频繁的设备通常持有同一分支BBC,在同一分支进行数据交易。但作为一个业务整体,和持有其它分支 BBC 设备交互的需求也是客观存在的。这种情形下,跨分支交易就可以实现支链之间的 BBC 交换。一方面跨分支交易可以在无信任情形完成,利用技术原理保证了对双方的公平性;另一方面跨分支交易在两个支链之间同步进入区块,保证了高效率和有效性,这为包括去中心化交易所、BBC 兑换网关等应用提供了良好的底层技术支撑。
BigBang Core官网:https://www.bigbangcore.com
BigBang Core白皮书:https://www.bigbangcore.com/whitepaper/BigBang_Technical_WhitePaper.pdf