[發明專利]一種識別計算機軟件行為的譜方法有效
| 申請號: | 201410012074.7 | 申請日: | 2014-01-13 |
| 公開(公告)號: | CN103778372B | 公開(公告)日: | 2016-10-19 |
| 發明(設計)人: | 陳黎飛;陳可意 | 申請(專利權)人: | 福建師范大學 |
| 主分類號: | G06F21/56 | 分類號: | G06F21/56 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 350007 *** | 國省代碼: | 福建;35 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 識別 計算機軟件 行為 方法 | ||
1.一種識別計算機軟件行為的譜方法,其特征在于,它由以下步驟實現:
(1)構造軟件行為表示模型:用DHMM的模型參數二元組(A*,B*)表示S或G的軟件行為;
(2)提取軟件行為特征:對矩陣A*進行譜分解,提取軟件行為特征D;
(3)軟件行為相似性度量:根據B*和D計算兩個計算機程序之間、或兩個計算機程序組之間、或一個計算機程序與一個程序組之間的軟件行為相似性。
2.根據權利要求1所述的一種識別計算機軟件行為的譜方法,其特征在于,所述步驟(1)構造軟件行為表示模型,分兩種情況:
第一種情況:單個計算機程序的軟件行為表示模型
S具有M種軟件行為,每種行為與DHMM(S)的一個隱狀態相對應;用模型(A*,B*)表示S的軟件行為,具體實施步驟如下:
設定隱狀態的數目M,并給定初始狀態概率分布C;
輸入計算機程序S;
調用一種DHMM訓練算法求取令P[S|A,B,C]最大化的模型參數A和B,分別記為A*和B*;
第二種情況:計算機程序組的軟件行為表示模型
對于計算機程序組G={S1,S2,…,SN},G具有M種軟件行為,每種行為與DHMM(S1),DHMM(S2),…,DHMM(SN)共有的一個隱狀態相對應;用模型(A*,B*)表示G的軟件行為,具體實施步驟如下:
設定隱狀態的數目M,并給定初始狀態概率分布C;
輸入G中的所有計算機程序S1,S2,…,SN;
調用一種DHMM訓練算法求取令P[S1|A,B,C]×P[S2|A,B,C]×…×P[SN|A,B,C]最大化的模型參數A和B,分別記為A*和B*。
3.根據權利要求1所述的一種識別計算機軟件行為的譜方法,其特征在于,所述步驟(2)提取軟件行為特征中,軟件行為特征用M×M的矩陣D={dij}M×M來表示,D的第i(i=1,2,…,M)行元素構成一個行向量Di=<di1,di2,…,diM>,具體實施步驟如下:
輸入計算機程序S或計算機程序組G的軟件行為模型(A*,B*);
對矩陣A*進行譜分解操作,將之分解為A*=X∑X1,其中∑是一個對角矩陣,其每一個對角線上的元素是A*的一個特征值,矩陣X的每個行向量是與特征值相對應的特征向量;
將∑中的M個特征值按數值大小排序;
排序后的第1個特征值所對應的X的特征向量記為D1,第2個特征值所對應的X的特征向量記為D2,以此類推,排序后的第i個特征值所對應的X的特征向量記為Di,i=1,2,…,M。
4.根據權利要求1所述的一種識別計算機軟件行為的譜方法,其特征在于,所述步驟(3)使用步驟(1)輸出的軟件行為模型(A*,B*)和步驟(2)輸出的軟件行為特征D,計算兩個程序之間(分別用T1和T2表示)、單個程序(用T1表示)與一個程序組(用T2表示)之間、或兩個程序組(分別用T1和T2表示)之間的軟件行為相似度或相異度,相異度越高則相似度越低,反之亦然;相似度越高表示T1和T2具有越相似的軟件行為;軟件行為相似性度量使用兩種矩陣:軟件行為表示模型中的B*和軟件行為特征D,為區別起見,T1的這兩個矩陣用1B*和1D表示,T2的矩陣用2B*和2D表示;具體實施步驟如下:
設定矩陣間的相異度dist(Y,Z),其中Y和Z表示任意的兩個同階矩陣;
輸入1B*、1D、2B*和2D;
使用公式[dist(1B*,2B*)]α×[dist(1D,2D)]β衡量T1和T2之間的軟件行為相異度,其中α和β是兩個大于或等于0的實數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于福建師范大學,未經福建師范大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410012074.7/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:高精度微調夾具
- 下一篇:治療牛出血性腸炎的中藥





