[發(fā)明專利]一種區(qū)塊鏈智能合約執(zhí)行方法、裝置及設(shè)備有效
| 申請(qǐng)?zhí)枺?/td> | 202010196122.8 | 申請(qǐng)日: | 2020-03-19 |
| 公開(kāi)(公告)號(hào): | CN111324396B | 公開(kāi)(公告)日: | 2023-09-15 |
| 發(fā)明(設(shè)計(jì))人: | 葉文浩 | 申請(qǐng)(專利權(quán))人: | 深圳市迅雷網(wǎng)絡(luò)技術(shù)有限公司;深圳市網(wǎng)心科技有限公司 |
| 主分類號(hào): | G06F9/448 | 分類號(hào): | G06F9/448;G06F9/455 |
| 代理公司: | 深圳市深佳知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 44285 | 代理人: | 王兆林 |
| 地址: | 518000 廣東省深圳市南山區(qū)粵海街道高新區(qū)*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 區(qū)塊 智能 合約 執(zhí)行 方法 裝置 設(shè)備 | ||
1.一種區(qū)塊鏈智能合約執(zhí)行方法,其特征在于,包括:
獲取目標(biāo)智能合約,判斷是否存在所述目標(biāo)智能合約對(duì)應(yīng)的合約動(dòng)態(tài)庫(kù);
若存在所述目標(biāo)智能合約對(duì)應(yīng)的所述合約動(dòng)態(tài)庫(kù),則調(diào)用所述合約動(dòng)態(tài)庫(kù)執(zhí)行所述目標(biāo)智能合約;
若不存在所述目標(biāo)智能合約對(duì)應(yīng)的所述合約動(dòng)態(tài)庫(kù),則調(diào)用虛擬機(jī)執(zhí)行所述目標(biāo)智能合約,對(duì)所述目標(biāo)智能合約的合約字節(jié)碼進(jìn)行解析并構(gòu)建所述合約動(dòng)態(tài)庫(kù);
其中,所述對(duì)所述目標(biāo)智能合約的合約字節(jié)碼進(jìn)行解析并構(gòu)建所述合約動(dòng)態(tài)庫(kù),包括:
利用wasm?MVP規(guī)范對(duì)所述合約字節(jié)碼進(jìn)行解析,得到導(dǎo)入段字段、全局段字段、函數(shù)表段字段和其他字段;
利用C數(shù)組對(duì)所述導(dǎo)入段字段、所述全局段字段和所述函數(shù)表段字段進(jìn)行格式轉(zhuǎn)換,得到對(duì)應(yīng)的外部函數(shù)列表、全局變量列表和函數(shù)全局索引表;
利用所述其他字段、所述外部函數(shù)列表、所述全局變量列表和所述函數(shù)全局索引表構(gòu)建所述合約動(dòng)態(tài)庫(kù);
其中,所述利用所述其他字段、所述外部函數(shù)列表、所述全局變量列表和所述函數(shù)全局索引表構(gòu)建所述合約動(dòng)態(tài)庫(kù),包括:
利用所述其他字段中的類型字段生成對(duì)應(yīng)的C格式函數(shù)簽名;
讀取所述其他字段中的代碼字段,確定所述代碼字段中各個(gè)指令的指令類型;
根據(jù)所述指令類型對(duì)應(yīng)的代碼轉(zhuǎn)換規(guī)則將所述指令轉(zhuǎn)換為C格式指令;
利用所述C格式指令構(gòu)建C格式函數(shù),并構(gòu)建所述C格式函數(shù)對(duì)應(yīng)的棧式生成器;
生成手續(xù)費(fèi)判斷宏,利用所述手續(xù)費(fèi)判斷宏、所述C格式函數(shù)簽名、所述C格式函數(shù)、所述外部函數(shù)列表、所述全局變量列表和所述函數(shù)全局索引表構(gòu)建C格式代碼;
利用所述C格式代碼和所述棧式生成器構(gòu)建所述合約動(dòng)態(tài)庫(kù)。
2.根據(jù)權(quán)利要求1所述的區(qū)塊鏈智能合約執(zhí)行方法,其特征在于,在所述若不存在所述目標(biāo)智能合約對(duì)應(yīng)的所述合約動(dòng)態(tài)庫(kù),則調(diào)用虛擬機(jī)執(zhí)行所述目標(biāo)智能合約之后,還包括:
從區(qū)塊鏈網(wǎng)絡(luò)中的其他節(jié)點(diǎn)獲取與所述目標(biāo)智能合約對(duì)應(yīng)的所述合約動(dòng)態(tài)庫(kù)。
3.根據(jù)權(quán)利要求2所述的區(qū)塊鏈智能合約執(zhí)行方法,其特征在于,在所述對(duì)所述目標(biāo)智能合約的合約字節(jié)碼進(jìn)行解析并構(gòu)建所述合約動(dòng)態(tài)庫(kù)之后,還包括:
向所述區(qū)塊鏈網(wǎng)絡(luò)中的所述其他節(jié)點(diǎn)共享所述合約動(dòng)態(tài)庫(kù)。
4.根據(jù)權(quán)利要求1所述的區(qū)塊鏈智能合約執(zhí)行方法,其特征在于,所述讀取所述其他字段中的代碼字段,確定所述代碼字段中各個(gè)指令的指令類型,包括:
定義指令指針,讀取所述指令指針指向的所述指令;
確定所述指令的所述指令類型,并更新所述指令指針;
相應(yīng)的,在所述根據(jù)所述指令類型對(duì)應(yīng)的代碼轉(zhuǎn)換規(guī)則將所述指令轉(zhuǎn)換為C格式指令之后,還包括:
利用所述指令指針判斷所述代碼字段是否讀取完畢;
若是,則執(zhí)行利用所述C格式指令構(gòu)建C格式函數(shù)的步驟。
5.根據(jù)權(quán)利要求1至4任一項(xiàng)所述的區(qū)塊鏈智能合約執(zhí)行方法,其特征在于,所述判斷是否存在所述目標(biāo)智能合約對(duì)應(yīng)的合約動(dòng)態(tài)庫(kù),包括:
查詢本地?cái)?shù)據(jù)庫(kù),判斷是否存在所述合約動(dòng)態(tài)庫(kù)的生成記錄;
若存在所述合約動(dòng)態(tài)庫(kù)的生成記錄,則確定存在所述目標(biāo)智能合約對(duì)應(yīng)的合約動(dòng)態(tài)庫(kù);
若不存在所述合約動(dòng)態(tài)庫(kù)的生成記錄,則確定不存在所述目標(biāo)智能合約對(duì)應(yīng)的合約動(dòng)態(tài)庫(kù)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳市迅雷網(wǎng)絡(luò)技術(shù)有限公司;深圳市網(wǎng)心科技有限公司,未經(jīng)深圳市迅雷網(wǎng)絡(luò)技術(shù)有限公司;深圳市網(wǎng)心科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010196122.8/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 沿縱向拓展的區(qū)塊鏈的生成方法及系統(tǒng)
- 沿橫向拓展的區(qū)塊鏈的生成方法及系統(tǒng)
- 區(qū)塊鏈輕量化處理方法、區(qū)塊鏈節(jié)點(diǎn)及存儲(chǔ)介質(zhì)
- 餐廳配備裝置總成
- 區(qū)塊鏈處理方法、裝置及區(qū)塊鏈節(jié)點(diǎn)
- 本地區(qū)塊同步的檢驗(yàn)方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 用于使用現(xiàn)有區(qū)塊鏈節(jié)點(diǎn)來(lái)托管新區(qū)塊鏈的方法和系統(tǒng)
- 一種錐體區(qū)塊、錐體區(qū)塊鏈結(jié)構(gòu)和方法
- 一種錐體區(qū)塊鏈共識(shí)系統(tǒng)、方法及網(wǎng)絡(luò)
- 區(qū)塊分布式區(qū)塊鏈的區(qū)塊數(shù)據(jù)結(jié)構(gòu)、存儲(chǔ)介質(zhì)及電子設(shè)備
- 合約轉(zhuǎn)賬方法、設(shè)備和存儲(chǔ)介質(zhì)
- 區(qū)塊鏈合約升級(jí)方法、裝置、計(jì)算機(jī)設(shè)備及可讀存儲(chǔ)介質(zhì)
- 智能合約測(cè)試方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 智能合約生成方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 實(shí)現(xiàn)可更新智能合約的系統(tǒng)和方法
- 一種管理區(qū)塊鏈系統(tǒng)合約的方法和裝置
- 合約簽署方法、裝置、電子設(shè)備及可讀存儲(chǔ)介質(zhì)
- 基于加密貨幣的智能合約生成方法、相關(guān)設(shè)備及存儲(chǔ)介質(zhì)
- 智能合約的自動(dòng)測(cè)試方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 智能合約執(zhí)行方法、裝置、系統(tǒng)、存儲(chǔ)介質(zhì)及電子設(shè)備
- 以注射方式執(zhí)行死刑的自動(dòng)執(zhí)行車的執(zhí)行床
- 過(guò)程執(zhí)行裝置、過(guò)程執(zhí)行方法以及過(guò)程執(zhí)行程序
- 用以執(zhí)行跳舞電子游戲的執(zhí)行系統(tǒng)及其執(zhí)行方法
- 策略執(zhí)行系統(tǒng)及其執(zhí)行方法
- 腳本執(zhí)行系統(tǒng)和腳本執(zhí)行方法
- 命令執(zhí)行設(shè)備、命令執(zhí)行系統(tǒng)、命令執(zhí)行方法以及命令執(zhí)行程序
- 程序執(zhí)行裝置、程序執(zhí)行系統(tǒng)以及程序執(zhí)行方法
- 處理執(zhí)行設(shè)備和由該處理執(zhí)行設(shè)備執(zhí)行的方法
- 有序任務(wù)的執(zhí)行方法、執(zhí)行裝置和執(zhí)行系統(tǒng)
- 執(zhí)行器(閥門執(zhí)行器)





