区块链中文网

区块链节点和超级节点是什么
4338
发表时间:2019-01-10 20:41来源:四块科技

  区块链语境中的节点通常是指已经下载了所讨论的加密货币软件(比特币,以太坊,Monero等)以参与到各点之间的网络中。加密货币区块链被构造为各点之间的网络架构(点对点或P2P)。术语点对点或P2P,意味着参与网络的计算机彼此对等。

  最原始的P2P网络是SETI @ HOME网络,它相当于当前区块链。人们只需从官方网站下载软件并执行即可加入这个网络。与此同时,参与网络的每台计算机都会接收节点的名称。在网络中,所有节点都共同负责提供网络服务。所以,这种情况下,术语区块链网络是指执行特定点对点协议的一组节点。整个网络以完全联合,去中心化和分布的方式协调,每个用户在网络中执行的操作。这意味着全世界的网络不断地在传输和重新传输新的交易。网络中的每台计算机都是一个下载了完整区块链的节点。通过这种方式,网络变得冗余,协同工作也使得其在扩展方面变得可扩展。

  由于区块链的去中心化,任何人都可以参与其中。只需要现在节点软件并执行。通常情况下,每个项目的主钱包是允许该功能的。最初,网络开始试行区块链,直到与网络同步。此时,节点开始全部操作,不仅允许和验证交易,还支持全球区块链形象。正常情况下,节点可以执行以下功能:路由,区块链数据库,挖矿和钱包,或是钱包服务。

  这些节点是最大数据结构(也就是区块链)人组成部分。随着节点所有者自发贡献其计算资源,用以存储和验证交易,他们有机会收取交易费用,并通过底加密货币获得奖励。

  处理这些事务可能需要大量的计算和处理能力,这意味着计算机的平均能力不足。 一般而言,专业矿工倾向于投资CPU(中央处理单元)或GPU(图形处理单元)的极其强大的计算设备,以满足验证交易所需的处理能力需求,因此获得相应奖励。

  节点可以是链接到其他节点通信端点或通信重新分布点。网络中的每个节点都被认为是对等的,但是,某些节点在支持网络的方式上具有不同的作用。例如,并非所有节点都将存储块链的完整副本或验证交易。

  完整节点下载一系列区块的完整副本,并根据该特定加密货币或实用工具代币使用的共识协议检查新交易。所有节点使用相同的共识协议以保持彼此兼容。网络中的节点确认并验证交易,将它们放在区块中。节点总是会得出关于交易是否有效的结论,并且应该将其添加到其他交易区块中,而不管其他节点如何操作。

  其中,有几个主要概念是我们不容忽视的:

  一、主节点:

  初始概念提出者和长时间的实践者是达世币(DASH),自2014年发端迄今,已较为稳定地运行了4年多。

  二、超级节点:

  超级节点也是一种主节点,是由一些不同的主节点构成的。

  原则上所有DPOS(授权股权证明)共识机制的项目都可以采用超级节点,以前叫见证人,为了显得高大上,所以EOS换个名字叫超级节点,没选上的叫备选节点。

  三、授权股权证明机制(DPOS):

  当使用去中心化自治公司(Decentralized Autonomous Company, DAC)这一说法时,去中心化表示每个股东按其持股比例拥有影响力,51%股东投票的结果将是不可逆且有约束力的。其挑战是通过及时而高效的方法达到51%批准。

  为达到这个目标,每个股东可以将其投票权授予一名代表。获票数最多的前100位代表按既定时间表轮流产生区块。每名代表分配到一个时间段来生产区块。所有的代表将收到等同于一个平均水平的区块所含交易费的10%作为报酬。如果一个平均水平的区块含有100股作为交易费,一名代表将获得1股作为报酬。

  网络延迟有可能使某些代表没能及时广播他们的区块,而这将导致区块链分叉。然而,这不太可能发生,因为制造区块的代表可以与制造前后区块的代表建立直接连接。建立这种与你之后的代表(也许也包括其后的那名代表)的直接连接是为了确保你能得到报酬。

  作为节点家族的主要成员,它们分别是:

  一、传播节点:它们仅仅发布交易并从第三方接收区块链信息。它们遵循最强大的采矿能力,被称为轻型钱包,广泛用于移动设备或仅仅是那些不想下载完整区块链的人。

  二、完整节点:当你安装完整节点软件时,比如说Bitcoin Core,除了可以保证钱包安全,你也要下载区块链的副本,成为比特币网络中的一个节点。所以你将会发布你的交易,传播到网络的其他部分中并验证是否满足一致性原则。

  三、挖矿节点:除了操作他们惯用的矿机软件|(BTCMiner, CGMiner),矿工必须有所有块链的副本。这些节点,除了挖矿之外,也要创建新的区块,发布并传播交易。

  节点的日常工作任务又是什么呢?

  当某个矿工或用户通过该协议的某种机制,尝试向区块链添加新的交易区块时,它会将该区块传输到网络的所有节点。 基于区块的合法性(签名和交易的有效性),节点可以接受或拒绝区块。当节点接受新的交易区块时,它会将其保存并存储在已存储的区块上。总之,这是节点的作用:

  他们检查交易块是否有效并接受或拒绝交易。存储交易区块(存储区块链交易历史记录)。将此交易历史传输并扩展到可能需要与区块链同步的其他节点(必须在交易历史记录中更新)。

  节点值得我们信赖吗?节点可以在线或离线。

  在线节点会接收、保存和传输所有往返于其他节点的最后的区块交易,而没有连接的节点则不会。当脱机节点重新联机时,它将首先通过下载自节点断开连接以来添加到区块链的所有区块,以赶上区块链的其余部分。此过程通常称为与区块链同步。

  理论上,完整的区块链可以在单个节点上执行,但是由于它存储在单个设备中,它会极易受到停电,黑客或系统性故障等情况的影响。区块链中运行的全节点越多,面对此类灾难时的恢复能力就越强。当区块链的数据分布在如此多的设备中时,腐败实体很难一次擦除所有这些数据。即使由于全球危机导致大量节点突然下降并且无法访问,理论上单个节点也可以保持整个链块的运行。即使所有节点都断开连接,也只需要一个具有完整区块链历史记录的节点重新联机并再次访问所有数据。

  除了节点以其数量之多可以给网络增添安全性之外。节点也容易受到计算机攻击,这可能会改变它们的功能。例如,剽窃者可能违反我们所讨论软件的安全性,并且在不改变区块链数据的情况下,它可以将所述节点的利润重定向到与其所有者的编程地址不同的地址。窃取地址攻击是此类软件最常见的攻击类型,这就是开发人员建议使用其区块链软件更新版本的原因。

  这些安全漏洞中的一些问题可以很容易地解决,用常识来解决计算机安全问题,或使用创建安全机制的软件工具将区块链软件与我们的其他计算机系统隔离开来。

  在这些措施中可以包括:

  使用具有长期和可靠记录的官方或开发者软件。在区块链中保护私钥,助记密码和我们活动的任何其他特权信息。仅为我们的挖矿活动使用计算机或电子设备。使用沙盒软件将软件应用程序与我们系统的其余部分隔离开来。 使用MAC(强制访问控制)系统或系统权限,允许我们使用对操作系统和其他系统API的最小访问权限,来运行我们的区块链软件(此隔离大于沙盒)。


分享到: