热门词“互操作”到底什么意思!最新解读!

2020-03-03 11:02:24

最近有一个词语不管在官方博客还是官方Twitter上都被反复提及,这个词就是“互操作”。那么什么是互操作,它有什么用?Filecoin互操作多重客户端实现有什么意义?

  最近有一个词语不管在官方博客还是官方Twitter上都被反复提及,这个词就是“互操作”。那么什么是互操作,它有什么用?Filecoin互操作多重客户端实现有什么意义?

  “互操作”的含义

  互操作在百度上的解释是互操作是指一种能力,使得分布的控制系统设备通过相关信息的数字交换,能够协调工作,从而达到一个共同的目标。传统上互操作是指“不同平台或编程语言之间交换和共享数据的能力。


  Filecoin多重客户端实现的互操作


Filecoin互操作


  目前,官方团队公布的Filecoin可以显示互操作的节点有四个:

  Go-filecoin(用Go编写)

  Lotus(用Go语言编写)

  Fuhon(用C ++编写)

  Fores(用Rust编写)

  尽管这四个Filecoin实施尚未完成功能,但它们实际上已经接近。在未来几周Lotus和Go-Filecoin实现网络互通。与Fuhon和Forest的互操作性将在不久后实现。矿工可以在GitHub上的各个客户端实现中跟踪每个实现的进度。

  多重实现互操作意思就是Filecoin的四个不同节点既可以各自到达目的,又可以相互共享数据、优势互补、共同促进主网的强大。

  在2019年10月,Filecoin博客《宣布Filecoin第一个实现网络“Lotus”》中,提到多重客户端实现的重要性。

  博客提到,构建区块链就像构建软件火箭。为了确保协议和软件实施的安全性–协议实验室拥有内部协议安全团队,并且正在执行内部实施安全审核,外部安全审核等。但是,无论团队为保护系统和单个节点付出多大的努力,始终都有实现错误可能会给网络带来不利后果。


  具有可在同一网络上互操作的多个软件实现,可以大大降低这种风险。尽管每个实现都有自己的错误集,但是所有实现都不太可能具有完全相同的安全问题集-尤其是如果这些实现不共享安全性至关重要的软件组件。因此,启动具有多种实现方式的加密货币网络可降低发生灾难性错误的可能性,该错误可能会对整个Filecoin网络产生不利影响,甚至瘫痪整个Filecoin网络。

  就比如,当go-filecoin编写的客户端实现收到攻击的时候,用Rust编写的Fores客户端实现可能可以抵制住攻击,运行稳定。不至于会让Filecoin整个网络陷入全部瘫痪的局面。

  多种实现方式还具有其他好处,例如增强与不同开发人员社区互动的能力,以及探索不同实现架构的机会(可能提供不同的性能和其他优化)。


  IPFS与Filecoin也能实现互操作

  除了Filecoin四个节点之间的互操作,有的社区成员也好奇IPFS与Filecoin之间是否能够实现互操作。

  对此,Filecoin创始人胡安回答道:“Filecoin节点是IPFS的节点,只是它与Go-ipfs是使用的不同的代码库。所以他们将能够实现连接,因为所有的libp2p 都可以,通过Filecoin能锁定和检索任何IPFS网络里面的内容。我们将编辑更多关于具体的运作方式的内容。”


互操作


  Filecoin与IPFS相辅相成,保证了互操作性才能够保证协议和分布式存储交易市场持续健康、稳定的运行。

  Filecoin可以锁定和检索IPFS网络里面的任何内容,是不是意味着,只要IPFS项目能够嫁接Filecoin,Filecoin就能检索IPFS的所有应用上的数据。目前IPFS项目已达130多个,Filecoin数据来源将基于IPFS应用不断增加。


  番外案例:以太坊多种客户端实现

  其实,Filecoin并不是第一个通过多个实现的互操作来保证网络的稳定性和安全性,之前以太坊也是类似的做法。

  目前以太坊支持8种语言的客户端实现,这8个客户端实现有共同特点也各有特色。


  共同特点:

  1、同一语言的客户端在不同平台上的使用是完全相同的。

  2、不同语言的客户端(Mist、Geth、Eth等等)之间在同一个平台(Linux、Windows或OSX)上共用一样的应用配置,同时其命令行可使用的参数也是一致。


  各有特色:

  1、Go-ethereum(用Go编写)

  可用于挖矿,组建私有链,管理账号,部署智能合约等常用功能,不可以编译智能合约。

  2、Webthree-umbrella项目(用c++编写)

  AlethZero是图形化的钱包客户端,对应的是Geth的功能,不过是全图形化的。

  3、Mist项目(用Java编写)

  Mist定位不只是一个钱包,而是将来DAPP(智能合约的应用APP)市场。类似于苹果市场,在这里可以有你的账号,可以浏览、发布和买卖以太坊的DAPP应用。

  4、Solidity项目(用C++编写)

  该项目是以太坊智能合约(DAPP)的编程语言,使用solc作为编译程序,该项目主要用于编译,严格来说是一个基本的编译平台,一般开发可用MIX替代。

  5、Browser-solidity项目(用C++编写)

  该项目是智能合约浏览器版本的开发环境,可以支持在浏览器中直接开发、调试和编译。

  6、Pyethereum项目(用python编写)

  7、Ethereumj项目(用JAVA编写)

  8、Etheminer项目(用C++编写)

  该项目是Cpp-ethereum项目的一部分,用于和Geth配合进行GPU挖矿,也可以用于矿池挖矿。

  在以太坊项目早期,在众多不同的操作系统中就有多个可以彼此协作的客户端实现。客户端的多样性对于整个生态系统来说是巨大的成功。它使我们能够证明协议是明确清晰的,为创新打开大门,也让我们都保持诚实。

  以太坊存在5年左右,经历过挫折但始终奋进向前。以太坊与Filecoin也在VDF(以设计和开发至少一个安全,高效和可用的可验证延迟功能)等方面展开深入的合作,共同研发新功能。自身的强大加上强大的合作伙伴,Filecoin定能不负所望,带着惊喜和自信,下好多个客户端实现一盘棋,促进Filecoin网络安全稳定地上线运行。


最新推荐