0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

NFT的Dapp開(kāi)發(fā)智能合約技術(shù)

搭建punk2558 ? 來(lái)源:搭建punk2558 ? 作者:搭建punk2558 ? 2022-08-30 13:55 ? 次閱讀

智能合約

在各業(yè)務(wù)彼此進(jìn)行交互之前,必須先定義一套通用的合約,其中包括通用術(shù)語(yǔ)、數(shù)據(jù)、規(guī)則、概念定義和流程。將這些合約放在一起,就構(gòu)成了管理交易各方之間所有交互的業(yè)務(wù)模型。

poYBAGMNpYKAUDhYAAGC7N9-rkQ759.png

智能合約用可執(zhí)行的代碼定義了不同組織之間的規(guī)則。應(yīng)用程序調(diào)用智能合約來(lái)生成被記錄到賬本上的交易。搭建(punk2558)

使用區(qū)塊鏈網(wǎng)絡(luò),我們可以將這些合約轉(zhuǎn)換為可執(zhí)行程序(業(yè)內(nèi)稱(chēng)為智能合約),從而實(shí)現(xiàn)了各種各樣的新可能性。這是因?yàn)橹悄芎霞s可以為任何類(lèi)型的業(yè)務(wù)對(duì)象實(shí)現(xiàn)治理規(guī)則,以便在執(zhí)行智能合約時(shí)自動(dòng)執(zhí)行這些規(guī)則。例如,一個(gè)智能合約可能會(huì)確保新車(chē)在指定的時(shí)間內(nèi)交付,或者根據(jù)預(yù)先安排的條款釋放資金,前者可改善貨物流通,而后者可優(yōu)化資本流動(dòng)。然而最重要的是,智能合約的執(zhí)行要比人工業(yè)務(wù)流程高效得多。

在上圖中,我們可以看到組織ORG1和ORG2是如何通過(guò)定義一個(gè)car智能合約來(lái)實(shí)現(xiàn)查詢(xún)、轉(zhuǎn)移和更新汽車(chē)的。來(lái)自這些組織的應(yīng)用程序調(diào)用此智能合約執(zhí)行業(yè)務(wù)流程中已商定的步驟,例如將特定汽車(chē)的所有權(quán)從ORG1轉(zhuǎn)移到ORG2。

poYBAGMNpbKAPAC5AACdFE2KyQ8663.png

一個(gè)智能合約定義在一個(gè)鏈碼中。而多個(gè)智能合約也可以定義在同一個(gè)鏈碼中。當(dāng)一個(gè)鏈碼部署完畢,該鏈碼中的所有智能合約都可供應(yīng)用程序使用。

從上圖中我們可以看到,vehicle鏈碼包含了以下三個(gè)智能合約:cars、boats和trucks;而insurance鏈碼包含了以下四個(gè)智能合約:policy、liability、syndication和securitization。以上每種智能合約都涵蓋了與車(chē)輛和保險(xiǎn)有關(guān)的業(yè)務(wù)流程的一些關(guān)鍵點(diǎn)。在本主題中,我們將以car智能合約為例。我們可以看到,智能合約是一個(gè)特定領(lǐng)域的程序,它與特定的業(yè)務(wù)流程相關(guān),而鏈碼則是一組相關(guān)智能合約安裝和實(shí)例化的技術(shù)容器。

賬本

以最簡(jiǎn)單的方式來(lái)說(shuō),區(qū)塊鏈記錄著更新賬本狀態(tài)的交易,且記錄不可篡改。智能合約以編程方式訪(fǎng)問(wèn)賬本兩個(gè)不同的部分:一個(gè)是區(qū)塊鏈(記錄所有交易的歷史,且記錄不可篡改),另一個(gè)是世界狀態(tài)(保存這些狀態(tài)當(dāng)前值的緩存,是經(jīng)常需要用到的對(duì)象的當(dāng)前值)。

智能合約主要在世界狀態(tài)中將狀態(tài)寫(xiě)入(put)、讀?。╣et)和刪除(delete),還可以查詢(xún)不可篡改的區(qū)塊鏈交易記錄。

讀?。╣et)操作一般代表的是查詢(xún),目的是獲取關(guān)于交易對(duì)象當(dāng)前狀態(tài)的信息。

寫(xiě)入(put)操作通常生成一個(gè)新的業(yè)務(wù)對(duì)象或者對(duì)賬本世界狀態(tài)中現(xiàn)有的業(yè)務(wù)對(duì)象進(jìn)行修改。

刪除(delete)操作代表的是將一個(gè)業(yè)務(wù)對(duì)象從賬本的當(dāng)前狀態(tài)中移除,但不從賬本的歷史中移除。

智能合約有許多可用的API。但重要的是,在任意情況下,無(wú)論交易創(chuàng)建、讀取、更新還是刪除世界狀態(tài)中的業(yè)務(wù)對(duì)象,區(qū)塊鏈都包含了這些操作的記錄,且記錄不可更改。

開(kāi)發(fā)

智能合約是應(yīng)用程序開(kāi)發(fā)的重點(diǎn),正如我們所看到的,一個(gè)鏈碼中可定義一個(gè)或多個(gè)智能合約。將鏈碼部署到網(wǎng)絡(luò)中以后,網(wǎng)絡(luò)上的組織就都可以使用該鏈碼中的所有智能合約。這意味著只有管理員才需要考慮鏈碼;其他人都只用考慮智能合約。

智能合約的核心是一組交易定義。例如,在fabcar.js中,你可以看到一個(gè)創(chuàng)建了一輛新車(chē)的智能合約交易:

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)));

}

在編寫(xiě)您的第一個(gè)應(yīng)用程序教程中,您可以了解更多關(guān)于Fabcar智能合約的信息。

智能合約幾乎可以描述所有與多組織決策中數(shù)據(jù)不可變性相關(guān)的業(yè)務(wù)案例。智能合約開(kāi)發(fā)人員的工作是將一個(gè)現(xiàn)有的業(yè)務(wù)流程(可能是管理金融價(jià)格或交付條件)用JavaScript、GOLANG或Java等編程語(yǔ)言來(lái)表示成一個(gè)智能合約。將數(shù)百年的法律語(yǔ)言轉(zhuǎn)換為編程語(yǔ)言需要法律和技術(shù)方面的技能,智能合約審核員們不斷地實(shí)踐著這些技能。您可以在開(kāi)發(fā)應(yīng)用程序主題中了解如何設(shè)計(jì)和開(kāi)發(fā)智能合約。

審核編輯 黃昊宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    AICon北京站HarmonyOS技術(shù)分論壇開(kāi)啟招募,歡迎開(kāi)發(fā)者踴躍報(bào)名

    在人工智能的浪潮中,HarmonyOS以其獨(dú)特的技術(shù)優(yōu)勢(shì),引領(lǐng)著移動(dòng)應(yīng)用開(kāi)發(fā)的新趨勢(shì)。2024年12月14日,在A(yíng)ICon全球人工智能開(kāi)發(fā)與應(yīng)用大會(huì)(北京站)期間 ,將舉辦以“鴻蒙生態(tài)
    的頭像 發(fā)表于 12-11 16:39 ?173次閱讀
    AICon北京站HarmonyOS<b class='flag-5'>技術(shù)</b>分論壇開(kāi)啟招募,歡迎<b class='flag-5'>開(kāi)發(fā)</b>者踴躍報(bào)名

    dap協(xié)議在DApp開(kāi)發(fā)中的作用

    隨著區(qū)塊鏈技術(shù)的不斷發(fā)展,去中心化應(yīng)用(DApp)逐漸成為技術(shù)領(lǐng)域的熱門(mén)話(huà)題。DApp以其去中心化、透明性和安全性的特點(diǎn),為用戶(hù)和開(kāi)發(fā)者提供
    的頭像 發(fā)表于 11-22 15:43 ?204次閱讀

    智能馬桶腳感方案 TOF傳感器選型推薦

    目前正在開(kāi)發(fā)一個(gè)智能馬桶腳感方案,TOF傳感器選型遇到難題了,要么成本高,要么技術(shù)難啃,有沒(méi)有技術(shù)大神可以幫助下啊。
    發(fā)表于 11-22 09:37

    智能IC卡測(cè)試設(shè)備的技術(shù)原理和應(yīng)用場(chǎng)景

    智能IC卡測(cè)試設(shè)備的技術(shù)原理和應(yīng)用場(chǎng)景,可以從以下幾個(gè)方面進(jìn)行闡述:技術(shù)原理智能IC卡測(cè)試設(shè)備的技術(shù)原理主要圍繞IC卡的通信和數(shù)據(jù)處理機(jī)制展
    發(fā)表于 09-26 14:27

    LoRa技術(shù)農(nóng)田自動(dòng)無(wú)線(xiàn)智能灌溉系統(tǒng)

    連接。 智能灌溉 智慧農(nóng)業(yè)無(wú)線(xiàn)灌溉系統(tǒng)運(yùn)用了基于擴(kuò)頻通信的超遠(yuǎn)距離、低功耗 LoRa 無(wú)線(xiàn)傳輸技術(shù),能夠?qū)r(nóng)業(yè)中環(huán)境溫度、濕度、光照強(qiáng)度、土壤墑情等參數(shù)進(jìn)行實(shí)時(shí)監(jiān)控,分析處理,從而實(shí)現(xiàn)智能化灌溉。 在
    發(fā)表于 09-25 17:10

    【?嵌入式機(jī)電一體化系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)?閱讀體驗(yàn)】+《智能技術(shù)在船舶維護(hù)中的應(yīng)用探索》

    智能技術(shù)在船舶維護(hù)中的應(yīng)用探索 本文深入分析了海洋工業(yè)中污損生物對(duì)船舶性能的負(fù)面影響,并探討了智能技術(shù),尤其是基于樹(shù)莓派的嵌入式系統(tǒng)設(shè)計(jì),如何成為解決這一問(wèn)題的新途徑。污損生物的
    發(fā)表于 08-26 22:22

    機(jī)智云助力小程序開(kāi)發(fā):連接智能硬件與智能生活

    隨著智能硬件的普及和小程序的興起,人們的生活越來(lái)越依賴(lài)于智能化的解決方案。作為物聯(lián)網(wǎng)領(lǐng)域的領(lǐng)先者,機(jī)智云為小程序開(kāi)發(fā)者提供了豐富的支持和功能,幫助他們輕松實(shí)現(xiàn)智能硬件與小程序的連接,為
    的頭像 發(fā)表于 06-15 08:10 ?433次閱讀
    機(jī)智云助力小程序<b class='flag-5'>開(kāi)發(fā)</b>:連接<b class='flag-5'>智能</b>硬件與<b class='flag-5'>智能</b>生活

    三星電子推出AI芯片一站式合約制造服務(wù),加速智能時(shí)代步伐

    在全球科技飛速發(fā)展的今天,三星電子再次憑借其前瞻性的戰(zhàn)略眼光和強(qiáng)大的技術(shù)實(shí)力,引領(lǐng)了新一輪的半導(dǎo)體制造革命。近日,三星電子正式宣布,其合約制造業(yè)務(wù)將為客戶(hù)提供一站式服務(wù),以加快人工智能(AI)芯片的制造速度,滿(mǎn)足市場(chǎng)對(duì)高性能AI
    的頭像 發(fā)表于 06-13 15:09 ?478次閱讀

    嵌入式開(kāi)發(fā)就業(yè)前景怎么樣?

    。在智能家居領(lǐng)域,嵌入式開(kāi)發(fā)的主要工作是開(kāi)發(fā)各種智能化設(shè)備和系統(tǒng),如智能照明、智能安防、
    發(fā)表于 06-07 14:51

    請(qǐng)問(wèn)物聯(lián)網(wǎng)智能方向主要用什么芯片和技術(shù)開(kāi)發(fā)呢?

    各位大俠,現(xiàn)在物聯(lián)網(wǎng)智能家居智能穿戴等方向這么火熱和有前景,這方向一般用什么芯片開(kāi)發(fā)的呢? 如果走這方向目前僅學(xué)會(huì)51和stm32可以嗎? 還需要學(xué)哪些知識(shí) ?現(xiàn)在一般這行業(yè)使用stm32的多嗎?
    發(fā)表于 05-15 06:25

    SC171開(kāi)發(fā)套件V2 技術(shù)資料

    SC171開(kāi)發(fā)套件V2 技術(shù)資料 課程類(lèi)別 鏈接 硬件平臺(tái)介紹及使用(SC171開(kāi)發(fā)套件V2 ) https://bbs.elecfans.com/jishu_2422919_1_1.html 安卓
    發(fā)表于 05-10 16:47

    SC171開(kāi)發(fā)套件V1 技術(shù)資料

    SC171開(kāi)發(fā)套件V1 技術(shù)資料 課程類(lèi)別 鏈接 硬件平臺(tái)介紹及使用(SC171開(kāi)發(fā)套件V1 ) https://bbs.elecfans.com/jishu_2421547_1_1.html 安卓
    發(fā)表于 05-09 17:58

    **十萬(wàn)級(jí)口語(yǔ)識(shí)別,離線(xiàn)自然說(shuō)技術(shù),讓智能照明更懂你**

    隨著人工智能技術(shù)的普及,智能家居設(shè)備開(kāi)始走進(jìn)千家萬(wàn)戶(hù)。而智能照明系統(tǒng)作為其不可或缺的一部分,占據(jù)著舉足輕重的地位。 所謂智能照明,就是通過(guò)語(yǔ)音、手機(jī)/平板應(yīng)用程序、無(wú)線(xiàn)面板或遙控
    發(fā)表于 04-29 17:09

    鴻蒙NEXT南向開(kāi)發(fā)案例:【智能臺(tái)燈】

    鴻蒙南向開(kāi)發(fā)智能臺(tái)燈案例
    的頭像 發(fā)表于 04-03 18:00 ?1013次閱讀
    鴻蒙NEXT南向<b class='flag-5'>開(kāi)發(fā)</b>案例:【<b class='flag-5'>智能</b>臺(tái)燈】

    如何提升單片機(jī)開(kāi)發(fā)技術(shù)?

    單片機(jī)開(kāi)發(fā)是現(xiàn)代電子技術(shù)中的重要分支,其在各個(gè)領(lǐng)域都有著廣泛的應(yīng)用。單片機(jī)開(kāi)發(fā)技術(shù)的提升不僅可以提高工作效率,還可以提高工作質(zhì)量和創(chuàng)新能力。那么,如何提升單片機(jī)
    發(fā)表于 01-05 10:14