EVOLAB Benchmark丨波场项目技术评测

栏目: 编程工具 · 发布时间: 6年前

内容简介:Tron是币圈网红孙宇晨发起的一个公链项目,核心共识机制是类似BTS和EOS的DPoS共识机制,智能合约平台使用高度类似以太坊虚拟机EVM的Tron虚拟机TVM,可以使用solidity语言开发智能合约。根据白皮书的描述,Tron项目的主要特性在于性能好,同时提供了与以太坊虚拟机EVM同样的智能合约系统。

EVOLAB Benchmark丨波场项目技术评测

EVOLAB Benchmark丨波场项目技术评测

一、 概述

Tron是币圈网红孙宇晨发起的一个公链项目,核心共识机制是类似BTS和EOS的DPoS共识机制,智能合约平台使用高度类似以太坊虚拟机EVM的Tron虚拟机TVM,可以使用solidity语言开发智能合约。

根据白皮书的描述,Tron项目的主要特性在于性能好,同时提供了与以太坊虚拟机EVM同样的智能合约系统。

二、 分析

测试环境说明

我们在AWS上部署了约100个Kubernetes节点,用以模拟Tron测试网络,具体测试环境如下:

EVOLAB Benchmark丨波场项目技术评测

(一) 共识

根据白皮书及其他公开资料,Tron采用类似BTS和EOS的DPoS共识机制,并把它命名为TPoS。区别于BTS与EOS用C/C++实现,TPoS 使用 Java 实现DPoS共识机制。

具体来说,在Tron的网络中,每个账户都可以参与竞选超级代表,也可以给他们支持的超级代表候选人投票,最终选出27个超级代表作为主节点。主节点拥有打包权,轮流负责把交易数据打包成区块,并验证区块,一旦2/3的主节点确认该区块,则交易不可逆转。

DPoS这种适度民主的中间方案提高了系统效率,是目前一种较平衡的兼顾了性能与安全的方案,但其不可避免的缺点是由于实际控制节点减少,导致被攻击的可能性增加。

系统工作原理图示如下:

EVOLAB Benchmark丨波场项目技术评测

(二) 智能合约

Tron的智能合约使用solidity编程语言开发,运行在Tron的虚拟机,即TVM。TVM和EVM环境兼容,开发人员可以在具有solidity的混合环境中构建、调试和执行智能合约。 这使得原先在以太坊EVM环境下进行开发的应用,可以方便地转换到TVM上。

(三) 安全

通过Benchmark公链测试工具,我们对Tron进行了一系列安全测试,并从中选取了我们认为对DPoS机制的公链来说,有参考意义的几个攻击指标。

我们的测试方法如下:

1.建立Tron测试网;

2.发送RPC,让测试网部分节点对其他节点发起攻击;

3.得到测试结果如下

EVOLAB Benchmark丨波场项目技术评测

测试结果:从DDos攻击测试结果可知,攻击者可以向全部或51%的主节点发送DDos攻击并使Tron 网络无法使用;从网络分裂攻击测试结果可知,在发生网络分裂攻击后,在网络恢复正常之前,在较小的链上进行的任何重复交易都将丢失。

(四) 性能

通过Benchmark公链测试工具,对Tron进行性能测试,我们的测试方法如下:

1.建立Tron测试网

2.发送RPC, 让测试网部分节点发起交易(每秒N笔交易,线性增长);

3.节点检测交易同步的时间,直到检测到超过一定时间(一般是出块时间)。

表- 安全测试结果

EVOLAB Benchmark丨波场项目技术评测

根据Tron官方宣传,Tron主网上线后性能达到2000 TPS,未来会达到10000TPS。 根据 测试,目前在理想网络情况下性能只能达到1200TPS。

(五) 技术管理

1 代码更新

Tron 的Github仓库 一共有36个public repositories,主要repositories的具体数据如下:

表- Tron Github 数据

EVOLAB Benchmark丨波场项目技术评测

根据Tron的java-tron的commits数据,得到java-tron的代码更新,如下:

EVOLAB Benchmark丨波场项目技术评测

java-tron的代码更新情况

说明:Tron的代码更新频繁,属于一直有持续代码贡献与进展的项目。

2 .   代码相似

通过Benchmark公链测试工具,对Tron进行代码相似度检查,因为Tron的技术栈是Java,选择以ethereumj作为标准。

具体测试方法如下:

(1)建立代码索引库

(2)把java-tron的源代码放进Elasticsearch

(3)把java-tron的源代码和ethereumj作比较。

从测试结果可知 java-tron一共976个java文件,和ethereumj相似的文件有64个。

我们从代码机制分析, Tron的机制为DPoS,但由于与BTS/EOS的程序语言不同,是用Java重新实现了这一机制,所以代码独创性高(不意味着机制创新)。与ETH的智能合约高度类似,所以这一部分与ETH的重复度高。

(六) 激励模型

Tron采用类似BTS和EOS的DPoS共识机制,用户需要支付一定TRX成为超级代表候选,每6小时统计一次票数,由全体用户投票选择票数最高的127名候选作为代表,其中票数最高的27名作为超级代表,并由超级代表负责出块。代表会获得一部分竞选奖励,超级代表还会获得出块奖励。

(七) DApp生态

表- Tron 24H 用户活跃度前 10 DApp 数据

EVOLAB Benchmark丨波场项目技术评测

EVOLAB Benchmark丨波场项目技术评测

图1

EVOLAB Benchmark丨波场项目技术评测

图2

EVOLAB Benchmark丨波场项目技术评测

图3

EVOLAB Benchmark丨波场项目技术评测

图4

Tron DApp生态基本是以OCDApp、TRONbet为代表的博彩DApp。 4月份Tron DApp生态的活跃用户、交易数量并没有太大的变化,但是DApp的数量和交易额都有明显上升。

三、 总结

Tron 想要打造一个高TPS的智能合约平台。

其共识机制采用了DPoS共识算法,由27个超级代表完成出块,通过部分中心化的手段,牺牲了一定安全性,来提高系统性能, 这与BTS与EOS的机制是相同的;智能合约则是借鉴了ETH的思路,并参考了其代码。

项目的主要特性在于性能好,即每秒处理事务的数量多。 根据测试,目前的系统在理想情况下的速度,比宣传的主网TPS要低约一半。

同时项目提供了与以太坊虚拟机EVM同样的智能合约系统,便于原本在以太坊上运行的DApp可以被轻松转移到性能更好的Tron智能合约TVM上。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Beginning iPhone and iPad Web Apps

Beginning iPhone and iPad Web Apps

Chris Apers、Daniel Paterson / Apress / 2010-12-15 / USD 39.99

It seems that everyone and her sister has developed an iPhone App—everyone except you, the hard-working web professional. And now with the introduction of the iPad, you may even feel farther behind. B......一起来看看 《Beginning iPhone and iPad Web Apps》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具