全球公链项目技术评估与分析蓝皮书

(2019年5月期)

编写单位

报告内容综述

公链是当前区块链领域最令人关注,也是现阶段应用最为广泛的项目类型。但公链存在着一定的技术与安全风险,无论是开发者、投资人还是企业都对公链需保持冷静与谨慎的态度。以往针对公链项目的技术内容与研发的评价大多来自于对其白皮书内容及当前项目产品状态的解读,客观数据分析的内容严重不足,从而导致分析结果缺乏严肃的数据支撑,因此,从数字代币的“喧噪背景”下剥离出纯粹的区块链项目技术价值就显得尤为重要。由北京天德科技有限公司联合链塔智库公司及相关权威机构,利用其自主研发的泰山沙盒——区块链技术评估数据库系统,结合大量历史公链评级经验,完成本次针对公链项目的技术评估与分析报告。

本期针对市值较高(前243名)的数字代币对应的公链相关信息进行采集与整理,数据采集日期截至于2019年5月17日。对其白皮书、开源社区、源代码、技术团队、项目产品等多维度进行特定指标的计算与评价,得到公链项目的整体情况如下:

有163个数字代币存在开放主链或智能合约源代码的开源社区项目,其中162个项目为GitHub社区项目、1个项目(Ardor)为Bitbucket社区项目,本次评估主要针对GitHub社区项目开展技术评估工作。与上期报告内容有以下不同之处:

为162个具备核心主链技术数据和评估条件的公链(智能合约)项目,采用客观数据分析与主观技术评价相结合的方式,利用技术评估模型框架计算其技术的评估分值,为开发者与投资人提供其价值参考,本期项目技术评估分值的前20排名如下。

排名 区块链项目 技术评估值
1 Ethereum Symbol
ETH
132.0
2 Cardano Symbol
ADA
107.0
3 Bitcoin Symbol
BTC
100.0
4 Stratis Symbol
STRAT
98.0
5 Lisk Symbol
LSK
98.0
6 aelf Symbol
ELF
91.0
7 Komodo Symbol
KMD
91.0
8 Waves Symbol
WAVES
90.0
9 Steem Symbol
STEEM
89.0
10 Zcash Symbol
ZEC
89.0
11 Raiden Network Token Symbol
RDN
88.0
12 Monero Symbol
XMR
87.0
13 IOTA Symbol
MIOTA
87.0
14 RChain Symbol
RHOC
86.0
15 Golem Symbol
GNT
84.0
16 Ontology Symbol
ONT
84.0
17 TRON Symbol
TRX
84.0
18 Skycoin Symbol
SKY
84.0
19 EOS Symbol
EOS
84.0
20 Stellar Symbol
XLM
83.0

总体数据分析与技术评估结果

为156个具备核心主链技术数据和评估条件的公链(智能合约)项目的相关技术性数据进行总体分析,总结结果如下。

编程语言统计分析

主链或智能合约核心编程语言总体分布情况

主链或智能合约核心编程语言主要集中在C++、Go、JavaScript、Solidity、Python和Java占据整个主链或智能合约核心编程语言的81.176%,不考虑专门的智能合约编程语言Solidity,当前主链项目所使用的编程语言基本符合主流编程语言排名趋势,说明这些编程语言特性更加符合区块链项目的开发需求。其中C++占据29.412%、Go占据23.529%,两门编程语言合并达到52.941%的使用率,成为公链主链项目编程语言的首选。

技术评估排名前20的主链核心编程语言分布情况

排名前20的主链项目所选择的编程语言类型非常分散,分布在9种编程语言上,其中C++Go占据了绝对优势(40.000%),但从其他编程语言的应用广泛性来看,呈现出技术选择的多样性,表明其他一些编程语言也可很好的适用于公链主链项目的开发。

开源许可证统计分析

主链或智能合约开源许可证分布情况

主链或智能合约项目许可证主要集中在MIT,表明大部分公链主链或智能合约项目选择为宽松型许可证,更加有利于源代码的传播与使用,另外GPL类型的许可证(AGPL-3.0、LGPL-3.0、GPL-3.0、GPL-2.0)共占据31.126%。

技术评估排名前20的主链许可证分布

技术评估排名前20的主链项目很多所选择的开源许可证更加倾向于GPL类型的许可证,说明技术评估较高的一些公链项目在利用开源社区开展技术研发的过程中更加注重其自身核心技术价值的保护,对其开源代码许可证的义务履行,更加有利于对其的版权保护与价值维护。

代码提交量分析

近一个年的主链项目代码提交次数前20的项目排名

以上公链主链项目在近一年中的开发进度良好,社区持续处于活跃状态,其中EOS、TRON、Rchain和0x代码提交总量均达到6000次以上,说明近一年来以上这4条公链项目表现出较强劲的技术增长性。

近一个月的主链项目代码提交次数前20的项目排名

与近一年的排名做比较发现大部分公链项目近期仍处于持续活跃状态,但EOS、TRON、Waves、Ark、Komodo、Bitcoin、Namecoin近期的活跃度已经有所下降。

代码贡献者分析

代码贡献者是支撑一个公链项目技术发展的主要甚至唯一的生力源,公链项目中技术团队的核心开发人员大部分会以代码贡献者的身份为项目提交代码,以带领社区的技术发展和公链产品的发布。

共追踪主链和智能合约项目有活动轨迹的代码贡献者总数为3136人,其中技术评估前20的主链项目代码贡献者总数为1163人,占整个被追踪贡献者总数的37.09%, 从中可以发现主要区块链核心贡献者集中在少数优质公链项目中,这些开源社区经过运营吸引了大批代码贡献者。

代码提交量前10的代码贡献者

代码提交量1000次以上的贡献者共63位,其中前十名贡献者为上图所示,其中laanwj作为Bitcoin的主链项目核心代码贡献者,由于其还为多个其他主链项目贡献代码,其代码贡献提交量达到了35997次,其他贡献者如sipa、gavinandresen、TheBlueMatt也是活跃在多个主链项目中成为其核心代码贡献者。

近一个月的提交次数前10的贡献者排名

随着公链项目数量的不断攀升,在一些早期项目相对成熟,核心贡献者经常承担着对其他贡献者提交代码的审核工作。这也使得许多新项目的代码贡献者在代码提交量方面慢慢提升。

技术能力评估前10的贡献者统计
贡献者 贡献者名字 贡献者主页
vbuterin vbuterin https://github.com/vbuterin
liuchengxu Liu-Cheng Xu https://github.com/liuchengxu
fireice-uk fireice-uk https://github.com/fireice-uk
xtaci xtaci https://github.com/xtaci
jankotek Jan Kotek https://github.com/jankotek
divan Ivan Daniluk https://github.com/divan
bytemaster Daniel Larimer https://github.com/bytemaster
luke-jr Luke Dashjr https://github.com/luke-jr
jamesob James O'Beirne https://github.com/jamesob
laanwj Wladimir J. van der Laan https://github.com/laanwj

项目与贡献者间关系分析

贡献者总数3136人,这其中许多贡献者交叉为不同的主链项目贡献代码,并且这种现象在公链开发社区已经十分常见,贡献者跨越各类项目进行研发也造成了其中一些项目的同质性与技术的继承性。

跨越项目最多的前10名贡献者的统计如下
主链项目技术关系最多的前20个项目的统计如下

共有482位贡献者为不止1条主链项目提交过代码,通过Fork关系,以及贡献者的交叉就构成了公有链项目之间的技术关系,隐性将技术贡献者的个人技术能力在项目间进行传递,其中有关系的主链项目有70条之多。

代码相似度分析

通过代码相似度算法对部分公链主链项目的源代码进行了相似度的比对计算,其中排在前10相似度较高的项目如下表所示。

公链主链项目 公链主链项目
Namecoin namecoin/namecoin-core Bitcoin bitcoin/bitcoin
United Bitcoin UnitedBitcoin/UnitedBitcoin Litecoin litecoin-project/litecoin
Qtum qtumproject/qtum Litecoin litecoin-project/litecoin
Viacoin viacoin/viacoin Bitcoin Gold BTCGPU/BTCGPU
DigiByte digibyte/digibyte Bitcoin bitcoin/bitcoin
Vertcoin vertcoin-project/vertcoin-core Viacoin viacoin/viacoin
United Bitcoin UnitedBitcoin/UnitedBitcoin Vertcoin vertcoin-project/vertcoin-core
Litecoin litecoin-project/litecoin Vertcoin vertcoin-project/vertcoin-core
Syscoin syscoin/syscoin Dash dashpay/dash
Komodo jl777/komodo ZClassic z-classic/zclassic

六维技术评估分值排行榜

基础技术评估Top20
贡献者技能匹配评估Top20
贡献者代码提交效能评估Top20
社区活跃度评估Top20
社区开放性与交互性评估Top20
白皮书与技术内容评估Top20

主要公链项目技术数据分析

Ethereum(132)

基本信息

   Ethereum

组织 Ethereum 仓库 204
主链仓库 ethereum/go-ethereum
Star
20454
Fork
6984
建立日期 2013-12-26 21:05:46.000
代码贡献者 408
代码提交量 10,971
近一个月代码提交量 72
技术评估结果

技术分析

基本技术

Ethereum公链项目提供了具备详实技术内容的白皮书与技术社区,项目推进进度基本符合其公布的路线图规划,Ethereum主链项目核心编程语言为Go,开源许可证License为Other,代码仓库(ethereum/go-ethereum)获得20454个Stars和存在6984个Forks。

项目团队与社区

Ethereum核心主链项目共408位代码贡献者,其中代码提交量排名前10位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
obscuren 2620 0
karalabe 1150 16
fjl 868 5
tgerring 523 0
zelig 324 0
CJentzsch 185 0
debris 180 0
maran 171 0
Gustav-Simonsson 159 0
holiman 146 6

与核心主链项目代码编程语言Go技能完全匹配的贡献者20位,其中代码提交量排名前10位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
stevenroose 8 0
ebuchman 9 0
markya0616 10 0
kurkomisi 10 1
lmars 17 0
egonelbre 19 0
janos 72 1
rjl493456442 79 5
zsfelfoldi 125 3
obscuren 2620 0

核心主链项目中通过技术能力评估,前十位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
vbuterin 24 0
divan 4 0
pilu 3 0
karalabe 1150 16
gavofyork 40 0
Arachnid 33 0
cubedro 20 0
obscuren 2620 0
shazow 8 0
ligi 14 0

Ethereum核心主链项目的代码贡献者中优秀的贡献者占整体贡献者数量的22.321%,共提交代码量为5974次,占项目整个提交代码量的54.45%。

近一年提交代码量为10,971次,近一个月提交代码量72次。

社区整个Issues为8674个,Open状态的Issues为510个,总体Bug Issues的解决率为0,从社区开放的时间来看,开放性与互动性方面表现正常。

项目关系与技术独立性

Ethereum存在相关性的区块链项目如下。

区块链项目 相关性来源 相关性类型

Ubiq
UBQ

Ethereum
ETH

Factom
FCT

Augur
REP

Decred
DCR

Ethereum Classic
ETC

Golem
GNT

Gnosis
GNO

Bancor
BNT

Status
SNT

EOS
EOS

Storj
STORJ

CyberMiles
CMT

SmartMesh
SMT

EthereumUbiq,Factom,Augur,Decred,Ethereum Classic,Golem,Gnosis,Bancor,Status,EOS,Storj,CyberMiles,SmartMesh,公链项目具有关系

主链核心代码分析

Ethereum的主链源代码同部分其他公链项目的主链源代码进行了相似度比较与分析,与Ethereum主链源代码存在相似的项目如下。

区块链项目

Ubiq
UBQ

True Chain
TRUE

True Chain
TRUE

Dispatch
Dispatch

从时间轴和相似的代码分析,Ethereum的主链源代码与Ubiq,True Chain,True Chain,Dispatch,的部分源代码比较相似

Cardano(107)

基本信息

   Cardano

组织 Cardano 仓库 179
主链仓库 input-output-hk/cardano-sl
Star
3076
Fork
518
建立日期 2016-10-14 21:44:38.000
代码贡献者
代码提交量 16,793
近一个月代码提交量 11
技术评估结果

技术分析

基本技术

Cardano公链项目提供了具备详实技术内容的白皮书与技术社区,项目推进进度基本符合其公布的路线图规划,Cardano主链项目核心编程语言为Haskell,开源许可证License为Other,代码仓库(input-output-hk/cardano-sl)获得3076个Stars和存在518个Forks。

项目团队与社区

Cardano核心主链项目共位代码贡献者,其中代码提交量排名前10位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
gromakovsky 2200 0
volhovm 837 0
neongreen 833 0
sectore 797 0
Martoon-00 765 0
pva701 703 0
flyingleafe 530 0
georgeee 473 0
avieth 451 2
adinapoli-iohk 395 10

与核心主链项目代码编程语言Haskell技能完全匹配的贡献者20位,其中代码提交量排名前10位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
ChShersh 105 0
Jimbo4350 109 0
denisshevchenko 118 0
parsonsmatt 200 5
edsko 215 0
int-index 248 0
avieth 451 2
georgeee 473 0
Martoon-00 765 0
neongreen 833 0

核心主链项目中通过技术能力评估,前十位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
chrisdone 2 0
puffnfresh 1 0
Anviking 14 1
snowleopard 1 0
arybczak 4 0
sectore 797 0
jagajaga 7 0
nh2 2 0
DominikGuzei 15 0
h4ck3rm1k3 2 0

Cardano核心主链项目的代码贡献者中优秀的贡献者占整体贡献者数量的16.484%,共提交代码量为1174次,占项目整个提交代码量的6.99%。

近一年提交代码量为16,793次,近一个月提交代码量11次。

社区整个Issues为4143个,Open状态的Issues为159个,总体Bug Issues的解决率为66.67%,从社区开放的时间来看,开放性与互动性方面表现正常。

项目关系与技术独立性

Cardano存在相关性的区块链项目如下。

区块链项目 相关性来源 相关性类型

Monero
XMR

Decred
DCR

TRON
TRX

CardanoMonero,Decred,TRON,公链项目具有关系

主链核心代码分析

Cardano的主链源代码同部分其他公有链项目的主链源代码进行了相似度比较与分析,目前没有与Cardano的主链源代码相似的其他公有链项目。

Bitcoin(100)

基本信息

   Bitcoin

组织 Bitcoin 仓库 4
主链仓库 bitcoin/bitcoin
Star
34767
Fork
21047
建立日期 2010-12-19 23:16:43.000
代码贡献者 627
代码提交量 20,437
近一个月代码提交量 155
技术评估结果

技术分析

基本技术

Bitcoin公链项目提供了具备详实技术内容的白皮书与技术社区,项目推进进度基本符合其公布的路线图规划,Bitcoin主链项目核心编程语言为C++,开源许可证License为Other,代码仓库(bitcoin/bitcoin)获得34767个Stars和存在21047个Forks。

项目团队与社区

Bitcoin核心主链项目共627位代码贡献者,其中代码提交量排名前10位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
laanwj 1622 0
sipa 1112 2
MarcoFalke 641 17
TheBlueMatt 620 0
theuni 584 0
gavinandresen 485 0
jonasschnelli 476 1
jnewbery 400 1
practicalswift 366 3
luke-jr 349 1

与核心主链项目代码编程语言C++技能完全匹配的贡献者20位,其中代码提交量排名前10位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
paveljanik 109 0
promag 139 8
gmaxwell 163 0
morcos 209 0
ryanofsky 238 2
fanquake 255 0
gavinandresen 485 0
theuni 584 0
MarcoFalke 641 17
sipa 1112 2

核心主链项目中通过技术能力评估,前十位的贡献者如下。

贡献者 全部代码提交数量 近一个月的代码提交数量
luke-jr 349 1
jamesob 34 2
laanwj 1622 0
sipa 1112 2
gavinandresen 485 0
petertodd 102 0
gmaxwell 163 0
codler 10 0
jonasschnelli 476 1
eklitzke 17 0

Bitcoin核心主链项目的代码贡献者中优秀的贡献者占整体贡献者数量的29.630%,共提交代码量为7812次,占项目整个提交代码量的38.22%。

近一年提交代码量为20,437次,近一个月提交代码量155次。

社区整个Issues为15866个,Open状态的Issues为675个,总体Bug Issues的解决率为95.97%,从社区开放的时间来看,开放性与互动性方面表现正常。

项目关系与技术独立性

Bitcoin存在相关性的区块链项目如下。

区块链项目 相关性来源 相关性类型

Litecoin
LTC

Bitcoin
BTC

Peercoin
PPC

Bitcoin
BTC

Dash
DASH

Bitcoin
BTC

Syscoin
SYS

Bitcoin
BTC

Particl
PART

Bitcoin
BTC

United Bitcoin
UBTC

Bitcoin
BTC

Ravencoin
RVN

Bitcoin
BTC

Namecoin
NMC

Primecoin
XPM

XRP
XRP

Dogecoin
DOGE

Vertcoin
VTC

DigiByte
DGB

ReddCoin
RDD

MonaCoin
MONA

Groestlcoin
GRS

WhiteCoin
XWC

MaidSafeCoin
MAID

Monero
XMR

Viacoin
VIA

Stellar
XLM

Emercoin
EMC

Factom
FCT

Decred
DCR

PIVX
PIVX