如何使用 Ergoscript 创建智能合约 | Ergo 平台

This page is machine-translated.
Ergo Platform

2024年2月20日

智能合约是去中心化金融(DeFi)的支柱,并且一直是区块链技术的主要实用工具之一。在我们讨论 Ergo 上智能合约的几个方面之前,让我们先谈谈什么是智能合约。

什么是智能合约?

智能合约是一段自我执行的代码,通常存在于区块链上。当特定条件满足时,智能合约会自动执行预定义的合同条款。它在没有中介的情况下运行,并使用代码透明且无信任地执行特定操作。这些操作可能包括购买 NFT、转移硬币和代币,或借贷资产。

Ergo 的智能合约是其与其他加密货币区分开来的众多特性之一。让我们看看 Ergo 的智能合约为何如此特别。

理解 ErgoScript

Ergo 使用基于 Scala 的编程语言 ErgoScript。Ergo 文档 表示 ErgoScript 是 Scala 的简化形式,作为一种高级语言被翻译成 ErgoTree,而 ErgoTree 又是一种在执行过程中进一步翻译成加密协议的低级语言。这种设计使 Ergo 能够支持多种加密协议,包括环签名和门限签名。与比特币不同,ErgoScript 通过引入自我复制来容纳复杂的金融合约,这允许在区块链上创建图灵完备的过程,同时保持比特币的安全性和隐私原则。实质上,ErgoScript 使得构建安全、复杂的去中心化应用程序变得更加容易,同时保持隐私能力。

创建智能合约的前提条件

由于 Ergo 是一个 eUTXO 区块链并拥有自己的编程语言,新开发者需要先熟悉 Ergo 的一些特性,然后才能创建智能合约。其中一个特性是 “盒子” 的概念。在 Ergoscript 中,'盒子' 是 UTXO 的可适应版本。它不仅作为与地址相关联的加密货币的持有者,还包含用于额外数据的 '寄存器'。这些数据可以从基本值到复杂结构不等,可用于交易和智能合约执行。这一区别使 Ergo 的盒子与典型的 UTXO 区分开来,后者仅表示与特定地址相关联的未花费加密货币金额。在基于 UTXO 的加密货币中,交易使用现有的 UTXO 作为输入,并生成新的 UTXO 作为输出,未花费的输出代表未来交易中可支配的硬币。

新开发者需要了解的另一个重要方面是对 ErgoScript 语言描述 的一般理解。这个链接将帮助新开发者入门。下面是一些 Ergoscript 方面的图片,用户可以熟悉。

introduction (1).png

我如何使用 ErgoScript 创建智能合约?

学习如何在 Ergo 上编写智能合约的第一步是熟悉 ErgoScript。需要再次注意的是,Ergo 使用的 UTXO 模型与传统的账户模型有很大不同。eUTXO 模型与智能合约的结合的一个很好的例子可以在 Ergo 文档 这里 找到。例如,具体到 eUTXO,创建智能合约涉及将交易输出指定为合约。例如,如果温度达到 90 华氏度,您可能想要支付 10 个数字硬币给您的朋友。这被表示为数字储蓄罐中的一堆,附加了一个指定支出条件的脚本。如果条件满足,您的朋友可以凭借满足条件的证明来支出这笔钱。否则,资金将保留在所有参与者可见的堆中。

智能合约对于初学者和高级开发者来说都可能复杂且令人不知所措。幸运的是,Ergo 生态系统拥有大量资源,展示了如何学习 Ergoscript 以及如何编写智能合约。这个资源 特别引导用户进入 “Ergo Playground”,在这里他们可以尝试不同难度的智能合约。罗伯特·科尔纳基(Robert Kornacki)制作的 这个视频 带您了解创建带有 PIN 锁合约的智能合约的初始阶段。

ergoscript_examples (1).png

科尔纳基 表示:“这是一个简单的智能合约,它在一个 PIN 号码下锁定存入的资金。当用户最初提供 PIN 号码时,它会在链下进行哈希处理,哈希本身存储在链上。

当用户希望提取他/她的资金(支出被此合约锁定的 UTXO)时,他/她在输出 UTXO 的寄存器中提交一个 withdrawTransaction,实际的 PIN 号码。合约随后执行并检查,当新提供的 PIN 号码被哈希时,它是否等于存储在合约锁定的盒子寄存器中的原始哈希。如果它们相等,则合约验证,交易被接受为有效并添加到区块链历史中。

请注意,此合约仅作为教育示例使用。它完全不安全,绝不应在链上使用。恶意行为者可以扫描内存池以找到在 withdrawTransaction 发布时的 PIN 号码,然后通过发布带有更高交易费用 + 相同 PIN 号码的交易来抢先,从而窃取您的锁定资金。也就是说,这是一个很好的简单合约,可以让您在 Ergo 开发的初始阶段进行尝试。这可以帮助新开发者习惯使用 Ergoscript。新开发者可以使用这个 链接 直接进入 Ergo Playground,代码已经为他们导入。再次强调,这段代码不安全,仅应用于教育目的。

智能合约的未来

智能合约的未来代表着颠覆传统金融系统并用无信任和透明的假设取而代之的无尽可能性。智能合约减少了法律文书、律师和可信交易的需求。智能合约也是即时的,效率更高,这将使公司、企业和企业家能够在更短的时间内完成更多工作。智能合约的一些潜在缺点是它们通常是不可逆的,并且可能存在潜在的代码漏洞,这可能导致用户资金的损失。这就是为什么在创建智能合约时安全代码如此重要。这也是 ErgoScript 如此强大的原因之一。它是一种在正确执行时极其安全的编码语言。

结论

ErgoScript 最终是一种编码语言,由于它允许在 Ergo 上创建动态和安全的智能合约而脱颖而出。它使开发者能够创建复杂和精密的去中心化应用程序,同时比许多其他编码语言更容易构建。Ergo 的开源特性也简化了开发者构建他们愿景和创造特别事物的过程。

对于希望在 ErgoScript 和智能合约中入门或渴望更高级智能合约知识的开发者,请参考下面的文档。Ergo Discord 也有一个 #development 部分,志同道合的开发者可以在这里互动并更深入地了解 ErgoScript。

有用链接

Share post

Ergo基础设施DAO:去中心化Ergo生态系统的支柱

Ergo基础设施DAO:去中心化Ergo生态系统的支柱

Ergo的使命一直根植于去中心化,不仅在共识层面,而是在整个技术栈中。随着Ergo基础设施DAO (InfraDAO)的推出,这一愿景正在扩展到每天为生态系统提供动力的服务和基础设施。 InfraDAO现在在Paideia上正式上线,经过成功的治理投票。最初.

Ergo Platform

2025年8月13日

Mew Finance:一个为Ergo生态系统提供的有趣DeFi工具包

Mew Finance:一个为Ergo生态系统提供的有趣DeFi工具包

Mew Finance是一个基于Ergo区块链的去中心化应用套件。该项目于2024年10月启动,将DeFi、数字资产和跨链功能整合到一个统一的平台中。长期社区开发者HQΣr和Aco Šmrkas领导该项目。设计上偏向模块化、易用性和深度生态系统集成。 本文是.

Ergo Platform

2025年8月12日

Lithos:通过链上矿池实现去中心化挖矿

Lithos:通过链上矿池实现去中心化挖矿

Lithos是一个新协议,旨在通过将矿池转移到链上来彻底改革矿池的运作方式,使矿工完全控制,并消除对中心化矿池运营商的需求。与之前大多数去中心化挖矿的尝试不同,Lithos旨在高效、可扩展和安全。 什么是Lithos? Lithos是一个去中心化的矿池协议.

Ergo Platform

2025年7月24日

Sigma 6.0:更智能、更灵活的Ergo

Sigma 6.0:更智能、更灵活的Ergo

Sigma 6.

Ergo Platform

2025年7月23日

塑造Rosen的未来:关于五项关键财政提案的社区呼吁

塑造Rosen的未来:关于五项关键财政提案的社区呼吁

Rosen的联合创始人Armeanio已向Rosen财政提交了五项新提案。这些提案概述了Rosen Bridge的增长、实用性和可扩展性的战略愿景,这是Ergo互操作性基础设施的核心组成部分。 这是Ergo社区审查和讨论这一重要跨链服务未来方向的关键时刻。以.

Ergo Platform

2025年7月9日

Ergo的扩展UTXO与人工经济智能的崛起

Ergo的扩展UTXO与人工经济智能的崛起

自主经济代理的实用愿景 Ergo区块链上的自主经济代理在真实的数字经济中执行有用的工作。它们通过创建内容和提供数据分析、模式识别等服务来产生收入。它们利用收入支付运营费用,如托管费和服务器成本,并使用现代工具,如SSH和加密友好的托管服务提供商。当有额外资金.

Ergo Platform

2025年5月12日

ErgoHACK X:在Ergo区块链上的人工智能

ErgoHACK X:在Ergo区块链上的人工智能

庆祝去中心化创新的十年 加入第十届ErgoHACK,站在Ergo区块链AI革命的最前沿!释放你的创造力,与其他创新者合作,共同构建去中心化AI的未来。 关于ErgoHack ErgoHACK,旗舰社区黑客马拉松,庆祝其十周年!这一里程碑事件是Ergo生态系统.

Ergo Platform

2025年4月10日

ERG正式上线Kucoin(库币)交易所

ERG正式上线Kucoin(库币)交易所

据Kucoin官方通告,Ergo平台原生代币ERG于8月3日正式上线Kucoin(库币)交易所。目前支持的交易对是ERG/USDT。现已开放充值;2021年8月5日UTC时间上午10:00开放交易;2021年8月6日UTC时间上午10:00开放提币。 .

Ergo Foundation

2021年8月3日

Ergo两周年纪念——早期采用者应了解的核心知识

Ergo两周年纪念——早期采用者应了解的核心知识

Normal 0 false false false EN-US ZH-CN X-NONE /* Style Definitions */ table.

root7Z

2021年7月5日

关于Ergo启用官方QQ频道的公告

关于Ergo启用官方QQ频道的公告

由于Ergo官方微信号暂无法使用,Ergo官方现新增Ergo官方QQ频道:796039547。全球中文用户可通过扫描下面的二维码加入Ergo中文社区,及时了解Ergo最新官方动态. .

Eva Qing

2021年6月30日

Ergo首届黑客松大赛ERGOHACK圆满结束

Ergo首届黑客松大赛ERGOHACK圆满结束

Ergo首届黑客松大赛已经圆满结束,它正如计划那样:规模小而富有实验性,但依然收到了一些很棒的作品提交。Kushti以他的开场视频拉开了活动的序幕,然后我们总共有六个团队,其中来自anon_real(AuctionHouse、SigmaUSD UI等项目的创建.

Curia Regis Crypto

2021年6月29日

关于举办首届Ergo中国社区驱动践行活动的公告

关于举办首届Ergo中国社区驱动践行活动的公告

为了进一步提高Ergo公链平台在中国的知名度,让更多用户深入了解Ergo,同时为了践行Ergo社区驱动的理念,Ergo中国社区现特别举办“首届Ergo中国社区驱动践行活动”。活动参与者积极向新用户布道Ergo并将其引至Ergo官方指定社群,将有机会赢取ERG奖.

Eva Qing

2021年6月4日

比特币的前进之路是努力追赶Ergo ——Ergo率先实现扩展UTXO智能合约

比特币的前进之路是努力追赶Ergo ——Ergo率先实现扩展UTXO智能合约

比特币 比特币是一头野兽。是的,其底层软件需要认真升级。它真的太慢了。但是,您也必须承认它的优势,网络效应是非常强大的------比特币是加密货币之王。在全球范围内,比特币正成为一个常见、被理解和被采用的术语。大型信托、投资巨头和对冲基金经理,都被比特币的主.

Curia Regis Crypto

2021年5月23日

关于Ergo基金会任命谭声情先生担任中国区大使的公告

关于Ergo基金会任命谭声情先生担任中国区大使的公告

经Ergo基金会批准,现任命谭声情先生(英文名:Tango)担任Ergo中国区大使。 为了提升Ergo在中国的知名度与影响力,Ergo基金会现授权谭声情先生以Ergo中国区大使身份进行Ergo在中国的品牌宣传、商务洽谈、社区活动、主题推广等事宜。 此任命自.

Ergo Team

2021年5月16日

硬分叉事后说明

硬分叉事后说明

英文链接: 应@kushti的请求,我现在给大家说明一下今天在硬分叉升级期间发生的事情。有一些BUG导致矿工无法出块,现已修补好这些BUG,矿工可以出块。 version2ActivationDifficultyHex中出现往返编码失败(Round-T.

Eva Qing

2021年2月3日

硬分叉升级后Ergo挖矿须知

硬分叉升级后Ergo挖矿须知

Ergo将在区块#417,792上进行硬分叉协议升级。此次升级会引入重大更改,包括将关闭不可外包功能(Non-Outsourceability)。经过此次硬分叉之后,新的PoW(被称为Autolykos v2.

Eva Qing

2021年2月1日

如何设置和配置Ergo全节点

如何设置和配置Ergo全节点

如何设置和配置Ergo全节点 本教程说明了如何安装和运行Ergo全节点,不涵盖挖矿。  Windows用户还可以观看视频教程。 如何在Windows上设置和配置Ergo全节点 视频链接: 节点安全 这里是节点使用的一些重要方面,您的钱包及代币是否安全.

Eva Qing

2021年1月21日

既想享受乐趣,又想赚取利润? ——那就赶紧来挖ERG

既想享受乐趣,又想赚取利润? ——那就赶紧来挖ERG

Ergo GPU挖矿 本文将帮助您开始使用GPU挖矿Ergo原生代币ERG。 Ergo挖矿基于Autolykos,即一种工作量证明(PoW)算法,被设计为阻碍ASIC矿机和矿池。矿工须执行存储困难的计算(需要至少4 GB的内存,但是当前最有效的实现使用的是.

Eva Qing

2021年1月21日

适用于AMD GPU的Autolykos v2(Ergo)的OpenCL挖矿软件

适用于AMD GPU的Autolykos v2(Ergo)的OpenCL挖矿软件

适用于ergoplatform.

Eva Qing

2021年1月19日

适用于Nvidia GPU的Autolykos v2(Ergo)用Cuda挖矿软件

适用于Nvidia GPU的Autolykos v2(Ergo)用Cuda挖矿软件

用于ergoplatform.

Eva Qing

2021年1月19日

尔格基金会为主要去中心化应用(dApp)基础设施提供资助

尔格基金会为主要去中心化应用(dApp)基础设施提供资助

尔格基金会将考虑支持重大生态系统开发项目提供资助的建议。 尔格是一个面向社区的项目,该生态系统的方方面面都有许多贡献者。尔格基金会会拿出一部分资金资助此项工作,这对于构建用户所需的日常产品与服务以及更多样化的金融去中心化应用至关重要。该基金会正在积极寻求.

Guy Brandon

2020年11月17日