[發明專利]一種自動化的智能合約代碼缺陷檢測系統和方法有效
| 申請號: | 201810792738.4 | 申請日: | 2018-07-18 |
| 公開(公告)號: | CN109063477B | 公開(公告)日: | 2021-04-20 |
| 發明(設計)人: | 楊霞 | 申請(專利權)人: | 成都鏈安科技有限公司 |
| 主分類號: | G06F21/56 | 分類號: | G06F21/56;G06Q20/40 |
| 代理公司: | 成都四合天行知識產權代理有限公司 51274 | 代理人: | 王記明 |
| 地址: | 610000 四川省成都市*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 自動化 智能 合約 代碼 缺陷 檢測 系統 方法 | ||
本發明公開了一種自動化的智能合約代碼缺陷檢測系統和方法,全自動化對區塊鏈智能合約做缺陷代碼檢查;使用靜態代碼分析和動態路徑遍歷相結合的方式,再加上獨立可擴充的安全模型庫和規則匹配庫,使得缺陷代碼檢查更加完備、準確可靠,解決了缺陷代碼中漏報問題;同時實時加載區塊鏈底層平臺接口調用,并將生成的測試案例和反例在區塊鏈平臺上驗證缺陷代碼是否是偽錯誤,能有效、準確的查找出智能合約缺陷代碼,通過源碼映射引擎,還可將缺陷錯誤代碼定位到智能合約源代碼具體位置。
技術領域
本發明涉及區塊鏈智能合約安全領域,具體涉及一種自動化的智能合約代碼缺陷檢測系統和方法。
背景技術
區塊鏈是分布式數據存儲、點對點傳輸、共識機制、加密算法等計算機技術的新型應用模式。使用去中心化共識機制去維護一個完整的、分布式的、不可篡改的賬本數據庫的技術,它能夠讓區塊鏈中的參與者在無需建立信任關系的前提下實現一個統一的賬本系統。一個智能合約是一套以數字形式定義的承諾,包括合約參與方可以在上面執行這些承諾的協議。在區塊鏈技術背景下,智能合約是指運行在區塊鏈上,能夠執行某些功能的程序代碼。將智能合約以數字化的形式寫入區塊鏈中,由區塊鏈技術的特性保障存儲、讀取、執行整個過程透明可追蹤、不可篡改。同時,由區塊鏈自帶的共識算法構建出一套狀態機系統,使得智能合約能夠高效地運行。
由于區塊鏈不可篡改特性,一旦因為程序自身設計的問題,導致智能合約的安全漏洞,或將產生不可逆轉的重大損失。而使用一些代碼缺陷檢查方法,例如形式化驗證、靜態代碼分析等技術,則可提前發現程序缺陷代碼,及時修改問題代碼,可起防范于未然的作用。形式化驗證方法主要有定理證明、模型檢測和等價性驗證,它們的側重點各有不同。定理證明根據公理和形式推演規則來驗證設計實現是否滿足要求,在對區塊鏈智能合約進行安全檢查,由于需要大量的人力干預,效率非常低,并且對驗證人技術要求非常高;模型檢測可實現機器自動處理智能合約漏洞,但是在處理較復雜的智能合約代碼時,常會出現狀態爆炸、誤報錯誤、漏報錯誤等問題;而等價性證明主要驗證程序代碼的實現與設計原型的功能是否一致,無法檢查出程序代碼漏洞。
發明內容
本發明的目的是面向所有區塊鏈平臺和其上各種編程語言的智能合約,提出一種自動化的智能合約代碼缺陷檢測方法,并根據該方法實現一套缺陷檢查裝置,實現全自動化的對區塊鏈智能合約源代碼進行漏洞代碼檢查,并最終生成缺陷代碼檢查報告,最終通過源碼映射,定位缺陷代碼在智能合約源代碼中的位置。
本發明通過下述技術方案實現:
一種自動化的智能合約代碼缺陷檢測系統,包括:
智能合約編譯器:用于接收區塊鏈智能合約源代碼,進行編譯得到智能合約源代碼語法樹和目標碼,并輸送給安全引擎控制器;
安全引擎控制器:接收智能合約編譯器輸出的語法樹和目標碼,并將語法樹輸入到規則匹配檢查器進行靜態代碼分析,將目標碼輸入到路徑遍歷檢查器進行缺陷代碼檢查;
規則匹配檢查器:規則匹配檢查器接收語法樹,并匹配缺陷代碼,然后將匹配信息發送至缺陷報告生成器;
路徑遍歷檢查器:用于接收安全引擎控制器發送的目標碼和區塊鏈平臺發送的區塊鏈信息,對接收到的目標碼進行全路徑遍歷,將結果發送給案例生成器;
案例生成器:用于接收路徑遍歷檢查器發送的路徑遍歷缺陷代碼檢查器生成的數據,然后將測試案例和表達式反例在區塊鏈平臺作為輸入來確認檢測出的缺陷代碼是否是真實缺陷代碼;
缺陷報告生成器:根據規則匹配檢查器缺陷代碼檢查結果和路徑遍歷檢查器檢查的結果,并通過區塊鏈平臺驗證過的缺陷代碼,生成智能合約漏洞檢查報告,并通過源碼映射器,定位缺陷代碼在智能合約源代碼中的位置,反饋給用戶。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于成都鏈安科技有限公司,未經成都鏈安科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810792738.4/2.html,轉載請聲明來源鉆瓜專利網。





