葉勇健,譚 超
(廈門華天涉外職業(yè)技術(shù)學(xué)院 信息技術(shù)學(xué)院,福建 廈門 361102)
在移動互聯(lián)網(wǎng)環(huán)境下,移動終端軟件進(jìn)入迅速發(fā)展階段,對于互聯(lián)網(wǎng)軟件測試的要求也會更高。測試軟件的運(yùn)行環(huán)境發(fā)生了改變,由靜態(tài)封閉逐漸變?yōu)殚_放動態(tài),軟件系統(tǒng)也隨之發(fā)生改變,由集中式轉(zhuǎn)變?yōu)榉植际?。在開放式移動互聯(lián)網(wǎng)環(huán)境下,應(yīng)用軟件需要進(jìn)行聚合處理,在約束條件下完成協(xié)同任務(wù),降低應(yīng)用軟件的監(jiān)管以及預(yù)測難度。在運(yùn)行過程中,及時測試并調(diào)控應(yīng)用軟件的相關(guān)信息,依據(jù)調(diào)控信息結(jié)果對軟件運(yùn)行態(tài)勢加以調(diào)控[1-2]。計算機(jī)可信性質(zhì)范圍較廣,主要包括硬件、操作系統(tǒng)、應(yīng)用軟件等,任何一個部位出現(xiàn)問題,均會導(dǎo)致整個計算機(jī)系統(tǒng)崩潰,影響系統(tǒng)可信度。由于軟件語言開發(fā)規(guī)模逐漸增大[3],相應(yīng)的開發(fā)難度、所需成本、維護(hù)難度及應(yīng)用軟件安全測試的性能控制難度加大。因此,研究移動互聯(lián)網(wǎng)技術(shù)[4]應(yīng)用在軟件安全協(xié)同測試中是十分必要的。
文獻(xiàn)[5]提出基于云安全的應(yīng)用軟件安全協(xié)同測試,結(jié)合運(yùn)行環(huán)境的封閉特點,通過計量中心云端安全服務(wù)器建立合法白名單,使得運(yùn)行進(jìn)程模塊得以正常操作,將計算得到的哈希值輸入至云端服務(wù)器,對比白名單,檢測非法進(jìn)程。該方法能夠強(qiáng)化網(wǎng)絡(luò)安全防護(hù)水平,但軟件安全協(xié)同測試結(jié)果的正確率較低。文獻(xiàn)[6]提出基于面向云平臺的應(yīng)用軟件安全協(xié)同測試,該平臺結(jié)合虛擬化技術(shù),對客戶機(jī)的特定行為進(jìn)行獲取,對客戶機(jī)釋放的代碼進(jìn)行抓取,通過殺毒軟件確定未知軟件的惡意性。該方法所得的軟件安全協(xié)同測試結(jié)果的正確率低,并且軟件存在不安全的概率高。文獻(xiàn)[7]提出基于動態(tài)符號執(zhí)行的應(yīng)用軟件安全協(xié)同測試,通過插樁工具和約束求解器STP 構(gòu)建ADRAS 系統(tǒng)模型,利用動態(tài)符號的可執(zhí)行性和可滿足性理論技術(shù),監(jiān)控應(yīng)用軟件的加密函數(shù),同時捕捉應(yīng)用軟件加密行為以及相關(guān)的加密信息,從而對應(yīng)用軟件完成安全協(xié)同測試。利用該方法的應(yīng)用軟件存在不安全的概率高,軟件測試耗時較長,效率低。文獻(xiàn)[8]提出基于改進(jìn)隨機(jī)森林算法的應(yīng)用軟件安全協(xié)同測試,IRFCM 選取Android Manifest.xml 文件中的Permission信息和Intent信息作為應(yīng)用軟件的特征屬性并進(jìn)行優(yōu)化選擇,采用改進(jìn)隨機(jī)森林算法對最終生成應(yīng)用軟件的特征向量進(jìn)行測試。該方法存在軟件安全協(xié)同測試效率低的問題。
本文的研究重點是將移動互聯(lián)技術(shù)應(yīng)用在軟件安全協(xié)同測試中。
在人機(jī)交互的環(huán)境下,為了實現(xiàn)對群體協(xié)同工作的友好支持,利用移動終端設(shè)備、移動網(wǎng)絡(luò)、移動應(yīng)用、信息數(shù)據(jù)等4 大核心技術(shù)作為支撐,打造移動協(xié)同軟件。移動協(xié)同管理的軟件系統(tǒng)如圖1 所示。
圖1 移動協(xié)同管理的軟件系統(tǒng)
將用戶放在首要位置,圍繞適應(yīng)用戶的使用習(xí)慣來優(yōu)化交互界面,可以有效地支撐了移動互聯(lián)系統(tǒng)的單點登錄、業(yè)務(wù)融合、綜合分析及統(tǒng)一管理,促進(jìn)各功能模塊間的有機(jī)銜接。
假設(shè)應(yīng)用軟件的數(shù)據(jù)集合為X={x1,x2,…,xn},數(shù)據(jù)聚類為c 類,vi(i=1,2,…,c)表示聚類中心。數(shù)據(jù)聚類的目的在于保障數(shù)據(jù)到所屬聚類中的距離之和最小。JFCM表示FCM的目標(biāo)函數(shù),可定義為
式中,uij表示數(shù)據(jù)xj與聚類中心vi之間的模糊隸屬度;dij表示數(shù)據(jù)xj與其聚類中心vi之間的距離,也叫歐氏距離,在特殊情況下可以稱之為馬氏距離;m表示模糊系數(shù),取值范圍為[1.5,2.5],可以用來評判FCM 的有效性;n表示測試數(shù)據(jù);c表示聚類中心的數(shù)量。
目標(biāo)函數(shù)的最優(yōu)解的求解方式如下:
聚類中心更新過程如下:
輸入:X={x1,x2,…,xn}表示聚類中心集合;c表示聚類數(shù)據(jù)的數(shù)量;μ(x)表示隸屬度函數(shù);ε表示迭代停止的閾值;k表示迭代變量。
輸出:vi(i=1,2,…,c)表示聚類中心,uij表示隸屬度。
1)隨機(jī)選定初始聚類中心v1,v2,…,vc;
2)通過式(3)計算隸屬度,劃分樣本數(shù)據(jù);
3)根據(jù)式(4)更新聚類中心,得到新中心v1,v2,…,vc;
通過自適應(yīng)向量以及指數(shù)來實現(xiàn)調(diào)控聚類。由于離群點被有針對性地處理,因此聚類效果得到有效提高,對于離群點的判斷也更為直接[9],離群點所蘊(yùn)涵的信息被充分挖掘。用JFCM′表示FCM 的目標(biāo)優(yōu)化函數(shù),定義為
式中,wj為xj的自適應(yīng)度,表示xj對于目標(biāo)函數(shù)的影響程度,在迭代過程中,自適應(yīng)度得到更新;為約束條件,可對樣本之間的關(guān)聯(lián)程度進(jìn)行反應(yīng);uij表示該自適應(yīng)模型的隸屬度;m是模糊系數(shù);c是聚類的類別數(shù);p(p≠0)為自適應(yīng)度指數(shù),可對自適應(yīng)度進(jìn)行調(diào)節(jié),以此調(diào)節(jié)數(shù)據(jù)聚類。算法的聚類質(zhì)量以及收斂速度受到自適應(yīng)度取值的影響,根據(jù)實踐經(jīng)驗,p的取值范圍為1 ≤p≤10。
根據(jù)對目標(biāo)函數(shù)的計算,獲得隸屬度,完成對惡意軟件的聚類,表達(dá)式如下:
設(shè)定算法中的輸入層樣本數(shù)據(jù)為x=1,2,3,…,N,網(wǎng)絡(luò)結(jié)構(gòu)中的維數(shù)為N,神經(jīng)網(wǎng)絡(luò)中節(jié)點數(shù)據(jù)輸出值為O,則算法中的函數(shù)代表式為
網(wǎng)絡(luò)節(jié)點中計算誤差距離的函數(shù)定義為
式中,E代表誤差權(quán)值;t代表誤差代入系數(shù)。
在網(wǎng)絡(luò)空間結(jié)構(gòu)中,會因為應(yīng)用機(jī)器算法而識別出隱藏數(shù)據(jù)節(jié)點,節(jié)點中的數(shù)據(jù)安全檢測輸出函數(shù)定義為
式中,O代表數(shù)據(jù)輸出檢測值;w、y分別代表節(jié)點數(shù)據(jù)中的輸出參考系數(shù)。
應(yīng)用軟件的聚類分析為下一步應(yīng)用軟件安全協(xié)同測試的研究奠定了基礎(chǔ)。
基于DHSC 的應(yīng)用軟件安全協(xié)同測試方法是移動互聯(lián)技術(shù)的一種。利用該方法對應(yīng)用軟件安全協(xié)同測試展開研究,依據(jù)SVDD 方法,在軟件訓(xùn)練集X′中,可知的重要程度主要受到通過訓(xùn)練得到的拉格朗日乘子αi′的影響。
軟件訓(xùn)練集中若沒有異常數(shù)據(jù)存在,超球體的組成結(jié)構(gòu)可以通過拉格朗日乘子所決定;若存在異常數(shù)據(jù),超球體的組成結(jié)構(gòu)可以通過測試機(jī)大小所決定,對軟件的安全性加以檢測。
圖2 封閉超球體
最小封閉超球體優(yōu)化約束條件:
對上式的約束條件附加拉格朗日乘子αi,且αi≥0,對應(yīng)的拉格朗日函數(shù)為
假設(shè)安全協(xié)同檢測點為x,通過式(15)判斷檢測點異常情況。
式 中,H(x)表 示 Heaviside 函 數(shù) ;若此 時 檢測點為異常點。
應(yīng)用軟件安全協(xié)同測試方法步驟如下:
1)離線部分
①利用軟件訓(xùn)練集合X ',采用SVDD 方法,建立靜態(tài)超球體,計算拉格朗日乘子集
1)貢獻(xiàn)因子(CFk')
2)重構(gòu)誤差Φ(k')min
3)平均p'近鄰距離AD(k',p')
式中,AD(k',p')能夠衡量軟件數(shù)據(jù)點的平均距離,該距離越大,應(yīng)用軟件越不安全。
對測試軟件以及訓(xùn)練軟件進(jìn)行對比分析,建立動態(tài)超球體,根據(jù)動態(tài)超球體結(jié)構(gòu)的變化,對應(yīng)用軟件進(jìn)行安全系統(tǒng)測試。
為了驗證所提基于協(xié)同知識圖譜的網(wǎng)絡(luò)資源個性化推薦算法的綜合有效性,需要進(jìn)行仿真實驗。實驗環(huán)境:處理器為Inter(R)Core(TM)2Duo,主頻為2.66 GHz,內(nèi)存為2 GMB,服務(wù)器操作系統(tǒng)為CentOS5.5,數(shù)據(jù)庫為MySQL,客戶端為PC(Windows)。實驗數(shù)據(jù)集合參數(shù)如表1所示。
表1 實驗數(shù)據(jù)集合參數(shù)
為了驗證基于DHSC 的應(yīng)用軟件安全協(xié)同測試方法的有效性,對應(yīng)用軟件安全協(xié)同測試結(jié)果的正確率進(jìn)行實驗研究,實驗結(jié)果如圖3所示。
圖3 不同方法的應(yīng)用軟件安全協(xié)同測試結(jié)果的正確率對比
分析圖3 可知,該方法在對應(yīng)用軟件安全協(xié)同的45 次測試中,測試結(jié)果的正確率為80%~100%;在文獻(xiàn)[5]方法的45 次測試中,應(yīng)用軟件安全協(xié)同測試的正確率為0%~40%;在文獻(xiàn)[6]方法的45 次測試中,測試結(jié)果的正確率為0%~50%,并且曲線的變化波動較大。該方法通過引入隸屬度函數(shù),得到了有較高正確率的軟件安全協(xié)同測試結(jié)果。通過對比可知,該方法的測試結(jié)果具有較高的正確率。
在對應(yīng)用軟件安全協(xié)同測試結(jié)果正確率測試的基礎(chǔ)上,利用重構(gòu)誤差測試應(yīng)用軟件存在不安全的概率,重構(gòu)誤差越大,軟件不安全的概率越大,測試結(jié)果如圖4所示。
圖4 不同方法的不安全概率對比結(jié)果
分析圖4 可知,不受貢獻(xiàn)因子的影響,利用該方法,60次迭代對應(yīng)的重構(gòu)誤差小于0.2;利用文獻(xiàn)[6]的方法,60 次迭代對應(yīng)的重構(gòu)誤差大于0.3,小于0.5;利用文獻(xiàn)[7]的方法,60 次迭代對應(yīng)的重構(gòu)誤差為0.2~0.5。重構(gòu)誤差衡量了應(yīng)用軟件數(shù)據(jù)點的重構(gòu)精度,重構(gòu)誤差的值越大,應(yīng)用軟件存在不安全的概率越大。通過對比可知,本文所提出的方法的重構(gòu)誤差小于文獻(xiàn)[6]方法的重構(gòu)誤差,說明該方法應(yīng)用軟件存在不安全的概率也小于文獻(xiàn)[6]方法的不安全概率。
在以上兩個實驗的基礎(chǔ)上,利用軟件測試耗時進(jìn)一步研究應(yīng)用軟件安全協(xié)同測試的效率,實驗結(jié)果如圖5所示。
圖5 不同方法的軟件安全協(xié)同測試效率
分析圖5 可知,該方法的軟件測試耗時整體在0.5 μs 以下,第25 次迭代的軟件測試耗時為0.5 μs;文獻(xiàn)[7]方法的軟件測試耗時整體為0.6 μs~0.8 μs,第25 次迭代的軟件測試耗時為0.7 μs;文獻(xiàn)[8]方法的軟件測試耗時整體為0.7 μs~0.9 μs,并且第25次迭代的軟件測試耗時為0.9 μs。通過對比可知,該方法的軟件測試耗時最短,說明該方法的應(yīng)用軟件安全協(xié)同測試的效率較高。
通過對移動互聯(lián)網(wǎng)時代的應(yīng)用軟件測試技術(shù)進(jìn)行闡述,分別研究了應(yīng)用軟件安全協(xié)同測試結(jié)果的正確率、軟件存在的不安全概率以及軟件測試耗時,并且得到了較好的實驗結(jié)果,驗證了本文方法的有效性。較以往的研究成果相比,目前的軟件測試已經(jīng)有了較大的進(jìn)步。但是,近幾年對測試技術(shù)與測試方法的改觀并不明顯,說明軟件測試并沒有引起相關(guān)領(lǐng)域的重視,依舊面臨著很多問題,不論是業(yè)界的領(lǐng)軍人物還是獨立的研發(fā)機(jī)構(gòu),所研究開發(fā)出來的軟件都面臨著激烈的市場競爭,相對于質(zhì)量的保證,他們更側(cè)重于速度的加快。自智能手機(jī)與平板電腦流行以來,軟件的功能和性能都在飛速更新?lián)Q代,涉及的手機(jī)支付等隱私已經(jīng)在智能設(shè)備上廣泛應(yīng)用,人們的主要生活方式正在從PC端向著移動端變化。