張 波,賈忠田,劉 悅,荊 山
(濟南大學 信息科學與工程學院,山東 濟南 250022)
網絡信息技術在給人們生產、生活帶來便利的同時,也帶來了安全風險和挑戰,網絡竊密、欺詐等侵害個人權益的現象屢見不鮮,網絡安全已成為事關國家安全、經濟發展、人民福祉的重大戰略問題。2015 年,為實施國家安全戰略、加快網絡空間安全高層次人才培養,國務院學位委員會、教育部決定在“工學”門類下增設“網絡空間安全”一級學科。該學科的確立對相關專業及專業課程的建設提出了更高的要求。根據相關專業的發展趨勢以及對人才培養需求的變化,網絡安全協議以典型協議為主要內容,使學生對其基本原理、配置方法和技術特性具有全面的認識和一定的實踐操作能力,培養學生掌握網絡安全協議設計的思想與方法,為學生進一步學習和應用相關安全技術打下堅實基礎。
網絡安全協議[1-2]是基于密碼學的通信協議。網絡安全協議課程(以下簡稱“課程”)站在密碼技術應用者的角度,以安全協議為主線,從安全協議的產生與發展、基本原理、安全性分析、再到安全協議比較與應用等方面,系統闡述TCP/IP 協議簇安全架構與各層的經典安全協議。課程以課堂講授為主,配合實驗和課堂研討,達到理論與實踐相結合的教學目的。
協議實現過程中涉及密碼學原語的復雜性和概念的抽象性,學生在學習這門課程時往往會感覺內容枯燥、難以理解,特別是在缺乏完善課程體系的情況下,課程的教學和學習難度隨之提升。因此,網絡安全協議課程教學內容應根據學生的專業特點進行合理的調整,尤其是濟南大學將要進行專業認證的網絡工程專業,更應結合專業背景和培養目標的需求,以專業認證為契機對網絡安全協議課程進行改革,以提高教學質量,使課程目標符合工程教育專業認證的要求。
根據專業培養目標定位,結合工程教育2015 年版專業認證標準[3]對本科生的畢業要求,經過課程組教師的反復討論,最終形成教學目標為:①使學生在掌握網絡安全協議的基本概念、基本術語、基本理論的基礎上,能夠依據安全目標,按正確步驟部署不同網絡層次的安全協議,具備根據安全需求對其進行基本分析和解決問題的初級能力;②能夠將網絡安全工程基礎和專業知識,用于進行復雜網絡系統的規劃與設計、部署與開發、分析與測試、運行與管理,解決過程中可能出現的安全問題,抵御安全攻擊;③通過課堂講解、討論和學生課下閱讀、思考,上機練習,使學生能掌握常用安全協議部署方法,提高應用計算機網絡進行安全會話分析、設計的能力;④理解復雜網絡工程問題中工程管理與經濟決策的重要性,要求學生在學完本課程后,能運用所學基本理論,根據不同的環境和業務需求,靈活運用不同的網絡安全技術,保護網絡的可控性和可用性,保障信息的機密性和完整性,掌握網絡安全工程管理的基本原理與經濟決策的基本方法。
針對網絡工程專業本科生具備的密碼學和數學基礎,網絡安全協議課程教學內容應側重于密碼技術的應用和分析,對形式化分析等具有較高學術研究水平的內容有所刪減。確定后的教學內容主要包括四大部分。
1)經典基礎認證協議。
認證是多種安全協議實施過程中的必要環節,早期認證協議(如口令、挑戰—應答、NSSK、NSPK 等)盡管可能存在各種安全缺陷,但其發展過程卻清晰反映了協議功能從簡單單一到復雜完善必然經歷的環節,對其安全性的分析過程也為學生理解協議的安全性提供了重要的學習素材,有助于學生形成連貫的內容脈絡。
教學過程遵循“學習—分析—改進”的思路,從介紹協議細節出發,進而分析協議可能存在的安全漏洞,再提出改進方法。通過對重放攻擊、中間人攻擊等基本攻擊方法的發起方法和防范措施的介紹,使學生理解隨機數、挑戰值等元素在通信過程中存在的意義和作用,為復雜協議的學習奠定基礎。
以著名的NS 對稱密鑰認證協議為例,該協議于1978 年 由Needham 和Schroeder 提 出,是最為著名并被實際采用的認證協議,其目的是在第三方幫助下完成通信雙方之間的密鑰分配,A和B 分別為會話發起者和響應者,S 為認證服務器,N 為A 或B 選擇的隨機數,K 為實體之間共享的密鑰,該協議執行過程如下:

學生通過前期對“對稱密碼體制”和“挑戰—應答”認證方式的學習,較為容易理解和接受NS 協議這種借助第三方幫助完成的會話密鑰分發過程,在此基礎上,通過引入消息“新鮮性”的概念,引導學生發現協議可能存在的安全隱患:如果會話響應者無法驗證消息的新鮮性,可能會帶來哪些安全風險?如果攻擊者進一步獲得了A 和B 之間共享的某個會話密鑰Kab,他需要重放哪個消息可以欺騙B?啟發學生理解消息重放攻擊的實施過程。更進一步引導學生主動思考:如何對該協議進行改進,從而保證新鮮性,抵御該類攻擊?這種“學習—分析—改進”的思路在教學實施過程中取得了良好的教學效果,有超過半數的學生可以在課堂上完成協議的分析和改進過程,同時加深了對隨機數、挑戰值等新鮮元素在安全協議施行過程中所發揮作用的認識。
2)密碼學基礎和PKI(公鑰密碼基礎設施)技術。
盡管本專業開設了應用密碼學等前驅課程,但學生在學習網絡安全協議時,經常出現不能靈活運用相關技術實現安全目標、不能理解為什么使用相關技術等問題。與應用密碼學中的學習方法不同,該部分不強調對算法細節的描述,而強調對算法功能的理解,使學生能夠認識到這些典型技術如何應用于協議執行過程,從而實現安全目標并發揮作用。
PKI 技術是一套基于公鑰技術實現管理用戶公鑰的完善解決方案,實施過程涉及各種公鑰技術和認證方法,從某種角度看PKI 也是安全技術和安全協議的應用過程。該部分內容的學習對學生理解、學習及應用公鑰密碼技術很有幫助,在課程后續內容學習中也會涉及數字簽名、公鑰證書等概念,因此該部分內容有其必要性。PKI 體系涉及實體較多,教師在課堂教學過程中按照證書的生命周期,劃分了證書申請、創建、使用、撤銷等階段,并通過翻轉課堂的方式將學生進行分組,學生分別擔任用戶、證書權威CA、注冊權威RA、密鑰生成中心KGC 等角色,由小組內部討論角色承擔的任務和實施方法,按照流程由各小組對PKI 的組織和實施流程進行了模擬。與傳統授課方式相比,角色扮演、流程化教學極大提高了學生興趣,使得學生對PKI 中的細節理解更加深刻,對數字證書、數字簽名等核心技術的掌握更加牢固。在實驗教學環節,教師向學有余力的學生推薦了OpenCA、EJBCA 等開源項目,通過由核心成員搭建自主PKI、小組成員相互帶動的方式,使班級大部分學生不僅能正確的使用證書,更能理解證書的完整生命周期和核心操作。
3)典型鏈路層、網絡層和傳輸層協議。
該部分為網絡安全協議的核心內容,重點講解各層次的典型代表性協議,如鏈路層的PPTP、L2TP,網絡層的IPSec 協議簇以及傳輸層的SSL協議等。理論教學部分教師弱化了對幀格式的分解式講解,著重強調密碼學技術在不同網絡層次實施的原理以及可以實現的安全目標,這樣將學生從繁雜的數據分析中解脫出來。
因為該部分內容應用性較強,教師增加了上機實踐環節對各種協議在Windows 系統中的配置、實施應用進行驗證性學習,提高學生的學習興趣和積極性。作為協議學習實踐環節的重要內容,學生還應使用Wireshark 等工具對協議執行過程中的交換信息進行分析,通過該環節,不僅可以幫助學生強化對安全協議執行過程的理解,更可以提高學生對安全目標的認識。針對不同層次協議,教師設計了Windows 下PPTP 實現、PPTP 協議分析實驗,Windows 下IPSec 實驗、IPSec 協議分析實驗,Windows 下SSL 實驗等實踐環節,通過對主機與主機之間、主機與網關之間安全協議的實施和通信數據的偵測,達到了理論實踐結合的教學目的。
4)典型應用層協議。
面向不同具體應用的安全需求,應用層安全協議種類眾多,教師選擇了其中比較有代表性的典型協議,如安全電子郵件(PGP)、安全電子交易協議(SET)、電子貨幣協議等進行重點學習。該部分為實際應用協議,講解過程結合網絡實際、開源項目和熱點問題等內容,引導學生進行自主式安全目標設定和實現,激發學生學習興趣。例如,結合學生比較熟悉的電子購物過程,對比我國電子商務現狀,回顧SSL 協議,比較其與SET 協議的異同等。
教師針對不同安全協議的獨特之處,分別設計了不同的教學過程,以安全電子郵件協議為例:電子郵件安全目標相對明確,在學習PGP之前,組織學生對其安全目標進行了定義,對通信實施過程進行了設計,全部學生無一例外均采用了基于PKI 的實施方法,能夠基本正確地運用公鑰密碼知識達到設計要求。在此基礎上,教師詳細講解了PGP 中的公鑰管理方法,這種與PKI截然不同的管理方法以及PGP 中的密鑰環等數據結構都給學生留下了深刻的印象,達到了較好的教學目標。
網絡安全協議是濟南大學網絡工程專業重要的專業方向選修課程,近幾年來,綜合學生反饋和企業需求,課程組對授課內容、授課形式和教學方法進行了持續的改進。最近,結合專業認證工作的要求,課程組又對該課程進行了改革嘗試,以期教學過程可以體現以學生學習效果為本、畢業生達到行業要求的目的。