[發明專利]一種代碼相似度檢測的方法、裝置及存儲介質在審
| 申請號: | 202111114518.4 | 申請日: | 2021-09-23 |
| 公開(公告)號: | CN115858328A | 公開(公告)日: | 2023-03-28 |
| 發明(設計)人: | 閔婕 | 申請(專利權)人: | 中國電信股份有限公司 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F40/216;G06F40/194 |
| 代理公司: | 中國貿促會專利商標事務所有限公司 11038 | 代理人: | 肖靖 |
| 地址: | 100033 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 代碼 相似 檢測 方法 裝置 存儲 介質 | ||
本公開涉及代碼相似度檢測的方法、裝置及存儲介質。代碼相似度檢測方法包括:針對待檢測代碼和第一比較代碼分別進行結構分析,獲得結構類圖;計算待檢測代碼結構類圖和第一比較代碼結構類圖的相似度;在相似度小于等于第一閾值的情況下,判斷為代碼結構相似,并且計算待檢測代碼的詞條與第二比較代碼間的詞條間的分布比重,并按照從大到小的順序排列分布比重來獲得第一特征向量;計算待檢測代碼詞條的出現頻率權重而獲得第二特征向量;對第一特征向量與第二特征向量取交集來獲得最終特征向量;根據最終特征向量和第一比較代碼的詞條向量,計算余弦相似度,比較余弦相似度與第二閾值的大小來判斷是否抄襲。
技術領域
本公開總體上涉及安全領域,更具體地涉及代碼相似度檢測的方法、裝置及存儲介質。
背景技術
隨著軟件規模的不斷增大,軟件系統中代碼重復是不可避免的,這不僅增加了程序代碼的容量和運行時間,也給軟件維護帶來了難題。因此,代碼相似性具有重要的研究意義。源代碼相似性度量旨在判斷一段代碼與其他代碼在語句、語義功能上的相似程度,是代碼克隆、代碼剽竊、代碼推薦、知識產權、信息檢索等應用的基礎。
目前相似度檢測中多用TF-IDF算法來計算特征值文檔中的重要程度和文檔區分度。但單純使用TF-IDF來判斷一個特征是否有區分度是不夠的,它沒有考慮特征詞在類間的分布,很難很好地反應代碼的真實情況,無法提取隱藏在源代碼中的深層次復雜特征。
發明內容
在下文中給出了關于本公開的簡要概述,以便提供關于本公開的一些方面的基本理解。但是,應當理解,這個概述并不是關于本公開的窮舉性概述。它并不是意圖用來確定本公開的關鍵性部分或重要部分,也不是意圖用來限定本公開的范圍。其目的僅僅是以簡化的形式給出關于本公開的某些概念,以此作為稍后給出的更詳細描述的前序。
根據本公開的一個方面,提供一種代碼相似度檢測方法,包括:針對待檢測代碼和第一比較代碼分別進行結構分析,獲得待檢測代碼結構類圖和第一比較代碼結構類圖;計算待檢測代碼結構類圖和第一比較代碼結構類圖的相似度;在相似度小于等于第一閾值的情況下,判斷為代碼結構相似,并且計算待檢測代碼的詞條與第二比較代碼間的詞條間的分布比重,并按照從大到小的順序排列分布比重來獲得第一特征向量,所述第二比較代碼是與待檢測代碼同類型的代碼;計算待檢測代碼詞條的出現頻率權重,并按照從大到小的順序排列出現頻率權重來獲得第二特征向量;對第一特征向量與第二特征向量取交集來獲得最終特征向量;根據最終特征向量和第一比較代碼的詞條向量,計算余弦相似度,比較余弦相似度與第二閾值的大小,如果余弦相似度大于第二閾值,則判定為待檢測代碼為抄襲;如果余弦相似度小于等于第二閾值,則判斷為待檢測代碼沒有抄襲。
根據本公開的又一個方面,提供一種代碼相似度檢測裝置,包括:存儲器,其上存儲有指令;以及處理器,被配置為執行存儲在所述存儲器上的指令,以執行上述的方法。
根據本公開的又一個方面,提供一種計算機可讀存儲介質,包括計算機可執行指令,所述計算機可執行指令在由一個或多個處理器執行時,使得所述一個或多個處理器執行根據上述的方法。
根據本發明,能夠提高向量值的精度,能有效提高相似度計算結果的準確性。
附圖說明
構成說明書的一部分的附圖描述了本公開的實施例,并且連同說明書一起用于解釋本公開的原理。
參照附圖,根據下面的詳細描述,可以更清楚地理解本公開,其中:
圖1是示出了根據本發明的一個實施例的代碼相似度檢測方法的流程圖。
圖2是示出了根據本發明的一個具體應用例的代碼相似度檢測方法的流程圖。
圖3示出了可以實現根據本公開的實施例的計算設備的示例性配置。
具體實施方式
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國電信股份有限公司,未經中國電信股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111114518.4/2.html,轉載請聲明來源鉆瓜專利網。





