木星链 木星链
Ctrl+D收藏木星链
首页 > 火必下载 > 正文

以太坊:开发者新手指南:了解智能合约及其开发全流程

作者:

时间:1900/1/1 0:00:00

智能合约作为行业的基础术语,各位开发者耳熟能详。今天我们就来汇总一下智能合约的实际用例、应用价值和开发部署的全流程,欢迎智能合约的开发大神私信后台提供更多经验指导和开发建议。

智能合约是存储在区块链(例如以太坊或 EOS)上的两方或多方之间的协议。每个此类合同都有一组预定义的规则和条件,旨在根据协议条款被触发时自动控制、实施和记录事件。这些合约内数据状态的变更由整个区块链网络的共识来保证。除非整个网络批准更改,否则任何人都不能更改它们。这使得智能合约成为在各方之间创建协议的最安全、最强大的工具之一。智能合约对于 DApp 的开发至关重要。此外,智能合约也是创建去中心化网络的重要组成部分。

以太坊上的智能合约(不仅限于这个平台)是去中心化金融的基本组成部分之一。智能合约一词早在 1994 年由密码学家 Nick Szabo 创造,远早于 Web3 但在 Web3 来临时被广泛运用,当时智能合约被认为是“一组数字格式的承诺”。

从目前的智能合约部署情况来看,智能合约在北美最为常见,占据了 43% 的市场份额,其次是欧洲和太平洋地区。根据 Transparency Market Research 披露的一份关于智能合约在 2020-2030 年间的市场情况分析和预测,研究着表明到 2028 年,全球智能合约市场规模预计将从 2021 年的 3.151 亿美元达到 14.603 亿美元, 2022-2028 年的复合年增长率为 24.2% 。我们可以看到这十年内,智能合约市场的规模将持续增长,智能合约开发者的未来潜力无限。

以太坊客户端Nethermind开发的新提款开发者网站上线:据官方消息,由以太坊客户端 Nethermind 开发的新提款开发者网站(withdrawal-devnet-3)上线。新网站根据此前核心开发者会议的讨论结果,对提款格式进行了微小更改,提款格式中的字段金额从wei更改为gwei。[2023/1/18 11:18:07]

在确定部署智能合约前,需要定义业务逻辑和需求,即相关各方定义智能合约的具体业务条件,由开发人员作为最后的接收方。开发人员再来根据业务逻辑设计合约的体系结构,包含设计智能合约中数据的结构,以及合约中数据状态改变与之相关的方法代码。

开发阶段主要是为所选区块链平台(例如以太坊、EOS 等)编写智能合约代码。此步骤还包括单元测试以确定合约是否按设计执行。开发智能合约的主要编程语言之一是 Solidity。Solidity 是一种高级面向对象语言,受到 JavaScript 和 C++ 等成熟编程语言的重大影响。程序员不用二进制数字/代码,而是使用字母和数字为区块链世界编写智能合约。

Grin开发者正在开发Grin和BTC原子互换:官方消息,隐私币Grin表示,Grin资助的开发者目前正在进行的工作包括:实现硬件钱包Ledger支持Grin,以及Grin和BTC原子互换。[2021/4/3 19:43:28]

为了监控代码质量,在开发过程中有一个分为两部分的内部审查过程。这个环节在接受正式审计之前,由内部的合约开发者/审计者对合约的代码进行一些基础性的测试。第一阶段是自动化的,使用工作流和管道来执行自动 linting 和单元/集成测试,以确保测试都通过。同时还将存储和安全扫描器整合到工作流程中,以确保未来不会面临存储空间不足、覆盖存储或引入常见安全漏洞的风险。比如通常使用的工具有 hardhat-storage-layout、MythX 和 Slither 等。

审查过程的第二阶段是手动的,由项目中的高级智能合约工程师审查所有拉取请求,提供反馈和问题,并确保代码处于保证将拉取请求合并到主分支或暂存分支中的状态。

审计作为智能合约中重要的一环,往往需要花费一定的时间、人力和金钱成本,通常会由受信任的第三方进行安全审计。智能合约审计的成本因应用程序的规模和复杂性而异。一般来说,第三方智能合约审计需要收取 5, 000 到 15, 000 美元的费用,但根据合约的规模和复杂程度,可能会收取更多费用。

调查:以太坊应用开发者中使用Solidity的占比达87.4%,其次为Web3.js和Truffle:根据企业以太坊联盟(EEA)发布的一项关于以太坊应用开发者使用的智能合约语言、开发工具、客户端、服务类型的调查报告,调查结果显示,使用Solidity的开发者最多,占比达到87.4%,其次Web3.js(71.8%)、Truffle(69.2%)、Javascript(66.7%)、OpenZeppelin(59%)、Infura(56.4%)、Remix(53.8%)、IPFS(48.7%)以及Java(43.6%)[2021/2/4 18:52:21]

第一步,收集相关文档。审计的第一步往往是是收集所有相关文件。这包括白皮书、代码库和与智能合约相关的任何其他文档或材料。通过阅读设计文档,外部审核员可以对区块链应用有更深层次的理解。在此阶段,审计人员会规定审查的代码范围,同时开发人员和审计人员必须就审查范围内的代码冻结达成一致。

第二步,使用工具运行测试。一旦审核员对代码和应用程序有了很好的理解,他们就会使用各种工具运行自动化测试。这是迄今为止检测潜在问题的最简单方法。审计员将采取一系列步骤,包括探索大量代码的集成测试、查看单个功能的单元测试以及探测安全漏洞的渗透测试。

以太坊核心开发人员Péter Szilágyi谴责客户端开发者ProgPoW提案“独断”言论:4月30日,以太坊核心开发人员Péter Szilágyi发推文谴责以太坊客户端OpenEthereum首席开发者Artem Vorotnikov发布的有关ProgPoW提案的言论。Péter Szilágyi称,不喜欢ProgPoW,因为它有争议性。但在以太坊的历史上,从来没有客户端开发团队单方面阻止过一个功能。以太坊的未来依赖于开发者的协同工作。而该番言论则是针对Artem Vorotnikov于前一日发表的有关ProgPoW提案言论。

4月29日,Artem Vorotnikov曾发推称,OpenEthereum将阻止任何在以太网上启用ProgPoW的尝试。此前2月消息,以太坊核心开发人员计划推进ProgPoW,因该更新可以使以太坊挖矿更具ASIC抗性。但该提案遭到社区和众多开发人员的反对。V神也曾对ProgPoW提案“先斩后奏”的“通过”方式表示批判,并强调该方案还在讨论中,并未通过。随后2月27日,以太坊社区成员就反对ProgPoW发起请愿书,表明利益相关者对激活ProgPoW持有异议。在当时Péter Szilágyi也曾发文并探讨了Ethash和ProgPoW混合方案的可能性。随后3月,ETH核心开发者会议讨论ProgPow算法“并不具有抗ASIC能力”的漏洞问题,临时决定将挖矿算法重新定义为“ Ethash 2.0”。[2020/4/30]

行覆盖率是衡量测试覆盖代码的有效指标,高行覆盖率表明测试在探索应用程序中的所有代码行方面做得很好。自动化测试完成后,审核员将继续进行手动测试。

声音 | IndImm开发者:项目的目标并不是对Ripple、XRPL或社区造成伤害:IndImm本周宣布在Ripple区块链上发布消息协议Beta版本,该项目遭到Ripple社区成员的批评。 IndImm开发者称其项目有两个意图:反对审查制度和看到加密货币实际上有利用价值。他们选择Ripple进行该特定实验,是因为想选择“有坚实的追踪记录、社区和知名度”的区块链。开发者表示正在认真考虑有关其工作可能威胁到Ripple生存的指控。“许多节点运营商告诉我,他们非常担心……我认为最大的问题是存储成本和处理成本。”开发者也承认,一些批评迫使其评估是否继续开发该应用。“我的目标不是对Ripple、XRPL或社区造成伤害,我不希望这成为副产品。”(The Block)[2019/7/27]

第三步,人工审查代码。尽管自动化测试可以识别代码中可能存在的漏洞,但自动化的程序无法理解区块链开发人员试图通过其应用程序实现的目标,手动审查代码是必不可少的。通过询问开发团队的设计目的和业务逻辑、阅读代码并了解所有内容是如何组合的,审计员可以识别自动化测试遗漏的潜在问题。当审计团队分析代码时,他们可以参考项目规范和任何其他支持文档,以查看代码是否按预期执行。手动和自动测试的结合对于确保最终审计结果来说十分重要。

最终,获得审计报告。审核完成后,审核员将提供一份报告,详细说明他们的调查结果。该报告将成为项目团队和智能合约开发者的宝贵资源。

在区块链上部署合约,智能合约开发团队和前端团队紧密合作,将智能合约与测试网的前端接口集成,然后最终部署到主网。一旦进入市场后,智能合约部署后的监测必不可少,部署后的持续监测能够防止区块链网络安全攻击如常见的 Scam。

与任何传统合同一样,智能合同是确定各方关系的规则协议。智能合约由于其天然属性和技术特性,将具有以下优势:

独立性:参与者自己安排,即可以省去中介机构的参与。

可靠性:合约安全地存储在分布式网络中,几乎不可能更改或伪造。

安全性:在分布式网络中,合约在网络的所有节点中都是复制的,不会丢失。

节省:通过减少中介和佣金,所有相关方的成本都会降低。

准确性:此类合同将条款或处理中出现错误的可能性降低到零。

可持续性:合同消除了在办公室、公证处和登记处使用纸张,并且由于减少公务出行而减少了污染。

智能合约在目前签署传统合约的所有领域都有应用:

在医疗保健领域,患者的医疗记录具有极高的价值,通过区块链和智能合约,可以安全地存储和加密健康记录,并授予特定的、预先确定的个人访问权限。此外,处方填充等事情可以自动化,从而减少处理时间并改善患者体验。除了记录健康数据外,它在这个领域的应用范围可以从药品的可追溯性到冷链管理、健康护照或临床研究。

在投资银行业务中,由于智能合约提供更快的处理时间,贷款结算周期可以缩短一半。与此同时,由于效率的提高,投资银行自身的运营成本也有所降低。对于机构和用户来说,智能合约的运用实现了双赢。

物联网设备可以在整个供应链中使用,记录产品的每一步并提高其可追溯性。通过这种方式,可以消除失误、盗窃和丢失。

智能合约可用于更有效地登记财产所有权,用途可以扩展到公寓、建筑物或土地之外,延伸到登记所有类型的资产。只有当卖方转让财产并且买方交出款项时,合同才会被执行。这是一种透明、安全且快速的资产所有权转移的方式。

保险行业每年在索赔处理和索赔处理上花费数百万美元。智能合约将允许根据保单类型自动确定支付金额。

除上述行业之外,智能合约还能用于人力资源行业,记录一个人的学历、证书和经验等;用于知识产权领域,保护和明确专利的使用;用于领域内或民间组织中的选举,智能合约可以验证选民的身份并可靠地记录他们的投票。

《开发者新手指南》自推出来,收到了开发者朋友们非常积极的反馈和厚爱。我们也发现正在渴望进入 Web3,期待快速了解行业基本情况和开发情况的新手开发者数量非常可观。TinTinLand 将持续更新本系列,提供全面的开发者新手入门指南,为新人开发者的 Web3 之旅保驾护航。

Odaily星球日报

媒体专栏

阅读更多

金色早8点

金色财经

去中心化金融社区

CertiK中文社区

虎嗅科技

区块律动BlockBeats

深潮TechFlow

念青

腾讯研究院

标签:以太坊区块链POWROG以太坊官网下载app区块链币圈大佬排行榜empowrFROGE

火必下载热门资讯
NFT:从特朗普NFT谈当今的创作者困境和NFT三难困境

贡献者:DAOctor /img/202315215411/0.jpg" />加密市场普涨,BTC和ETH 24小时涨幅均超7%:金色财经报道,加密市场今日凌晨迎来普涨行情,BTC 现报 22.

1900/1/1 0:00:00
ENT:AI 热潮下 Web3 领域有哪些尚未被发现的宝藏

图片来源:由 无界版图AI 工具生成这两天社群中传播最多的当属与人工智能预训练语言模型 ChatGPT 的聊天截图,你问我答间也真实感受到了 ChatGPT 的进化,不禁感叹人工智能真的智能了.

1900/1/1 0:00:00
DOG:Dogecoin排名前10的市值从何而来

摘要:Dogecoin源于莱特币(Litecoin)代码库的一个分叉,基于2013年柴犬表情包风靡网络。DogeCoin作为热度极高的模因币(MEME)之一,市值一度达到887.94亿美元.

1900/1/1 0:00:00
NFT:一文了解音乐NFT:生态、项目和挑战

作者:CURATED X来源:Global Coin Research非同质化代币(NFT)是区块链上的一种独特的数字资产,可以购买或出售.

1900/1/1 0:00:00
PAN:Panoptic:顶级机构看好基于Uniswap的全新期权市场

众所周知,期权交易相比于现货交易更加复杂,现货交易的是具体的产品,而期权交易的是一个权利,相比其高杠杆和灵活性的优势,期权交易的劣势也非常明显:成本高、流动性差等.

1900/1/1 0:00:00
NFT:解析即将过审的多权限 NFT 管理协议 EIP-5496

撰文:Jason,Buidler DAO Co-founder对于整个 Web3 行业来说,我认为一切可以降低普通用户进入的门槛和成本的都是好东西,对于 NFT 赛道来说.

1900/1/1 0:00:00