[發明專利]一種源碼編譯驗證方法、系統、設備和儲存介質在審
| 申請號: | 202110028999.0 | 申請日: | 2021-01-11 |
| 公開(公告)號: | CN112948827A | 公開(公告)日: | 2021-06-11 |
| 發明(設計)人: | 應秋敏;鄭基玲;王志文;吳思進 | 申請(專利權)人: | 杭州復雜美科技有限公司 |
| 主分類號: | G06F21/56 | 分類號: | G06F21/56;G06F21/64;G06F8/41;G06F8/52 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 310000 浙江省杭州市西湖*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 源碼 編譯 驗證 方法 系統 設備 儲存 介質 | ||
本發明公開了一種源碼編譯驗證方法、系統、設備和儲存介質,屬于計算機技術領域。本發明所公開的源碼編譯驗證方法確定驗證編譯記錄的請求,驗證編譯記錄內容,上傳編譯記錄至區塊鏈,通過引入區塊鏈的分布式信任機制,建立二進制文件與其源碼之間的對應關系,驗證二進制文件的來源,確保了二進制文件到其起源的源代碼的可追溯性,同時也規避了直接使用預編譯文件的安全風險,避免了編譯后的二進制文件被篡改的風險。
技術領域
本發明屬于計算機技術領域,尤其涉及一種源碼編譯驗證方法、系統、設備和儲存介質。
背景技術
目前,存在非常多的開源流行軟件(包含開源庫),它們一起組成了當今繁榮的網絡世界的技術基礎。如Linux、OpenSSL、gcc等開源流行軟件深入到了軟件世界的每一個角落。在使用這些開源軟件時,一般有兩種方式獲取源代碼的編譯文件,第一種是下載源碼,自行編譯出二進制文件;第二種是直接使用官方提供的二進制文件。第一種方式,費時費力,需要非常深入的了解項目的編譯過程,所以大部分人會選擇第二種方式。然而,這樣就會存在一個安全隱患:如何驗證開源軟件提供商發布的二進制文件就是由其代碼倉庫中的代碼編譯出來的。上述安全隱患會造成以下幾種可能的風險:
1.開源項目官方的編譯環境被惡意控制,導致其工具鏈自動的往編譯好的二進制文件中插入惡意代碼;
2.開源項目官方為了其自身利益,故意發布經過篡改的二進制文件。
由于每個人都可以看到開源項目的源碼,所以人們往往忽視其中存在的安全風險。如此則會導致問題變得更加的嚴重。使用開源軟件安全的方法是不直接使用預編譯軟件包,而是選擇下載源碼,自行編譯。但是如上所述會花費大量時間來搭建編譯環境、處理編譯的依賴、解決編譯中的出現的問題,效率非常低。因此,現在亟需一種能夠驗證源碼與其二進制文件之間對應關系的方法。
發明內容
1.發明要解決的技術問題
為克服上述技術問題,本發明提供一種源碼編譯驗證方法、系統、設備和儲存介質,通過引入區塊鏈的分布式信任機制,建立二進制文件與其源碼之間的對應關系,驗證二進制文件的來源。
2.技術方案
為解決上述問題本發明提供的技術方案為:
第一方面,一種源碼編譯驗證方法,包括如下步驟:
S100、確定驗證編譯記錄的請求,其中,所述編譯記錄包括編號、軟件名稱、軟件版本、源代碼地址、源代碼hash值、用于存儲編譯結果hash值的編譯結果列表、編譯環境和工具鏈列表;
S201、讀取編譯記錄內容;
S202、根據源代碼地址下載源代碼,并進行hash運算,得到第一源代碼hash值;
S203、驗證第一源代碼hash值與編譯記錄中的源代碼hash值是否一致,若一致則進行下一步,否則不作處理;
S204、根據編譯環境和工具鏈列表構建編譯環境;
S204、對所述源代碼進行編譯,得到所述源代碼的二進制文件;
S205、對所述二進制文件進行hash運算,運算結果存入第一編譯結果列表;
S206、驗證第一編譯結果列表內容與編譯記錄中的編譯結果列表內容是否一致,若一致則向其他節點廣播所述編譯記錄,否則不進行處理;
在步驟S206之后,區塊鏈網絡對編譯記錄進行共識,共識完成后將所述編譯記錄儲存在區塊鏈上。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于杭州復雜美科技有限公司,未經杭州復雜美科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202110028999.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種市政工程用可調型道路施工警示架
- 下一篇:水處理在線監測預警系統





