主页 > 苹果版imtoken钱包官网 > 如何在比特币上构建高级智能合约?

如何在比特币上构建高级智能合约?

苹果版imtoken钱包官网 2023-09-25 05:11:13

由 admin 于 2022 年 5 月 10 日发布

如何在比特币上构建高级智能合约?比特币是迄今为止世界上最受欢迎的加密货币。无论是在流动性、链上交易量还是任何其他指标方面,比特币的主导地位是不言而喻的。但是,出于技术原因,开发人员通常更喜欢以太坊。

因为以太坊在构建各种应用程序和智能合约方面更加灵活。多年来,有许多平台专注于开发高级智能合约功能,但很明显,以太坊是这一特定领域的领导者。

虽然这些技术在以太坊上如火如荼,但比特币正逐渐成为一种价值储存手段。有人试图通过与 TBTC ERC-20 代币兼容的以太坊 RSK 侧链等技术来缩小与比特币之间的差距。但另一种选择是让比特币本身升级脚本功能。这就是需要 Simplicity 语言的地方。

如何在比特币上打造高级智能合约?

什么是简单?

Simplicity 是一种全新的比特币编程语言,在构建智能合约方面比当今的比特币人更快。货币网络更加灵活。而这种低级语言是由 Blockstream Infrastructure 的开发者 Russell O'Connor 创建的。

Blockstream 首席执行官 Adam Back 在最近一次关于该主题的网络研讨会上解释说:“这是一种用于比特币和网络的新一代脚本语言,包括 Elements、Liquid(侧链)等。”

比特币功能是哪些

比特币创造者中本聪在项目初期出于安全原因对比特币脚本进行了限制,Simplicity 是在保证安全的同时让比特币脚本更加灵活的尝试。

虽然不是图灵完备的,但对于想要在以太坊上构建大多数现有类似应用程序的开发人员来说,Simplicity 的表现力已经足够了。

此外,Simplicity 的目标是让开发人员和用户更轻松地验证智能合约部署是否到位、安全且成本低。

“出于安全原因,我们确实希望在运行程序之前对其进行分析,”撰写开源软件的技术作家大卫哈丁在 Noded Bitcoin 的博客中说,

“对于比特币,我们不允许图灵完备,所以我们可以静态分析程序。简单性也没有实现图灵完备,所以你可以静态分析程序。”

值得注意的是,上述 TBTC 在其在以太坊主网上发布后不久就被其创建者关闭,因为他们发现了支持 ERC-20 代币的智能合约中的一个错误。在过去的几年里,以太坊智能合约爆发了许多安全问题,例如 Parity 钱包的多重签名漏洞和臭名昭著的 DAO 事件。

简单对比特币意味着什么?

比特币功能是哪些

为了探索 Simplicity 对比特币的意义,LongHash 联系了 Paradigm Research Partner 的 Dan Robinson,他曾研究 Simplicity 和 Ethereum。

Robinson 告诉我们:“简单性将是比特币脚本功能的广泛升级,而不是比特币历史上每一次脚本升级的集合。作为‘全功能’指令集,未来不会有比特币脚本功能需要再次升级,当然为了提高一些功能的效率,还是需要升级一些的。”

这个问题可以从软分叉的角度来看。过去,比特币脚本升级是通过软分叉实现的,需要社区共识才能在网络上激活。如果启用 Simplicity,任何人都可以通过语言高效地实现一些常用的软分叉变更,而无需网络节点更新比特币共识规则。

这个方案有两个主要作用:比特币的发展速度会比以前更快,也有助于解决潜在的比特币协议僵化(Ossification)问题。然而,归根结底,比特币协议的刚性也是可取的,因为它有效地反映了网络的基本规则,例如令牌策略等,这些规则是不可变的,从而阻止了潜在的社会攻击媒介违反比特币的价值主要因素有影响。

“有趣的暗示:如果今天的比特币部署了 Simplicity 脚本,它会自行扩展,”Adam Back 在 Reddit 上写道,“并且像 Schnorr/Taproot 和 SIGHASH_NOINPUT 这样的改进将可以直接实施。”

Here Back 举例说明了软分叉方案,这是在启用 Simplicity 后无需更改比特币共识规则即可进行的添加类型之一。当被问及对此有何看法时,他澄清说:

“我不认为 Taproot 扩展在技术上可以像 Pieter Wuille 所说的那样用 Simplicity 语言实现 - 但 Schnorr 可以。”

比特币功能是哪些

就 Robinson 而言,如果 Simplicity 确实添加到比特币中,那么首先会起作用的将是开发人员现在正在进行的一些改进,例如 Eltoo 等支付渠道的设计、新的签名算法、可能还有一些隐私增强方案。

Robinson 补充道:“我希望看到的是代币标准的发展,类似于以太坊的 ERC-20,这样我们就可以看到一些新的应用,比如稳定币、去中心化交易所和杠杆交易等。 ”

以太坊上的Simplicity和比特币的区别

如果将 Simplicity 语言添加到比特币主网,那么显然会有人下载它。结论:我们没有理由继续使用以太坊。但是,即使比特币有Simplicity,它和以太坊还是会有很大的不同。

Robinson 说:“我对 Simplicity 感兴趣不是因为它让比特币更‘以太坊’,而是因为它让比特币更‘比特币’。”

尽管使用了 Simplicity,但比特币仍以 UTXO(未使用的交易输出)模式运行,而不是以太坊的基于帐户的设置。

Robinson 解释说:“UTXO 模型是提高验证者效率的绝佳选择,但代价是很难构建满足多人与合约交互的需求的应用程序。”

比特币功能是哪些

此外,以太坊在发展平台网络效应方面取得了长足的进步,至少在智能合约方面是如此。

“围绕 Simplicity 的工具和开发者生态系统可能需要很长时间才能形成,”Robinson 说,

“Simplified 不是人类可读的语言,所以可能需要有人开发一种语言来编译它,然后再提供给普通开发者使用。此外,开发与 UTXO 模式兼容的智能合约设计平台需要大量研究。”

从开发的角度来看比特币功能是哪些,以太坊的网络效应正在解释为什么 RSK(以太坊风格的比特币侧链)将平台设计为与以太坊虚拟机兼容。

但目前尚不清楚比特币用户最终是否会需要一些类似于以太坊网络上的加密货币应用程序。

Robinson 表示,“比特币的区块容量溢出比以太坊的要大,它的 10 分钟出块速度也可能把一些应用拒之门外。相应地,现在似乎还不清楚。比特币社区真的想在比特币上构建这些应用(而不是将比特币用作简单的支付渠道或保险库),因为此类应用程序可能会导致区块链拥塞,甚至增加 51% 攻击的收益——如果引入了新的矿工挖掘价值。”

在 Robinson 看来,由于预言机问题,许多比特币用户很早就对以太坊持批评态度。预言机问题已成为各种去中心化应用程序(DeFi)开发中日益关注的问题。

比特币功能是哪些

Simplicity 何时实施?

应该注意的是,Simplicity 可能还有很长的路要走才能进入比特币主网。但预计脚本语言可能会在今年晚些时候首先添加到 Liquid 侧链中。

这是让现实世界的资产开始使用 Simplicity 语言的重要一步,但一些开发人员,例如比特币隐私钱包的开发人员,对 Liquid 侧链 Weary 的联合模型表现出了兴趣。

我们问 Robinson 对此有何看法,他说:“我不认为 Liquid 的联合性质会破坏交易。但它确实让吸引大量开发人员或用户变得更加困难。”

p>

根据长期比特币核心贡献者和 Blockstream 联合创始人 Greg Maxwell(在 Reddit 上又名 nullc)的说法比特币功能是哪些,由于通过隔离见证(SegWit)引入了脚本多版本系统,因此可以通过软拆分来实现简单性) 升级。以分叉的形式添加到比特币。当然,这是假设社区共识可以围绕比特币共识规则的变化而建立的假设。

在 Blockstream 工作的 Grubles(化名)告诉我们,“我不确定如何通过软分叉部署它,但它不会取代主网和 Liquid 侧链上的任何东西。它只会一种可与现有地址类型(例如 Legacy、P2SH、Bech32)一起使用的新地址类型。”

Grubles 补充说,他认为以太坊损害了“智能合约”的声誉,因为多年来在平台上部署了许多有问题的智能合约。因此,他们认为一直关注以太坊的比特币用户不太愿意看到智能合约在 Liquid 上灵活使用。

“我认为这将是一个有趣的话题,但还需要几年的时间,”Back 补充道。 “先例可以先在侧链上验证。”