[發明專利]一種將以太坊智能合約轉換成超級賬本智能合約的方法有效
| 申請號: | 201810322171.4 | 申請日: | 2018-04-11 |
| 公開(公告)號: | CN108595185B | 公開(公告)日: | 2021-07-27 |
| 發明(設計)人: | 翁健;謝斐;羅偉其;張悅;李明 | 申請(專利權)人: | 暨南大學 |
| 主分類號: | G06F8/51 | 分類號: | G06F8/51;G06N3/08 |
| 代理公司: | 廣州市華學知識產權代理有限公司 44245 | 代理人: | 陳燕嫻 |
| 地址: | 510632 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 以太 智能 合約 轉換 超級 賬本 方法 | ||
1.一種將以太坊智能合約轉換成超級賬本智能合約的方法,其特征在于,包括以下步驟:
S1、以收集到的以太坊智能合約源代碼及其相對應的超級賬本智能合約源代碼為數據集,使用深度學習的方法訓練得到一個以太坊智能合約轉換成超級賬本合約的轉換模型;
步驟S1具體包括:利用深度學習方法訓練得到轉換模型,轉換模型包括識別和轉換兩部分:
其中識別包括:對象的識別、算法的識別、模塊的識別和接口的識別;
而轉換包括:1)數據類型轉換:以太坊智能合約上的數據類型轉換成超級賬本上智能合約的數據類型;2)函數轉換;3)依賴包轉換;
S2、用戶輸入以太坊的智能合約可運行的源代碼,對輸入的源代碼進行預處理;
步驟S2包括:利用代碼解析器對以太坊上使用Solidity編寫的智能合約代碼進行預處理;代碼解析器通過輸入的智能合約代碼確定Solidity的詞法記號和詞法規則,運行這些文件自動生成Solidity的詞法分析器和語法分析器;進一步通過抽象語法樹的規則,生成Solidity的抽象語法樹;最終通過使用樹分析器遍歷抽象語法樹,完成語義分析;
S3、最后將處理成功后的源代碼輸入到轉換模型中,轉換模型對源代碼進行高級識別工作,利用識別到的源碼進行轉換,輸出超級賬本的源代碼;
步驟S3包括:輸入步驟S2傳入進來的抽象語法樹、語義分析和智能合約代碼到轉換模型中,轉換模型首先會通過抽象語法樹、語義分析和智能合約代碼來進行高級識別,包括對象的識別、算法的識別、模塊的識別、接口的識別、數據類型識別、依賴包識別;識別成功后就會根據這些識別的結果進行轉換,其中轉換過程包括了類型轉換、函數轉換和依賴包轉換;轉換成功之后生成超級賬本智能合約代碼。
2.根據權利要求1所述的將以太坊智能合約轉換成超級賬本智能合約的方法,其特征在于,所使用的深度學習模型是神經網絡。
3.根據權利要求1所述的將以太坊智能合約轉換成超級賬本智能合約的方法,其特征在于,函數轉換還包括了作用域的轉換。
4.根據權利要求1所述的將以太坊智能合約轉換成超級賬本智能合約的方法,其特征在于,步驟S2對輸入的源代碼進行預處理是將不同用戶輸入的不同格式的智能合約處理成本方法可以識別的格式。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于暨南大學,未經暨南大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810322171.4/1.html,轉載請聲明來源鉆瓜專利網。





