0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NFT的Dapp开发智能合约技术

搭建punk2558 来源:搭建punk2558 作者:搭建punk2558 2022-08-30 13:55 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

智能合约

在各业务彼此进行交互之前,必须先定义一套通用的合约,其中包括通用术语、数据、规则、概念定义和流程。将这些合约放在一起,就构成了管理交易各方之间所有交互的业务模型。

poYBAGMNpYKAUDhYAAGC7N9-rkQ759.png

智能合约用可执行的代码定义了不同组织之间的规则。应用程序调用智能合约来生成被记录到账本上的交易。搭建(punk2558)

使用区块链网络,我们可以将这些合约转换为可执行程序(业内称为智能合约),从而实现了各种各样的新可能性。这是因为智能合约可以为任何类型的业务对象实现治理规则,以便在执行智能合约时自动执行这些规则。例如,一个智能合约可能会确保新车在指定的时间内交付,或者根据预先安排的条款释放资金,前者可改善货物流通,而后者可优化资本流动。然而最重要的是,智能合约的执行要比人工业务流程高效得多。

在上图中,我们可以看到组织ORG1和ORG2是如何通过定义一个car智能合约来实现查询、转移和更新汽车的。来自这些组织的应用程序调用此智能合约执行业务流程中已商定的步骤,例如将特定汽车的所有权从ORG1转移到ORG2。

poYBAGMNpbKAPAC5AACdFE2KyQ8663.png

一个智能合约定义在一个链码中。而多个智能合约也可以定义在同一个链码中。当一个链码部署完毕,该链码中的所有智能合约都可供应用程序使用。

从上图中我们可以看到,vehicle链码包含了以下三个智能合约:cars、boats和trucks;而insurance链码包含了以下四个智能合约:policy、liability、syndication和securitization。以上每种智能合约都涵盖了与车辆和保险有关的业务流程的一些关键点。在本主题中,我们将以car智能合约为例。我们可以看到,智能合约是一个特定领域的程序,它与特定的业务流程相关,而链码则是一组相关智能合约安装和实例化的技术容器。

账本

以最简单的方式来说,区块链记录着更新账本状态的交易,且记录不可篡改。智能合约以编程方式访问账本两个不同的部分:一个是区块链(记录所有交易的历史,且记录不可篡改),另一个是世界状态(保存这些状态当前值的缓存,是经常需要用到的对象的当前值)。

智能合约主要在世界状态中将状态写入(put)、读取(get)和删除(delete),还可以查询不可篡改的区块链交易记录。

读取(get)操作一般代表的是查询,目的是获取关于交易对象当前状态的信息。

写入(put)操作通常生成一个新的业务对象或者对账本世界状态中现有的业务对象进行修改。

删除(delete)操作代表的是将一个业务对象从账本的当前状态中移除,但不从账本的历史中移除。

智能合约有许多可用的API。但重要的是,在任意情况下,无论交易创建、读取、更新还是删除世界状态中的业务对象,区块链都包含了这些操作的记录,且记录不可更改。

开发

智能合约是应用程序开发的重点,正如我们所看到的,一个链码中可定义一个或多个智能合约。将链码部署到网络中以后,网络上的组织就都可以使用该链码中的所有智能合约。这意味着只有管理员才需要考虑链码;其他人都只用考虑智能合约。

智能合约的核心是一组交易定义。例如,在fabcar.js中,你可以看到一个创建了一辆新车的智能合约交易:

async createCar(ctx,carNumber,make,model,color,owner){

const car={

color,

docType:'car',

make,

model,

owner,

};

await ctx.stub.putState(carNumber,Buffer.from(JSON.stringify(car)));

}

在编写您的第一个应用程序教程中,您可以了解更多关于Fabcar智能合约的信息。

智能合约几乎可以描述所有与多组织决策中数据不可变性相关的业务案例。智能合约开发人员的工作是将一个现有的业务流程(可能是管理金融价格或交付条件)用JavaScript、GOLANG或Java等编程语言来表示成一个智能合约。将数百年的法律语言转换为编程语言需要法律和技术方面的技能,智能合约审核员们不断地实践着这些技能。您可以在开发应用程序主题中了解如何设计和开发智能合约。

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    聆思大模型智能FAE,看得懂技术,答得准问题

    聆思大模型智能FAE,看得懂技术,答得准问题 在智能硬件开发的嵌入式技术支持中,响应迟缓、人员培训成本高企、服务时间覆盖不足等痛点,常常制约
    发表于 09-30 11:29

    【今晚7点半】正点原子 x STM32:智能加速边缘AI应用开发!今晚正点原子B站直播间等你

    【联合直播】正点原子 x STM32:智能加速边缘AI应用开发! 一、直播介绍 随着人工智能技术在边缘计算领域的快速发展,STM32系列芯片凭借其卓越的性能与丰富的生态,成为众多智能
    发表于 09-25 14:14

    嵌入式开发就业还有前景吗?

    。在智能家居领域,嵌入式开发的主要工作是开发各种智能化设备和系统,如智能照明、智能安防、
    发表于 07-16 10:47

    CES Asia 2025同期低空智能感知与空域管理技术论坛即将启幕

    在低空经济蓬勃发展的大背景下,CES Asia 2025亚洲消费电子展备受瞩目,同期举办的低空智能感知与空域管理技术论坛更是引发行业内外高度关注。此次论坛聚焦低空通信导航监视技术、无人机反制与空域
    发表于 07-10 10:16

    【「零基础开发AI Agent」阅读体验】操作实战,开发一个编程助手智能

    .总结 非常有幸能够阅读本书,让我快速掌握了开发智能体的相关技能和基础知识.希望以后相关活动还能多多参加.
    发表于 05-27 11:16

    如果 PD 合约不匹配,BCR 是否仍会打开 SINK_FET_EN POWER_DRILL2GO路径?

    BCR 具有 SINK_FET_EN 和 SAFE_PWR_EN 引脚来控制POWER_DRILL2GO消耗路径。 如果 PD 合约不匹配,BCR 是否仍会打开 SINK_FET_EN POWER_DRILL2GO路径?或者只打开 SAFE_PWR_EN POWER_DRILL2GO路径?
    发表于 05-23 08:01

    涂鸦智能重磅发布四大AIoT技术引擎,赋能开发者以AI重构物理世界

    4月23日,涂鸦智能以“AI+IoT”为主题,在深圳举办了2025TUYA全球开发者大会。通过聚焦AI与IntelligenceofThings的深度融合,重塑智能设备的交互方式与功能边界,涂鸦
    的头像 发表于 05-08 19:07 637次阅读
    涂鸦<b class='flag-5'>智能</b>重磅发布四大AIoT<b class='flag-5'>技术</b>引擎,赋能<b class='flag-5'>开发</b>者以AI重构物理世界

    明远智睿SSD2351开发板:智能家居的智能核心

    数据,如温度、湿度、光照强度等,为智能家居系统的自动化控制提供准确的数据支持。全开源的开发资料和一对一的技术支持,让开发者可以根据用户的需求定制个性化的
    发表于 05-07 18:59

    《零基础开发AI Agent——手把手教你用扣子做智能体》

    Agent开发的核心技能。即使没有编程基础,也能通过本书轻松上手,设计出属于自己的智能体。无论是个人兴趣还是企业应用,这本书都能为我打开AI世界的大门,抓住AI技术的下一个风口,实现从零到一的突破!
    发表于 03-18 12:03

    基于BLE技术 智能手写笔解决方案:改变你的书写体验PTR5415

    方案说明: 我们的智能手写笔方案基于BLE技术,利用蓝牙低功耗连接手写笔与移动设备(如智能手机、平板电脑)之间的无线通信。可以实时将书写数据上传到手机APP及云端,及时有效的对书写数据进行存档及管理
    发表于 03-11 17:50

    底层开发与应用开发到底怎么选?

    正常通信。 开发嵌入式系统,如智能家居控制器、汽车电子系统等。 优化系统性能,提高系统的稳定性和效率。 与硬件工程师合作,进行硬件与软件的联合调试。 4. 优势 技术深度:能够深入
    发表于 03-06 10:10

    【「具身智能机器人系统」阅读体验】1.初步理解具身智能

    对人工智能、机器人技术和计算系统交叉领域感兴趣的读者来说不可或缺的书。这本书深入探讨了具身智能这一结合物理机器人和智能算法的领域,该领域正在塑造自主系统及其应用的未来。 开篇部分探讨了
    发表于 12-28 21:12

    【「具身智能机器人系统」阅读体验】+初品的体验

    的学习资源,以培养更多的专业人才。随着具身智能机器人技术对社会的影响越来越大,该书还可以向公众普及相关的知识,以提升社会对新技术的认知和接受度,从而为技术的发展创造良好的社会环境。 随
    发表于 12-20 19:17

    AICon北京站HarmonyOS技术分论坛开启招募,欢迎开发者踊跃报名

    在人工智能的浪潮中,HarmonyOS以其独特的技术优势,引领着移动应用开发的新趋势。2024年12月14日,在AICon全球人工智能开发与应用大会(北京站)期间 ,将举办以“鸿蒙生态
    的头像 发表于 12-11 16:39 751次阅读
    AICon北京站HarmonyOS<b class='flag-5'>技术</b>分论坛开启招募,欢迎<b class='flag-5'>开发</b>者踊跃报名

    AI行业大咖云集 2024边缘智能开发者生态大会圆满落幕

    应用大赛最高奖项得主的诞生。活动聚焦全球人工智能发展浪潮与生态驱动力,为边缘智能从业者、开发者搭建了展示和交流的平台,促进边缘智能技术的进步
    的头像 发表于 12-09 14:48 804次阅读
    AI行业大咖云集 2024边缘<b class='flag-5'>智能开发</b>者生态大会圆满落幕