摘 要:郵件作為當今社交、商業(yè)往來最重要的手段之一,被廣大公司及個人廣泛使用,垃圾郵件問題也就隨之而來。很多機構(gòu)都在考慮應(yīng)對垃圾郵件的方法,其中最為有代表性的為貝葉斯過濾器。它通過對文本中出現(xiàn)的單詞進行分析以及再學(xué)習的方式來判定郵件的可靠性。但是因為同樣的單詞對每個人的意義不同,很難做到精確的判斷。因此,本研究著眼于郵件頭文件,通過貝葉斯過濾器對三種頭文件的分析來進行垃圾郵件判定,從而提高垃圾郵件的檢出率。
關(guān)鍵詞:垃圾郵件;貝葉斯過濾器;頭文件;數(shù)據(jù)庫;
中圖分類號:TP393.098
近幾年隨著網(wǎng)絡(luò)的普及,電子郵件也隨之成為非常重要的聯(lián)絡(luò)手段。郵件的安全性也成為了關(guān)注焦點,帶有病毒和附件的垃圾郵件的數(shù)量更是成倍的增長。
為了防止垃圾郵件帶來的侵害,很多機構(gòu)都在研討防止垃圾郵件的對策。目前最常被用于防止垃圾郵件的方式是貝葉斯過濾器[1],它是一種基于貝葉斯理論的再學(xué)習型過濾器,對個別敏感詞語進行學(xué)習,將其出現(xiàn)的概率在數(shù)據(jù)庫中更新,從而通過單詞的概率來推出整個郵件的垃圾概率[2]。但是這種方法的問題在于同一個單詞對不同人的意義是不一樣的,所以很難做到準確的判斷,同時它也不適合有動畫及附件的垃圾郵件。鑒于此,本研究將郵件的頭文件作為著手點,通過對3種不同的頭文件的分析結(jié)合貝葉斯過濾器的方法來判定一封郵件為垃圾郵件的概率,目的是能夠改善垃圾郵件的判定精度。
1 垃圾郵件對策
1.1 通信部分的判別
(1)黑名單型:將垃圾郵件送信方的IP地址或者指定的IP地址加入到黑名單中,這樣再從已經(jīng)登陸到黑名單中的地址發(fā)來的郵件都會被直接鎖定[3];(2)白名單型:只接受那些已經(jīng)承認不是垃圾郵件的地址或者送信人。將其登錄到特定的名單中,不在名單范圍內(nèi)的其他郵件全部被系統(tǒng)鎖定;(3)灰名單型:將收到的郵件無論郵件是不是垃圾郵件一律全部回絕,當同樣的郵件再一次發(fā)送來的時候再在將其接受[4];(4)混合式:混合式判定垃圾郵件的工作流程,首先檢查這封垃圾郵件的來源地址是否被系統(tǒng)登錄,如果登陸到黑名單或者白名單中,該郵件將會被直接處理,兩邊都未登陸的郵件根據(jù)其他過濾器的判定來判別這封郵件是否是垃圾郵件[5]。
1.2 根據(jù)郵件內(nèi)容判別
(1)關(guān)鍵字型:將垃圾郵件中經(jīng)常出現(xiàn)的詞語總結(jié)出,將帶有這些詞語的郵件全部拒絕。這種方法的誤判斷率較高,判定率低;(2)空間內(nèi)容型:將已經(jīng)判定為垃圾郵件中的特征詞語抽出學(xué)習,用生成指標的概率來判斷。最有代表性的是貝葉斯過濾器[6]。
1.3 貝葉斯過濾器
貝葉斯過濾器是應(yīng)用貝葉斯分類器將對象數(shù)據(jù)分析、學(xué)習從而將他們分類的一種過濾器[7]。它將已經(jīng)判定為垃圾郵件的詞語再學(xué)習,把該詞語出現(xiàn)的概率更新到數(shù)據(jù)庫中,因此學(xué)習它的判定精度就會越高。
2 提案方法
2.1 頭文件
電子郵件主要由2部分構(gòu)成。一部分是記載郵件內(nèi)容的文本,另一部分是記錄郵件信息的頭文件。一般的郵件只會表示部分頭文件信息。例如:Data,F(xiàn)rom,Subject等。
2.2 提案頭文件分析
本研究主要針對三個具有代表性的頭文件進行分析,這三個頭文件為X-Mailer、Received、Content-Transfer-Encoding:(1)X-Mailer頭文件:X-Mailer頭文件表示郵件送信時使用的軟件,但不是必須表示出來;(2)Content-Transfer-Encoding頭文件:這是表示郵件編碼長度的頭文件,在SMTP協(xié)議中指定7bit為郵件的編碼長度;(3)Received頭文件:這是表示郵件服務(wù)器信息的頭文件,一封郵件每通過一個服務(wù)器時就自動附加1,也就是說當一個郵件通過3個服務(wù)器時Received數(shù)就是3.
2.3 頭文件調(diào)查結(jié)果
(1)Received數(shù)的調(diào)查結(jié)果。此次調(diào)查收集了3070封垃圾郵件和518封非垃圾郵件,對特征頭文件的調(diào)查會以這些為參照。經(jīng)調(diào)查當Received數(shù)是1時垃圾郵件占64%,非垃圾郵件占15%,當Received數(shù)是2時垃圾郵件占32%,非垃圾郵件占76%;(2)X-Mailer頭文件調(diào)查結(jié)果。利用Microsoft Outlook Express軟件發(fā)送的垃圾郵件占其總數(shù)的51.8%,而非垃圾郵件只占其總數(shù)的9.2%。沒有利用郵件發(fā)送軟件的垃圾郵件占其總數(shù)的26.8%,非垃圾郵件占其總數(shù)27.7%。而利用melcast.com發(fā)送的郵件中非垃圾郵件占其總數(shù)的61%;(3)Content-Transfer-Encoding頭文件調(diào)查結(jié)果。編碼長為7bit的垃圾郵件占其總數(shù)的84%,非垃圾郵件占其總數(shù)的93.6%,編碼長度為quoted-printable和8bit的垃圾郵件占其總數(shù)的15%而非垃圾郵件只占其總數(shù)的1.9%。
2.4 數(shù)據(jù)庫的做成
將調(diào)查結(jié)果分別做成相對應(yīng)的數(shù)據(jù)庫,通過制作好的程序?qū)⑻卣黝^文件抽出然后根據(jù)貝葉斯定理通過概率計算專用程序?qū)⒂嬎愕慕Y(jié)果做成該頭文件的數(shù)據(jù)庫用來參照。該數(shù)據(jù)庫記載的是判斷一封郵件為垃圾郵件的概率。
3 實驗與結(jié)果
本次實驗將新搜集到的1705封垃圾郵件和97封非垃圾郵件作為判定對象參照現(xiàn)有的數(shù)據(jù)庫進行判定。判定后將這些郵件再學(xué)習來驗證這種貝葉斯垃圾郵件過濾器的可靠性。
3.1 頭文件數(shù)據(jù)實驗結(jié)果
(1)Received數(shù)單獨判定時:檢出率=0.694、誤檢出率=0.536、看錯率=0.306、綜合精度=0.681;(2)X-Mailer頭文件單獨判定時:檢出率=1、誤檢出率=1、看錯率=0、綜合精度=0.946;(3)Content-Transfer-Encoding頭文件單獨判定時:檢出率=0.887、誤檢出率=0.979、看錯率=0.113、綜合精度=0.841。三個頭文件同時利用判定時:檢出率=0.945、誤檢出率=0.69、看錯率=0.055、綜合精度=0.911。
3.2 實驗數(shù)據(jù)再學(xué)習
由于實驗數(shù)據(jù)有限,垃圾郵件的數(shù)量是非垃圾郵件數(shù)量的17倍,所以本次實驗將數(shù)據(jù)比例調(diào)整到兩邊的數(shù)量接近1:1利用貝葉斯過濾器的特性將試驗數(shù)據(jù)追加到原始數(shù)據(jù)中再學(xué)習形成新的數(shù)據(jù)庫。再學(xué)習后的數(shù)據(jù)庫有垃圾郵件4775封,非垃圾郵件615封。檢出率的比較結(jié)果為實驗數(shù)據(jù)=0.945,再學(xué)習數(shù)據(jù)=0.969。從綜合精度上來看實驗數(shù)據(jù)的精度=0.911,再學(xué)習后的精度=0.925。
4 結(jié)束語
從實驗結(jié)果上可以看出同時利用3個頭文件對垃圾郵件的判定精度要高于單獨使用頭文件對垃圾郵件判定時的精度,另外看出將試驗數(shù)據(jù)再學(xué)習后形成的新數(shù)據(jù)的判定精度也比原始數(shù)據(jù)的判定精度高,這也符合貝葉斯過濾器越學(xué)習判定精度越高的特點。
從這些結(jié)果上看利用電子郵件的頭文件信息作為判定對象通過貝葉斯過濾器來對垃圾郵件的判定的對策具有一定的有效性。判定精度也會隨著再學(xué)習的數(shù)量的增多而得到進一步的提高。
參考文獻:
[1]渡邊綾太.垃圾郵件教科書[M].日本:數(shù)據(jù)小屋株式會社,2006.
[2]森健人.關(guān)于利用貝葉斯過濾器來檢測頭文件信息的研究[D].岐阜大學(xué),2008.
[3]松下隆史,村山公保,荒井透.精通TCP/IP入門(第3版)[M].日本:歐姆社株式會社,2002.
[4]陳勇,李卓桓.反垃圾郵件完全手冊[M].北京:清華大學(xué)出版社,1998.
[5]曹麒麟,張千里.垃圾郵件與發(fā)垃圾郵件技術(shù)[M].北京:人民郵電出版社,2003.
[6]李學(xué)志.如何防范垃圾郵件[J].金融電子化,2003(01).
[7]張俊麗,張帆.改進KNN算法在垃圾郵件過濾中的應(yīng)用[J].現(xiàn)代圖書情報技術(shù),2007(04).
作者簡介:甘戈(1984-),遼寧西豐人,在讀研究生,主要研究方向:計算機技術(shù)。
作者單位:中國科學(xué)院大學(xué) 計算機技術(shù),沈陽 110168;沈陽新松機器人自動化股份有限公司,沈陽 100168;中國水利水電第六工程局有限公司,沈陽 110179;中國醫(yī)科大學(xué) 基礎(chǔ)醫(yī)學(xué)院,沈陽 110013