此外,正是由于这种类型的区块,大多数交易所和一些钱包会在提供资金之前自动等待额外的确认。他们通过计算您正在接收的交易和当前块之间开采了多少块来做到这一点。 >eth.getBlock(blockNumber)}>eth.syncing.highestBlock-eth.getTransaction(“”).blockNumber 区块是如何验证的? 区块链系统使用Merkle树数据结构运行,这使得它们(在理论上)不可变。Merkle树是RalphMerkle在1979年申请专利的,在加密学中被广泛使用。Merkle树是验证共享数据未更改、损坏或更改的基本方法,并且非常适合区块链,因为它是轻量级的。例如,由于比特币的Merkle树结构,用户的移动钱包不需要下载所有的比特币交易来验证它们。 给区块中的每笔交易对应于Merkle树中的一个叶子,通过散列单笔交易从这些叶子递归构建。 交易对(叶子)被哈希以创建可能对应于区块链网络中的交易的其他叶子节点。尽管可以从大量交易中创建Merkle树,但Merkle根始终对应一个32字节或256位的字符串(例如SHA256哈希算法总是输出32字节的固定长度,无论输入中的大小)。通过这种方式,我们可以使用小至32字节的数据来验证多达数千笔交易。 根据案例,任何更改,无论多么微小,都会阻止Merkle根的验证,并使区块链的部分或全部历史失效。 以太坊区块链中的区块类型 以太坊与比特币的不同之处在于是它具有更快的区块创建机制,旨在加快交易过程。但是,当区块生成之间的时间间隔很短(大约15秒)时,会创建大量的孤立区块,因为将所有这些区块都包含在区块链中是低效的。 这导致了矿工浪费时间在区块上工作而得不到报酬的问题。为了解决这个问题,以太坊的开发者推出了GHOST协议。 GHOST代表Greedy Heaviest Observed Subtree,概念很简单。它奖励验证孤立区块的矿工,尽管其奖励低于标准区块。为了释放奖励,该区块必须被主链中的区块或叔块引用。 该机制的另一个优点是解决了网络中心化的问题。当区块被快速创建时,大型矿池很容易垄断区块验证,从而导致较小的竞争对手创建无穷无尽的孤块区块。 以太坊区块链中有两种类型的区块:
想象一下,世界不同地区的两个矿工同时挖出同一个区块。然后他们在网络中传播他们的区块。这可能会在区块链中造成的分歧,因此必须选择一个,而较大的区块将永远获胜。未选中的区块成为孤立区块(在比特币中)或叔块(在以太坊中)。与比特币不同,以太坊矿工挖矿将获得整个区块的1/8奖励。 (责任编辑:admin) |