主页 > 安卓版下载imtoken官网 > 从比特币和以太坊的编程模型中吸取的教训

从比特币和以太坊的编程模型中吸取的教训

安卓版下载imtoken官网 2023-11-17 05:14:02

通过分层架构,可以创建负担得起的通用基础设施,在我看来,这是区块链驱动世界唯一可行的未来。

通过我的工作,我开始意识到人们很难理解细胞模型的想法。本文试图以一种简化的方式来解释 Cell 模型,以便大多数人都可以访问它。

首先,重要的是从比特币开始,从历史开始。比特币被称为点对点电子支付系统,它使用一种称为 UTXO 的编程模型。

将 UTXO 视为一个盒子最简单的方法。(是的,不是分类帐,而是一个盒子。)该盒子包含一个代表某种货币价值的数字并有一个锁。只有拥有相应钥匙的人才能打开盒子。转账时,持有者/持有钥匙的人用钥匙开锁,找另一个空盒子,将新面额放入新盒子,并附上新主人的锁。

比特币就像一个装有钱的锁着的盒子:一个有钥匙的人可以打开那个盒子并花一些钱。每次取钱时,旧盒子都会被销毁,需要一个新盒子来存放剩余的钱。

未来比特币和以太坊

整个交易可以总结为打开盒子,取出里面的钱,破坏原来的盒子,然后把它放进另一个盒子里。

总而言之,方框代表存储数据的 UTXO 模型,锁代表所有权。密码学是一项伟大的发明,它将物理世界中的锁概念映射到虚拟世界。

除了UTXO模型,还有账户模型。这种模型最著名的例子是以太坊。除了数据,以太坊账户模型中还有计算逻辑。你可以把 ERC20 合约想象成一个装满钱的盒子,而是一组复杂的逻辑和数字。

与 UTXO 不同的是,账户模型的盒子始终是可重复使用的,并且在使用期间无法打开。制定规则时,在盒子里写了一套规则,并放置了一些按钮,以便人们可以与盒子进行交互。例如,规则可能是这样的:如果一方想要转移资金,他或他或它需要出示一种身份证明并输入密码。完成上述步骤后,需要提供以下信息、转账金额、收款人等信息。输入此信息后,她或他或它需要单击转移按钮才能完成转移。盒子收到信息后,会从你的金额中扣除你的钱,转入对方账户未来比特币和以太坊,然后更新所有内部数据。熟悉编程的人会很快发现,账户模型类似于现实世界的面向对象编程,按钮​​的概念类似于 API。(我妻子说帐户模型听起来像一台 ATM 机。她是对的。)

如果我们扩展盒子的比喻,以太坊的功能更像是一台 ATM 机。

在帐户模型中,此框包含逻辑和数据。一旦将逻辑写入出厂设置,就无法再更改。只有在需要修改数据时才应使用外部按钮。每个人的钱都记录在盒子里。要交易,只需输入交易信息。盒子将根据规则处理请求并更新数据。

未来比特币和以太坊

在单元模型中,我们也可以将单元视为一个盒子,因为它与 UTXO 模型非常相似。可以对盒子进行一些魔术操作,并编写一组规则来指定盒子可以存储什么。通过这种方式,可以使单元格内的数据代表金钱和/或资产,例如 CryptoKitties。此外,UTXO 中的锁属于同一类型。但在 Cell 模型中,用户将可以自由更改和使用自定义锁。(您可能会想到简单的挂锁、指纹锁或数字锁)

单元格就像一个盒子,可以包含带有任意锁的任意对象。

总的来说,Cell 模型在以下两个方面是一个通用的 UTXO 模型:第一,锁是可定制的;第二,锁是可定制的。其次,盒子可以存储用户定义的数据。Nervos 的 CKB 具有结合了比特币编程模型和以太坊编程模型优势的编程模型。

有些人可能对高级单元模型意味着什么以及如何使用其编程模型感到好奇。

首先了解区块链系统的演变非常重要。比特币是点对点支付系统的诞生,其次是以太坊,一个更通用的去中心化应用平台。区块链的进一步发展催生了种类繁多的新项目,项目也越来越多样化。

由于需要全网共识的交易和存储成本高昂,因此区块链不可避免地会采用一种在共识范围内具有灵活性的架构,从而使其能够大规模地进行低成本交易。

未来比特币和以太坊

两个障碍

继续阻碍区块链发展的一个障碍是可扩展性问题。如果我们不缓解这个问题,区块链功能将受到限制,我们将看不到能够释放去中心化经济真正潜力的强大高级应用程序的开发。

可扩展性是“区块链难题”的一部分,其中还包括安全性和去中心化,并指出区块链系统最多可以具有三难困境的 3 个属性中的 2 个。

第二个障碍是交易成本问题。社会整体交易成本的降低是衡量技术规模可行性的最有力指标之一。由于需要全网共识的交易和存储成本高昂,因此区块链不可避免地会采用一种在共识范围内具有灵活性的架构,从而使其能够大规模地进行低成本交易。

解决方案:分层架构

计算机爱好者知道他们的设备包含复杂的分层架构,包括内存、硬盘驱动器、多层缓存和各种寄存器。这种架构允许公众以低成本使用,以及可扩展的能力来应对日益增长的计算挑战。

我们可以将相同的设计原则应用于区块链。通过分层架构,可以创建负担得起的通用基础设施,在我看来,这是区块链驱动世界唯一可行的未来。随着 Lightning、Plasma 和状态/支付通道的兴起,我们已经可以看到这种类型的架构及其促进的用例。

未来比特币和以太坊

在研究这种分层的区块链架构时,重要的是要检查构成区块链系统基础的三种不同数据模型之间的关系:比特币的 UTXO 模型、账户模型和我们的贡献单元模型。

验证和计算模型

单元模型源自 UTXO 模型,因此是验证模型。相反,账户模型是一个计算模型。

当前的第 2 层解决方案(例如闪电网络)在资产从第 2 层返回到第 1 层时利用证明提交和验证机制。由于第 1 层扮演验证角色而不是计算角色,我们可以看到 UTXO 或单元模型是正确的方法来做这种类型的建设。

解决国家爆炸问题

目前,以太坊和“下一代”区块链面临着扩大状态规模的艰巨挑战。虽然大规模采用仍然遥遥领先未来比特币和以太坊,但完整节点的数据存储成本已经很高以及包含各种机器人帐户使情况变得更糟。

使用账户模型,所有用户的资产都存储在一个合约中。如果没有办法直接为每个用户划分状态,就很难对每个用户占用的状态的容量和持续时间进行收费。

未来比特币和以太坊

这对州费的实施提出了挑战,目前在以太坊中,交易费是一次性支付,可以使州政府永久存储。考虑到区块链是公共基础设施,这种模式是不可持续的。我们可以看到,持续支付存储空间租金是更合理的做法。

在细胞模型中,每个用户的数字资产都存储在各自的细胞中。如果用户不想继续持有资产,可以释放单元中的数据,并将存储容量出售或借给其他用户。这种设计确保了 Layer 1 不会无限期地存储过时的资产,也为状态存储开辟了新的可能性。

综上所述

总的来说,很明显,当考虑存储和验证要求时,单元模型最适合分层区块链架构的需求。

下一篇文章将演示如何使用 Cell 模型进行编程,并描述该编程模型的一些优点和局限性。

参考:

从: