[發明專利]一種混源軟件中開源成分檢測的方法和系統有效
| 申請號: | 202111286072.3 | 申請日: | 2021-11-02 |
| 公開(公告)號: | CN113721978B | 公開(公告)日: | 2022-02-11 |
| 發明(設計)人: | 張濤;陳鐘 | 申請(專利權)人: | 北京大學 |
| 主分類號: | G06F8/77 | 分類號: | G06F8/77 |
| 代理公司: | 北京萬象新悅知識產權代理有限公司 11360 | 代理人: | 賈曉玲 |
| 地址: | 100871*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 軟件 中開源 成分 檢測 方法 系統 | ||
本申請公開的實施例提供了一種混源軟件中開源成分檢測的方法和系統。其中,該方法包括:獲取目標混源軟件中的源碼文件,即獲取第一源碼文件,以及對所述第一源碼文件分類及執行相應的同源分析;其中,對于所述第一源碼文件中大小超過第一閾值的源碼文件,基于Simhash算法對其進行同源分析;對于所述第一源碼文件中大小不超過第一閾值的源碼文件,基于Minhash算法對其進行同源分析。較之現有技術,上述方案能夠均衡混源軟件開源成分檢測的效率需求和精確性間的矛盾,在保證檢測效率的前提下獲得可接受的開源成分檢測結果。
技術領域
本申請公開的實施例主要涉及開源治理相關技術領域以及具體涉及軟件成分分析(SCA)安全測試細分技術領域,且更具體地,涉及一種混源軟件中開源成分檢測的方法和系統。
背景技術
近年來,軟件開發中開源成分使用比例越來越高。開源成分的引入,能夠大大提高軟件開發的效率。如今,幾乎所有的軟件開發者實體都會選擇使用開源框架、開源庫、開源組件等,以簡化開發過程、縮短開發周期。然而引入開源成分,不免可能引入一些漏洞,造成安全問題,以及知識產權合規問題。特別是直接拷貝開源代碼文件復用或僅做簡單修改即引入,都不免因為開源內容被廣泛、頻繁地公開使用而成為攻擊者優先攻擊的目標。
目前,雖然已經有很多SCA工具支持開源成分的分析,但是這些工具大都是基于項目的特征文件來分析項目的開源成分,而基于代碼的開源成分分析則很少,主要是因為基于海量的開源代碼進行開源成分的分析難度大,檢測效率不能達到預期。
發明內容
根據本申請公開的實施例,提供了一種混源軟件中開源成分檢測的方法和系統,以實現代碼粒度的開源成分檢測,并且能夠在保證檢測效率的前提下取得在廣義的代碼粒度上的、可接受的開源成分檢測結果。
在本公開的第一方面中,提供了一種混源軟件中開源成分檢測的方法。該方法包括:獲取目標混源軟件中的源碼文件,作為第一源碼文件;根據所述第一源碼文件的大小分別對所述第一源碼文件執行相應的同源分析;其中,對于所述第一源碼文件中大小超過第一閾值的源碼文件,基于Simhash算法對其進行同源分析;而對于所述第一源碼文件中大小不超過第一閾值的源碼文件,基于Minhash算法對其進行同源分析;而具體地,上述的基于Simhash算法的同源分析,可以是包括:定義一個Simhash函數
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京大學,未經北京大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111286072.3/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種地衣芽孢桿菌及其應用
- 下一篇:一種多自由度無人機動力測試裝置





