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