主页 > imtoken苹果下载不了 > Ivy:比特币智能合约的编译语言
Ivy:比特币智能合约的编译语言
我们很高兴在这里发布用于编写比特币智能合约的开源编译器和开发环境。 这里用来编译智能合约的Ivy语言是由Chain创建的。 Ivy 可以帮助您编写与 SegWit 兼容的自定义比特币地址,并可以在比特币协议(包括签名检查、哈希承诺和时间锁)组合下强制执行任意条件。
相对于其他编程语言进行数据操作 ,Ivy控制值的方法更为简单。 您可以使用 Ivy Playground 进行测试。 (请注意,Ivy 不是经过全面测试的软件原型,仅用于教育和研究目的。)
比特币智能合约如何运作
如果您对区块链网络感兴趣比特币合约永远不会赔,您可能听说过“智能合约”。 作为区块链验证的一部分,此类程序可以通过特定逻辑控制链上资源。 这个概念通常与以太坊相关联,因为它能够支持有状态的、图灵完备的智能合约。 但是你知道在比特币网络中也可以编写智能合约吗?
你可以使用一种低门槛的编程语言Bitcoin Script(比特币脚本语言)在比特币系统上编写这样的合约。 每个比特币地址对应一个比特币脚本程序。
当您将比特币发送到一个地址时,您会将它们锁定在区块链上的一个安全“存款箱”中。 这些“盒子”实际上是“未花费的交易输出”,但我们可以将它们视为“合约”。 每个合约都有一个地址,每个地址对应一个程序。 只有解锁并花费特定比特币后比特币合约永远不会赔,才能满足启动条件。
Bitcoin Script是一种低门槛的“汇编语言”,可以在比特币协议中写入特定的地址。 Bitcoin Script编写的程序如下:
比特币“虚拟机”——协议中负责执行比特币脚本程序的部分——比以太坊或 Chain Protocol 等其他智能合约平台的虚拟机更受限制,其指令集甚至不是图灵完备的。 但比特币脚本确实提供了一组有用的原语——签名验证、哈希计算以及相对和绝对时间锁——并且这些原语可以自由组合。
目前,Bitcoin Script 的用户群非常小。 比特币钱包、交易所和支付平台有时会使用 Bitcoin Script 来创建安全解决方案,例如多重签名(multisignature)钱包。 协议开发人员使用比特币脚本来设计有趣的扩展、隐私和互操作性方案,例如 Interledger 和闪电网络 (LN)。 但是很多人认为用 Bitcoin Script 开发太难了。
其中一个原因是虚拟机功能的限制,另一个原因是读写Bitcoin Script程序,并在此类程序中创建和使用地址是一项相对困难的任务。
什么是常春藤
Ivy语言支持Bitcoin Script编译,Ivy程序如下:
Ivy 是一种用于编写合同模板的语言。 每个合约模板在设置特定参数后都可以编译成一个比特币地址(兼容隔离见证的地址)。
您可以使用 Ivy Playground 来测试、设计、创建和发送模拟比特币合约。 Ivy Playground 中有预加载的模板,显示一小部分工作合同。
我们希望在学习比特币、智能合约和价值可编程性的过程中,常春藤能够帮助你更简单地理解问题。 我们迫不及待地想看到您的测试过程。
谢谢你
感谢 Boyma Fahnbulleh、Andrew Miller、Emin Gün Sirer、Patrick McCorry、Jeremy Rubin、Steven McKie、Olaoluwa Osuntokun、Kathleen Breitman 和 Nick Szabo 对 Ivy 的反馈。 特别感谢 Christopher Jeffrey 和其他 bcoin 开发人员。