风险提示:理性看待区块链,提高风险意识!
区块链:OmniLedger算法介绍
首页 > 币界资讯 > 区块链知识 2019-02-27 20:09:38
币界网报道:

OmniLedger目标是实现区块链设计中的不可能三角的平衡,是基于分片设计的区块链:

本文详细描述OmniLedger的设计细节以及介绍实验数据。

1)OmniLedger整体架构

OmniLedger由一条身份链(identity blockchain)以及多条子链(shard)构成。OmniLedger使用RandHound协议,将所有的Validator分成不同组,并随机的将这些组分配到不同的分片子链,验证以及共识区块(如上图中的(1)Sharding)。OmniLedger的总体架构以及设计的重点如下图:

ByzCoinX是OmniLedger在ByzCoin基础上的增强。每个分片子链使用PBFT共识算法形成共识,OmniLedger将这个共识算法取名ByzCoinX(如上图的(2)Consensus)。OmniLedger使用UXTO的账户模型,对于跨子链的交易,OmniLedger设计了Atomix的跨链原子操作,如上图中的(3)TX Commit。

2)Validator的随机分组和分配

RandHound协议实现Validator的随机分组。假设,总共m个Valiator,n个分片,RandHound协议将m个Validator随机分配到n个分片。每个区块生成前,所有的Validator都需要重新分组。注意,RandHound协议需要一个“Leader”。OmniLedger算法使用VRF算法确定“Leader“。在每个区块生成前,所有Validator都需要在identity blockchain上注册。每个Validator使用VRF计算自己的Ticket,计算方法如下图:

其中config是注册在identity blockchain上的所有Validator的信息,v是当前的轮数。对于同一高度的区块,可能需要多轮共识才能确定。在一定时间内,所有Validator交换Ticket。Ticket值最小的Validator作为当前的“Leader“。在确定了“Leader”的基础上,RandHound协议实现所有Validator的分组,并将这些Validator划分到不同的分片上。

3) Atomix跨 链原子操作

为了支持分片间的交易,Omniledger设计了Atomix的跨链协议- Byzazantine ShardAtomic Commit。Omnil edger使用UTXO的账户模型。Atomix 协议的大体流程如下图:

1) Initialize 初始化阶段-假设用户从shard1以及shard2 (输入)转账到shard3 (输出),用户向shard1以及shard2发送跨链请求。2) Lock 锁定阶段- shard1以及shard2锁定请求,确认交易合法,并在shard1以及shard2记录下锁定状态以及合法交易在区块中的Merkle路径证明。3a) Unlock to Commit阶段-提交跨链确认请求,用户向shared3提交commit交易(包括所有输入的证明),完成跨链交易。3b) Unlock to Abort阶段-如果在步骤2中,交易不合法(比如shard2中的交 易不合法),则跨链交易需要回滚,用户向shard1发送跨链交易取消。这样的跨链设计,需要各个分片“监控”其他分片的区块生成情况。

4) Trust-but-Verify分 层验证体系

为了更快速的处理大量的小额交易,OmiLedger提出了“先信任后验证'的分层处理机制,如下图:

“先信任后验证”的体系,包括了两部分共识: 1)分片共识2)分片区块合并。分片共识可以采用较少的Validator,加快分片的共识速度以及区块的确认速度。分片形成的区块,会被较多的Validator进行再次验证。这样的设计在出块速度以及安全性之间形成平衡。

5)其他细节设计

论文中还提及了其他细节设计,比如区块镜像(Snapshot) 以及区块并行处理。在区块镜像前的一些信息可以删除从而较少存储的消耗。区块并行处理指的是,可以并行执行的交易打包在不同的区块中,这些区块可以同时共识生成。

6)实验数据

Omniledger论文中提到,为了验证实验数据,部署了60台机器,每台机器配置是:Intel E5-2420 v2 CPU,24GB内存以及万兆网络。实验数据表明:

TPS性能随着分片数量的增加线性增加,如果是16个分片的情况下,TPS达到5850。论文中甚至指出,25个分片的情况下,TPS达到13000。总结: Omniledger是基于分片的区块链设计。OmniLedger使用 RoundHound和VRF协议将Validator随机的分配到不同的分片上。每个分片的共识采用PBFT算法。Omniledger能容忍不超过1/3的作恶节点。在实验室的环境下,TPS性能随着分片的数量线性增加,16个分片的情况,TPS达到5850,25个分片的情况,TPS达到13000。

上一篇: HoneyBadgerBFT共识算法
下一篇: 随机性在区块链共识中扮演什么角色?
推荐专栏
Boss Wallet Web3 Econom Pass
专注币圈最新资讯
通俗浅显地聊透Web3大事小情
读懂区块链生态与未来,尽在币界网!
热门币种
更多
币种
美元价格
24H涨跌幅
BTC比特币
60,963.61 USDT
¥435,103.38
-2.72%
ETH以太坊
3,368.69 USDT
¥24,042.67
-0.3%
BNB币安币
570.68 USDT
¥4,073.00
-0.28%
USDT泰达币
1.02 USDT
¥7.25
-0.19%
SOL
135.96 USDT
¥970.36
+7.66%
USDC
1.00 USDT
¥7.15
-0.01%
TON
7.59 USDT
¥54.14
+4.55%
XRP瑞波币
0.47720 USDT
¥3.41
+0.48%
DOGE狗狗币
0.12210 USDT
¥0.87140
+2.43%
ADA艾达币
0.39050 USDT
¥2.79
+3.88%
热搜币种
更多
币种
美元价格
24H涨跌幅
比特币
60962.19 USDT
¥442,884.21
-1.67%
Solana
137 USDT
¥995.29
-1.28%
Filecoin
4.3427 USDT
¥31.55
-2.63%
柚子
0.5716 USDT
¥4.15
-0.8%
Curve
0.2963 USDT
¥2.15
-6.88%
Terra Classic
8.216E-5 USDT
¥0.00
-0.98%
Shiba Inu
1.72E-5 USDT
¥0.00
-3.91%
Conflux
0.1563 USDT
¥1.14
-1.76%
狗狗币
0.1221 USDT
¥0.89
-4.16%
dYdX
1.3771 USDT
¥10.00
-1.76%
Arweave
25.8763 USDT
¥187.99
-10.41%
Uniswap
9.3568 USDT
¥67.98
-1.93%
最新快讯
更多
Symbiotic:sUSDe已达质押上限
2024-06-27 11:05:48
全网BTC期权未平仓头寸为209.2亿美元,ETH期权未平仓头寸为92.4亿美元
2024-06-27 11:04:11
全网ETH合约未平仓头寸超150亿美元
2024-06-27 11:02:28
币安完成MetalDAO(MTL)主网置换,并开放充提业务
2024-06-27 11:01:27
DeFianceCapital联创称BLASTFDV远不及其至少50亿美元的预期
2024-06-27 11:00:51
Gate.io首席安全官提出5项用户必知安全措施,共筑安全防线
2024-06-27 10:57:30
澳大利亚广播公司的YouTube账号遭劫持用来推销加密骗局
2024-06-27 10:52:09
下载币界网APP