区块链 · 数字资产知识 · 行业资讯
文章库关于本站

区块链基础

区块链基石技术相关术语如何理解:区块、哈希与共识机制

摘要

理解区块链,不能只记住“去中心化”和“不可篡改”等概念,还需要掌握区块、交易、哈希、默克尔树、UTXO、共识规则、工作量证明和权益证明等基础术语。本文以比特币和以太坊所采用的相关机制为例,梳理这些术语之间的关系、适用范围及常见误解。

区块链电子发票的科技主题配图

一、区块链首先解决什么问题

区块链可以理解为由多个网络节点共同维护的、按顺序连接的数据记录。每个区块通常包含一批交易以及用于连接前后区块的信息。节点依据共同认可的验证规则检查数据,只有符合规则的区块才会被纳入各自认可的链。

这种设计主要用于在缺少单一中央记录者的情况下,让不同节点对交易状态形成相对一致的认识。区块链并不意味着数据绝对无法修改,而是通过哈希链接、共识规则和经济或计算成本,提高事后改写历史记录的难度。

区块链权益证明的科技主题配图

二、区块、区块头与区块高度

区块是区块链中的基本数据单元,通常包含交易数据和区块头。区块头会记录前一个区块头的哈希、交易集合的摘要以及其他共识所需的信息。由于当前区块引用了前一区块,修改早期区块中的交易会连带改变后续区块的关联关系。

拜占庭区块链的科技主题配图

区块高度表示某个区块距离创世区块的层级位置。高度可以帮助描述区块处于链上的第几层,但不能作为全球唯一标识,因为在网络传播延迟或同时出块时,不同区块可能拥有相同高度。实际识别区块通常还要结合区块哈希。

三、哈希、交易标识与默克尔树

哈希函数会把任意长度的数据转换为固定格式的摘要。输入数据只要发生变化,通常就会得到不同的哈希结果,因此哈希适合用于标识数据和建立区块之间的关联。交易标识通常由交易数据的哈希得到,区块头则可以保存前一区块的哈希,使区块形成连续链条。

当一个区块包含多笔交易时,交易哈希可以通过两两组合、再次哈希的方式逐层汇总,最后得到默克尔根。默克尔根被写入区块头。这样,验证者无需取得区块中的全部交易,也可以借助中间哈希检查某笔交易是否属于该区块。这是轻量验证能够运作的重要基础。

四、UTXO与双重支付

UTXO是“未花费交易输出”的简称。在采用UTXO模型的系统中,交易不是简单地从一个钱包余额中扣除数字,而是使用此前交易产生、尚未被花费的输出作为输入,再生成新的输出。一个输出一旦被有效交易使用,就不能再次作为另一笔交易的输入。

如果同一笔可用输出被尝试花费两次,就构成双重支付。节点会依据交易规则检查输入是否仍然有效、签名是否匹配以及输入输出的数额关系等。需要注意,钱包界面显示的余额是对相关UTXO的汇总,并不等同于区块链中存在一个集中管理的账户余额字段。

五、什么是共识规则与共识机制

共识规则是节点用来判断区块和交易是否有效的一组约束,例如交易格式、签名、输入是否已被花费以及区块是否满足相应条件。共识机制的范围更广,除了验证规则,还包括节点如何获得出块资格、如何抵抗大量虚假身份、多个候选区块出现时如何选择链,以及奖励和惩罚如何影响参与者行为。

因此,工作量证明和权益证明常被简称为共识机制,但更准确地说,它们主要承担抗女巫攻击和选择区块提出者等功能。完整的共识机制还需要包括区块验证、分叉选择和最终状态确认等环节。

六、工作量证明与权益证明的区别

工作量证明要求参与者通过反复计算寻找满足目标条件的区块哈希。计算难度越高,平均需要尝试的次数通常越多。比特币通过区块之间的哈希连接和累计工作量,使改写较早区块不仅要修改该区块,还要重新完成后续区块所需的工作。其安全性与计算设备、能源和持续算力投入相关。

权益证明不依赖竞赛式的大量哈希计算,而是让参与者锁定一定权益,并由协议选择验证者提出或确认区块。以太坊当前采用基于权益证明的共识机制,通过奖励鼓励诚实参与,并对违反规则的行为施加经济惩罚。其安全性更多建立在被锁定权益的风险和验证者投票权重之上。两者属于不同的安全设计,不能简单判断为一种必然全面优于另一种。

七、分叉、链选择与确认

当多个节点在相近时间提出不同区块,网络可能暂时出现分叉。节点会按照各自的链选择规则决定继续认可哪一条链。比特币的有效链选择与累计工作量有关;采用权益证明的系统则可能根据验证者投票及其权益权重等因素选择链头。

因此,“最长链”并不应被机械理解为区块数量最多的链。在工作量证明语境中,它通常指累计工作量更高的链;在其他机制中,链的权重可能由不同指标决定。随着更多后续区块或确认信息出现,某笔交易被替代或回滚的可能性通常会降低,但这不等于任何区块链都能提供绝对不可逆的记录。

八、这些术语在什么情况下适用

区块、区块头、哈希、默克尔根和区块高度,是多数区块链系统都可能出现的基础概念,但具体字段和编码方式会因协议而异。UTXO主要适用于采用UTXO模型的系统,不能直接套用于所有账户模型区块链。

工作量证明、权益证明和权益投票的具体实现,也不能仅凭名称推断全部安全性质。阅读某个项目的技术文档时,应进一步确认其交易模型、验证规则、分叉选择方法、最终性设计以及参与者的激励与惩罚安排。

九、常见问题

问题一:区块链中的“不可篡改”是否意味着数据绝对不能改变?不是。更准确的说法是,经过确认的数据若要被修改,通常需要同时满足协议规则并付出较高的计算、资本或协调成本。

问题二:共识机制是否只等于工作量证明或权益证明?不是。它还包括节点如何验证交易、如何选择候选链、如何处理分叉以及如何通过激励约束参与者。

问题三:区块高度能否唯一确定一个区块?不能。在分叉期间,不同区块可能处于同一高度,因此还需要使用区块哈希等信息进行区分。

问题四:钱包是否直接保存区块链上的数字资产?通常可以把钱包理解为管理密钥、生成交易和读取链上状态的工具。资产记录本身仍由区块链中的交易和状态共同表达。

← 返回全部文章

延伸阅读 · 相关栏目

区块链基础技术原理数字资产知识资料与核验