区块链中的全节点与轻量级节点

在加密货币中,凡是连接到该网络的任何计算机,都被称为节点。在区块链中,存在一种冗余备份的现象。就是说,如果所有节点都需要保存全网的所有交易及其他数据信息,则不可避免的会出现一些弊端,比如,用户想创建一个自己的区块链节点进行项目开发,而不需要参加共识过程,那么进行数据的同步将是一项特别庞大的工作,既耗时又费资源。

  • 全节点:

在比特币中,存在一种叫做全节点的节点,即保存有全网交易数据,又能完成相关验证交易,独立完成与对等节点的连接。也就是说,这类节点在本地保存了一个完整的区块链网络,在其上可进行任何查询、交易的验证与广播,正因为有这样的节点存在,更加使得去中心化成为了可能,同时使得区块链网络更加安全。
一直在线,最重要的是参与挖矿,寻找最长合法链并辨别分叉。

  • 轻量级节点

在区块链网络中,merkle-tree保存了当前区块中所有交易组成的根哈希,保存在区块头中,任何一个交易内容的改变,都会使得根哈希变化,从而改变区块链结构,不被节点认可。轻量级节点不需要保存所有交易内容,利用merkle tree的特性,它只需包含block header以及与自己相关的交易细节,并通过Merkle证明来判断交易是否在当前的区块链交易列表中。
轻量级节点并不一直在线,与全节点不同,它只能检测哪一条是最长链,但无法知道是否是最长合法链,因为轻量级节点无法验证大多数交易的合法性,也无法验证区块链网络发布的区块的正确性。

你可能感兴趣的:(区块链,区块链,比特币)