聶旭云,羅緒成,熊 虎,廖永建
(電子科技大學(xué) 信息與軟件工程學(xué)院,四川 成都 610054)
網(wǎng)絡(luò)安全專業(yè)是面向工程應(yīng)用的一類專業(yè),學(xué)生的培養(yǎng)應(yīng)強(qiáng)化工程實(shí)踐能力的培養(yǎng)。多數(shù)高校在網(wǎng)絡(luò)安全實(shí)踐教學(xué)中進(jìn)行了大量的嘗試和改革[1-4],但多數(shù)高校的網(wǎng)絡(luò)安全實(shí)踐均圍繞網(wǎng)絡(luò)安全攻防技術(shù)展開,重點(diǎn)放在網(wǎng)絡(luò)攻防、主機(jī)安全、病毒防治等方面。目前產(chǎn)業(yè)界對(duì)于基于密碼學(xué)的網(wǎng)絡(luò)安全工程開發(fā)人才的需求日益增長(zhǎng),需要學(xué)校增強(qiáng)這方面人才的工程實(shí)踐能力。
密碼學(xué)是網(wǎng)絡(luò)安全的核心基礎(chǔ),在信息系統(tǒng)開發(fā)過程中需要將安全工程融入其建設(shè)過程中,確保開發(fā)的信息系統(tǒng)達(dá)到信息系統(tǒng)等級(jí)保護(hù)的要求。這就要求工程實(shí)施人員熟悉密碼學(xué)的原理,掌握密碼算法及密碼協(xié)議的部署與開發(fā)。
綜合設(shè)計(jì)分為3個(gè)階段:綜合設(shè)計(jì)Ⅰ、綜合設(shè)計(jì)Ⅱ和綜合設(shè)計(jì)Ⅲ,分別在第三、四、五學(xué)期進(jìn)行。這3個(gè)階段的目標(biāo)、任務(wù)需要結(jié)合學(xué)生課程學(xué)習(xí)和訓(xùn)練的過程,目的在于通過綜合設(shè)計(jì)訓(xùn)練,提升學(xué)生系統(tǒng)應(yīng)用所學(xué)知識(shí)以及軟件開發(fā)的能力,鍛煉學(xué)生文檔寫作、口頭表達(dá)能力,最終為順利完成畢業(yè)設(shè)計(jì)打下堅(jiān)實(shí)的基礎(chǔ)。
根據(jù)專業(yè)培養(yǎng)方案,綜合設(shè)計(jì)要求全面培養(yǎng)學(xué)生在軟件工程方面的實(shí)踐能力,對(duì)完成相應(yīng)的畢業(yè)要求指標(biāo)點(diǎn)起支撐作用。各階段綜合設(shè)計(jì)的具體目標(biāo)如下:
綜合設(shè)計(jì)Ⅰ:掌握信息系統(tǒng)的需求分析方法,實(shí)現(xiàn)密碼學(xué)和信息安全數(shù)學(xué)基礎(chǔ)涉及的主要算法,使學(xué)生認(rèn)識(shí)到解決問題有多種方案,能分析文獻(xiàn)尋找可替代的解決方案,能夠進(jìn)行陳述發(fā)言,清楚表達(dá)對(duì)復(fù)雜軟件工程問題的看法和見解。
綜合設(shè)計(jì)Ⅱ:根據(jù)需求進(jìn)行總體設(shè)計(jì)、詳細(xì)設(shè)計(jì),熟悉和掌握相關(guān)安全協(xié)議的部署和開發(fā),根據(jù)應(yīng)用場(chǎng)景,選擇合適的開發(fā)環(huán)境、工具與技術(shù)標(biāo)準(zhǔn),為下一步系統(tǒng)實(shí)現(xiàn)做準(zhǔn)備。通過該階段的訓(xùn)練,使學(xué)生能夠針對(duì)復(fù)雜軟件工程問題,設(shè)計(jì)滿足特定需求的總體設(shè)計(jì)和詳細(xì)設(shè)計(jì);能夠根據(jù)軟件系統(tǒng)應(yīng)用場(chǎng)景,選擇合適的開發(fā)環(huán)境和工具;能夠獨(dú)立完成團(tuán)隊(duì)分配的任務(wù),并勝任團(tuán)隊(duì)成員角色,承擔(dān)相應(yīng)的責(zé)任。
綜合設(shè)計(jì)Ⅲ:建立信息安全整體意識(shí),實(shí)現(xiàn)相應(yīng)的安全軟件系統(tǒng),使學(xué)生能夠集成單元過程進(jìn)行軟件系統(tǒng)流程設(shè)計(jì),對(duì)流程設(shè)計(jì)方案進(jìn)行優(yōu)選;選擇相應(yīng)的技術(shù)工具,針對(duì)軟件工程及相關(guān)領(lǐng)域的復(fù)雜工程問題,進(jìn)行預(yù)測(cè)、模擬及測(cè)試;能夠與團(tuán)隊(duì)其他成員有效溝通,聽取反饋意見,并綜合團(tuán)隊(duì)成員的意見,進(jìn)行合理決策;能夠進(jìn)行陳述發(fā)言,清楚表達(dá)對(duì)復(fù)雜軟件工程問題的看法和見解。
綜合設(shè)計(jì)的3個(gè)階段層次遞進(jìn),前后銜接,使學(xué)生在進(jìn)行系統(tǒng)軟件開發(fā)時(shí)融入安全工程,提升所開發(fā)系統(tǒng)的安全性。
綜合設(shè)計(jì)的內(nèi)容要考慮學(xué)生其他課程學(xué)習(xí)的進(jìn)度。根據(jù)本專業(yè)培養(yǎng)方案,綜合設(shè)計(jì)的3個(gè)階段和相關(guān)課程的關(guān)系見圖1。
圖1 綜合設(shè)計(jì)與其他課程之間的關(guān)系
根據(jù)上述關(guān)系圖,綜合設(shè)計(jì)3個(gè)階段的內(nèi)容設(shè)置如下:
綜合設(shè)計(jì)Ⅰ:綜合設(shè)計(jì)Ⅰ開設(shè)在第三學(xué)期,學(xué)生在一、二學(xué)期已經(jīng)學(xué)習(xí)了信息安全導(dǎo)論、C語言、數(shù)據(jù)結(jié)構(gòu)與算法等課程,了解了信息安全的屬性和X.800中定義的安全服務(wù)和安全機(jī)制,也具備了初步的編程能力。在第三學(xué)期,開設(shè)軟件工程和信息安全數(shù)學(xué)基礎(chǔ)課程,這兩門課程的開設(shè)為綜合設(shè)計(jì)Ⅰ的內(nèi)容設(shè)置提供幫助。在軟件工程課程中,學(xué)生學(xué)習(xí)如何進(jìn)行軟件需求分析和系統(tǒng)設(shè)計(jì),而在信息安全數(shù)學(xué)基礎(chǔ)課程學(xué)習(xí)常用的數(shù)學(xué)工具和一些典型的密碼算法。綜合設(shè)計(jì)Ⅰ的具體內(nèi)容有:
(1)密碼算法實(shí)現(xiàn)。實(shí)現(xiàn)RSA、ElGamal、AES、ECC、DSS等典型的公鑰加密算法或數(shù)字簽名算法。
(2)信息系統(tǒng)的需求分析:安全電子商務(wù)、安全電子郵件、安全即時(shí)通信軟件、在線考試系統(tǒng)等系統(tǒng)的需求分析,除功能需求外還需要重點(diǎn)考慮系統(tǒng)的安全需求。
綜合設(shè)計(jì)Ⅱ:綜合設(shè)計(jì)Ⅱ開設(shè)在第四學(xué)期。本學(xué)期學(xué)生學(xué)習(xí)了現(xiàn)代密碼學(xué)、計(jì)算機(jī)網(wǎng)絡(luò)等課程。在計(jì)算機(jī)網(wǎng)絡(luò)課程,學(xué)生了解了網(wǎng)絡(luò)協(xié)議的原理。通過現(xiàn)代密碼學(xué),學(xué)生掌握了安全協(xié)議的原理。因此,綜合設(shè)計(jì)Ⅱ的具體內(nèi)容設(shè)置如下:
(1)安全協(xié)議的搭建及簡(jiǎn)單應(yīng)用。PKI系統(tǒng)的建立;SSL、VPN、IPSEC等協(xié)議的搭建及簡(jiǎn)單應(yīng)用。
(2)信息系統(tǒng)的設(shè)計(jì)。安全電子商務(wù)、安全電子郵件、安全即時(shí)通信軟件、在線考試系統(tǒng)等系統(tǒng)的設(shè)計(jì),包括總體設(shè)計(jì)、概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。
綜合設(shè)計(jì)Ⅲ:綜合設(shè)計(jì)Ⅲ開設(shè)在第五學(xué)期。本學(xué)期學(xué)生學(xué)習(xí)了網(wǎng)絡(luò)編程和操作系統(tǒng)編程,為綜合設(shè)計(jì)Ⅲ的系統(tǒng)奠定基礎(chǔ)。學(xué)生還學(xué)習(xí)了信息安全工程,進(jìn)一步理解了信息系統(tǒng)中安全組件的開發(fā)與部署。綜合設(shè)計(jì)Ⅲ的具體內(nèi)容如下:
(1)信息系統(tǒng)的實(shí)現(xiàn):實(shí)現(xiàn)安全電子商務(wù)、安全電子郵件、安全即時(shí)通信軟件、在線考試系統(tǒng)等系統(tǒng),并進(jìn)行測(cè)試。
(2)安全評(píng)估:結(jié)合信息系統(tǒng)安全等級(jí)保護(hù)基本要求,針對(duì)小型信息系統(tǒng)進(jìn)行安全評(píng)估及安全規(guī)劃。
以上各階段的設(shè)計(jì)內(nèi)容都是可選的,也不限于以上內(nèi)容,只要能滿足綜合設(shè)計(jì)培養(yǎng)目標(biāo)的選題都可以納入具體內(nèi)容當(dāng)中。
從3個(gè)階段的具體內(nèi)容可以看出3個(gè)階段的關(guān)聯(lián)性和延續(xù)性,從綜合設(shè)計(jì)Ⅰ到綜合設(shè)計(jì)Ⅲ基本上能夠完成軟件工程的全過程。
綜合設(shè)計(jì)一般由導(dǎo)師出題,學(xué)院統(tǒng)一發(fā)布,學(xué)生自由組隊(duì),一個(gè)課題僅允許4~6名學(xué)生參加。為了保證綜合設(shè)計(jì)指導(dǎo)質(zhì)量,一個(gè)導(dǎo)師一學(xué)期內(nèi)最多指導(dǎo)30名學(xué)生。
各階段的綜合設(shè)計(jì)都采用討論課形式完成。根據(jù)綜合設(shè)計(jì)題目,學(xué)生在閱讀相關(guān)文獻(xiàn)的基礎(chǔ)上,提出主要工作內(nèi)容,并分工,制定項(xiàng)目進(jìn)度計(jì)劃。在各綜合設(shè)計(jì)實(shí)施階段,每周固定時(shí)間(2課時(shí))進(jìn)行小組討論,每個(gè)討論班有5~7個(gè)小組以及2~3名指導(dǎo)教師參加。討論會(huì)包括本周進(jìn)展匯報(bào)(PPT,報(bào)告人隨機(jī)指定),所遇問題討論或解決問題方法分享,以及指導(dǎo)教師的每組提問及點(diǎn)評(píng)。綜合設(shè)計(jì)實(shí)施過程中,以學(xué)生為主導(dǎo),指導(dǎo)教師參與討論,給出進(jìn)展建議,以及協(xié)助解決關(guān)鍵技術(shù)問題。指導(dǎo)教師在綜合設(shè)計(jì)開始前(或初期),給出整個(gè)綜合設(shè)計(jì)的總體要求、實(shí)施建議等。通過綜合設(shè)計(jì)Ⅰ、Ⅱ、Ⅲ,實(shí)現(xiàn)從基礎(chǔ)—技術(shù)—應(yīng)用的階梯式工程能力培養(yǎng)模式。
綜合設(shè)計(jì)不能僅僅通過綜合設(shè)計(jì)報(bào)告進(jìn)行評(píng)價(jià)和考核,應(yīng)當(dāng)綜合考慮學(xué)生在課題實(shí)施過程中文獻(xiàn)查找、問題討論、現(xiàn)場(chǎng)陳述、系統(tǒng)開發(fā)和文檔寫作等方面的表現(xiàn)。
每個(gè)階段(綜合設(shè)計(jì)Ⅰ、Ⅱ、Ⅲ)都需要依據(jù)學(xué)生的綜合設(shè)計(jì)實(shí)施過程、文檔寫作和總結(jié)答辯情況進(jìn)行考核。導(dǎo)師在每學(xué)期第12周左右對(duì)綜合設(shè)計(jì)進(jìn)行中期檢查,并根據(jù)中期報(bào)告進(jìn)行評(píng)價(jià);導(dǎo)師根據(jù)每周討論課的PPT匯報(bào)以及討論情況給出學(xué)生的平時(shí)成績(jī),學(xué)院在學(xué)期期末組織專家對(duì)所有綜合設(shè)計(jì)課題進(jìn)行答辯評(píng)審,最后將中期、平時(shí)成績(jī)和答辯成績(jī)乘以相應(yīng)權(quán)重進(jìn)行統(tǒng)分,給出最終的考核成績(jī)。在各個(gè)階段的答辯中,需要有現(xiàn)場(chǎng)演示和現(xiàn)場(chǎng)問題解決考核環(huán)節(jié),需要明確闡述小組成員所承擔(dān)工作任務(wù)及工作量。
綜合設(shè)計(jì)在軟件工程實(shí)踐教學(xué)中起著積極的作用。課程組就綜合設(shè)計(jì)對(duì)畢業(yè)要求指標(biāo)點(diǎn)的支撐做了進(jìn)一步分析。
電子科技大學(xué)軟件工程專業(yè)的畢業(yè)要求2為“問題分析”,要求學(xué)生“能夠應(yīng)用數(shù)學(xué)、自然科學(xué)和工程科學(xué)的基本原理,通過文獻(xiàn)研究,分析復(fù)雜軟件系統(tǒng)問題,以獲得有效結(jié)論”。綜合設(shè)計(jì)I的主要任務(wù)是基礎(chǔ)算法的實(shí)現(xiàn)和系統(tǒng)的需求分析,它支撐的畢業(yè)要求指標(biāo)點(diǎn)定位為“能認(rèn)識(shí)到解決問題有多種方案可選擇;能分析文獻(xiàn)尋求可替代的解決方案”。
畢業(yè)要求3為“設(shè)計(jì)/開發(fā)解決方案”,要求學(xué)生“能夠針對(duì)復(fù)雜軟件工程問題,提出滿足需求的總體設(shè)計(jì)和詳細(xì)設(shè)計(jì)方案,并能夠在設(shè)計(jì)環(huán)節(jié)中體現(xiàn)創(chuàng)新意識(shí),考慮社會(huì)、健康、安全、法律、文化以及環(huán)境等因素”。綜合設(shè)計(jì)Ⅱ的主要任務(wù)是系統(tǒng)設(shè)計(jì),它支撐的畢業(yè)要求指標(biāo)點(diǎn)定位為“能夠針對(duì)復(fù)雜軟件工程問題,設(shè)計(jì)滿足特定需求的總體設(shè)計(jì)和詳細(xì)設(shè)計(jì),體現(xiàn)創(chuàng)新意識(shí);能夠集成單元過程進(jìn)行軟件系統(tǒng)流程設(shè)計(jì),對(duì)流程設(shè)計(jì)方案進(jìn)行優(yōu)選”。
畢業(yè)要求5為“使用現(xiàn)代工具”,要求學(xué)生“能夠針對(duì)復(fù)雜軟件系統(tǒng),選擇與使用合適的開發(fā)環(huán)境、工具與技術(shù)標(biāo)準(zhǔn),進(jìn)行模擬和測(cè)試,并對(duì)輸出結(jié)果進(jìn)行分析,得出相應(yīng)的評(píng)估結(jié)論,理解相關(guān)工具的特點(diǎn)及局限性”。 它支撐的畢業(yè)要求指標(biāo)點(diǎn)定位為“能夠根據(jù)軟件系統(tǒng)的應(yīng)用場(chǎng)景,選擇合適的開發(fā)環(huán)境、工具與技術(shù)標(biāo)準(zhǔn)進(jìn)行軟件系統(tǒng)的開發(fā),并理解各自的特點(diǎn)與局限性?!本C合設(shè)計(jì)Ⅲ還需要對(duì)畢業(yè)要求9“個(gè)人與團(tuán)隊(duì)”起到支撐作用,定位為“能夠獨(dú)立完成團(tuán)隊(duì)分配的工作,并能勝任團(tuán)隊(duì)成員角色,承擔(dān)相應(yīng)責(zé)任;能夠與團(tuán)隊(duì)其他成員有效溝通,聽取反饋意見,并綜合團(tuán)隊(duì)成員的意見,進(jìn)行合理決策”。
以上對(duì)畢業(yè)要求指標(biāo)點(diǎn)的支撐,均可以反映在各階段的任務(wù)考核之中。
電子科技大學(xué)軟件工程(網(wǎng)絡(luò)安全工程)專業(yè)于2012年開始招生,前期在網(wǎng)絡(luò)安全工程實(shí)踐教學(xué)方面嘗試開設(shè)了信息安全基礎(chǔ)綜合設(shè)計(jì)實(shí)驗(yàn)、網(wǎng)絡(luò)安全綜合設(shè)計(jì)實(shí)驗(yàn)和網(wǎng)絡(luò)與信息系統(tǒng)安全綜合設(shè)計(jì)實(shí)驗(yàn)3門實(shí)驗(yàn)課程[5],但是由于課程之間的內(nèi)容銜接和關(guān)聯(lián)性并不強(qiáng),未能起到應(yīng)有的效果。這幾門課程在軟件工程專業(yè)工程教育認(rèn)證中對(duì)畢業(yè)要求指標(biāo)點(diǎn)的支撐也顯得不夠充分。因此,本專業(yè)嘗試開設(shè)綜合設(shè)計(jì)Ⅰ、Ⅱ、Ⅲ3個(gè)循序漸進(jìn)的工程實(shí)踐環(huán)節(jié)取代3門綜合設(shè)計(jì)實(shí)驗(yàn)課程,借鑒同類高校在密碼學(xué)方面的實(shí)踐經(jīng)驗(yàn)[6-8],結(jié)合工程教育認(rèn)證的理念[9],對(duì)綜合設(shè)計(jì)的內(nèi)容進(jìn)行精心設(shè)計(jì),以培養(yǎng)網(wǎng)絡(luò)安全工程實(shí)踐能力為目的,為相應(yīng)的人才培養(yǎng)提供幫助。
電子科技大學(xué)軟件工程(網(wǎng)絡(luò)安全工程)專業(yè)的綜合設(shè)計(jì)按照學(xué)生課程學(xué)習(xí)的進(jìn)度,結(jié)合工程教育認(rèn)證理念,制定了從基礎(chǔ)到技術(shù)到應(yīng)用的3個(gè)階段,符合軟件工程過程要求。通過網(wǎng)絡(luò)安全綜合設(shè)計(jì)的改革和探索,學(xué)生對(duì)密碼學(xué)的興趣得到了極大的提升,對(duì)密碼學(xué)理論也理解得更為透徹,學(xué)生畢業(yè)后在網(wǎng)絡(luò)安全、密碼學(xué)方向上的深造率和就業(yè)率也將得到改善。
目前,國(guó)產(chǎn)密碼正在全面實(shí)施和應(yīng)用,今后綜合設(shè)計(jì)的內(nèi)容中將增強(qiáng)國(guó)產(chǎn)密碼的實(shí)現(xiàn)與應(yīng)用。密碼測(cè)評(píng)也是密碼應(yīng)用的一個(gè)重要組成部分,將在綜合設(shè)計(jì)中逐步開展。