ELASTICO-A Secure Sharding Protocol For Open Blockchains

INTRO

在中本聪共识中,通过POW机制来公平的选举leader,不仅非常消耗power,并且拓展性也不好。现在比特币中是7 TPS,和其他的支付系统相比效率相差甚远。

当前的许多拜占庭共识协议,并不支持在一个开放的环境中使用,比如加密货币,主要有两方面的原因:

  1. 许多的算法都加上参与共识的节点都已经建立了身份认证,但是这个在一个开放系统中,比如比特币中是不存在的。所以比特币使用pow来竞争出块权。
  2. 拜占庭共识,比如PBFT需要二次方规模的消息传输规模,在有限的网络带宽下,限制了拓展性。因此最多支持几百个节点。

我们希望能够有随着节点规模增加,吞吐量线性增长的区块链协议

本文提出了 ELASTICO 分片协议,在一个有拜占庭节点的非许可链上进行拓展。将POW和拜占庭共识进行一个结合。
key idea: 将整个网络划分成更小的委员会,每个委员会处理不相交的交易集合。
我们要保证每个委员会的大小合理,以能够运行拜占庭共识协议。各个委员会并行共识多个交易集合。

本文是第一篇在非许可链上进行拜占庭容错,并执行分片的论文。

  • 能容忍拜占庭节点的比例 f = 1/4
  • 拓展能力和计算能力几乎程线性比例。委员会的数量和计算能力几乎成线性的拓展。
  • 消息的复杂度是 O(nc3)O(nc^3)O(nc3)

PROBLEM & CHALLENGES

本文的算法并不能直接保证双花问题,而要对他进行额外的检查。

应对女巫攻击

在非许可链中,每个恶意节点都可以虚拟出许多节点,并进行女巫攻击。因此要限制能够建立合法身份的节点数。
在中本聪共识中,为了应对女巫攻击,采用pow来获取记账权。

均匀分配委员会

要保证委员会是均匀分配的,不会使得过多的恶意节点备份到同一个委员会中从而支配该委员会的共识结果。
我们要有极高的概率保证(当然不是100%)在每个委员会中,诚实节点占大多数。

容忍每个成员认为的委员会成员不一致

在每个委员会成员严重,委员会的成员可能都不一致,也就是view不同。这可能是因为网络延迟或者拜占庭节点作恶导致的。但是我们必须要容忍这种情况。

solution overview

将整个网络划分成许多的委员会,每个委员会并行共识一个交易的集合。
final committee 将所有交易的集合进行聚合,并广播给所有的节点。final committe进行聚合时,只需要将各个交易集合的摘要进行聚合就可以了。
最后 final commitee 会生成一组随机字符串,用于下一个epoch的生成身份部分。
final committee 可以有指定 id的普通committee来担任。

流程

每个epoch都需要进行下面的五步:

  1. 建立合法身份和形成委员会。

    身份证明由

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值