本内容由德语机器翻译而成,尚未经母语人士审校。技术和监管术语以德语或英语版本为准。
分布式账本
区块链如何使交易具有约束力——以及这究竟是哪一种约束力。
本课未经专业审阅。它是为本平台撰写的,并依据所列证据写成;未进行过独立的专业审阅。
学习目标
- 您能够解释最终性的含义,以及为什么它不会立即达成。
- 您能够说明为什么“不可更改”并不意味着“正确”。
检查预备知识
请在继续阅读之前,先自行回答这些问题。您犹豫的地方,正是本课的价值所在。
- 什么是账簿?
- 在传统体系中由谁记账?
- 出现错误记账时会怎样?
核心概念
事实
由多方同时维护的账本
区块链是一种账簿,它不是由一个主体维护,而是由许多方同时维护——各方按照一条固定规则就每一个下一条记录达成一致。每个区块都包含对前一个区块的引用;更改更早的内容会使其后所有引用失效。
事实
最终性是一种程度,而非一种状态
一笔刚刚得到确认的交易尚未最终确定。每多一个区块,事后更改就变得更昂贵、更不可能。有些网络定义了一个时点,此后更改在经济上被排除;另一些网络只是让更改变得越来越不可能。对于结算而言,恰恰是这个时点才是相关的量。
风险
不可更改并不意味着正确
区块链保证一条记录在达到最终性后不再被更改。它并不保证这条记录是正确的。转账到错误地址与转账到正确地址同样是最终的。被视为安全特性的这一属性,在出错时恰恰走向了反面。
术语
- 最终性
- 已确认交易在实际上不再能够撤回的时点。
- Gas
- 交易在网络上消耗的计算资源所需支付的费用。
- 区块链 见术语表
- 一种分布式的、持续链接的交易账本。
模型
交易已签名并发送至网络
已进入内存池(mempool)——尚未成为账本的一部分
已纳入区块——已确认,但尚未最终确定
其上再有 k 个区块——实际上已最终确定
计算示例
一笔付款何时算到账?
- 交易在区块中得到确认
- n
- 收款人的假设
- 立即到账
- 实际最终性
- n + k
在区块 n 与区块 n + k 之间存在一个窗口期,此间交易看起来已确认,但仍可能被取代。k 的大小是网络的属性,而不是收款人的选择。
付款要在再经过 k 个区块之后才算到账。
解读: 凭一笔付款交付货物的人必须知道 k。界面中的“已确认”并不是关于最终性的表述。
提取练习
基于真实数据的练习
请查看本平台的市场分布在多少条链上。请记下:同一品牌在两条链上,在技术上是同一产品的两份,带有两种不同的基础设施风险。
在 Explorer 中比较各条链 →应用
某支付流程要在链上结算。哪两项网络属性决定了何时可以放行货物?
相关案例研究
机构视角解读
- 银行
- 网络的最终性规则与本机构内部对结算最终性的定义是什么关系?
要点
- 最终性不会立即达成,它是网络的属性,而不是一项设置。
- 不可更改并不意味着正确——错误与正确的记账同样是最终的。