Skip to main content
区块链是由一组多样化参与者对以下两件事达成的去中心化共识:
  1. 交易的官方排序(账本)
  2. 官方的世界状态,包括账户余额和各类程序的状态。
在 Ethereum 等现代区块链中,交易包括余额转账、创建新程序,以及对现有程序的函数调用。到目前为止所有交易的聚合结果产生了当前状态,这就是为什么_对上文(1)的一致意味着对(2)的一致_。 区块链系统有一组协议规则,也称作共识机制,用于描述当前处于同步状态的分布式节点集如何相互通信,以就要添加到账本中的额外交易达成一致。(MonadBFT 就是共识机制的一个例子。) 归纳法保持了节点的同步性:它们从相同的状态出发,应用相同的交易,因此在应用完一批新交易后,它们仍然拥有一致的状态。 共享的全局状态使得去中心化应用的开发成为可能——这些应用”运行在区块链上”,即运行在区块链系统的每个节点上。去中心化应用是一段代码(以及持久化的、应用特定的状态),任何用户都可以通过提交指向该应用上某个函数的交易来调用它。区块链中的每个节点都负责正确执行被调用的字节码;冗余保证了每个节点的诚实性。

一个应用示例

去中心化应用可以实现我们通常预期以中心化方式实现的功能。例如,一个非常简单的去中心化应用示例是_虚拟银行_(在加密领域通常称为借贷协议)。 在现实世界中,银行是一种接受存款并以更高利率放贷的业务。银行赚取高利率与低利率之间的差价;借款人获得贷款以从事经济生产活动;而您则因存款而赚取利息。三方共赢! 虚拟银行本质上就是一个包含四个主要方法的应用:depositwithdrawborrowrepay。每种方法的逻辑大多是簿记,以确保存款和贷款被正确跟踪:
在 Ethereum 或 Monad 中,有人可以为这家虚拟银行编写代码并上传;然后任何人都可以利用它进行借贷,或许比在其本国申请银行服务要容易得多。 这个简单的例子展示了去中心化应用的力量。这里还有一些其他值得强调的好处:
  • 开放的 API / 可组合性:去中心化应用可以被其他去中心化应用原子地调用,使开发者能够通过堆叠现有组件来构建更复杂的功能。
  • 透明性:应用逻辑完全通过代码表达,任何人都可以审查其副作用。状态是透明且可审计的;DeFi 中的储备证明是默认能力。
  • 抗审查性和可信中立性:任何人都可以向无需许可的网络提交交易或上传应用。
  • 全球触达:任何有互联网访问权限的人都可以使用关键的金融服务,包括无银行账户/银行账户不足的用户。