袁斐洋 普尺 倪勝巧 扎西多吉
摘要:谷歌瀏覽器目前是全球使用最多的瀏覽器,其擴展程序可以極大地優(yōu)化用戶的體驗。擴展程序在信息攔截上同樣有著極大的作用,但其在地域特點比較明顯的地區(qū),語言、格式以及表述等的影響下,攔截效果折扣。針對這類問題,重點對攔截藏文敏感信息的瀏覽器擴展程序進行研究開發(fā),根據(jù)藏文敏感詞權重值對網(wǎng)頁進行等級劃分,對含有敏感信息的網(wǎng)頁進行攔截,避免不法言論和信息的傳播,以優(yōu)化藏區(qū)網(wǎng)絡環(huán)境。
關鍵詞:Chrome;Chrome Extension;藏文;藏文敏感詞攔截
中圖分類號:TP311? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2022)03-0051-02
開放科學(資源服務)標識碼(OSID):
1 引言
谷歌瀏覽器是當今用戶量最多的瀏覽器,其強大的功能和簡潔的界面深受用戶喜愛。其擴展程序,在此基礎上可以去自定義需要的功能,優(yōu)化界面,更加方便了瀏覽器的使用,極大地加強了用戶的體驗。因此,擴展程序的使用極其廣泛。目前瀏覽器擴展已經(jīng)可以攔截一些惡意網(wǎng)頁,但是在地域特色相對比較明顯的地區(qū),攔截擴展程序仍存在較多不足,比如語言、格式以及語句表述等方面有著較大的差異。為了優(yōu)化網(wǎng)絡環(huán)境,提升用戶的體驗,開發(fā)了瀏覽器藏文敏感信息攔截擴展程序。
谷歌擴展程序在各大瀏覽器上的兼容性良好,因此,本擴展也是基于谷歌擴展程序開發(fā)的,去攔截網(wǎng)頁中出現(xiàn)的藏文敏感信息。通過前端DOM注入將網(wǎng)頁信息獲取,然后交給后臺,后臺通過PHP連接數(shù)據(jù)庫,去獲取數(shù)據(jù)庫數(shù)據(jù),在后臺進行比對,將比對后的結(jié)果反饋給用戶,提示用戶該網(wǎng)頁的網(wǎng)頁敏感等級。
2 相關技術
2.1 XAMPP
XAMPP[1]是由Apache、MySQL、PHP、PERL組成的一個功能強大的建站集成軟件包。它可以在多種操作系統(tǒng)下安裝使用,操作使用簡易方便。使用時,只需對相關配置文件進行修改,即可使用。由于本擴展程序需要連接數(shù)據(jù)庫,所用的工具與之較為契合,同時,可以減少代碼量以及復雜度。采用該軟件包,一定程度上,加快了擴展開發(fā)進程。
2.2 瀏覽器擴展程序開發(fā)
瀏覽器擴展程序在如今的瀏覽器上已經(jīng)有了極大的應用,它可以讓人們非常方便地在瀏覽器中添加各種功能,擴展程序可以讓人們?nèi)プ远x瀏覽器的各種功能,同時也可以精簡瀏覽器,去掉不必要的信息。比如,去掉網(wǎng)頁廣告,攔截彈窗,在線選擇翻譯,等等。其主要分為瀏覽器操作、網(wǎng)頁操作、內(nèi)容腳本三種不同的類型,本擴展程序著重偏向網(wǎng)頁操作與內(nèi)容腳本兩方面的使用。而谷歌瀏覽器擴展程序是基于谷歌瀏覽器,同時對大多瀏覽器的兼容性都是極好的,因此可以保證本擴展在測試時,不會有較大的適配問題。在2016年5月的數(shù)據(jù)顯示中,其市場份額已經(jīng)超越微軟公司的IE瀏覽器,成為全球目前使用最多的瀏覽器,這極大地提高了谷歌擴展程序的可用性。本文將重點從利用谷歌擴展的方式實現(xiàn)攔截藏文敏感信息,避免不法言論和信息的傳播,優(yōu)化藏區(qū)網(wǎng)絡環(huán)境[2]。
2.3 JavaScript與JQuery
本擴展程序的主要使用JavaScript編程語言,以及采用由其組成的函數(shù)庫JQuery。JavaScript是支持當前所有主流瀏覽器的輕量級的編程語言,在此基礎上,使用JQuery將極大地減少了程序的代碼量。
2.4 PHP
PHP是在服務器執(zhí)行的腳本語言,因其較為靈活,以及可以與JavaScript進行通信的特性,本擴展程序,主要使用PHP作為谷歌擴展程序的JavaScript與服務器里的Mysql進行通信的中間層。
3 結(jié)構(gòu)設計
瀏覽器藏文敏感信息攔截分為四個模塊[3],分別是前端數(shù)據(jù)獲取、數(shù)據(jù)庫數(shù)據(jù)獲取、后臺判斷、反饋用戶,如圖1所示。
1)前端數(shù)據(jù)獲取。此模塊對網(wǎng)頁的文本信息進行抓取,通過正則表達式去過濾文本信息,以獲得可用的藏文文本信息;之后通過谷歌擴展程序內(nèi)的JavaScript之間的通信將其交給生存時間長的后臺去判斷處理。此模塊主要通過谷歌擴展程序里的JavaScript通過 DOM注入的方式來獲取網(wǎng)頁文本信息。
2)數(shù)據(jù)庫數(shù)據(jù)獲取。此模塊主要實現(xiàn)數(shù)據(jù)庫數(shù)據(jù)的提取。通過PHP作為谷歌擴展程序的JavaScript與MySQL數(shù)據(jù)庫的中間層,調(diào)取數(shù)據(jù)庫數(shù)據(jù)交給后臺去判斷處理。主要通過XAMPP提供的集成環(huán)境去實現(xiàn)谷歌擴展程序的JavaScript與數(shù)據(jù)庫通信。
3)后臺判斷。該模塊實現(xiàn)將前端傳入的文本信息與數(shù)據(jù)庫傳入的敏感詞進行匹配處理。將前端傳入的文本信息根據(jù)藏語文本特性進行處理,使其便于與敏感詞匹配;之后將數(shù)據(jù)庫內(nèi)的敏感詞調(diào)取,兩者通過查找字符串算法將該網(wǎng)頁出現(xiàn)的敏感信息進行處理,將處理后的網(wǎng)頁返回前端可視化界面,同時將該網(wǎng)頁的URL的信息存入數(shù)據(jù)庫便于下次進行輔助判斷。
4)反饋用戶。本模塊主要實現(xiàn)對后臺返回的信息進行處理,使其對用戶進行有效反饋。一方面,將敏感詞的出現(xiàn)進行強調(diào),同時把敏感詞替換成“*”,另一方面,根據(jù)敏感詞的敏感程度與敏感詞出現(xiàn)的頻率對網(wǎng)頁敏感等級進行分級,將分級后的結(jié)果通過不同顏色給用戶進行直觀的呈現(xiàn)。
4 技術實現(xiàn)
通過谷歌擴展程序?qū)W(wǎng)頁內(nèi)容操作的腳本語言content,在深度上進行遞歸,從網(wǎng)頁的最外層開始直到最內(nèi)層,對網(wǎng)頁內(nèi)的藏文信息用相應的編碼格式使用正則表達式過濾獲取,盡量減少數(shù)據(jù)的冗余,提高擴展程序的運行速度。將處理后的數(shù)據(jù)交給后臺background,因其生存時間最長的特性,將background作為數(shù)據(jù)庫數(shù)據(jù)與前端文本信息進行匹配操作的平臺,若存在匹配的字段,將處理后的信息反饋給可視化界面popup與前端,將該網(wǎng)站的URL存入數(shù)據(jù)庫的相應表中,并記錄網(wǎng)頁中詞頻排名前三的詞匯,與該網(wǎng)頁的URL綁定存入表中,將劃分網(wǎng)站敏感等級與popup同步。
4.1 藏文信息獲取
通過使用正則表達式對網(wǎng)頁內(nèi)的文本信息進行藏文文本檢索,順序則是從網(wǎng)頁的最外層html節(jié)點開始檢索,通過遞歸里的深度優(yōu)先檢索的方式,獲取該網(wǎng)頁所有的藏文信息。正則表達式里的藏文匹配編碼格式為\u0F40-\u0FFF。
4.2 匹配算法
在后臺,網(wǎng)頁中獲取的藏文字符串與數(shù)據(jù)庫里的藏文敏感詞的匹配采用的是BM(Boyer-Moore)算法。在用于查找子字符串的算法當中,BM(Boyer-Moore)算法[4]被認為是最高效的字符串搜索算法,一種經(jīng)典的跳躍式匹配算法。通常情況下,搜索的關鍵字越長,算法的速度就越快。因?qū)τ诿總€網(wǎng)頁的藏文信息的數(shù)量不固定的特性,采用該算法,較大地提升了匹配速率。
4.3 藏文網(wǎng)站敏感等級劃分
藏文網(wǎng)站敏感等級[5]的劃分通過危險權值來決定。危險權重值的組成有優(yōu)先級敏感詞與危險級敏感詞。出于安全考慮,測試環(huán)境在脫機狀態(tài)下,使用準備好的測試網(wǎng)頁去測試。圖2為以此為根據(jù)的測試結(jié)果。
1)優(yōu)先級敏感詞的形成是程序經(jīng)過深度學習得到的,通過對詞庫里的敏感詞根據(jù)出現(xiàn)頻率來劃分優(yōu)先級,優(yōu)先級高的使用頻繁,反之亦然。根據(jù)優(yōu)先級對詞語進行權重劃分,一定程度上作為網(wǎng)站分級的依據(jù);
2)危險級敏感詞則是根據(jù)敏感詞的特性來決定的,一共分為三級,一級為由謾罵詞語構(gòu)成的文本,二級為由涉黃賭毒詞語組成的文本,三級為由涉政反動以及地方敏感詞匯構(gòu)成的文本。各個等級都有對應的危險權值的范圍,不同詞語有各自不同的權值,但都在權值范圍內(nèi)。根據(jù)敏感詞等級以及出現(xiàn)的頻率,極大程度上決定了網(wǎng)頁的分級情況;
3)前端popup頁面顯示文本以及顏色取決于不同的敏感等級。根據(jù)background后臺傳入的該網(wǎng)頁的敏感等級,在前端的可視化界面通過不同的顏色顯示。紅色為最高,橙色為較高,黃色為高,藍色為一般,綠色為無危險。
4.4 后期測試優(yōu)化
在后期測試中,發(fā)現(xiàn)在網(wǎng)頁文本信息過大的情況下,在匹配過程中,電腦的內(nèi)存使用較大,對于用戶而言,等待時間較長,容易產(chǎn)生不好的體驗效果。在經(jīng)過大量測試后,通過頁面的懶加載與URL的標記處理可以極大地減少擴展程序的處理時間,給用戶以較好的體驗效果。
1)頁面的懶加載。在瀏覽網(wǎng)頁未拖動滾輪時,只顯示當前頁面長度下處理后的狀態(tài),剩下的頁面長度依舊顯示的是未處理的狀態(tài),但后臺仍在進行處理,反饋給前端,只有在拖動滾輪時,才會去顯示處理后的結(jié)果。一定程度上減少了資源占用,在視覺上優(yōu)化了用戶體驗。
2)URL標記處理。在第一次瀏覽網(wǎng)頁時,對網(wǎng)頁進行常規(guī)
處理,若存在敏感信息,則將網(wǎng)頁的URL以及出現(xiàn)的詞頻排名前三的敏感詞存入數(shù)據(jù)庫相應表中,并對該網(wǎng)頁進行危險權值計算。在下次瀏覽時,在確定網(wǎng)頁內(nèi)容沒有更新的情況下,則對用戶進行提醒,若網(wǎng)頁內(nèi)容已經(jīng)更新,則對網(wǎng)頁進行正常的處理。
5 結(jié)束語
本文主要論述了基于谷歌瀏覽器的藏文敏感信息攔截擴展程序,本擴展程序充分考慮到了藏文匹配時對敏感信息的處理及對網(wǎng)頁敏感等級劃分的需求,可以較為有效地對藏文網(wǎng)頁內(nèi)容進行安全檢測與攔截,并對網(wǎng)站分級記錄與顯示。由于藏文信息中語言有其獨有的特點,比如上下文語境,語法,規(guī)則等,及藏文信息處理的發(fā)展與中文信息的處理具有一定的差距,該擴展程序的整體性能并未能達到中文信息處理擴展程序的水平,且有較大差距;另外,由于本項目的詞庫內(nèi)測試數(shù)據(jù)數(shù)量的有限性,權值模型可能存在一定的缺陷。今后我們會對詞庫進行擴充,不斷修改權值模型,提高判斷準確率與精確度,開發(fā)出更加完善的藏文敏感信息攔截擴展程序。
參考文獻:
[1] A research paper on web application development using CMS (xampp/PHP)[J].Journal of Web Engineering & Technology,2019,6(1).
[2] 沈洪洲.一種基于Chrome擴展程序的網(wǎng)絡數(shù)據(jù)采集方法[J].計算機應用與軟件,2016,33(7):10-13,55.
[3] 江濤,于洪志,徐濤.互聯(lián)網(wǎng)藏文內(nèi)容安全檢測過濾系統(tǒng)研究[J].信息網(wǎng)絡安全,2009(10):47-48.
[4] Boyer R S,Moore J S.A fast string searching algorithm[J].Communications of the ACM,1977,20(10):762-772.
[5] 王清,李炳澤,王嘉梅.面向彝文網(wǎng)頁的敏感內(nèi)容分級系統(tǒng)研究[J].云南民族大學學報(自然科學版),2019,28(2):177-185.
【通聯(lián)編輯:聞翔軍】