[發(fā)明專利]一種基于電力信息系統(tǒng)代碼文件的相似度檢測方法及系統(tǒng)有效
| 申請?zhí)枺?/td> | 201910593863.7 | 申請日: | 2019-07-03 |
| 公開(公告)號(hào): | CN110471835B | 公開(公告)日: | 2022-07-19 |
| 發(fā)明(設(shè)計(jì))人: | 錢琳;俞俊;朱廣新;龐恒茂;任曉龍;胡鑫;許明杰;王琳;梅竹;陳海洋 | 申請(專利權(quán))人: | 南瑞集團(tuán)有限公司;國電南瑞科技股份有限公司;國網(wǎng)陜西省電力公司 |
| 主分類號(hào): | G06F11/36 | 分類號(hào): | G06F11/36;G06F40/194;G06F40/284;G06F40/30;G06K9/62 |
| 代理公司: | 南京蘇高專利商標(biāo)事務(wù)所(普通合伙) 32204 | 代理人: | 王恒靜 |
| 地址: | 211106 江*** | 國省代碼: | 江蘇;32 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 電力 信息系統(tǒng) 代碼 文件 相似 檢測 方法 系統(tǒng) | ||
本發(fā)明公開了一種基于電力信息系統(tǒng)代碼文件的相似度檢測方法及系統(tǒng),包括:獲取需要判別相似度的第一代碼文件和第二代碼文件,預(yù)處理后分別得到第一文本和第二文本;根據(jù)單詞的TF?IDF值得到所述文本語義詞向量,從所述第一文本和第二文本的函數(shù)調(diào)用入口開始,分別尋找所述第一文本和第二文本的函數(shù)調(diào)用樹結(jié)構(gòu),并計(jì)算得到第一文本結(jié)構(gòu)向量和第二文本結(jié)構(gòu)向量;通過文本語義詞向量計(jì)算中間語義詞向量,將所述第一文本結(jié)構(gòu)向量和第二文本結(jié)構(gòu)向量取并集后,計(jì)算第一中間結(jié)構(gòu)向量和第二中間結(jié)構(gòu)向量;進(jìn)而得到所述第一文本和第二文本的相似度。本發(fā)明首先采用預(yù)處理函數(shù)對代碼文件進(jìn)行代碼精簡,提高檢測效率,降低檢測錯(cuò)誤率。
技術(shù)領(lǐng)域
本發(fā)明涉及代碼相似度檢測技術(shù)領(lǐng)域,具體涉及一種基于電力信息系統(tǒng)代碼文件的相似度檢測方法及系統(tǒng)。
背景技術(shù)
代碼相似度檢測技術(shù)目前最主要應(yīng)用于代碼的剽竊檢測上,是計(jì)算機(jī)軟件開發(fā)和維護(hù)活動(dòng)中一項(xiàng)重要任務(wù),在源代碼剽竊檢測、軟件組件庫查詢、軟件缺陷檢測、程序理解等多個(gè)領(lǐng)域中有廣泛應(yīng)用。其不僅可以幫助教師檢測學(xué)生的程序作業(yè)抄襲情況,同時(shí)對軟件版權(quán)的鑒定也具有好的現(xiàn)實(shí)意義。
在發(fā)表于第六屆北美大學(xué)計(jì)算科學(xué)協(xié)會(huì)年會(huì)論文集“抄襲檢測度量元”(Metricsbased plagiarism monitoring.Paper presented at the 6th Annual CCSCNortheastern Conference,Middlebury VT.2001)一文中,瓊斯(Jones)總結(jié)了十種剽竊手段。分別為(1)逐字拷貝(2)更改注釋語句(3)更改空白區(qū)域(4)重新命名標(biāo)識(shí)符改變代碼塊的順序(6)改變代碼塊中語句的順序(7)改變表達(dá)式中操作符和操作數(shù)的順序(8)更改數(shù)據(jù)類型(9)增加冗余的語句和變量(10)用等價(jià)的控制結(jié)構(gòu)替換原有控制結(jié)構(gòu)。
從國內(nèi)外的研究現(xiàn)狀可以發(fā)現(xiàn),國內(nèi)在對程序相似度判別研究相對較少,大部分集中在對中文分詞和語義的研究上。可以參考的工具有:北航高級程序課程教學(xué)輔助平臺(tái)中用于檢測學(xué)生提交程序作業(yè)是否抄襲的BUAASIM系統(tǒng)等。
國外目前已有許多軟件工具可用來檢測源程序是否抄襲,如美國斯坦福大學(xué)的MOSS系統(tǒng)、威奇塔州立大學(xué)的SIM系統(tǒng)、伊利諾伊大學(xué)的GPLAG系統(tǒng)、德國Karlsruhe大學(xué)的JPlag系統(tǒng)和澳大利亞悉尼大學(xué)的YAP3系統(tǒng)。目前最主要的代碼相似度檢測技術(shù)主要分為兩大類,屬性計(jì)數(shù)技術(shù)及結(jié)構(gòu)度量技術(shù),包含如下幾種具體的方法:Textual comparison,Token comparison,Metric comparison,Comparison of abstract syntax trees(AST,抽象語法樹),Comparison of program dependency graphs(PDG,程序依賴圖)及其他相關(guān)方法。
而在實(shí)際使用及研究中發(fā)現(xiàn),目前主要流行的上述幾種方法各自存在其不同的缺陷。兩種token-based的方法和text-based的方法效果一般且相差不大。AST-based的方法效果表現(xiàn)很好,但算法流程復(fù)雜,難于實(shí)現(xiàn)且執(zhí)行時(shí)間長,且對于不同語言的匹配實(shí)現(xiàn)算法改動(dòng)較大,PDG-based的方法表現(xiàn)性能不佳。另有文章指出,上述五種方法均拒絕了大量真正的相似代碼,且其對于注入代碼等某些特殊情況檢測率低。
綜上,目前主流的代碼相似度檢測方法普遍存在檢測效果低、部分方法復(fù)雜執(zhí)行時(shí)間長、某些情況錯(cuò)誤率高以及難于應(yīng)用在不同編程語言上等問題。
發(fā)明內(nèi)容
發(fā)明目的:為了克服現(xiàn)有技術(shù)的不足,本發(fā)明提供一種基于電力信息系統(tǒng)代碼文件的相似度檢測方法及系統(tǒng),可以解決在檢測代碼相似度過程中遇到的檢測效果低、部分方法復(fù)雜執(zhí)行時(shí)間長、某些情況錯(cuò)誤率高的問題。
技術(shù)方案:本發(fā)明所述的基于電力信息系統(tǒng)代碼文件的相似度檢測方法,該方法包括:
獲取需要判別相似度的第一代碼文件和第二代碼文件,預(yù)處理后分別得到第一文本和第二文本;
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于南瑞集團(tuán)有限公司;國電南瑞科技股份有限公司;國網(wǎng)陜西省電力公司,未經(jīng)南瑞集團(tuán)有限公司;國電南瑞科技股份有限公司;國網(wǎng)陜西省電力公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201910593863.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測;錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測試作故障硬件的檢測或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測試或調(diào)試防止錯(cuò)誤
- 電力控制器、電力生成系統(tǒng)以及電力控制器的控制方法
- 電力供給裝置、電力接收裝置和包括電力接收裝置的車輛以及用于電力供給系統(tǒng)的控制方法
- 電力接收裝置、電力傳送裝置及其控制方法
- 一種智能電力客服系統(tǒng)的構(gòu)建方法及系統(tǒng)
- 無線電力傳輸系統(tǒng)、無線電力發(fā)送裝置和無線電力接收裝置
- 一種電力監(jiān)控平臺(tái)數(shù)據(jù)信息映射匹配方法及系統(tǒng)
- 用于電力分配的系統(tǒng)和方法
- 電力傳輸裝置、電力接收裝置和電力傳輸裝置的控制方法
- 一種電力傳輸線圈無線傳輸電力的無線電力傳輸系統(tǒng)
- 一種電力運(yùn)行數(shù)據(jù)監(jiān)控系統(tǒng)
- 基于角色模擬信息系統(tǒng)開發(fā)工廠實(shí)驗(yàn)方法
- 對信息系統(tǒng)進(jìn)行安全性識(shí)別的方法及裝置
- 基于角色模擬信息系統(tǒng)開發(fā)工廠實(shí)驗(yàn)方法
- 一種基于大數(shù)據(jù)的信息系統(tǒng)風(fēng)險(xiǎn)預(yù)警模型構(gòu)建方法
- 一種基于移動(dòng)終端的身份鑒別方法及系統(tǒng)
- 一種信息系統(tǒng)告警方法和裝置
- 一種基于總線形式的醫(yī)院信息集成方法
- 一種雙內(nèi)核瀏覽器方法和雙內(nèi)核瀏覽器
- 信息系統(tǒng)互聯(lián)方法及互聯(lián)裝置、鼠標(biāo)及電子設(shè)備
- 一種基于一二次劃分的信息系統(tǒng)可靠性提升方法
- 遙控器代碼格式結(jié)構(gòu)及其收發(fā)信方法及裝置
- 在虛擬機(jī)中驗(yàn)證代碼模塊的方法及裝置
- 一種用于代碼的管理方法及裝置
- 虛擬代碼提供系統(tǒng)、生成裝置、驗(yàn)證裝置、提供方法
- 一種自動(dòng)化代碼質(zhì)量檢查方法及系統(tǒng)
- 代碼掃描方法、裝置、計(jì)算設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 用于更新代碼的方法和裝置
- 前端代碼打包方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種代碼審查服務(wù)同步方法、裝置及計(jì)算機(jī)設(shè)備
- 一種高效智能源代碼安全管理平臺(tái)





