[發明專利]源程序相似度檢測方法及裝置無效
| 申請號: | 200710099708.7 | 申請日: | 2007-05-29 |
| 公開(公告)號: | CN101315599A | 公開(公告)日: | 2008-12-03 |
| 發明(設計)人: | 趙長海;晏海華;金茂忠 | 申請(專利權)人: | 北京航空航天大學 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44;G06F9/45 |
| 代理公司: | 北京北翔知識產權代理有限公司 | 代理人: | 謝靜 |
| 地址: | 100083*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 源程序 相似 檢測 方法 裝置 | ||
1.一種對兩個源程序的相似度進行檢測的方法,所述方法包括以下步驟:
通過分別對所述兩個源程序文件進行優化編譯,生成兩個二進制文件;
通過分別反匯編所述兩個二進制文件,生成兩個匯編代碼集合;以及
根據決策函數對所述兩個匯編代碼集合進行計算,確定所述兩個源程序的相似度。
2.如權利要求1所述的方法,其特征在于,在生成兩個匯編代碼集合之后,分別對所述兩個匯編代碼集合進行噪音過濾,并根據決策函數對噪音過濾后的兩個匯編代碼集合進行計算。
3.如權利要求2所述的方法,其特征在于,所述噪音過濾包括,過濾所述匯編代碼集合中偏移地址變化帶來的噪音。
4.如權利要求2或3所述的方法,其特征在于,所述噪音過濾包括,過濾所述匯編代碼集合中函數地址變化帶來的噪音。
5.如權利要求2或3所述的方法,其特征在于,所述噪音過濾包括,過濾所述匯編代碼集合中立即數替換帶來的噪音。
6.如權利要求2或3所述的方法,其特征在于,所述噪音過濾包括,過濾所述匯編代碼集合的關系表達式中操作數順序改變帶來的噪音。
7.如權利要求1至3中任一項所述的方法,其特征在于,所述決策函數是:
其中,Pi、Pj分別表示待檢測的程序;F(Pi)、F(Pj)分別表示Pi、Pj的匯編代碼集合;Sim(Pi,Pj)表示Pi、Pj的相似度。
8.一種對多個源程序的相似度進行檢測的方法,包括以下步驟:
根據權利要求1至7中任一項所述的方法,確定所述多個源程序中每兩個的相似度;
根據所述每兩個源程序的相似度,利用聚類算法對所述多個源程序進行聚類。
9.一種檢測兩個源程序相似度的裝置,包括:
編譯單元,用于分別對所述兩個源程序文件進行優化編譯,以生成兩個二進制文件;
反匯編單元,用于分別反匯編所述兩個二進制文件,以生成兩個匯編代碼集合;以及
相似度確定單元,用于根據決策函數對所述兩個匯編代碼集合進行計算,確定所述兩個源程序的相似度。
10.如權利要求9所述的裝置,其特征在于,所述裝置還包括噪音過濾單元,用于分別對所述兩個匯編代碼集合進行噪音過濾;所述相似度確定單元根據決策函數對噪音過濾后的兩個匯編代碼集合進行計算。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京航空航天大學,未經北京航空航天大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/200710099708.7/1.html,轉載請聲明來源鉆瓜專利網。





