专栏名称: 渡鸦区块链
区块链领域创业公司的首发阵地 投资机构必读公众号
目录
相关文章推荐
51好读  ›  专栏  ›  渡鸦区块链

DFINITY区块链连载(二)阈值组创建与区块生成

渡鸦区块链  · 公众号  · 区块链  · 2017-08-18 09:06

正文

请到「今天看啥」查看全文


每个h高度的出块流程如下:

1)通过VRF算法将当前高度阈值组的进程进行排序




2)对排序完的进程划分不同的插槽,标记为系统内的优先级顺序

3)对不同插槽的进程打分,标记权重

3*)DFINITY也引入了基于超时的机制,即等待第一个被选中的进程多久,如未出块,则由下一个进程执行出块。


如图所示,一个完整的出块流程:1)随机排序; 2)分组(插槽);3) 打分; 4)选出最高得分的进程打包区块并广播; 5)阈值组接力, 继续周而复始的寻找最高得分的链

三、遗留的问题

通过阈值接力结构和概率插槽协议可以实现高效的出块和极低概率的链分叉事件。不过我们依然会碰到网络中的恶意角色试图进行的攻击,比如以下两种情况:

1)自私挖矿攻击: 恶意对手会选择性的保留挖出来的区块并逐步发布,相比诚实节点获得了控制交易的优势;同时,自私挖矿攻击增加了达成最终一致性所需的确认数。

2)无利害关系 : 恶意对手只需要运气足够好,被选为一系列0插槽(即最高优先级),那么它就可以随时在所有的分叉上进行投票,并从h高度之后创建分叉并实施重放攻击。

DFINITY网络提出了一种解决方法:







请到「今天看啥」查看全文