Vortex共识算法对超级节点竞选的意义是什么
扫描二维码
随时随地手机看文章
好的共识机制是一个区块链项目的灵魂,它决定着项目生态能否最终走向繁荣。前不久,我们正式开启了VNT超级节点竞选及投票活动,这让不少社区爱好者对VNT Chain采用的共识机制产生了兴趣。
在区块链世界,共识一般都是通过特定的数学算法实现,常见的共识机制有PoW(工作量证明),PoS(股权证明),DPoS(委托权益证明),BFT(拜占庭容错)等。但每种单一的算法都有自己的优点和缺点,例如PoW模式具备高安全性与稳定性,却牺牲了性能,其中最为典型便是比特币。再如PoS模式是通过算法来选择出块共识节点,具备高性能,却牺牲了部分的安全性与去中心化。
那么能否博取众长设计一个即公平、安全又能保证性能的共识算法呢?这是我们创新采用Vortex共识算法的初衷,Vortex共识算法融合了DPoS、BFT与硬件加速,并融入了保证金、高安全、终局性、激励机制等设计。
如何保证网络安全高效
Vortex通过融入DPoS,能够加速打包交易、生成区块和验证区块,获得较高的交易吞吐量;并让所有持有代币的用户都可以参与到网络治理,投票选出若干委托节点,区块链完全由这些委托节点按照一定算法生成和维护。通过融入BFT,Vortex能够实现快速终局,任何交易经过一段时间之后,总能被区块链最终确认,并且无法进行回滚。同时我们对传统BFT算法进行改进,把交易和共识拆分在两个通道中做异步处理,提升消息处理效率;这样取消了交易全网广播,能够降低网络带宽需求。此外Vortex还能够应对各种攻击,包括Nothing at stack、Long range attack、Double spending attack、Bribery attack等,有效防止分叉和数据篡改。
如何在低能源成本下提高性能
在当前严格的效率要求下,数据中心面临着越来越大的数据量和工作量复杂性的需求。为了满足高性能、可扩展性和可伸缩性的目标,服务通常运行在数百到数千台机器上。这就需要一些合作共识来维护机器的一致性。不可避免的性能开销和需要的附加资源往往会降低一致性,导致较少的用户必须建立更复杂的应用程序来处理潜在的不一致性。一致性需要的高成本来自达成协议所需的多轮沟通,传统的网络栈没有对时间延迟或者特定的通信模式进行优化,使共识协议的加速变成了一个瓶颈。我们的另一个策略是做硬件加速,通过对共识算法里涉及到的验签环节做硬件加速,以实现在低能源成本下提高系统的性能。
如何寻求各方平衡点
除了考虑性能及效率之外,对于智能网络,要想把共识作为网络的一种属性,而不是只让它在应用层上实现,还需要在实现的复杂度和中间件可达到的吞吐量中找到平衡点。而在网络中加入区块链共识协议提高系统效率是很好的选择,如PBFT(实用拜占庭容错算法)/SBFT(简化拜占庭容错算法)/RBFT(冗余拜占庭容错算法)等共识协议。我们通过FPGA实现共识验证的系统运行框架,FPGA(现场可编程门阵列)具有低功耗的特点,不受传统的CPU在数据处理方面的线速限制,在上面运行共识协议能够降低时间延迟,通过扩展中间件的功能或添加廉价的共识给网络处理节点,将共识协议更多的价值推广到网络。
通过这种在网络级采用硬件实现共识验证的方法,可以不增加数据中心的容量,在FPGA上实现PBFT/ SBFT/RBFT等区块链共识协议,降低了时间延迟。具体运作步骤如下:
1)首先构建在网络级采用FPGA实现共识验证的系统运行框架;
2)FPGA节点之间通过执行TCP/IP(传输控制协议/因特网互联协议)协议进行点对点连接;3)FPGA节点采用ARP(地址解析协议)、ICMP(控制报文协议)、DHCP(动态主机配置协议)辅助TCP/IP协议与其他FPGA节点交互,缩短TCP/IP堆栈,使FPGA处于真真实网络中;
4)FPGA节点将数据消息转化为满足共识协议需要的报文格式;
5)由FPGA节点采用PBFT、SBFT或RBFT的区块链共识协议对数据消息进行传递广播,其他FPGA节点收到后发生发聩并进行投票。
如何保障节点公平竞选
那么在VNT超级节点竞选投票中,我们如何保障投票公平与生态平衡。如上述步骤,在加入网络的FPGA节点生成注册证书的前提下,即FPGA节点作为合法节点进入网络。假设将三个FPGA节点编号0、1、2,首先根据区块高度对3个节点取模(三个FPGA节点),得到的余数即对应FPGA的编号,这样选出领导节点。领导节点将规范了报文格式之后需要广播的数据消息使用哈希函数SHA-256生成摘要,然后生成一个随机数nonce,并用硬件加密模块进行ECDSA计算,生成对摘要的签名,向其他节点提交证明。其他节点收到数据信息后,通过随机数nonce验证签名是否是数据发出者的,确定数据合法性,然后进行收到消息的反馈通知并对数据进行投票工作。
相比于公有链常用的几类共识机制,Vortex在保证共识效率的同时,确保快速实现交易的终局性,防止交易回滚;同时在网络中可保证持续的安全运行,在部分委托节点作恶的情况下也能继续工作,并通过投票来替换恶意的委托节点,直到恢复到100%可靠的委托节点。此外Vortex的设计还融入激励机制,对区块链网络中的交易打包节点、交易传输节点、监督节点进行奖励,形成高效的传输通路和快速处理交易,对揭露节点恶意行为进行奖励。
VNT Chain采用Vortex共识算法,最终目的是希望给社区成员提供更好的体验,与广大社区爱好者共同构建生态未来。现在VNT超级节点竞选及投票活动正在火热进行,欢迎每一位社区成员参与到VNT社区的治理中,推动网络和整个生态的稳定运行,共同打造更加良性、丰富、多元化的VNT社区生态,共享VNT生态繁荣。