本申請涉及數(shù)據(jù)檢測技術領域,尤其涉及一種網(wǎng)關位置壓縮文本檢測方法和裝置。
背景技術:
網(wǎng)絡為人們提供方便的同時,網(wǎng)絡攻擊問題也帶來了新的麻煩與威脅。web是一種廣泛被采用的網(wǎng)絡服務,同時也是不法攻擊者傳播惡意代碼的主要手段。通常在檢測web攻擊時,需要分析非壓縮格式的待檢測的文本內容,對文本內容進行模式匹配,根據(jù)特征串的輸出序列進行后續(xù)判斷。
gzip是web傳輸文本的常見壓縮編碼形式,在進行數(shù)據(jù)文本與特征串匹配之前,需要進行解壓縮。但gzip壓縮采用LZ77算法需要為每個文件分配32KB的內存數(shù)據(jù)窗口。在高并發(fā)會話的網(wǎng)關設備中,沒有足夠的資源為每個會話分配32KB的空間,或者會造成遺漏檢測,或者主動降低并發(fā)會話數(shù)量進而導致網(wǎng)絡中斷或大幅延遲,影響通信質量。也就是說,相關技術中在網(wǎng)關位置對壓縮文本進行檢測時,會放棄檢測或者延遲檢測,但是放棄檢測會造成安全風險,延遲檢測會影響網(wǎng)絡傳輸質量。
技術實現(xiàn)要素:
本申請旨在至少在一定程度上解決相關技術中的技術問題之一。
為此,本申請的一個目的在于提出一種壓縮文本檢測方法,該方法可以避免對壓縮文本放棄檢測或延遲檢測,從而兼顧網(wǎng)絡傳輸安全和網(wǎng)絡傳輸質量。
本申請的另一個目的在于提出一種壓縮文本檢測裝置。
為達到上述目的,本申請第一方面實施例提出的壓縮文本檢測方法,包括:獲取待檢測的壓縮文本;對所述壓縮文本進行模式匹配,獲取輸出序列;根據(jù)所述輸出序列和已建立的特征命中概率計算模型,計算所述壓縮文本的特征命中概率,并根據(jù)所述特征命中概率得到所述壓縮文本對應的向量;根據(jù)所述向量和已建立的分類模型,確定所述壓縮文本屬于的類別。
本申請第一方面實施例提出的壓縮文本檢測方法,通過對壓縮文本進行模式匹配,不需要先進行解壓縮,可以避免對壓縮文本放棄檢測或延遲檢測,從而兼顧網(wǎng)絡傳輸安全和網(wǎng)絡傳輸質量。
為達到上述目的,本申請第二方面實施例提出的壓縮文本檢測裝置,包括:獲取模塊,用于獲取待檢測的壓縮文本;模式匹配模塊,用于對所述壓縮文本進行模式匹配,獲取輸出序列;向量確定模塊,用于根據(jù)所述輸出序列和已建立的特征命中概率計算模型,計算所述壓縮文本的特征命中概率,并根據(jù)所述特征命中概率得到所述壓縮文本對應的向量;類別確定模塊,用于根據(jù)所述向量和已建立的分類模型,確定所述壓縮文本屬于的類別。
本申請第二方面實施例提出的壓縮文本檢測裝置,通過對壓縮文本進行模式匹配,不需要先進行解壓縮,可以避免對壓縮文本放棄檢測或延遲檢測,從而兼顧網(wǎng)絡傳輸安全和網(wǎng)絡傳輸質量。
本申請實施例還提出了一種設備,包括:處理器;用于存儲處理器可執(zhí)行指令的存儲器;其中,所述處理器被配置為:獲取待檢測的壓縮文本;對所述壓縮文本進行模式匹配,獲取輸出序列;根據(jù)所述輸出序列和已建立的特征命中概率計算模型,計算所述壓縮文本的特征命中概率,并根據(jù)所述特征命中概率得到所述壓縮文本對應的向量;根據(jù)所述向量和已建立的分類模型,確定所述壓縮文本屬于的類別。
本申請實施例還提出了一種非臨時性計算機可讀存儲介質,當所述存儲介質中的指令由終端的處理器被執(zhí)行時,使得終端能夠執(zhí)行一種方法,所述方法包括:獲取待檢測的壓縮文本;對所述壓縮文本進行模式匹配,獲取輸出序列;根據(jù)所述輸出序列和已建立的特征命中概率計算模型,計算所述壓縮文本的特征命中概率,并根據(jù)所述特征命中概率得到所述壓縮文本對應的向量;根據(jù)所述向量和已建立的分類模型,確定所述壓縮文本屬于的類別。
本申請實施例還提出了一種計算機程序產(chǎn)品,當所述計算機程序產(chǎn)品中的指令處理器執(zhí)行時,執(zhí)行一種方法,所述方法包括:獲取待檢測的壓縮文本;對所述壓縮文本進行模式匹配,獲取輸出序列;根據(jù)所述輸出序列和已建立的特征命中概率計算模型,計算所述壓縮文本的特征命中概率,并根據(jù)所述特征命中概率得到所述壓縮文本對應的向量;根據(jù)所述向量和已建立的分類模型,確定所述壓縮文本屬于的類別。
本申請附加的方面和優(yōu)點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本申請的實踐了解到。
附圖說明
本申請上述的和/或附加的方面和優(yōu)點從下面結合附圖對實施例的描述中將變得明顯和容易理解,其中:
圖1是本申請一個實施例提出的壓縮文本檢測方法的流程示意圖;
圖2是本申請另一個實施例提出的壓縮文本檢測方法的流程示意圖;
圖3是本申請一個實施例提出的壓縮文本檢測裝置的結構示意圖;
圖4是本申請另一個實施例提出的壓縮文本檢測裝置的結構示意圖。
具體實施方式
下面詳細描述本申請的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的模塊或具有相同或類似功能的模塊。下面通過參考附圖描述的實施例是示例性的,僅用于解釋本申請,而不能理解為對本申請的限制。相反,本申請的實施例包括落入所附加權利要求書的精神和內涵范圍內的所有變化、修改和等同物。
圖1是本申請一個實施例提出的壓縮文本檢測方法的流程示意圖。
如圖1所示,本實施例的方法包括:
S11:獲取待檢測的壓縮文本。
一些示例中,本實施例的方法可以具體由網(wǎng)關設備執(zhí)行,從而可以避免在網(wǎng)關位置出現(xiàn)網(wǎng)絡延遲并保證網(wǎng)絡安全。當然,可以理解的是,本實施例的方法不限于由網(wǎng)關設備執(zhí)行,也可以由其他設備執(zhí)行。
以網(wǎng)關設備執(zhí)行為例,網(wǎng)關設備可以接收其他設備發(fā)送的壓縮文本,作為待檢測的壓縮文本。當然,可以理解的是,也可以由執(zhí)行設備讀取自身設備產(chǎn)生的壓縮文本,作為待檢測的壓縮文本。
一些示例中,壓縮文本的格式可以具體是gzip格式。
S12:對所述壓縮文本進行模式匹配,獲取輸出序列。
與通常先解壓縮再匹配不同的是,本實施例中,直接對壓縮文本進行匹配,不需要預先進行解壓縮。
一些示例中,當壓縮文本時gzip格式時,先對gzip格式的壓縮文本進行huffman轉碼處理,得到LZ77格式的壓縮文本,再對LZ77格式的壓縮文本進行模式匹配。其中,LZ77格式的壓縮文本中包含了壓縮前文本的部分明文和替換索引,替換索引包括相同內容與當前位置之間的距離和相同內容的長度。
相應的,模式匹配時,將LZ77格式的壓縮文本與預先選取的特征串進行匹配,得到輸出序列。
具體的,在匹配過程中,如果壓縮文本中的字符完整或部分命中特征串時,則進行信息記錄。其中,如果壓縮文本完整命中一個特征串(即壓縮文本中包含與特征串相同的完整字符),則記錄該特征串的序號;如果壓縮文本部分命中一個特征串(即壓縮文本中包含與特征串的部分內容相同的字符,如包含特征串中的前綴或后綴),則記錄所命中部分的字符序列。例如,假設特征串是“fromCharCode”,如果壓縮文本中包含完整的“fromCharCode”,則記錄“fromCharCode”的序號;如果壓縮文本中包含“fromCharCode”的部分內容,如包含“fromC”、“fromCha”或者“CharCode”等,則記錄包含的部分內容的字符序列,以包含“fromC”為例,則記錄“fromC”。
在記錄信息后,可以根據(jù)記錄的信息得到輸出序列并輸出,輸出序列是在記錄的信息中增加預設的分隔符。如用s表示起始符號,用e表示結束符號,則將輸出序列中將起始符號s記錄在完整命中的特征串的序號在前面,將結束符號e記錄在命中特征串后綴時記錄的字符序列的后面。
用符號表示為:
設置F=F1F2…Fm∈E,表示與特征串的部分內容(如前綴或后綴)相同的字符序列。
設置P=p1p2…pn∈R,表示在部分命中特征串之前已記錄的完整命中的特征串的序號。
如果壓縮文本完整命中一些特征串并且部分命中一個特征串,且命中的是前綴部分時,則輸出序列表示為:O=sp1p2…pnF1F2…Fm;如果壓縮文本僅完整命中一些特征串則輸出序列表示為:O=sp1p2…pn;如果壓縮文本部分命中一個特征串,且命中的是后綴部分時,則輸出序列表示為:O=Fm+1Fm+2…Fle。
S13:根據(jù)所述輸出序列和已建立的特征命中概率計算模型,計算所述壓縮文本的特征命中概率,并根據(jù)所述特征命中概率得到所述壓縮文本對應的向量。
其中,可以在對壓縮文本進行檢測之前預先建立特征命中概率計算模型,具體的建立特征命中概率計算模型的流程可以參見后續(xù)描述。
一些示例中,特征命中概率計算模型的類型可以具體是隱Markov模型。隱Markov模型是一種近似求解方法,將復雜的概率影響因素抽象成隱狀態(tài),簡單概率建模同時也具有顯著的效果,在語音識別方面有很成熟的應用。
以特征命中概率計算模型的類型是隱Markov模型為例,隱Markov模型包括隱含狀態(tài)序列(如用Q表示)和觀察狀態(tài)序列(如用O表示),模型參數(shù)包括隱含狀態(tài)之間的狀態(tài)轉移矩陣(如用A表示)、隱含狀態(tài)到觀察狀態(tài)之間的輸出概率矩陣(如用B表示)和初始分布(如用π表示)。在得到輸出序列和特征命中概率計算模型后,將輸出序列作為特征命中概率計算模型的相應時刻的觀察狀態(tài)序列,并結合特征命中概率計算模型的參數(shù)({A,B,π})可以計算出壓縮文本完整命中每種特征串的概率,該概率可以稱為特征命中概率,并由所有的特征命中概率組成向量,作為壓縮文本對應的向量。假設共有n種特征串,壓縮文本完整命中第i(i=1,2,…n)種特征串的概率表示為xi=P(Ci),則壓縮文本對應的向量表示為:X=[x1,x2,…,xn]∈Rn。具體計算壓縮文本對應的向量的方式可以參見后續(xù)描述。
S14:根據(jù)所述向量和已建立的分類模型,確定所述壓縮文本屬于的類別。
其中,可以在對壓縮文本進行檢測之前預先建立分類模型,具體的建立分類模型的流程可以參見后續(xù)描述。
一些示例中,分類模型的類型可以具體是SVM模型,即采用SVM算法訓練得到的分類模型,如直接使用LIBSVM(LIB是一種已有的開源軟件)訓練生成分類模型。
分類模型的輸入是文本對應的向量,輸出是文本屬于的類別,因此,在得到壓縮文本對應的向量后,將壓縮文本對應的向量作為分類模型的輸入,則可以將分類模型的輸出作為壓縮文本屬于的類別。
具體的,類別可以分為兩類,分別是文本屬于攻擊或文本不屬于攻擊,如分別用+1和-1表示。
在確定出壓縮文本屬于的類別后,可以根據(jù)預定規(guī)則繼續(xù)執(zhí)行,例如,將結果提交給其他決策系統(tǒng)進一步判斷?;蛘咴诋斍跋到y(tǒng)中,擴展執(zhí)行步驟,繼續(xù)采用其他方法或模型進行校驗,降低誤報的可能性等。
本實施例中,通過對壓縮文本進行模式匹配,不需要先進行解壓縮,可以避免對壓縮文本放棄檢測或延遲檢測,從而兼顧網(wǎng)絡傳輸安全和網(wǎng)絡傳輸質量。
圖2是本申請另一個實施例提出的壓縮文本檢測方法的流程示意圖。
本實施例以gzip格式的壓縮文本為例。
如圖2所示,本實施例的方法包括:
S201:選取特征串。
一些示例中,可以先選取初始特征串,然后,通過一些常見的特征工程中特征篩選手段,從初始特征串中提取重要的特征串作為最終采用的特征串,以降低模式匹配以及分類模型的復雜度。
選取初始特征串的方式可以為如下項中的至少一項:
方式一:分析一些公開的誤用檢測的規(guī)則,例如snort、ModSecurity開源檢測系統(tǒng)的規(guī)則,從中提取出關鍵詞,將提取出的關鍵詞作為初始特征串。
方式二:從常見的JavaScript攻擊腳本,以及一些跨站攻擊腳本中選取初始特征串,例如,選取漏洞公開網(wǎng)站的樣例腳本,從中分析提取出初始特征串。
方式三:針對web數(shù)據(jù)文件中常出現(xiàn)的系統(tǒng)軟件相關信息提取關鍵字作為初始特征串,上述關鍵字如:OS相關信息關鍵字、瀏覽器相關信息關鍵字,adobe reader相關信息關鍵字。
S202:獲取壓縮文本樣本。
例如,可以直接收集gzip格式的壓縮文本;或者,如果收集的文本是非壓縮文本,將其壓縮為gzip格式的壓縮文本;或者,如果收集的文本是非gzip格式的壓縮文本,則先對其解壓縮,再將其壓縮成gzip格式的壓縮文本。
S203:根據(jù)所述壓縮文本樣本和所述特征串進行模式匹配,獲取樣本輸出序列。
比如,對應每個壓縮文本樣本,先對該gzip格式的壓縮文本樣本進行huffman轉碼處理,得到LZ77格式的壓縮文本樣本,再將LZ77格式的壓縮文本樣本與選取的特征串進行匹配,得到樣本輸出序列。
其中,對壓縮文本樣本進行模式匹配和對待檢測的壓縮文本進行模式匹配原理相同,流程類似,因此具體內容可以參見上述對待檢測的壓縮文本的匹配流程,在此不再詳述。
S204:根據(jù)所述樣本輸出序列得到觀察狀態(tài)序列,并對所述觀察狀態(tài)序列進行訓練,確定特征命中概率計算模型的參數(shù),并得到具有所述參數(shù)的特征命中概率計算模型。
在得到樣本輸出序列后,將所有樣本輸出序列組成序列作為觀察狀態(tài)序列。
隱馬爾科夫模型的隱含狀態(tài)數(shù)可以設置為當前部分命中的特征串所命中部分的字符長度加上一個常量,假設當前所命中部分的字符長度為m,常量是5,則隱含狀態(tài)可以表示為:Q={q1q2…qm+5}。
具體在模型訓練時,可以采用已有算法,如使用Baum Welch算法訓練模型,通過已知的觀察狀態(tài)序列O,并使得觀察狀態(tài)序列最大化,求得隱馬爾科夫模型的參數(shù){A,B,π}。
S205:根據(jù)已建立的特征命中概率計算模型和壓縮文本樣本,獲取壓縮文本樣本對應的向量。
其中,計算壓縮文本樣本對應的向量和待檢測的壓縮文本對應的向量的原理相同,流程類似,下面以壓縮文本樣本為例,對計算相應向量的流程進行說明。
對應每個壓縮文本樣本,采用之前流程與特征串進行匹配,得到輸出序列。再根據(jù)輸出序列和隱馬爾科夫模型,計算該壓縮文本樣本完整命中各個特征串的概率,并由完整命中各個特征串的概率組成該壓縮文本樣本對應的向量。假設共有n種特征串,該壓縮文本樣本完整命中第i(i=1,2,…n)種特征串的概率表示為xi=P(Ci),則該壓縮文本樣本對應的向量表示為:X=[x1,x2,…,xn]∈Rn。
對應一個特征串,在計算壓縮文本樣本完整命中該特征串的概率時,可以在壓縮文本樣本部分命中該特征串時,計算該特征串在本次被完整命中的概率,再根據(jù)該特征串在各次被完整命中的概率計算得到壓縮文本樣本完整命中該特征串的概率。用公式(1)表示為:
其中,P(Ci)表示壓縮文本樣本完整命中第i種特征串的概率,表示壓縮文本樣本在第n次部分命中第i種特征串時,第i種特征串被完整命中的概率,N是壓縮文本樣本部分命中第i種特征串的總次數(shù)。
在壓縮文本樣本部分命中一個特征串時,該特征串在本次被完整命中的概率,可以根據(jù)本次的輸出序列和隱馬爾科夫模型的參數(shù)計算得到。
進一步的,根據(jù)本次命中部分屬于前綴或后綴,相應的計算公式也是不同的。分別描述如下:
情況一:本次命中特征串的前綴。
當命中特征串的前綴,且失配位置是替換索引時,則按當前狀態(tài),輸出序列C包括已完整命中的其他特征串的序號和當前命中的前綴的字符序列,用公式表示為:C=sp1p2…pnF1F2…Fm,其中,s是起始符號,p1p2…pn是已完整命中的其他特征串的序號序列,F(xiàn)1F2…Fm是當前命中的前綴的字符序列。
假設在當前狀態(tài)下,F(xiàn)m+1Fm+2…F1是該被命中前綴的特征串的沒有被匹配到的字符串序列,則當前狀態(tài)下在完整命中該特征串時的輸出序列為:D=CFm+1Fm+2…F1e,其中,e是結束符號。
為了描述方便,用O1O2…Ok表示C=sp1p2…pnF1F2…Fm,用O1O2…OT表示D=CFm+1Fm+2…F1e,O1O2…Ok是當前觀察到的狀態(tài),O1O2…OT是特征串完整命中的狀態(tài)。假設用P(Cn)表示壓縮文本樣本在第n次部分命中一個特征串時,該特征串被完整命中的概率,則當前命中后綴時,計算公式為:
其中,
α1(i)=πibi(O1),1≤i≤N
上述公式中,M表示隱馬爾科夫模型,包括三個參數(shù),分別為狀態(tài)轉移矩陣A、輸出概率矩陣B和初始分布π,A={aij},B={bj(k)},π={πi}。aij是隱馬爾科夫模型中狀態(tài)轉移矩陣A中的元素,表示t時刻的狀態(tài)qi轉換為t+1時刻的狀態(tài)qj的概率;bj(k)是隱馬爾科夫模型中輸出概率矩陣B中的元素,表示t時刻的狀態(tài)qj對應輸出序列Ok的概率;πi是隱馬爾科夫模型中初始分布π中的元素,表示t時刻的初始分布概率。
情況二:本次命中特征串的后綴。
當命中特征串的后綴,且失配位置是替換索引時,如果已完整命中其他特征串,則按當前狀態(tài),輸出序列包括兩個,分別是sp1p2…pn和Fm+1Fm+2…F1e,其中,s和e分別是起始符號和結束符號,p1p2…pn是已完整命中的其他特征串的序號序列,F(xiàn)m+1Fm+2…F1是當前命中的后綴的字符序列。
假設在當前狀態(tài)下,F(xiàn)m+1Fm+2…F1是該被命中前綴的特征串的沒有被匹配到的字符串序列,則當前狀態(tài)下在完整命中該特征串時的輸出序列為:D=CFm+1Fm+2…F1e,其中,e是結束符號。
為了描述方便,用O1O2…On和OmOm+1…OT表示當前觀察到的狀態(tài),O1O2…OT是特征串完整命中的狀態(tài)。假設用P(Cn)表示壓縮文本樣本在第n次部分命中一個特征串時,該特征串被完整命中的概率,則當前命中后綴時,計算公式為:
其中,
α1(i)=πibi(O1),1≤i≤N
βT(i)=bi(OT),1≤i≤N
公式中各參數(shù)的含義可以參見上述相關描述。
在建立特征命中概率計算模型后,即該模型的參數(shù){A,B,π}是已知的,另外,通過對壓縮文本樣本進行匹配,可以得到各個時刻的輸出序列,因此根據(jù)公式(2)(命中前綴時)或公式(3)(命中后綴時)可以由模型參數(shù)和輸出序列計算出壓縮文本樣本在第n次部分命中一個特征串時,該特征串被完整命中的概率,再根據(jù)公式(1)可以計算出壓縮文本樣本完整命中該特征串的概率,再將壓縮文本樣本完整命中各個特征串的概率組成該壓縮文本樣本對應的向量。
S206:根據(jù)壓縮文本樣本已知的類別,為壓縮文本樣本標注類別標簽。
其中,壓縮文本樣本的類別是已知的,比如是攻擊樣本或非攻擊樣本,則可以為壓縮文本樣本標注相應的類別標簽,如定義標簽y∈{-1,+1},其中,-1和+1表示類別分別是攻擊或非攻擊。
S207:將壓縮文本樣本對應的向量和類型標簽作為訓練數(shù)據(jù),對訓練數(shù)據(jù)進行訓練,確定分類模型的參數(shù),并得到具有所述參數(shù)的分類模型。
對應每個壓縮文本樣本,可以得到一組訓練數(shù)據(jù)(X,y),多個壓縮文本樣本則可以得到訓練數(shù)據(jù)集合{(X1,y1),(X2,y2),…},之后可以根據(jù)該集合進行訓練,確定分類模型的參數(shù)。
本實例中采用SVM算法訓練分類器,可以直接使用LIBSVM等知名的開源軟件。
從性能角度考慮,本實例中采用線性核函數(shù)。通過間隔最大化或等價地求解相應的凸二次規(guī)劃問題訓練得到超平面:
W·x+b=O
和分類決策函數(shù):
y=sign(W·x+b)
其中,x是多個壓縮文本樣本對應的向量組成的矩陣,y表示壓縮文本樣本對應的類別標簽,W和b是要確定的分類模型的參數(shù)。
通過常用的SVM模型的訓練算法,可以確定出W和b。
上述步驟可以在訓練階段完成,在建立上述的特征命中概率計算模型和分類模型之后,可以依據(jù)這些模型對后續(xù)的壓縮文本進行檢測。即還可以包括下述的檢測階段。
S208:獲取待檢測的gzip格式的壓縮文本。
S209:對所述gzip格式的壓縮文本進行huffman轉碼處理,得到LZ77格式的壓縮文本。
S210:根據(jù)所述LZ77格式的壓縮文本和所述特征串進行模式匹配,獲取輸出序列。
S211:根據(jù)所述輸出序列和已建立的特征命中概率計算模型,計算所述壓縮文本的特征命中概率,并根據(jù)所述特征命中概率得到所述壓縮文本對應的向量。
S212:根據(jù)所述向量和預先建立的分類模型,確定所述壓縮文本屬于的類別。
S208-S212的具體內容可以參見上述相關描述,在此不再詳述。
本實施例中,通過對壓縮文本進行模式匹配,不需要先進行解壓縮,可以避免對壓縮文本放棄檢測或延遲檢測,從而兼顧網(wǎng)絡傳輸安全和網(wǎng)絡傳輸質量。特別是在應用在網(wǎng)關位置時,對于web服務中gzip壓縮文本檢測,去除了每個文件/會話必須分配32KB空間的限制??梢詰迷诰W(wǎng)關設備中,使其在高并發(fā)會話情況下也可以進行gzip壓縮文本檢測,提升web攻擊的防御能力。結合機器學習算法,可以準確的估計特征串命中概率,在未進行解壓縮的情況下,也可以得到與解壓縮之后再分類相近的檢測結果。
圖3是本申請一個實施例提出的壓縮文本檢測裝置的結構示意圖。
如圖3所示,本實施例的裝置30包括:獲取模塊31、匹配模塊32、向量確定模塊33和類別確定模塊34。
獲取模塊31,用于獲取待檢測的壓縮文本;
匹配模塊32,用于對所述壓縮文本進行模式匹配,獲取輸出序列;
向量確定模塊33,用于根據(jù)所述輸出序列和已建立的特征命中概率計算模型,計算所述壓縮文本的特征命中概率,并根據(jù)所述特征命中概率得到所述壓縮文本對應的向量;
類別確定模塊34,用于根據(jù)所述向量和已建立的分類模型,確定所述壓縮文本屬于的類別。
一些實施例中,所述壓縮文本包括:gzip格式的壓縮文本,參見圖4,所述裝置30還包括:
轉碼模塊35,用于對所述gzip格式的壓縮文本進行huffman轉碼處理,得到LZ77格式的壓縮文本,以便對所述LZ77格式的壓縮文本進行模式匹配。
一些實施例中,參見圖4,該裝置30還包括:用于建立特征命中概率計算模型的計算模型建立模塊36,當所述特征命中概率計算模型的類型是隱馬爾科夫模型時,所述計算模型建立模塊36具體用于:
獲取壓縮文本樣本;
對所述壓縮文本樣本進行模式匹配,獲取樣本輸出序列;
根據(jù)所述樣本輸出序列得到觀察狀態(tài)序列,并對所述觀察狀態(tài)序列進行訓練,確定特征命中概率計算模型的參數(shù),并得到具有所述參數(shù)的特征命中概率計算模型。
一些實施例中,所述向量確定模塊33具體用于:
將所述輸出序列作為所述特征命中概率計算模型的當前時刻的觀察狀態(tài)序列,并根據(jù)各個時刻的觀察狀態(tài)序列和所述特征命中概率計算模型的參數(shù),計算所述壓縮文本完整命中每種特征串的概率;
將壓縮文本完整命中每種特征串的概率組成向量,作為所述壓縮文本對應的向量。
一些實施例中,參見圖4,該裝置30還包括:用于建立分類模型的分類模型建立模塊37,當所述分類模型的類型是SVM模型時,所述分類模型建立模塊37具體用于:
根據(jù)已建立的特征命中概率計算模型和壓縮文本樣本,獲取壓縮文本樣本對應的向量;
根據(jù)壓縮文本樣本已知的類別,為壓縮文本樣本標注類別標簽;
將壓縮文本樣本對應的向量和類型標簽作為訓練數(shù)據(jù),對訓練數(shù)據(jù)進行訓練,確定分類模型的參數(shù),并得到具有所述參數(shù)的分類模型。
可以理解的是,本實施例的裝置與上述方法實施例對應,具體內容可以參見方法實施例的相關描述,在此不再詳細說明。
本實施例中,通過對壓縮文本進行模式匹配,不需要先進行解壓縮,可以避免對壓縮文本放棄檢測或延遲檢測,從而兼顧網(wǎng)絡傳輸安全和網(wǎng)絡傳輸質量。
可以理解的是,上述各實施例中相同或相似部分可以相互參考,在一些實施例中未詳細說明的內容可以參見其他實施例中相同或相似的內容。
需要說明的是,在本申請的描述中,術語“第一”、“第二”等僅用于描述目的,而不能理解為指示或暗示相對重要性。此外,在本申請的描述中,除非另有說明,“多個”的含義是指至少兩個。
流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用于實現(xiàn)特定邏輯功能或過程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本申請的優(yōu)選實施方式的范圍包括另外的實現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時的方式或按相反的順序,來執(zhí)行功能,這應被本申請的實施例所屬技術領域的技術人員所理解。
應當理解,本申請的各部分可以用硬件、軟件、固件或它們的組合來實現(xiàn)。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來實現(xiàn)。例如,如果用硬件來實現(xiàn),和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現(xiàn):具有用于對數(shù)據(jù)信號實現(xiàn)邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現(xiàn)場可編程門陣列(FPGA)等。
本技術領域的普通技術人員可以理解實現(xiàn)上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬件完成,所述的程序可以存儲于一種計算機可讀存儲介質中,該程序在執(zhí)行時,包括方法實施例的步驟之一或其組合。
此外,在本申請各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現(xiàn),也可以采用軟件功能模塊的形式實現(xiàn)。所述集成的模塊如果以軟件功能模塊的形式實現(xiàn)并作為獨立的產(chǎn)品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。
上述提到的存儲介質可以是只讀存儲器,磁盤或光盤等。
在本說明書的描述中,參考術語“一個實施例”、“一些實施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結合該實施例或示例描述的具體特征、結構、材料或者特點包含于本申請的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不一定指的是相同的實施例或示例。而且,描述的具體特征、結構、材料或者特點可以在任何的一個或多個實施例或示例中以合適的方式結合。
盡管上面已經(jīng)示出和描述了本申請的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本申請的限制,本領域的普通技術人員在本申請的范圍內可以對上述實施例進行變化、修改、替換和變型。