EVM特辑 | EVM Contract,Web3开发进阶之路

随着与 DoraHacks 联合举办的黑客松的持续火热推进,已经有不少项目申请参与这场盛会,相信还有更多的小伙伴正跃跃欲试,却苦于缺少合适的开发环境与称手的工具来部署 EVM 合约。

那么本文就来为大家一一解决这些难题。

部署开发环境与工具

我们都知道 EVM 智能合约最早是基于以太坊网络搭建,使用 Solidity 语言编写。因此,开发者可以使用现有的以太坊合约框架来开发和部署本体 EVM 中的合约。

Remix

Remix IDE 是一个用于 EVM 合约的开源开发环境。你可以通过以下几个步骤来部署:

  • Initialize Remix,初始化环境并创建一个基于 Solidity 环境的合约文件。

  • Compile Contract,使用0.5.10编译器对创建的合约文件进行编辑。

  • Deploy Contract,在本体 EVM 网络中部署已经编译完的合约。

  • Invoke Contract,调用合约。

更加详细的 Remix IDE 文档可以通过下方链接🔗获取:

https://remix-ide.readthedocs.io/en/latest/

Truffle

Truffle 为 EVM 合约开发、测试和管理提供了工具和框架。使用 Truffle 时开发者需要经过以下几步:

  • Install Truffle,首先初始化并安装依赖项,随后运行代码来安装 Truffle。

  • Configure truffle-config,创建一个新.secret来存储助记词或私钥,随后编辑truffle-config 代码。

  • Deploy Contract,使用 Truffle 将已经开发好的合约迁移到本体 EVM 网络中。

如需获取更加详细的信息,可复制下方链接🔗:

https://trufflesuite.com/docs/truffle/quickstart

Hardhat

Hardhat 是一个以太坊开发环境。该环境的使用和上文的 Truffle 基本一致,文章中不加赘述:

  • Install Hardhat

  • Configure hardhat-config

  • Deploy Contract

关于 Hardhat 的安装步骤,可参考 Hardhat 文档:

https://hardhat.org/getting-started/

设置 MetaMask

想要部署和执行 EVM 合约,首先你需要设置用于合约部署和执行的去中心化 Web3 入口客户端。在 本体 EVM 集成之际,我们已经支持了 MetaMask,因此你可以使用 MetaMask 浏览器插件来管理以太坊地址的私钥。

当拥有 MetaMask 后,就可以通过以下步骤进行设置:

  • Initialize Web3,创建 Web3 实例,在 MetaMask 中加入全局对象 ethereum,并运行一些代码调用函数。

  • Set up Account,获取前一步创建实例时用到的账户。

  • Initialize Contract,初始化合约。

  • Call Functions,可以通过直接与实例化合约进行交互来调用函数。

开发合约

由于这一步需要具体环境,因此我们将基于 Hardhat 进行讲解。具体开发步骤也分为三个大环节:

设置环境

  • 安装 nodejs

  • 安装 Hardhat

设计合约

  • Contract Logic,根据合约的核心功能定义数据结构。

示例:想要做一个发红包的应用,其核心功能就是发红包与收红包。那么,需要根据这两个功能拆分更为详细的使用流程,比如发红包之前需要用户确定发的金额和红包数量。

  • Define Contract Events,通过添加事件来追踪整个合约执行的过程

示例:事件一,用户发红包;事件二,用户收到红包。

  • Define Functions,调用函数以完成整个收发红包的流程。

使用 Hardhat 编译和测试合约

  • Create a Hardhat Project

  • Configure hardhat.config

  • File Preparation,在文件夹中添加合约文件 contracts。

  • Include Code in the test Folder

  • Compile Contract,在根目录下运行代码编译合约。

  • Test Contract

如果顺利完成以上步骤,那么恭喜你👏一个基于本体 EVM 打造的 dApp 新鲜出炉~如果你想加入本体 EVM,如果你想拥有一个自己的 dApp,赶紧跟着以上步骤大展身手!

P.s. 所有以上需要使用的代码,均可在技术文档 EVM Contract 中找到,链接🔗:

https://docs.ont.io/guides-and-tutorials/development-guides/smart-contract-dev/evm-contract

了解最新资讯,参与精彩活动,欢迎关注本体微信公众号:本体Ontology。

相关推荐

入门必备 | 盘点11个常用的区块链开发工具,年薪百万的工程师都是从玩转它们开始的...

“好兵配好剑”——随着区块链技术进一步发展,各种开发工具层出不穷,极大的便利了开发者的工作。面对眼花缭乱的工具,到底哪些是区块链大牛们常用的工具呢?下面我们给大家总结了11个常用的区块链开发工具。1、SoliditySolidity 是区块链开发者中最流行的编程语言之一。它支持面向对象的范式并且可以用于编写智能合约。以太坊DApp也可以用Solidity编码。Solidity是针对...

ontologycoding 1128

Web2 vs. Web3,社交工具的发展会有什么变化?

Web3 社交应用应该能承载用户在Web2 累计的数据来实现同时兼容 Web2 和 Web3 身份的验证,以保证在账户真实性的情况下将数据所有权交还给用户,实现数据归属自主化、流程使用友好化、产品设计合理化的最核心特质。

ontologycoding 1446

以太坊最热Layer2之一ZK-Rollup凭什么被V神看好?

基于扩容赛道,帮助大家进一步了解 Layer 2 中的 ZK-Rollup 解决方案。

ontologycoding 430

发展多年的Web3,为何尚未实现完善的信誉体系?

解决三大难点,完善数字身份,建立统一标准

ontologycoding 1817

理想中的Web3信誉体系:如何在Web2基础上升级?

全面的信用数据、强大的技术支撑以及合理的监管流程

ontologycoding 987

解绑数字身份,解锁新玩法与构建方式(下)

身份已经演变成一种自我表达的手段

ontologycoding 2485

解绑数字身份,解锁新玩法与构建方式(上)

虚拟形象带来多重身份的崛起,为用户提供更多自我表达的选择

ontologycoding 827

走进Web3万链互联:跨链&跨层、锁定+铸造与哈希时间锁定

哈希时间锁定与锁定铸造机制,系两大主流跨链技术

ontologycoding 3125

Ontology × DoraHacks 10万美金黑客松现已启航,在WEB3的世界里添“码”行空

今年3月初,本体平台完成以太坊虚拟机(EVM)集成,成为支持虚拟机数量最多的公链平台。同期,1000万美元的 EVM 基金面向全球开发者重磅推出,鼓励全球开发者锐意进取,突破创新,在本体 EVM 上部署和搭建去中心化应用。作为 EVM 专项基金奖励中的重要一环,本体与全球顶尖 Web3 开发者社区DoraHacks携手发起线上黑客马拉松,悬赏10万美金,邀请开发者基于本体高性能、低费率的区块链平台进行 DID 等方面开发。该活动于新加坡时间4月1日晚间正式上线,为期30天赛程供全球开发者展开角逐...

ontologycoding 460

本体技术视点 | SocialFi 如何解决 Web3 社交中的声誉问题?

人作为“社交动物”,不可避免地处于大大小小的社交圈之中。“如何在 Web3 中提升社交声誉、捕获社交价值?”便成了 SocialFi 兴起的重要原因和最为关注的问题。和其它 +Fi 板块的项目类似,SocialFi 是“社交”+“金融”的混合产物。它通过将社交影响力通证化,来捕获用户的社交价值。同时,它也具备了 Web3 项目的常见特点: 去中心化 开放性/透明性 用户自主拥有 SocialFi 项目的类别根据知名研究机构 Messari 等对去中心化社交类项目的研..

ontologycoding 713

本体技术视点 | 为什么 BIP - 340 选择引入 Schnorr 签名算法?

引言备受瞩目的技术升级 Taproot 软分叉将于最近激活,激活高度为 709632,距今已不足 500 个区块。此次升级包括三个改进提案,分别是 BIP - 340、BIP - 341 和 BIP - 342。其中,BIP - 340引入了 Schnorr 签名,BIP - 342 结合先前的技术,制定了隔离见证 V1 版的花费规则,而 BIP - 342 则对前面脚本更新后的验证方式做了指导。今天,我们就一起来了解下 BIP - 340中提到的 Schnorr 签名。Schnorr...

ontologycoding 9791

本体技术视点 | 下一站,Web 3.0 (下)

在上一期我们介绍了互联网如何朝着去中心化、以用户为中心和身临其境的在线体验的 Web 3.0演化,这一期将带你继续了解Web 3.0去中心化的网络架构及其以人为本的特性。去中心化的网络虽然 Web 3.0的整个底层架构尚未建立,但人们对于这个新版本的互联网将具有的一般特征,达成了广泛的共识:语义网:作为其底层操作模型的一部分,Web 3.0有望通过在 Web 服务、用户行为和其他上下文数据之间形成复杂的关联,来分析和处理广泛的数字内容生态系统。这一突破将使数据连接达到前所未有的水平,标...

ontologycoding 352

本体技术视点 | 下一站,Web 3.0 (中)

在上一期我们介绍了互联网简史,了解互联网的发展轨迹,有助于帮助我们更好地理解 Web 3.0,这一期将带你深入了解互联网如何朝着去中心化、以用户为中心和身临其境的在线体验的 Web 3.0演化。自20世纪90年代后期互联网进入千家万户,网络与我们的日常生活越来越紧密地交织在一起。然而,互联网不断更迭,用户体验也不断变化。Web 3.0,互联网发展进程的下一阶段,指的是通过去中心化技术赋予用户数据主权并深化用户互联网体验。图源 cryptopedia尽管研究 Web 3.0功能的各个团队和..

ontologycoding 330

本体技术视点 | 下一站,Web 3.0 (上)

Web 3.0是互联网发展的下一阶段,旨在解决当今互联网普遍存在的潜在问题,希望建立一个以人为本、具有高度个性化互动的在线生态系统。虽然 Web 3.0底层架构的细节尚未确定,但 Web 3.0的主要功能越来越有可能通过去中心化技术连接和启用。本系列将从互联网简史说起,带你深入了解 Web 3.0。图源 cryptopedia 原文配图自20世纪90年代后期互联网进入千家万户,网络与我们的日常生活越来越紧密地交织在一起。然而,互联网不断更迭,用户体验也不断变化。Web 3.0,即互联网发..

ontologycoding 350

本体技术视点 | 密码学到底是什么?

从罗马帝国到纳粹德国,密码学一直被用作争夺全球主导地位的有力武器。今天,同样的技术存在于每个人的生活中,从电子邮件到电子商务,我们几乎每天都在跟密码学打交道,那么密码学到底是什么呢?了解密码学对于理解我们这个时代最重要的辩论之一:个人隐私与公共安全,有着至关重要的作用。下面,基于区块链知名媒体 Cointelegraph 制作的纪录片《密码学的历史》,我们从专业的角度为大家深入解读密码学的前世今生。什么是密码学?密码学(Cryptography),是由希腊单词Kryptos(隐藏)和 Gr...

ontologycoding 523

本体技术视点 | 风险与安全:基于DID的认证协议探讨

引言在本体技术视点 | 去中心化身份新手指南(上)中,我们讲述了去中心化身份标识符(DID,Decentralized Identifier),这是去中心化身份技术的重要组成部分。我们已知在 DID Document 中可以挂载很多的验证方法(Verification Methods),一种最主要的验证方法就是公私钥对。这些验证方法有不同的用处,比如进行密钥协商、DID 撤销能力授权和 DID 代理能力授权等。很多小伙伴提到可以利用其进行身份认证,今天我们就来聊一聊利用 DID Document 中..

ontologycoding 532

本体受邀做客公益网校直播,讲授“区块链赋能公益”核心课程

近日,本体全球生态合作伙伴关系负责人Gloria Wu受邀做客公益网校“新媒体·新技术·新公益”直播课,探讨区块链如何为慈善公益事业带来新的契机,展望区块链慈善的4.0阶段。公益网校(http://www.gywx.org)是由深圳国际公益学院打造的公益在线学习平台,其“新媒体·新技术·新公益——公益组织运营小课堂”系列直播课围绕热点话题,邀请一线行动专家针对公益机构在运营过程中出现的问题与难点进行逐个突破。直播课上,Gloria 提出了以下几个观点:·区块链的公开账本属性和去中心...

ontologycoding 418

本体技术视点 | 数据业务场景中的可信流动(三)

此前,我们发布了本体首席技术专家 Ning Hu 在由 ECUG 社区主办的 2021 ECUG Con 全球技术大会上做出的分享第一期和第二期:本体技术视点 | 数据的去中心化协作和可信流动(一)&本体技术视点 | 数据的中心化协作和可信流动(二)。介绍了“去中心化”、“去中介化”、”多中心化“的几种形态,以及在各类形态下的工作模式。图| 网络本期我们继续围绕这一话题,与具体的数据业务相结合进行探讨。04关于数据业务/DataBusiness数据业务亟待解决的问题...

ontologycoding 481

本体技术视点 | 数据的中心化协作和可信流动(二)

此前,我们发布了本体首席技术专家 Ning Hu 在由 ECUG 社区主办的 2021 ECUG Con 全球技术大会上做出的分享第一期:本体技术视点 | 数据的去中心化协作和可信流动(一)。主要介绍了利用分布式网络为链上和链下数据的融合互通提供可信、安全、高效的集成协议和操作灵活的一站式平台。图| 网络本期我们将继续围绕主题演讲,分享数据的去中心化协作和可信流动相关的信息。03关于可验证凭证/VerifiableCredential在“身份资产自主管理”的逻辑当中,我们并不...

ontologycoding 342

本体拓展仓储物流解决方案用例,与日本领先云库存管理企业ZAICO达成合作

近日,专注于实现用户身份和数据自主管理的区块链平台——本体(Ontology)宣布与云库存管理软件公司ZAICO达成合作。ZAICO是日本领先的云库存管理应用程序,目前已拥有数十万用户,能够帮助企业级用户实现库存优化、降本增效等目标。此次合作中,本体将为 ZAICO 提供定制化区块链库存管理解决方案,进一步增强 ZAICO 企业级服务中的可追溯性、透明度与信任度。长期以来,ZAICO专注为用户提供创新性免费库存管理服务,目前已应用于医疗、美容、矿产、硬件设备等多个行业。通过网页端或移动端...

ontologycoding 344

本体技术视点 | 当隐私成为特权:基于区块链的数字身份(上)

前面两期,我们与大家分享了微软在去中心化身份方面的实践。今天我们带来另一篇关于数字身份的分享。在这其中,本体创始人李俊发表了关于数字身份的前沿见解。查看往期:本体技术视点 | 当微软的去中心化身份梦想照进现实(上)本体技术视点 | 当微软的去中心化身份梦想照进现实(下)原文链接:https://cointelegraph.com/magazine/2021/03/11/is-my-car-judging-me-ontologys-jun-li-on-digital-id-and-pri...

ontologycoding 187

本体技术视点 | 当微软的去中心化身份梦想照进现实(下)

上一期,我们分享了全球科技巨头微软(Microsoft)在去中心化身份领域的实践,初步介绍了其“Azure Active Directory可验证凭证”技术,在英国NHS(National Health Service,国家卫生服务局)试点中,一名医生从进入医院开始注册到救死扶伤仅需要5分钟的时间。本期我们继续围绕微软的去中心化实践展开介绍。原文链接:https://www.wired.com/story/microsoft-decentralized-id-blockchain/广...

ontologycoding 349

本体技术视点 | 当微软的去中心化身份梦想照进现实(上)

此前,我们多次分享了本体在去中心化数字身份方面的实践,包括区块链技术如何保护数字身份和辨识“Deepfake”、再谈Deepfake,去中心化数字身份如何“见招拆招”?等。今天,本体研究院翻译了一篇来自关于全球科技巨头微软(Microsoft)的去中心化身份相关的文章,与大家一起深入洞察行业动态。原文链接:https://www.wired.com/story/microsoft-decentralized-id-blockchain/该公司将于今年春季启动其身份识别平台的公开预览——并已在英...

ontologycoding 241

本体技术视点 | DID主体的信息和表示 & DID控制人

●前情回顾●上一期我们介绍了 DID 可以识别的资源、DID 标识内容和 DID 文档。划重点DID 可以识别哪些类型的资源?资源和是否在 Internet 上没有关系,如果可以识别为资源,则可以为其分配 URI,因此也可以为其分配 DID。如何知道 DID 标识的内容?这里我们展示了 W3C DID 工作组首页的 URL 和 URI(示例 DID)两种形式。DID 是否等同于 DID 文档?不。DID 确定 DID 主体并解析为对应的 DID 文档(由 DID ...

ontologycoding 474

本体技术视点 | DID可以识别的资源、DID标识内容和DID文档

●前情回顾●上一期我们主要介绍了“去中心化标识符”和“可验证凭证”。简单来说,去中心化标识符(Decentralized Identifier, DID)就是一种新型的标识符,可用于实现可验证的去中心化身份,可用来标识任何实体,包括个人、机构、组织、关系以及事物等,即可以标识所谓“人、财、物、事”等不同实体。可验证凭证(Verifiable Credential)一种特殊的凭证,这是一种防篡改、可由密码学方式证明的凭证。(图片来源于网络)可以说,去中心化标识符和可验证...

ontologycoding 1039

本体技术视点 | “去中心化标识符”和“可验证凭证”

●题 记●上一期我们分享了“中心化身份”、“分布式身份”和“去中心化身份”几类的不同,简单总结一下,第一个名词指的是完全中心化的身份体系,账号信息掌握在“admin”的手中;第二个名词可以理解为我们目前常见的微信、QQ 等一键登陆;最后一个指的是用户自己掌握所有权、管理权和控制权,按照自己的意愿以自己的方式去存储数据,比如存在用户手机内,或者公司私有云内,或者亚马逊的公有云上,更或者是去中心化存储上,这可能是我们心目中最为理想的方式。●引 言 ●在上一篇技术视点中,我们和大家...

ontologycoding 850

本体技术视点 | 从中心化身份到分布式身份再到去中心化身份

●题 记●如题目所述,“中心化身份”、“去中心化身份”和“分布式身份”,几个名词说起来是否有些拗口?可能你对这些概念略知一二,但并不能清楚地说出个中区别。本期我们将拨云见雾,详解这几种身份的相似与不同。●引 言 ●我们在上一篇技术视点中一起了解了身份和数字身份的概念,也明白了身份信息的展示程度和特定的应用环境强相关。身份和身份识别一直是服务系统中的核心,只有识别了用户身份后才能进行下一步操作。金融服务机构需要用户的身份,以确定业务开展是否合规,开展过程中的业务风险和授信是什么...

ontologycoding 579

本体技术视点 | 我们所理解的“身份”和“数字身份”

●题 记●在现代社会中,身份是处理实体关系的入口。对实体身份信息进行判别和认证,并为实体提供与之身份相匹配的服务,是社会关系的一种重要模式。这样一种模式必然要求用户的身份信息和服务方共享。身份信息共享的要求加上数据集中化存储究竟会带给我们什么问题?自主主权身份(Self-Sovereign Identity)是不是解决这些问题的一个答案?目前现存的去中心化身份服务解决方案都有哪些特点?我们将在系列文章中为你一一解答。●身 份●要了解前面提出的这些问题,首先要对身份本身有一个清...

ontologycoding 1096

本体技术视点 | 数据的去中心化协作和可信流动(一)

近日,本体首席技术专家Ning Hu受邀亮相由 ECUG 社区主办的 2021 ECUG Con 全球技术大会,介绍利用分布式网络为链上和链下数据的融合互通提供可信、安全、高效的集成协议和操作灵活的一站式平台。本期我们将围绕主题演讲,分享数据的去中心化协作和可信流动相关的信息。01关于网络/The Web“Using the WWW infrastructure to create a global, decentralized, weblike mesh of machine-pro...

ontologycoding 358

本体技术视点 | 自主主权身份的一些思考(下)

上一期我们分享了本体创始人李俊的署名文章:自主主权身份的一些思考(上)https://coinmarketcap.com/alexandria/article/a-guide-to-self-sovereign-identity-a-deep-dive-by-ontology其中提到:-每个人都有多重在线身份,这一系列数字身份甚至像空气中的尘埃一样,过于分散而且无法识别。-我们其实并不需要一家公司来授予我们身份,因为我们已经拥有了一个身份,用户需要做的只是对这个身份进行确认。...

ontologycoding 292
上一篇: Ontology × DoraHacks 10万美金黑客松现已启航,在WEB3的世界里添“码”行空
下一篇: 走进Web3万链互联:跨链&跨层、锁定+铸造与哈希时间锁定
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值