趙明 嚴宏舉 韓進喜
摘要:針對移動代理的安全性問題,在已有移動代理研究的基礎上,研究了安全保護策略。對加密移動代理攜帶的重要數據信息,提出了信譽度的概念,根據需要將信譽度進行等級和操作權限確定,基于主機和移動代理構建雙向信譽度和安全校驗認證機制,根據信譽度等級確定是否為惡意主機或代理,以便進行接納和拒絕操作,實例證明了安全保護策略對移動代理安全的作用。
關鍵詞:移動代理;信譽度;信譽度等級;操作權限
中圖分類號:TP393文獻標志碼:A文章編號:1008-1739(2019)24-53-4

0引言
隨著計算機網絡技術的飛速發展,網絡所承載的業務也越來越多樣化,同時多樣化業務的需求也越來越多。移動代理技術因集異構、軟件、通信及分布計算于一身,能夠滿足多樣化網絡和業務的需求而被廣泛研究和應用。移動代理[1]是軟件代碼,且能夠攜帶任務自主移動,尤其能夠在異構跨域網絡上遷移,移動代理有目的的移動特性避免了持續連接所占用的帶寬資源和連接中斷或異常導致的網絡錯誤,提高了滿足多樣化業務需求的及時性和靈活性。同時,移動代理的跨平臺性和移動性也帶來一定安全隱患,包括目標主機和代理自身的安全問題,因此亟待解決移動代理的安全問題。
移動代理的安全問題[2]主要涉及如下4個方面:①遷移時網絡的安全問題;②移動過程中可能會受到其他惡意代理的攻擊問題;③與目標主機交互過程中可能給主機帶來的惡意攻擊和非法篡改問題;④移動執行任務過程中可能遭受惡意主機的攻擊問題。
針對上述移動代理可能存在的安全問題,本文在已有研究成果的基礎上,進行了局部改進和完善,運用建立信譽度表技術,研究基于信譽度的安全保護策略,重點聚焦如何在目標主機和移動代理之間建立雙向信譽驗證和保護,進而保證移動代理在執行任務時自身以及所處環境的安全可靠。
1移動代理的作用
協作性、快速反應性和易重構性[3]是移動代理的三大特性。移動代理能夠攜帶任務在異構網絡中自主地從源主機向目標主機移動,何時移動、何地移動都可以事先設定好。移動代理在執行任務過程中,如果遇到網絡中斷可以根據要求掛起或中斷,等待網絡恢復正常后重新開始或繼續執行任務。
移動代理的作用如下:
①降低網絡負載[4]。傳統的網絡管理中,管理系統要完成一項管理任務,需要在管理者和被管節點之間進行多次通信,進行多個問答操作才能完成。應用智能移動代理后,只要設定移動代理任務,將所要執行的操作部署于任務代碼中,同時發送到被管節點,移動代理執行完規定的操作任務后,攜帶執行結果返回管理者。這樣大大減少了頻繁操作占用的網絡傳輸帶寬,降低了網絡負載。
②異步和自主執行功能[5]。移動設備通常在網絡正常連接時進行工作,有些特定任務要求移動設備與網絡之間必須持續保持正常連接,但是網絡故障或中斷時有發生。要解決上述網絡難題,可以將所執行的任務進行編碼注入移動代理中,任務可以設定起始節點、經過節點、目前節點、所執行路徑、何時開始、從什么地方開始及何時結束;移動代理可以自主異步執行任務,而不受網絡中斷影響,再攜帶返回結果,上報移動設備。
③克服網絡時延[6]。很多應用對于網絡實時性要求非常高,移動代理能夠攜帶中央處理器的任務,基于設定路徑自主遷移到系統局部執行,進而減少網絡時延,提供符合要求的服務。
④動態適應環境。智能移動代理能夠實時感知運行環境并及時上報和處理感知到的變化。多個移動代理可以按需合理分布在網絡的不同地方,以便實時感知并進行快速處理。
⑤自然的異構性。開放分布網絡環境中無論軟件還是硬件設備大多是異構的。智能代理在執行任務時僅依賴于自身攜帶代碼以及代碼的運行環境,與執行任務的目標主機有關系,與所處網絡環境和傳輸層協議無關,因此能夠適應各種網絡環境,無論同構還是異構。
⑥協作性。在網絡管理中,涉及本域管理、跨域管理和全網管理問題,當管理范圍涉及到跨多個管理域時,管理中心需要在多個管理節點之間進行管理任務的規劃、分配和協調操作。智能移動代理具有協作性,可以代替管理中心在多個管理節點之間完成任務協作。
⑦健壯性和容錯性[7]。移動代理能夠在網絡中斷或故障時單獨執行任務,等到網絡恢復正常時繼續執行任務,且能實時感知網絡環境并進行及時處理,因此具有良好的容錯性,可以應用于要求較高的應用系統的建立中。
2移動代理安全問題
2.1安全威脅
在網絡中傳遞信息存在很多未知因素,因而當移動代理攜帶軟件程序在網絡中執行任務時,存在很多安全威脅。
①被動攻擊[8]。在被動攻擊模式下,以竊聽模式最為常見,攻擊者的目標是企圖通過獲取代理程序中存儲并傳遞的敏感信息,從中提取對自己有用的信息。另一種模式是由于數據采用加密傳輸時,攻擊者無法得到想要的具體數據,所以往往攻擊者對截取的數據進行流量分析,通過分析通信頻度、交換數據的長度、通信雙方和接收方的IP地址等,進而獲取所需的敏感信息。
②主動攻擊[9]。主動攻擊包括2種方式:篡改數據和身份偽裝。篡改數據是指網絡層的數據包被截獲并修改甚至刪除,而用偽造的數據取代;身份偽裝是指攻擊者偽裝成系統中的合法參與者或使用者,冒充其截取并處理收到的數據。
③惡意主機[10]。移動代理所攜帶的軟件代碼需要在所經過或到達的目標主機上運行,因此目標主機掌握所有的代碼和數據并可以隨意更改。如果目標主機是惡意的,或者該目標主機已經被攻擊,那么這種惡意主機可以破壞或終止代理程序,進而影響或破壞所執行的任務,代理所攜帶的任務信息也可以被刪除或篡改,造成安全隱患。
2.2移動代理安全機制
①對于移動代理傳輸中的安全問題,主要使用加密技術進行安全性保障。設計了類似于SSL的在傳輸層對網絡連接進行加密的安全協議,即將所有通信內容封裝進行安全套接字處理,用一組對稱密鑰和加密算法加密通信內容。加密的IP數據包仍有可能被截取,攻擊者無法識別和破解加密信息。加密方法可以采用128位密鑰的RC4算法,也可以采用1 024位密鑰的RSA算法進行會話數據交換。如果加密消息在傳輸過程中被截獲篡改或刪除,消息驗證碼都能識別并驗證。
②對于目標主機的安全問題,可以采用基于檢測的安全手段。檢測運行的目標主機是否安全,檢測移動代理的執行路徑以及執行結果,判斷其是否受到攻擊。
③對于移動代理本身的安全問題,提供了一套相關的算法來檢測移動代理是否安全可信賴,即為目標主機設定可信度表或其他安全規則,通過安全規則檢測驗證移動代理是否有違規行為。所有的移動代理必須遵守規定的安全規則,才能在目標主機上執行任務。
總之,通過對移動代理本身、移動代理傳輸過程以及移動代理所執行任務所需的目標主機進行系列安全限制和保護,使得移動代理、目標主機以及網絡環境均處于相對安全的環境中,適用于對數據傳輸保密要求比較嚴格的環境,如情報信息傳輸等。
2.3安全策略
移動代理自身的安全策略[11]如下:
①信譽度的5個等級:{惡意,不可信,較可信,可信,絕對可信};
②信譽度的數學表示:{-20,-1,0,1,20}與信譽度5個等級一一對應;
③MA_ID:移動代理標識,具有唯一性;
④HS:主機對自身信息的簽名,包括主機名、IP地址、硬件MAC地址;
⑤CN:校驗數;
⑥PK:公有密鑰;
⑦SK:私有密鑰;
⑧I:移動代理攜帶的重要數據和信息;
⑨移動代理操作權限RS:取值為1時表示只讀,取值為2時表示可設置。
設計的策略規則步驟如下:
①將移動代理攜帶的信息進行初始化賦初值,包括設定移動代理的操作權限、移動代理遷移路徑和執行任務所涉及的目標主機等信息的設定和預置。同時對移動代理的任務數據和資料進行加密,加密SK(I),對隨機數加密PK(num),校驗數CN=SK(I)+PK(num),移動代理攜帶PK(CN)進行校驗。
②目標主機提供一套與它自身有關的安全規則,信譽度表存儲在目標主機中,根據信譽度評價結果執行對應的接納或拒絕操作。
③移動代理的安全特性被創建者提取,驗證移動代理的安全規則,并生成相應的安全證書。
④生成的安全證書與移動代理被源主機一起送達目標主機。
⑤當移動代理到達目標主機后,目標主機首先進行校驗數CN的提取,根據公鑰PK進行解密,獲得校驗數CN,如果目標主機解密的校驗數與移動代理攜帶的校驗數一致,則目標主機根據移動代理的唯一標識號和源主機簽名,查詢所存儲的信譽度表,如信譽度表中存在該移動代理的信譽度,則接受移動代理的請求操作,反之則拒絕為移動代理提供運行環境。
⑥目標主機進一步查詢移動代理的操作權限,目標主機設置監視器監督移動代理的操作,如移動代理有超出權限的請求和操作,則拒絕相關操作,對應的當前信譽度值降一個等級并更新本地信譽度表;若沒有越限操作,則進行正常的交互請求。
⑦移動代理結束與目標主機的交互,按照規劃的遷移路徑繼續遷移到下一個目標主機。
通過基于信譽度的移動安全保護策略能夠構建代理和主機之間的雙向信譽度,明確了信譽度的評價標準和評價方法,較好地防護了惡意主機和惡意代理的侵害,保證移動代理能夠高效、安全地工作。
軟件的開發環境為開發語言JAVA;運行環境Windows XP操作系統或中標麒麟操作系統;數據庫為達夢數據庫。
3實例驗證
以某大型計算機網絡管理中心的管理為例,驗證移動代理的機制和作用,所有主機都處在一個已知的、絕對安全的網絡環境中,如VPN和公司內部互聯網絡。此種網絡環境具有網絡規模相對較小和網絡環境絕對安全的特點。
起初設置所有主機和移動代理信譽度C=10,絕對可信。在移動代理移動中可以直接進行交互,減少信譽度認證和修改的時間,大大提高了整個網絡的效率。
圖1中4個主機H1,H2,H3,H4和一個移動代理MA1,信譽度都設置為絕對可信,移動代理和主機交互的安全得到保證,響應的執行效率也大大提高,移動代理MA1由源主機H1發起,向目標主機H2移動。

移動代理攜帶的信息包括執行任務所需的數據和初始化信息、設定的遷移路徑信息和操作權限信息。
工作流程如下:
①源主機H1給移動代理MA攜帶的信息賦初值,包括設定移動代理的操作權限、移動代理遷移路徑和所經過的主機、對移動代理的任務數據和資料進行加密,加密SK(I),對隨機數加密PK(1 024),校驗數CN=SK(I)+PK(1 024),移動代理攜帶PK(CN)進行校驗。
②目標主機H1提供一套與其自身有關的安全規則,目標主機中存儲有信譽度表,如表1所示,不同的信譽度評價結果執行的操作不同。
③移動代理的安全特性被其創建者所提取,并用安全規則進行驗證,生成相應的安全證書。
④安全證書與移動代理MA被源主機H1送達目標主機
H2。
⑤移動代理到達目標主機H2后,首先解密校驗數CN,根據公鑰PK進行解密,獲得校驗數CN,如果目標主機解密的校驗數與移動代理攜帶的校驗數一致,則目標主機根據移動代理的唯一標識號和源主機簽名,查詢所存儲的信譽度表,發現MA的信譽度為1,任務移動代理可信,接受移動代理的請求操作。
⑥目標主機H2進一步查詢移動代理的操作權限,發現移動代理的操作權限為只讀,開始與移動代理進行信息交互。
⑦目標主機H2通過監視發現移動代理MA頻繁出現越限操作,且企圖修改或刪除目標主機H2的數據,目標主機H2立刻修改信譽度表,將移動代理MA的信譽度值置為不可信。

為了構建移動代理和主機之間的信譽度,通常設定目標主機的安全策略、雙向信譽度表和移動代理自身的安全保護策略。通過上述手段,保證安全運行環境和目標主機,防止了惡意主機和惡意代理的侵害,確保移動代理高效、安全運行。
4結束語
通過研究移動代理的安全性問題,分為移動代理自身、移動代理執行的目標主機和運行的網絡環境3個方面,首先,針對移動代理自身對移動代理攜帶的重要數據信息進行加密保護;其次,在移動代理和目標主機之間建立信譽度表,在信譽度等級和相應的操作權限進行對照,構建主機和移動代理之間的雙向信譽度記錄和安全校驗認證;同時利用信譽度等級進行惡意主機或代理的判定,拒絕惡意主機和代理的操作請求,保護移動代理與目標主機信息交互的安全可靠??傊ㄟ^移動代理本身、移動代理運行的網絡環境以及目標主機的系列安全規則,使移動代理更好地發揮作用,提升靈活性和可靠性。
參考文獻
[1]肖增良,樂曉波,周輝.基于與或依賴圖的多Agent系統任務分解算法[J].計算機工程與設計,2009,30(2):426-428..
[2]劉曉明,黃傳河,江貝.一種基于移動Agent技術的網絡管理模型[J].計算機應用研究,2000(12):52-53.
[3] Lennselius B,Rydstrom L.Software Fault Content and Reliability Estimations for Telecommunication Systems[J]. IEEE Journal on Selected Areas in Communications, 1990, 8(2): 262-272.
[4] ThomasD,AnthonyS.EvaluatingthePerformanceofSoftware Reliability Models[J].IEEE Trans.on Reliability,1992,41(4): 12-16.
[5] Zahedi F,Ashrafi N.Software Reliability Allocation Based on Structure Utility,Price and Cost[J].IEEE Transactions on Software Engineering,1991,17(4):345-356.
[6] Beaumont O,Casanova H,Legrand A.Scheduling Divisible Loads on Star and Tree Networks:Results and Open Problems[J].IEEE Trans on Parallel and Distributed Systems, 2005,l(3):207-218.
[7]朱淼良,邱瑜.移動代理系統綜述[J].計算機研究與發展, 2001(1):16-25.
[8]劉波,李偉,羅軍舟,等.網絡管理中多agent的半在線調度算法[J].計算機研究與發展,2006(4):571-578.
[9]王媛媛,譚獻海.移動代理系統———IBM的Aglets[J].微計算機信息,2006(9):275-277.
[10]金黎黎,孔令富.協同設計環境中任務分解與調度的研究[J].計算機工程與設計,2009,30(22):5291-5293.
[11] Waish T,Paciorek N,Wong D.Security and Reiiabiiity in Concordia[C]// Proceedings of the 31st Annuai Hawaii Internationai Conference on System Sciences,Kona,Hawaii, 1998,32(3):22-26.