fabric && cita 调研对比
Posted hadex
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fabric && cita 调研对比相关的知识,希望对你有一定的参考价值。
fabric && cita 调研
总结
若计划完全依赖上游的基础功能而不做任何改造,建议选择 fabric;否则,应选择 cita,针对自身业务场景进行持续优化。
一、功能
1、可扩展性
微服务架构使 cita 在性能扩展、组件替换与开发语言选择等方面更加灵活。
- [ ] - fabric
- [x] - cita
2、是否支持账户模型
fabric 无明确的账户模型支持;cita 继承 ethereum 账户模型。
- [ ] - fabric
- [x] - cita
3、是否需要发币
双方均无需发币。
- [x] - fabric
- [x] - cita
4、智能合约:类型
双方均支持原生合约类型;cita 额外支持 EVM 轻量型合约,而且由于其继承自 parity,而目前 parity 已对 WASM 有良好的支持,未来技术升级或移植的成本会更低。
- [x] - fabric
- [x] - cita
5、智能合约:开发语言
双方均支持多种合约语言;fabric 支持 java、go、node.js 等,cita 支持 solidity、go、rust 等。
- [x] - fabric
- [x] - cita
6、跨链支持
fabric 不支持,cita 有简易的支持。
- [ ] - fabric
- [x] - cita
二、性能
1、TPS
fabric 经各方测试的 TPS 上限为 1K 左右,cita 具备水平扩展性,官宣性能案例有两个:2.6K+(4台4核8G云主机)与 15K+(4台32核64G云主机)。
- [ ] - fabric
- [x] - cita
2、出块时间
均可自行定制,fabric 默认 2s,cita 默认 3s。
- [x] - fabric
- [x] - cita
3、区块容量
均可自行定制,cita 在启动时超级管理员通过系统保留的智能合约设置,若合约不存在,则设置默认值 1G,另有极限值 MAX_UINT64。
- [x] - fabric
- [x] - cita
4、区块类型:静态 OR 动态
均为动态。
- [x] - fabric
- [x] - cita
5、单笔交易容量
均可自行定制,cita 取决于账户配额,初始配额由超级管理员设置,后续由在链上自动增减——发交易消耗配额,参与共识获得配额。
- [x] - fabric
- [x] - cita
6、性能优化空间
rust 核心宗旨即是安全与效率,而区块链领域需要频繁涉及到密码学相关的高强度计算,故 cita 潜力更大。
- [ ] - fabric
- [x] - cita
三、安全
1、隐私保护策略
双方提供类似的隐私保护手段,如:PKI、TLS、私有分区、链上审计与治理等。
- [x] - fabric
- [x] - cita
2、是否支持只读节点
cita 支持详细的基于账户的权限控制,fabric 仅提供有限的间接支持。
- [ ] - fabric
- [x] - cita
3、共识算法:多样性
双方均有多种备选算法。
- [x] - fabric
- [x] - cita
4、共识算法:运行时变更
双方均不支持运行时热拔插。
- [x] - fabric
- [x] - cita
5、共识算法:及时终止性
均有支持。
- [x] - fabric
- [x] - cita
6、抗功击能力
cita 有 rust 加持,具备更高安全保障;rust 的先天性优势,对照 parity 与 geth 的发展历程,可有明显的感知(不考虑上层 solidity 合约逻辑漏洞)。
- [ ] - fabric
- [x] - cita
四、其它
1、项目影响力与团队实力
faric 由 linux 基金会主持,多家知名跨国公司参与;cita 面向国内,主要由招行背书,其团队核心有 ethereum 开发背景。
- [x] - fabric
- [ ] - cita
2、代码质量
faric 更强的团队成员组成,具备更高的主观预期;cita 使用的 rust 在运行效率、安全性、稳健性等方面具备先天性优势,有效弥补了其在团队实力方面的不足。
- [x] - fabric
- [x] - cita
3、项目生命周期
双方均已历经三年以上的开发时间,版本都已迭代至 1.0 版本以上并处于活跃开发状态。
- [x] - fabric
- [x] - cita
4、社区活跃度
cita 主要由‘秘猿‘维护,且开源时间较晚,社区生态不及 fabric。
- [x] - fabric
- [ ] - cita
5、实际应用案例
双方均有在金融行业的稳定运行数年的实际应用案例,可认为都已适用于生产环境。
- [x] - fabric
- [x] - cita
6、二次开发与长期维护可行性
cita 的微服务架构更易改造,且由于 rust 严苛的编译规则,可以在很大程度上保障后续自有代码的质量;更长远的视角,cita 更有利于平滑的自有知识产权彻底重构。
- [ ] - fabric
- [x] - cita
7、多语言开发可行性
rust 自带高效的 FFI,使其容易与其它语言相互调用,如:python、C/C++、golang 等,理论上具备使用 C 库能力的语言均能轻易的与 rust 配合。
- [ ] - fabric
- [x] - cita
8、闭源风险
fabric 由 linux 基金会主持,相对于 cita 由单一的商业公司推动,闭源风险更低。
- [x] - fabric
- [ ] - cita
以上是关于fabric && cita 调研对比的主要内容,如果未能解决你的问题,请参考以下文章
找不到插件 Fabric Android Studio 导入 com.crashlytics & io.fabric
Hyperledger Fabric 开发环境搭建&构建Fabric
Hyperleder Fabric国密改造&一键部署工具&区块链网络修改工具
Hyperledger Fabric GOSSIP_BOOTSTRAP & GOSSIP_EXTERNALENDPOINTS