Filecoin项目经过多年的发展已经由最初的只有一个客户端go-filecoin发展到现在一共有了四个客户端: 用Go语言开发的Go-filecoin; 用Go语言开发的Lotus; 用Rust语言开发的Forest; 用C++语言开发的Fuhon; 这对基于区块链的去中心化项目而言是非常重要的,Filecoin有四个客户端是什么意思呢? 通俗地说,我们可以这么理解:如果有一份非常重要的货物需要从北京运到广州,这份货物是如此重要,乃至于运输过程中的风险要尽可能地减到最低。 对此我们有两种办法:一种办法是我们用四辆车,每辆车都运一份同样的货物,但是四辆车都走同样的路线;另外一种办法是我们用四辆车,每辆车都运一份同样的货物,但是四辆车每一辆都走不同的路线。 显然从安全和分散风险的角度看,我们一定会选第二种方案,因为如果用第一种方案,一旦那条路被堵死,四辆车就统统无法到达目的地。如果用第二种方案,除非四条路都堵死,我们才无法达到目的地。 在Filecoin的这个例子中,也是同样的道理。 有四个客户端意味着有四条不同的路径都可以用来运行Filecoin系统,即便其中一个,两个或三个客户端都出故障了,只要还有一个客户端是好的,Filecoin整个系统仍然可以正常运行;如果只有一个客户端,那一旦这个客户端出故障,Filecoin整个系统就瘫痪了。 这是区块链系统开发中常用的一种去中心化方式。 任何软件都是有漏洞的,这也是为什么黑客永远存在,永远都能找到软件的漏洞。 在一个区块链公链中,如果整个系统所有的节点同时都只运行一种客户端软件,那么一旦这个客户端中的漏洞被黑客发现,利用来攻击系统,那就意味着整个系统中所有的节点都可能受到攻击,后果将极其严重,这是区块链的系统风险,也是一种“中心化风险”。 因此为了避免这种系统风险,不少区块链公链系统都会鼓励采用多种客户端。 在这方面,以太坊就是一个典型。 以太坊现在就运行着不同的客户端。现在的以太坊系统运行得最多的两套客户端系统是用Go语言编写的go-ethereum和用Rust语言编写的Parity。 这两套系统共同运行支撑的以太坊就曾经经历了一次重大的考验:在2016年以太坊DevCon2.0开发大会前夕,黑客发现了go-ethereum客户端的漏洞,并利用大容量垃圾信息攻击,导致go-ethereum客户端大量崩溃,只有Parity强势幸存。在这场攻击中,如果以太坊仅仅只有一个客户端go-ethereum,那后果将不堪设想。 在正在开发的以太坊2.0中,这种多客户端运行以规避系统风险的做法更是被发挥得淋漓尽致:以太坊客户端现在同时有8个团队在用不同的语言进行开发,这意味着未来以太坊2.0上线后,可能整个网络运行着8种不同的客户端。 黑客要攻击以太坊2.0,除非同时发现这8个客户端的问题并同时攻击它们,这个难度恐怕将是难以想象的。 说回Filecoin,四个客户端的出现不仅说明Filecoin的系统安全将得到极大加强,更说明越来越多的团队对Filecoin项目的看好和支持,这对Filecoin爱好者和支持者来说是一剂强心针。 —- 编译者/作者:FIL社区 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
Filecoin的多个客户端实现
2020-08-08 FIL社区 来源:区块链网络
LOADING...
相关阅读:
- 8月8比特币 以太坊 柚子等行情分析操作建议2020-08-08
- Vitalik Buterin表示,确切的以太坊供应将是未知的2020-08-08
- 辉耀论币8月8逐步走入震荡行情交易技巧也要变换2020-08-08
- DeFi Platform Compound启动公开加密货币定价Oracle2020-08-08
- sdcp即将上线Uniswap|8月10日17:00eth交易对2020-08-08