阅读 47

对话 | 浅析NEO的dBFT共识算法

近期,我们收到很多来自NEO社区爱好者对于如何获得GAS的疑问,为此我们采访了NEO的高级研发经理Malcolm。



Malcom

NEO区块链社区高级研发经理

双硕士(国际工业工程与管理、计算机科学与工程),长期从事软件开发与软件项目管理,曾就职于埃森哲、Webpower等国际知名企业。擅长模拟和建模、算法开发、经济建模、找到复杂问题的简单解决方案。职业生涯中长期担任Java软件工程师、分布式软件开发经理、研发经理等重要职位。在项目的开发、管理及实施方面具有丰富的实战经验。


Q:Interviewer

A:Malcolm


Q:NEO真的没有转账手续费吗?

A:是的,目前是没有手续费的。


Q:为什么要设置这种0转账手续费的机制呢?

A:NEO采用的是NEO+GAS的双token的机制。NEO是管理代币用以权益证明,而GAS用作燃料手续费。在dBFT共识算法中,手续费是交给记账节点的,只有持有足够多的NEO,才有权利选出共识节点。记账节点有权利根据手续费的多少排列交易顺序。设置0转账手续费,是为了让转账排序只取决于交易发送顺序,而非付出手续费的多少,这样能够有利于节约资源。NEO区块链实测可以达到1000TPS,即使是现在,也有200TPS-300TPS,转账手续费设置为0,依然可以保证网络的顺畅。


Q:转账手续费为0的情况下,矿工怎么获得收益呢?

A:矿工这一概念,存在于PoW共识算法中,dBFT共识算法中是没有矿工的存在的。NEO的利益分配模型中虽然没有矿工的环节,但是对所有的NEO持有者都是友好地。这来自于两部分,一方面,想要在NEO区块链上部署智能合约需要付500个GAS,我们会送给部署者10个,相当于490个GAS会被收取,这些GAS将会分发给所有的NEO持有者;另一方面,NEO每个区块的出产时间大概是15-20秒,每个区块目前会产生8个GAS,这些GAS会被平均的分发给NEO持有者。


Q:GAS随着区块产生,NEO呢?

A:NEO区块链在创世区块的时候,将全部1亿个NEO制造了出来。


Q:那如果我拥有全部1亿个NEO,每当有人在NEO区块链上部署智能合约,我都能够获得500个GAS?

A:是的。所有因部署智能合约和转账产生的GAS,都会自动去到GAS Pool里自动管理,再自动分发给每个NEO,这都是自动完成的。正因为NEO的持有者会自动获得GAS,会让NEO的持有者更有欲望推广NEO区块链,这有利于NEO生态的建设。


Q:最近很多币种都在搞分叉,NEO会有这种情况出现吗?

A:不会的,NEO的共识机制是先共识,再出块,这就决定了,NEO很难被分叉。也正是因为这样,交易只需要一个确认就已经被保证。也减少了作恶节点对整个区块链造成影响的可能性。


Q:谢谢你Malcolm。

A:不客气!


知识点补充:

dBFT 全称为 Delegated Byzantine Fault Tolerant,是一种通过代理投票来实现大规模节点参与共识的拜占庭容错型共识机制。NEO 管理代币的持有者通过投票,可以选出其所支持的记账人。随后由被选出的记账人团体通过 BFT 算法,来达成共识并生成新的区块。投票在 NEO 网络持续实时进行,而非按照固定任期。


关注下面的标签,发现更多相似文章
评论