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

(2019年10月期)

编写单位

报告内容综述

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

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

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

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

排名 区块链项目 技术评估值
1 Ethereum Symbol
ETH
119.0
2 Cardano Symbol
ADA
100.0
3 Lisk Symbol
LSK
96.0
4 Stratis Symbol
STRAT
93.0
5 Bitcoin Symbol
BTC
92.0
6 IOTA Symbol
MIOTA
88.0
7 RChain Symbol
RHOC
88.0
8 aelf Symbol
ELF
87.0
9 Komodo Symbol
KMD
87.0
10 Stellar Symbol
XLM
85.0
11 Steem Symbol
STEEM
85.0
12 Waves Symbol
WAVES
83.0
13 Monero Symbol
XMR
83.0
14 Skycoin Symbol
SKY
83.0
15 NEO Symbol
NEO
82.0
16 Raiden Network Token Symbol
RDN
82.0
17 Zcash Symbol
ZEC
82.0
18 Nebulas Symbol
NAS
81.0
19 Golem Symbol
GNT
81.0
20 Storj Symbol
STORJ
78.0

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

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

编程语言统计分析

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

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

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

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

开源许可证统计分析

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

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

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

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

代码提交量分析

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

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

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

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

代码贡献者分析

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

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

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

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

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

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

技术能力评估前10的贡献者统计
贡献者 贡献者名字 贡献者主页
vbuterin vbuterin https://github.com/vbuterin
muesli Christian Muehlhaeuser https://github.com/muesli
xtaci xtaci https://github.com/xtaci
fireice-uk fireice-uk https://github.com/fireice-uk
jankotek Jan Kotek https://github.com/jankotek
bytemaster Daniel Larimer https://github.com/bytemaster
divan Ivan Daniluk https://github.com/divan
sipa Pieter Wuille https://github.com/sipa
luke-jr Luke Dashjr https://github.com/luke-jr
laanwj Wladimir J. van der Laan https://github.com/laanwj

项目与贡献者间关系分析

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

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

共有411位贡献者为不止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(119)

基本信息

   Ethereum

组织 Ethereum 仓库
主链仓库 ethereum/go-ethereum
Star
24299
Fork
8774
建立日期 2013-12-26 21:05:46.000
代码贡献者 428
代码提交量 11,248
近一个月代码提交量 54
技术评估结果

技术分析

基本技术

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

项目团队与社区

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

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

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

贡献者 全部代码提交数量 近一个月的代码提交数量
kurkomisi 18 0
egonelbre 19 0
nolash 27 0
janos 74 0
gballet 77 0
rjl493456442 111 1
zsfelfoldi 136 1
holiman 198 6
karalabe 1210 16
obscuren 2620 0

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

贡献者 全部代码提交数量 近一个月的代码提交数量
vbuterin 24 0
muesli 3 0
divan 4 0
egonelbre 19 0
gavofyork 40 0
karalabe 1210 16
cubedro 20 0
Arachnid 36 0
obscuren 2620 0
shazow 9 0

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

近一年提交代码量为11,248次,近一个月提交代码量54次。

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

项目关系与技术独立性

Ethereum当前没有与之形成关系的公有链项目,可以看出Ethereum项目具备完全的技术独立性,技术具备极高的原创性,与其他公有链项目不存在技术与团队的依赖性。

主链核心代码分析

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

区块链项目

Ubiq
UBQ

True Chain
TRUE

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

Cardano(100)

基本信息

   Cardano

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

技术分析

基本技术

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

项目团队与社区

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

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

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

贡献者 全部代码提交数量 近一个月的代码提交数量
edsko 215 0
parsonsmatt 220 0
int-index 248 0
rockbmb 249 0
erikd 265 0
georgeee 473 0
avieth 484 0
Martoon-00 765 0
neongreen 833 0
volhovm 837 0

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

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

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

近一年提交代码量为16,948次,近一个月提交代码量21次。

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

项目关系与技术独立性

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

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

Monero
XMR

Decred
DCR

TRON
TRX

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

主链核心代码分析

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

Lisk(98)

基本信息

   Lisk

组织 Lisk 仓库 32
主链仓库 LiskHQ/lisk
Star
2490
Fork
386
建立日期 2016-02-02 05:45:35.000
代码贡献者 61
代码提交量 19,486
近一个月代码提交量 433
技术评估结果

技术分析

基本技术

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

项目团队与社区

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

贡献者 全部代码提交数量 近一个月的代码提交数量
karmacoma 2362 0
MaciejBaj 1002 7
4miners 926 0
nazarhussain 597 5
SargeKhan 531 8
ManuGowda 450 12
diego-G 420 0
Tschakki 310 0
jondubois 287 1
pablitovicente 216 0

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

贡献者 全部代码提交数量 近一个月的代码提交数量
5an1ty 2 0
chiptus 3 0
MaxKK 3 0
tobiaslins 4 0
TheGoldenEye 16 0
willclarktech 44 0
yatki 104 12
vitaly-t 159 0
jondubois 287 1
SargeKhan 531 8

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

贡献者 全部代码提交数量 近一个月的代码提交数量
jondubois 287 1
tobiaslins 4 0
5an1ty 2 0
vitaly-t 159 0
dakk 6 0
fix 33 0
m-schmoock 4 0
MaxKK 3 0
karmacoma 2362 0
Isabello 3 0

Lisk核心主链项目的代码贡献者中优秀的贡献者占整体贡献者数量的6.383%,共提交代码量为293次,占项目整个提交代码量的1.50%。

近一年提交代码量为19,486次,近一个月提交代码量433次。

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

项目关系与技术独立性

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

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

Groestlcoin
GRS

Ark
ARK

LiskGroestlcoin,Ark,公链项目具有关系

主链核心代码分析

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

Stratis(93)

基本信息

   Stratis

组织 Stratis 仓库
主链仓库 stratisproject/StratisBitcoinFullNode
Star
690
Fork
306
建立日期 2016-09-03 12:32:51.000
代码贡献者 64
代码提交量 3,765
近一个月代码提交量 33
技术评估结果

技术分析

基本技术

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

项目团队与社区

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

贡献者 全部代码提交数量 近一个月的代码提交数量
dangershony 424 3
bokobza 417 0
noescape00 357 0
codingupastorm 309 1
fassadlr 291 6
quantumagi 264 0
Aprogiena 219 0
rowandh 176 7
NicolasDorier 129 0
mikedennis 108 0

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

贡献者 全部代码提交数量 近一个月的代码提交数量
thefazzer 46 0
zeptin 87 1
mikedennis 108 0
NicolasDorier 129 0
Aprogiena 219 0
quantumagi 264 0
fassadlr 291 6
codingupastorm 309 1
noescape00 357 0
dangershony 424 3

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

贡献者 全部代码提交数量 近一个月的代码提交数量
NicolasDorier 129 0
codingupastorm 309 1
maciejzaleski 8 4
nopara73 21 0
alexandre-spieser 1 0
detroitpro 4 0
dangershony 424 3
sondreb 6 0
sgryphon 4 0
Derrick- 11 0

Stratis核心主链项目的代码贡献者中优秀的贡献者占整体贡献者数量的3.0303030303030303%,共提交代码量为438次,占项目整个提交代码量的11.63%。

近一年提交代码量为3,765次,近一个月提交代码量33次。

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

项目关系与技术独立性

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

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

Bitcoin
BTC

Litecoin
LTC

Namecoin
NMC

Dogecoin
DOGE

Vertcoin
VTC

DigiByte
DGB

MonaCoin
MONA

Groestlcoin
GRS

Viacoin
VIA

Emercoin
EMC

Qtum
QTUM

Particl
PART

Bitcoin Gold
BTG

Bitcoin Diamond
BCD

United Bitcoin
UBTC

Ravencoin
RVN

Bitcoin SV
BSV

StratisBitcoin,Litecoin,Namecoin,Dogecoin,Vertcoin,DigiByte,MonaCoin,Groestlcoin,Viacoin,Emercoin,Qtum,Particl,Bitcoin Gold,Bitcoin Diamond,United Bitcoin,Ravencoin,Bitcoin SV,公链项目具有关系

主链核心代码分析

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

Bitcoin(92)

基本信息

   Bitcoin

组织 Bitcoin 仓库
主链仓库 bitcoin/bitcoin
Star
39138
Fork
23543
建立日期 2010-12-19 23:16:43.000
代码贡献者 654
代码提交量 21,468
近一个月代码提交量 133
技术评估结果

技术分析

基本技术

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

项目团队与社区

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

贡献者 全部代码提交数量 近一个月的代码提交数量
laanwj 1625 1
sipa 1118 0
MarcoFalke 737 11
TheBlueMatt 637 0
theuni 585 0
jonasschnelli 488 1
gavinandresen 485 0
jnewbery 467 2
practicalswift 424 2
luke-jr 370 0

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

贡献者 全部代码提交数量 近一个月的代码提交数量
ken2812221 105 0
kallewoof 105 3
paveljanik 109 0
gmaxwell 163 0
morcos 209 0
promag 219 2
ryanofsky 238 0
gavinandresen 485 0
theuni 585 0
sipa 1118 0

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

贡献者 全部代码提交数量 近一个月的代码提交数量
sipa 1118 0
luke-jr 370 0
laanwj 1625 1
jamesob 62 0
gavinandresen 485 0
gmaxwell 163 0
petertodd 102 0
codler 10 0
jonasschnelli 488 1
TheBlueMatt 637 0

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

近一年提交代码量为21,468次,近一个月提交代码量133次。

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

项目关系与技术独立性

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

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

Stratis
STRAT

Zcash
ZEC

ZClassic
ZCL