马上就是国庆长假,为了愉快的给祖国庆生,楼主把前段时间个人对比较知名的区块链底层的研究结果发出来,跟大家共同探讨下。
样本:
Btc、Ethereum、Fabric、Ripple、Bubichain、Corda
上榜理由:
Btc:不用说,区块链的龙头老大,知名度最高,受众最广;
Ethereum:首先提出智能合约的概念,开源社区最为成熟;
Fabric:联盟成员机构知名度比较高,希望制定联盟链的框架标准;
Ripple:解决实际应用,获得相当一部分银行机构的认可;
Bubichain:国产老牌区块链底层,虽然比较低调,但业内名气较大,应用最多。
Corda:首先提出主打金融领域的区块链底层架构,奈何作死要自毁前路,说金融不需要区块链技术,但考虑到之前还是对它有一些研究,放上去吧。
评判标准:
链类型、账户设计、数字货币、共识算法、共识间隔、吞吐率、智能合约引擎、智能合约开发语言、链开发语言、数据库、隐私保护、国密、访问控制、加密连接、节点监控、云支持、主要应用。(大家如果觉得这些标准不够全面可以提出来一起讨论)
表格如下:
名称 |
BTC |
Ethereum |
Fabric |
Ripple |
Bubichain |
Corda |
链类型 |
公链 |
公链/联盟链 |
联盟链 |
公链/联盟链 |
联盟链 |
联盟链 |
账户设计 |
UTXO |
Account based |
Account based |
Account based |
Account based |
UTXO |
数字货币 |
BTC |
Ether |
- |
xrp |
- |
- |
共识算法 |
PoW |
PoW=> PoS(Casper) |
PBFT(v0.6)/ Kafka(v1.0) |
RCP |
PBFT/bPaxos |
BFT(Notary) |
共识间隔 |
10分钟 |
15秒 |
秒级别 |
秒级别 |
秒级别 |
- |
吞吐率(TPS) |
7 |
15 |
- |
- |
万级别 |
- |
智能合约引擎 |
- |
EVM |
Chaincode |
- |
V8/EVM兼容 |
JVM |
智能合约开发语言 |
- |
Solidity |
Go/Java/Nodejs |
- |
JS/Solidity |
Kotlin/Java |
链开发语言 |
C++ |
Go/C++/Rust/Python |
Go |
C++ |
C++ |
Kotlin |
数据库 |
LevelDb |
Leveldb/RocksDb |
LevelDb/CouchDb |
RocksDb |
LevelDb/RocksDb |
H2 Database |
隐私保护 |
- |
即将支持zkSNARKs |
支持(多channel) |
- |
支持 |
支持 |
国密(SM算法系列) |
- |
- |
- |
- |
支持 |
- |
访问控制 |
- |
- |
支持 |
- |
支持 |
支持 |
加密连接 |
- |
- |
- |
- |
支持 |
- |
节点监控 |
- |
- |
支持 |
- |
支持 |
支持 |
云支持 |
- |
Azure |
- |
- |
QingCloud/Aliyun |
Azure |
主要应用 |
数字货币 |
众筹(ICO)及其他 |
供应链、物联网、金融等 |
跨境支付 |
数字资产、供应链金融、溯源、存证等 |
金融 |
PS:“-”一般表示不支持,但也有可能是机构未公布,所以就以符号代替。
优势:
Btc:作为第一条公链,知名度最高,算力最高最安全。
Ethereum:亮点在于智能合约,用户可基于以太坊编写复杂的业务逻辑。交易速度明显快于比特币,并且手续费较低。其开源社区较成熟。
Fabric:IBM搭建了一条通用的联盟链架构,开发者可以基于此快速开发自己的应用。
Ripple: 真正解决实际需求,且商用较早的一款区块链应用。
Bubichain:目前最为成熟的商用区块链,在安全、合规、性能、易用可维护性等方面有较大优势,极其适用于商业领域。
Corda:亮点在于不同于一般的区块链设计,专门为金融机构而设计的“无链之链”。
总结一下,越是新出来的区块链底层越注重实用性,更注重安全和隐私性,可以看出区块链底层的思想已经由极客开始向商业靠拢。
不出意外,未来的区块链的行业上面6个会占据一席之地,大家更看好哪一个底层,可以留言和楼主讨论~
附开源代码链接:
Btc:https://github.com/bitcoin/bitcoin
Ethereum: https://github.com/ethereum/go-ethereum
Fabric: https://github.com/hyperledger/fabric
Ripple: https://github.com/ripple/rippled
Bubichain: https://github.com/bubicn/bubichain-v3
Corda: https://github.com/corda/corda