前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >详解FLETA的Proof-of-Formulation共识算法

详解FLETA的Proof-of-Formulation共识算法

作者头像
银河1号
发布2019-04-12 10:06:28
4460
发布2019-04-12 10:06:28
举报
文章被收录于专栏:银河系资讯银河系资讯

FLETA是一个为分散式应用程序(DApps)设计的区块链服务平台,它解决了困扰区块链空间的潜在可扩展性问题,其中包括平衡可扩展性,速度和分散化三个方面。

FLETA对区块链领域的重大创新之一是新颖的“配方证明”共识算法,通过提供块和交易的实时确认来防止分叉。配方证明一致性算法目前正通过FLETA和美国专利局(申请号:62717695)进行专利申请。

什么是一致性算法?

共识算法是计算机科学中的一个过程,用于在整个分布式网络中就单个数据值在多个方面达成一致。在区块链网络中,共识通常集中在区块生成和确认上。

比特币和以太坊都使用工作证明(PoW)一致性算法来创建和确认各自区块链网络中的交易。

PoW在更大规模上是不切实际的,因为它需要整个网络达成多数共识,这需要使用过多的计算能力和资源。因此,比特币是一个缓慢的系统,每秒只能管理7个事务。而以太坊并没有更好,每秒只有15到25笔交易。

Proof-of-Formulation

在配方证明(PoF)中,与现有的区块链平台相比,挖掘和块生成的方式不同。Formulator充当FLETA平台中的块生成器。Observers允许实时确认生成的块并防止双重花费。

Formulators

Formulator作为PoF算法的支柱,通常有20个Formulator组成一个在“RankTable”下排名在1到20之间的组。他们的排名基于一个分数,该分数通过以下公式计算:

Score: uint64(Phase) << 32 + uint64(binary.LittenEndian.Uint32(hash[:4]))

“Hash”用作前一个块的哈希值,“Phase”是一个与时间相关的值,表示RankTable已经“转向”或经过所有配方设计器生成块的次数。

系统中的新Formulator参与具有最大阶段+ 1值的RankTable。

这样做的目的是确保每个Formulator在每个阶段都至少有一个挖掘机会,因此将为块生成的每个阶段制定不同的配方器序列(或排名)。这可以防止任何恶意Formulator攻击和勾结的可能性。

Observers

简单来说,Observers的主要作用是防止DDoS攻击并维护整个区块链网络的安全性。

为了维护系统的系统序列和过程,每个Formulator将访问Observers节点以隐藏和掩盖其IP。这可以防止任何形式的针对Formulator的DDoS攻击。

Observers节点的主要特征包括:

  • 每个Formulator组有5个Observers节点,其中3个需要在生成的块上签名才能确认
  • 收到有关Formulator活动的实时信息
  • 向Formulator设备和其他用户显示节点状态和结构信息,以提高网络的整体透明度

块生成过程

PoF下的块生成如下:

  • 具有最高等级/分数的Formulator成为块生成器
  • 排名第2到第10的Formulator组成了同步组。他们是同意块生成顺序的人
  • 排名第11至20位的Formulator组成了备用组
  1. 块生成器生成块并将其发送到同步组
  2. 同步节点确认块生成器序列和标头,对块进行签名,然后将其发送到Observer节点。
  3. 当Observer节点收到至少6个签名时,它会检查所有事务签名以确认块的合法性,然后签署块将其发送给其他Observer节点
  4. 一旦收集了五个Observer节点中的三个签名,该块就完成了,Observer将完成的签名发送回同步组
  5. 然后,同步组通过将Observer的签名附加到他们最初接收的块并将其发送到备用组来创建已完成的块
  6. 然后将块分发到网络

一旦块生成过程完成,块生成器(第一个排名的Formulator)返回到列表的底部(等级20),并且每个Formulator向上移动一个等级,使得每个Formulator都有机会在RankTable的每个转向期间生成块。

PoF之所以比其他共识协议快得多,是因为网络分为不同的各方,每个方都负责处理过程的不同部分。例如,同步和备用组有助于划分传输流量,以确保块在整个网络中尽可能快地传播。

在配方证明下,分叉被阻止,区块链网络能够以比现有区块链网络高得多的速度(10,000到20,000 TPS)处理交易。

PoF下的分叉预防

#1丢弃有缺陷的块

如果块生成器发送了错误的块,则收件人节点将丢弃该块并准备接收新块。在这种情况下,发生器具有1秒的时间以产生正常块,否则排名第二的Formulator将开始创建新块,如果初始Formulator仍未提出新块,则该块将在3秒后传播。

Observer节点将确认初始生成器未能在3秒内创建块,因此从第二级Formulator继续进行块的签名过程。

#2 分叉预防

正如我们已经看到的以太坊和以太坊经典,以及比特币,比特币现金和比特币SV分裂,分叉可能对区块链网络非常不利。 PoF算法通过使分叉不可能发生来重新认识这种异常。

由于5个Observer节点中有3个需要在块上签名以便确认它,因此根本不可能使用分叉,因为具有3个签名中的3个的第一个块将被确认为链中的下一个块。

Conclusion

FLETA的配方证明共识不仅快速,而且由于Observer节点,Formulator和同步组之间增加了一层保护,因此它也非常安全。

与PoW共识不同,PoF不需要过多的计算资源或依赖于某人拥有的“赌注”数量。正因为如此,它减少了对每个人谁开采和创造区块的竞争。 PoF还具有内置机制,以防止任何类型的分叉的可能性。您可以在FLETA中了解有关PoF的更多信息whitepaper, tech paper, and Alpha Testnet报告.

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-05,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 银河系1号 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
腾讯云区块链服务平台 TBaaS
腾讯云区块链服务平台(Tencent Blockchain as a Service,简称TBaaS)致力于打造全球领先的企业级区块链技术平台,帮助客户、开发者及合作伙伴轻松创建和管理可托管、可扩展的区块链网络,助力产业协同发展。TBaaS 支持长安链·ChainMaker、Hyperledger Fabric等区块链底层平台,简化部署、运维及开发流程,实现业务快速上链,提升链上治理效率。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档