主页 > imtoken钱包最新版下载 > 比原链设计思路:可扩展的UTXO模型

比原链设计思路:可扩展的UTXO模型

imtoken钱包最新版下载 2023-05-02 07:14:49

用户模型是比原链最开始需要确定的重要数据结构。 团队的选择仍然集中在两个典型的模型系统上,Account模型和UTXO模型。 与大多数其他区块链设计一样,模型的选择决定了协议层的重要实现。 这两种模型各有优缺点。 不同的区块链对于自己想要关注的场景会有自己的判断。

UTXO的由来(来自才华横溢的中本聪)

中本聪设计的比特币比特币UTXO模型特点,将整个世界带入了数字货币时代。 比特币起源于中本聪,而UTXO则来自比特币。 当然,UTXO 来自才华横溢的中本聪。 UTXO的优点:

比特币分叉会影响比特币价格吗_比特币转错到比特币现金地址了_比特币UTXO模型特点

比特币分叉会影响比特币价格吗_比特币转错到比特币现金地址了_比特币UTXO模型特点

易于设计——以太坊放弃 UTXO 并使用账户模型

以太坊黄皮书的设计者 Gavin Wood 对 UTXO 的理解非常深刻。 既然UTXO有这么多优点,他为什么要放弃UTXO呢? 此时你应该问一个问题,以太坊最大的亮点是什么? 你肯定会回答:智能合约。 正是因为对智能合约的考虑,Gavin Wood 很难实现基于 UTXO 的图灵完备智能合约(功能多样的超级计算机)。 账户模型天然是面向对象的,每一笔交易都会记录在对应的账户上(nonce++)。 为了方便账户管理,引入了世界状态,每笔交易都会改变世界状态。 这对应于现实世界,每一个微小的变化都会改变世界。

比特币分叉会影响比特币价格吗_比特币UTXO模型特点_比特币转错到比特币现金地址了

比特币分叉会影响比特币价格吗_比特币转错到比特币现金地址了_比特币UTXO模型特点

为了追求更高的性能

比特币UTXO模型特点_比特币转错到比特币现金地址了_比特币分叉会影响比特币价格吗

以太坊的账户模型很容易实现超级计算机模型。 然而,性能一直是一个难以逾越的坎。 在性能上,utxo 自然可以并行运行,而基于世界状态的以太坊则难以扩展。 加文伍德当然知道这一点,但很难改变。 用具有函数式编程特性的 rust 重写以太坊将是一种妥协。

关于比原链的思考

比特币UTXO模型特点_比特币分叉会影响比特币价格吗_比特币转错到比特币现金地址了

按照马克思主义哲学的否定的否定规律,事物的发展变化是螺旋式的。 也适用于区块链领域。 前进一步也需要后退半步。 基于 UTXO 模型实现堆栈虚拟机仍然会失去灵活性。 使用 UTXO 结合以太坊 EVM 难度极大,实用性不强。 这就好比用Haskell语言来实现cpp风格的面向对象编程。 看不出有什么实际意义。 世界上没有银弹。 比原链必须舍弃零件,妥协才能更好地适应场景。

在采用易于并行操作的比特币UTXO模型的前提下,我们还进行了针对性的改进,增加了资产编号字段,使得不同的资产可以在同一笔交易中进行处理和转换,只要总输入为等于总输出就可以了。

比特币UTXO模型特点_比特币分叉会影响比特币价格吗_比特币转错到比特币现金地址了

比特币分叉会影响比特币价格吗_比特币UTXO模型特点_比特币转错到比特币现金地址了

但是,为了让数据易于管理和编程,我们引入了以太坊世界状态的概念。 每个资产都维护一个全局的世界状态,该状态可快速搜索、不可更改且易于提供证明。 具体实现会参考以太坊的PAT树(扩展基数树)、比特币的merkle树、cosmos的IAVL树(不变的平衡二叉树)。 每个资产的所有输出都会在全局UTXO数据库中有一个索引计数(每个输出的计数不能超过1,在保持并行计算的情况下,一个输出最多可以被一个BVM实例使用,以保证数据的一致性)。 BVM是比原链实现的智能合约虚拟机模型。 每一次交易执行都会实例化一个BVM实例。 只有在 BVM 实例中,每个资产的世界状态才能保持有效性和一致性。 更新状态。 BVM可以并行创建多个“合约沙盒”实例比特币UTXO模型特点,合约在沙盒中的运行不受外界影响。

bvm

比原链的初衷是解决数字资产注册和流通的问题。 对于公链项目来说,保持简单、高效、专注才是安全的保障。 新的扩展UTXO模型就是基于这种场景的融合和改进。 .