賈偉峰,楊禮波
(1.安陽師范學(xué)院,河南安陽455000;2.華北水利水電學(xué)院,河南鄭州450011)
密碼學(xué)的課程特點及教學(xué)方法探討
賈偉峰1,楊禮波2
(1.安陽師范學(xué)院,河南安陽455000;2.華北水利水電學(xué)院,河南鄭州450011)
結(jié)合自身教學(xué)體會,簡單論述了密碼學(xué)課程的特點,介紹了密碼學(xué)教學(xué)過程中可采取的一些方法和手段。同時,簡要分析了密碼學(xué)課程教學(xué)過程中存在的一些問題和解決對策。
密碼學(xué);教學(xué)方法;課程特點
密碼學(xué)作為一門專業(yè)課程在我國高校開設(shè)由來已久?,F(xiàn)階段開設(shè)密碼學(xué)課程的專業(yè)較多,如信息安全、信息與計算科學(xué)、計算機和通信等相關(guān)專業(yè)。由于開設(shè)該門課程的專業(yè)各有不同,開設(shè)時間也各不相等,因此有關(guān)課程教學(xué)大綱、教學(xué)內(nèi)容和方法等諸多方面尚處在探索階段。筆者擬結(jié)合自身實際教學(xué),談一談密碼學(xué)課程的特點及一些教學(xué)方法。
密碼學(xué)相對于其他大學(xué)理工科課程來說,具有如下特點:課程所涉及的知識跨度廣;課程難度高;理論性和應(yīng)用性均比較強。密碼學(xué)的學(xué)習(xí)需要諸多前置課程作為基礎(chǔ),根據(jù)課程設(shè)置的側(cè)重點不同,前置課程分別包含數(shù)論、近世代數(shù)、有限域上數(shù)學(xué)運算和網(wǎng)絡(luò)安全協(xié)議等。前置課程的知識難度較大,尤其體現(xiàn)出密碼學(xué)這門課程對數(shù)學(xué)基礎(chǔ)的要求很高。同時,密碼學(xué)課程本身知識跨度也很廣??偟膩碚f,其授課內(nèi)容往往包含密碼學(xué)基礎(chǔ)、古典密碼學(xué)、私鑰密碼學(xué)、公鑰密碼學(xué)、哈希函數(shù)、數(shù)字簽名、身份認證和鑒別、電子商務(wù)中的密碼學(xué)應(yīng)用、網(wǎng)絡(luò)安全協(xié)議的設(shè)計與開發(fā)以及公鑰基礎(chǔ)設(shè)施,等等。知識跨度廣的特點決定了密碼學(xué)這門課程具有較高的教學(xué)和學(xué)習(xí)難度。根據(jù)筆者在實際教學(xué)過程中的體會來看,大部分學(xué)生反映課程難度太大,學(xué)起來困難重重。因此授課過程需要對算法細節(jié)進行詳細的推導(dǎo)和分析,并且要想盡辦法增加課程內(nèi)容的趣味性和應(yīng)用性,以吸引學(xué)生。此外,密碼學(xué)課程的特點還體現(xiàn)在另一個方面,即授課內(nèi)容的基礎(chǔ)理論性和應(yīng)用性都較強,學(xué)生學(xué)習(xí)這門課程的過程中對密碼學(xué)的應(yīng)用很感興趣。
一是由淺入深引領(lǐng)課堂教學(xué)。密碼學(xué)課程不同于其他課程,具有知識跨度廣、課程難度高的特點。在高校開設(shè)該課程之前,有些必備的前置課程,某些專業(yè)的學(xué)生可能沒有學(xué)習(xí)。這就要求實際教學(xué)過程中,課程設(shè)計必須由淺入深,步步推進。比如在由私鑰密碼學(xué)過渡到公鑰密碼學(xué)章節(jié)的時候,可首先舉例概括私鑰密碼學(xué)的特點,論述私鑰密碼學(xué)有什么不足之處。此外,對于這些不足之處,有什么解決辦法?這些問題中,應(yīng)重點論述私鑰密碼學(xué)中的密鑰管理難題,從而讓學(xué)生對該問題產(chǎn)生興趣,自然而然過渡到新的章節(jié)教學(xué)中。另外,對于很多密碼學(xué)算法中的數(shù)學(xué)運算,比如求乘法逆、有限域上的多項式運算等,可不必先長篇講述數(shù)學(xué)基礎(chǔ),而是將密碼學(xué)的數(shù)學(xué)問題圖表化,采用歸納的方法引出一般性結(jié)論。這種逆向性的學(xué)習(xí)方法可以使學(xué)生更加容易、快速地接收更多信息。
二是互動與思考。現(xiàn)階段多數(shù)課程的教學(xué)以填鴨式灌輸知識的方式進行。如果課程難度一般,這種方式可讓學(xué)生在短時間內(nèi)大量接收知識。對于密碼學(xué)課程,由于課程難度較高,如果采用這種方式授課的話,學(xué)生在短時間內(nèi)即產(chǎn)生抵觸情緒,教學(xué)效果很不理想?;优c思考在任何課程的教學(xué)過程中都具有重要的意義,也是我國各類課程教學(xué)方法改革中討論較多的一種教學(xué)手段。在密碼學(xué)課程的教學(xué)中,互動與思考更為重要。比如對于RSA公鑰密碼算法的講解來說,如果課堂上直接將公式分為幾步羅列推導(dǎo),且中間不采取措施和學(xué)生互動的話,等推導(dǎo)完畢后,學(xué)生大多還是一知半解。這個時候,可以在講解一步運算以后,提出問題讓學(xué)生思考這步運算的作用。暫停課堂講解,進入討論環(huán)節(jié),讓學(xué)生的思路跟著教師的講解步步前進,可取得較好效果。
三是實踐印證。對于密碼學(xué)中的關(guān)鍵知識,最好結(jié)合現(xiàn)有的實際應(yīng)用進行介紹,這樣可讓學(xué)生對該問題有更為直觀的體會,從而取得較好學(xué)習(xí)效果。比如對于哈希函數(shù)的講解,如果課程伊始就介紹哈希函數(shù)特點或者羅列哈希函數(shù)的相關(guān)數(shù)學(xué)公式,那么學(xué)生很容易產(chǎn)生抵觸情緒——因為學(xué)生不知道這個東西究竟具有什么作用。此時,教師可從一個實際問題出發(fā):目前網(wǎng)上很多資源下載的時候都附有一個MD5的摘要文件,這個文件的作用是讓用戶檢測該資源是否被完整無誤地下載或者下載過程有沒有被篡改等。此時可讓學(xué)生開始對這個問題進行思考,進而逐步導(dǎo)入到哈希函數(shù)章節(jié)的教學(xué)中。
四是課程論文的撰寫。由于密碼學(xué)這門課程涵蓋的知識范圍非常廣,相關(guān)研究開展的也很多。因此撰寫課程論文可以讓學(xué)生跳出教材,對相關(guān)問題做進一步的研究和探討。教師可在適當(dāng)?shù)臅r候讓學(xué)生撰寫課程論文,這樣可以幫助他們更好理解課程內(nèi)容,開拓自己的學(xué)習(xí)思路。另外,課程論文的撰寫一定程度上能夠鍛煉學(xué)生的文獻搜索能力和知識總結(jié)能力,有效擴展知識面。
五是經(jīng)典密碼學(xué)算法的編程實現(xiàn)。密碼學(xué)的核心內(nèi)容由一個個的密碼算法構(gòu)成,對這些密碼學(xué)算法的理解和分析是課程教學(xué)的重點。對于很多的經(jīng)典密碼學(xué)算法,網(wǎng)上有相應(yīng)的代碼資源。教師在講解算法的過程中,可以提醒學(xué)生要注意對這些資源的獲取和理解。關(guān)鍵部分的程序代碼可布置作業(yè),讓學(xué)生自己編程實現(xiàn)。通過程序的編寫,可讓學(xué)生更進一步理解算法的本質(zhì),特別是對算法的復(fù)雜度有直接的認識,為以后的積累和創(chuàng)新打下基礎(chǔ)。
第一,前置課程開設(shè)不太合理。密碼學(xué)課程的本身涵蓋內(nèi)容較廣,順利學(xué)習(xí)該課程需要首先對一些先導(dǎo)課程進行學(xué)習(xí)。由于現(xiàn)階段多個專業(yè)都在開設(shè)該課程,而對于先導(dǎo)課程的安排更多地是考慮到各專業(yè)自身的需求,有的專業(yè)可能會忽略對密碼學(xué)課程先導(dǎo)課程的考慮和安排。這直接導(dǎo)致了學(xué)生在學(xué)習(xí)這門課程過程中產(chǎn)生難度過大的問題。筆者建議,可在這門課程講授之前,面向開設(shè)本課程的學(xué)生分幾個專題講解密碼學(xué)基礎(chǔ)內(nèi)容。在講解這些內(nèi)容時,布置一些與密碼學(xué)相關(guān)的問題供學(xué)生思考和分析,從而為將來這門課程的學(xué)習(xí)打下基礎(chǔ)。
第二,文獻資料不夠新穎、充分。密碼學(xué)由于其應(yīng)用領(lǐng)域的保密性原因,很多文獻資料處于保密狀態(tài)?,F(xiàn)階段的密碼學(xué)教學(xué)和研究都是針對一些密碼學(xué)中的常規(guī)問題而開展。筆者建議應(yīng)該最大限度利用互聯(lián)網(wǎng)獲取當(dāng)前的最新資料,讓學(xué)生緊跟密碼學(xué)的研究進展,擴展學(xué)生的知識面。
第三,理論授課和實際應(yīng)用脫節(jié)。對于多數(shù)密碼學(xué)算法的講解,很多教材過多進行理論上的探討,缺乏直觀的應(yīng)用舉例。筆者認為,制定教學(xué)大綱時應(yīng)該對這門課程設(shè)置多個短小精悍的“課程項目”,供學(xué)生在學(xué)習(xí)過程中動手編程實現(xiàn)。同時,將“課程項目”作為期末考評的關(guān)鍵部分,促進學(xué)生積極鍛煉自己的動手能力,從而使之更加直觀地感受到密碼學(xué)的底層實現(xiàn)。
Abstract:Incorporate with experience to author’s practical cryptology teaching,characteristics of this course are simply discussed.Several methods that could be adopted during the process of teaching are introduced.Simultaneously,problems and corresponding countermeasures are mentioned at the end of this paper.
Key words:Cryptology;Teaching Methods;Course Characteristics
(責(zé)任編輯:宋孝忠)
On the Exploration of Course Characteristics and Teaching Methods of Cryptology
JIA Wei-feng1,YANG Li-bo2
(1.Anyang Normal University,Anyang 455000,China;2.North China Institute of Water Conservancy and Electric Power,Zhengzhou 450011,China)
G642
A
1008—4444(2010)03—0169—02
2010-03-02
賈偉峰(1982—),男,河南浚縣人,安陽師范學(xué)院計算機中心講師,碩士。