深度了解 :以太坊节点和客户端的多样性 | Tokenview_ETHE:区块链游戏

什么是以太坊节点和客户端

节点是运行以太坊客户端软件的计算机。也就是说用户需要在设备上有一个应用程序,即所谓的客户端,来运行节点。以太坊客户端可以验证每个区块中的所有交易,保持网络安全和数据准确。在以太坊合并之前,运行一个全节点需要一个软件。在以太坊合并之后,需要两个客户端软件来运行一个全节点。一个来处理和传输交易,一个来处理区块传输和分叉选择以及一个可选的验证客户端,用于处理区块生产和对从同类型节点接收到的区块进行“投票”。

许多以太坊执行客户端和共识客户端存在于多种编程语言中,例如Go、Rust、JavaScript、Typescript、Python、C#.NET、Nim和Java。这些客户端共同点是都遵循同一个规则,并影响以太坊网络和区块链功能运行方式。

节点类型

事实上,客户端可以运行3种不同类型的节点——全节点、轻节点、和归档节点。

《2020杭州区块链产业白皮书》正式发布:2月26日10:00,《2020杭州区块链产业白皮书》正式发布,《2020杭州区块链产业白皮书》,由杭州市人民政府金融工作办公室担任编写指导,杭州区块链技术与应用联合会、数秦研究院作为主编单位,火鸟财经作为参编单位,共同编写发布。

据杭州区块链技术与应用联合会秘书长、白皮书主要编写人员刘加海教授介绍,白皮书不仅整理了2020年全球及国内区块链的发展情况、区块链关键技术、各个国家与地区对区块链技术的支持政策及区块链对实体经济的赋能规划,还分析了我国20多个省市对区块链发展的三年或五年规划,并与兄弟省市做了全面的分析比较,对杭州市区块链行业整体的发展方向做出了指引和探索。[2021/2/26 17:54:59]

全节点

全节点是拥有完整区块链帐本资料的节点,具备独立验证的能力来确认交易之有效性。主要在处理下列四件事:

存储完整的区块链数据。

直播|Annabelle > 从三大关键词看2020年下半年加密市场:金色财经 · 直播主办的《 币圈 “后浪” 仙女直播周》第12期15:00准时开始,本期“后浪”仙女Amber Group的产品负责人Annabelle将在直播间聊聊“从三大关键词看2020年下半年加密市场”,请扫码移步收听![2020/8/13]

参与区块验证,验证所有区块和状态。

所有状态都可以从全节点导出。

提供网络服务,并根据请求提供数据。

轻节点

轻节点不是下载每个区块,而是下载区块头。这些标头仅包含有关区块内容的概括信息。以太坊目前还不支持大量的轻节点,但轻节点支持是一个有望在不久的将来快速发展的领域。

轻节点所需的任何其他信息都从全节点请求。

轻节点可以根据区块头中的状态根独立验证数据的有效性。

动态 | ResearchAndMarkets报告: 2018-2022年区块链服务市场年复合增长率为85.49%:据ResearchAndMarkets发布的报告称,2018-2022年期间,全球区块链服务(BaaS)市场年复合增长率为85.49%。[2018/8/24]

轻节点使用户能够参与以太坊网络,而无需强大的硬件或运行全节点所需的高带宽。

轻节点可能会在手机或嵌入式设备上运行。轻节点不参与共识,但它们可以使用与全节点相同的功能访问以太坊区块链。

归档节点

归档节点是在全节点的基础之上,额外储存了每个区块高度的区块状态,包括个人帐户与合约帐户之当时余额等信息,即针对每个区块高度当下的状态进行快照并存档。

存储保存在全节点中的所有内容,并建立历史状态的存档。如果你想查询#4,000,000区块的账户余额,或者简单而可靠地测试你自己的交易数据集,而不使用OpenEthereum挖掘它们,则需要此功能。

声音 | 天津社科院李晓欣:2020年天津将加快区块链和经济社会深度融合:1月10日,天津市2020经济与社会发展报告(蓝皮书)发布会在天津社会科学院举行。会上,天津社会科学院经济分析与预测研究所博士李晓欣代表天津社会科学院课题组发布了天津经济2020年十大看点。其中看点八为:2020年,天津将以“区块链 金融”“区块链 跨境贸易”“区块链 数据共享”为抓手,大力推动区块链技术在数字金融、跨境贸易、数据共享等经济领域的应用,积极探索“区块链 ”在教育、就业、养老、医疗健康等民生领域的运用,为区块链和经济社会发展的深度融合贡献“天津方案”。(人民网)[2020/1/10]

这些数据以兆兆字节为单位,这使得归档节点对普通用户的吸引力不大,但对于区块浏览器、钱包供应商和区块链分析等服务来说却很方便。

总之,要想获得链上数据,就需要建立全节点、轻节点以及归档节点。Tokenview就建立了这样的节点集群。作为以太坊生态的节点之一,Tokenview也是以太坊节点的服务提供商。截止目前,已为10000+家企业提供了以太坊数据API服务及节点搭建服务。通过稳定、快速的数据接口实时调取区块链数据,可免除自建节点、同步区块、空间占用、运维等成本。

动态 | 加密市场数据提供商Nomics.com完成与Deribit的深度数据集成:据雅虎财经消息,加密市场数据提供商Nomics.com近日宣布,加密期货与期权交易所Deribit已完成与Nomics.com市场数据平台的“深度数据集成”。通过集成,Deribit成为Nomics.com上的一个A+认证交易所。[2019/8/1]

为什么要运行以太坊节点?

对个人的好处

运行自己的节点能够以真正私有、自给自足和去信任的方式使用以太坊。无需信任网络,自行通过客户端验证数据。“Don'ttrust,verify”就是一个非常受欢迎的流行区块链口号。

节点会根据共识规则自行验证所有交易和区块。这意味着不必依赖网络中其它节点,也不必完全信任他们。

不必将地址和余额泄露给随机节点。一切都可以通过自己的客户端核实。

如果使用自己的节点,Dapp可以更加安全和私密,Metamask,MyEtherWallet和其他一些钱包可以轻松地指向本地节点。

使用自己的节点可以编写自定义的RPC端点。

可以使用Inter-processCommunications(IPC)连接到自己的节点或重写节点以插件的形式加载你的程序。这提供了低延迟,这对于尽可能快地替换你的交易是必需的。

对网络的好处

多样化的节点对以太坊的健康、安全和运行弹性非常重要。

它们为依赖于区块链数据的轻节点提供访问区块链数据的机会。在使用高峰期,需要有足够多的全节点来帮助轻节点同步。轻节点不存储整个区块链,而是通过区块头中的状态根来验证数据。如果需要的话,它们可以从区块中请求更多的信息。

全节点强制执行PoW共识机制,它们不接受不遵循规则的区块。这为网络提供了额外的安全性,因为如果所有节点都是轻节点,不进行全面验证,区块生产者可能会攻击网络,例如创建奖励更高的区块。

如果运行全节点,整个以太坊网络都会从中受益。

执行客户端

以太坊社区维护着多个开源执行客户端,由不同团队使用不同的编程语言开发。这使得网络更强大和多样化。理想的目标是在没有任何客户端主导的情况下实现多样性,以减少任何单点故障。

GoEthereum是以太坊协议的原始实现之一。目前,它是受众最广泛的客户端,拥有最大用户群,为用户和开发者提供各种工具。它是用Go语言编写,完全开源,并采用GNULGPLv3授权。

OpenEthereum是一个快速、功能丰富的以太坊客户端,提供快速可靠的服务所需基础架构,这些服务需要快速同步和最大限度的运行时间。注意:OpenEthereum已被弃用,不再进行维护。最好切换到另一个客户端实现。

Nethermind是基于C#.NET技术栈创建的以太坊实现,可在包括ARM在内的所有主流平台上运行。它提供了强大的性能:

性能优化的虚拟机。

状态访问。

网络和丰富的功能,如Prometheus/Graphana仪表盘、seq企业日志支持、JSONRPC追踪和分析插件。

Nethermind也拥有详细的文档,强大的开发支持,在线社区以及为高级用户提供全天候支持。

HyperledgerBesu是一个用于公共网络和许可网络的企业级以太坊客户端。它运行所有以太坊主网功能,从追踪到GraphQL,具有广泛的监控,并由ConsenSys支持,无论是在开放的社区渠道还是通过企业的商业SLA。它是用Java编写的,并获得Apache2.0许可。HyperledgerBesu是一个以Apache2.0许可开发并以Java编写的开源以太坊客户端。它运行在以太坊公共网络,专用网络以及测试网络上。Besu实施工作量证明和权限证明共识机制。

Erigon是Go以太坊的一个分叉,以速度和磁盘空间效率为目标。Erigon是一个完全重新架构的以太坊实现,目前用Go编写,但计划用其他语言实现。Erigon的目标是提供更快、更模块化、更优化的以太坊实现。它可以在3天内使用不到2TB的磁盘空间执行完全归档节点同步。

共识客户端

有多个共识客户端(以前称为“ETH2”客户端)来支持共识升级。它们正在运行BeaconChain,并将在合并后向执行客户端提供权益证明共识机制。

参考文章:

https://ethereum.org/en/developers/docs/nodes-and-clients/

来源:金色财经

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

[0:15ms0-3:595ms