沈 靜
摘要:密碼學課程是信息安全及其相關專業的一門重要基礎課程。本文分析了獨立學院密碼學課程的教學現狀,結合學生實際情況及課程本身的特點,總結了幾點適合獨立學院學生的教學經驗,期望能起到參考和借鑒作用。
關鍵詞:獨立學院;密碼學;教學探索
中圖分類號:G642文獻標識碼:B文章編號:1672-5913(2009)04-0074-02
1引言
隨著計算機和網絡進一步滲入人們的日常生活,網絡安全問題越來越受到關注,這就迫切需要信息安全技術的支持,由此產生了信息安全專業這一新興的學科。目前許多高校都已經開設了信息安全本科或研究生專業,一些獨立學院也開設了信息安全相關的本專科課程。作為一個新興專業,信息安全專業的建立和發展是教育部門和各個高校一直都在探索的課題。
密碼技術是信息安全技術的關鍵和核心。密碼學為信息安全提供了深刻的理論依據和豐富的應用實踐,是集數學、計算機科學以及通信和信息系統等多個學科為一體的交叉學科,也是信息安全專業所必須的專業課程。然而由于密碼學涉及的數學知識多,數學基礎較差的學生學起來比較吃力,尤其是獨立學院的學生,喜歡學那些可以只需動手完成的內容,而不注重理論知識的學習和積累,所以普遍反映密碼學太深奧,太難學了。如何在獨立學院較好地完成密碼學的教學任務,是獨立院校密碼學教師需要認真思考的問題。
本文根據我們學院面向本專科生開設密碼學選修課的實踐經驗,并結合獨立學院學生的實際特點和這門課程本身的教學特點,在教學方法上進行了一些分析和探索,總結了幾點適合獨立學院學生的教學經驗。
2教學現狀分析
2.1理論多,學時少
密碼學主要分為密碼編碼學和密碼分析學,兩者相輔相成,對立統一。結合我們現行的教學要求,教學內容主要包括:密碼學概論、古典密碼、序列密碼、分組密碼、公鑰密碼、Hash函數、數字簽名和認證、密碼協議等。我們的理淪學時是36學時,其中還包括實驗課程。由于這門課程涉及到的數學知識多,在講上述內容的同時還要不斷強化數學知識,而獨立學院的學生又普遍存在數學基礎薄弱的特點,所以在這36個學時內,教師要把所有的內容講清楚,并讓學生理解掌握比較困難。
2.2學生只注重密碼學的具體應用
人們總想對他人保守自己的秘密,并且對更先進的數據保護方法的需求在不斷地增加。在本課程的教學過程中,我們發現學生對密碼學的應用格外的關注,而不重視甚至忽略密碼學的基本原理。比如學生就對加密、簽名的軟件特別感興趣,他們滿足于馬上就可以看到的加密結果,而且還會花時間去鉆研比較哪個軟件加密得更快。但是他們往往忽視軟件里面基本加密算法,以至于要他們在分析帶hash函數的數字簽名的時候根本無從下手。通過和其他學科的任課老師交流,我們發現不重視學科的基本原理和理論是獨立學院大多數學生的普遍特點。這就對任課老師提出了更多更細的教學要求:一方面要講授密碼學的具體應用:另一方面也要考慮如何讓學生保留學習興趣的同時,又能開展密碼學理論知識的學習。
2.3高效合理地考核學生成績有難度
考試是檢驗學生學習效果的主要手段,但在事實上,尤其是在獨立學院,考試很大程度上也是學生學習的指揮棒。高效合理的考核機制可以極大地促進教學質量地提高,但是在獨立學院,要對密碼學課程組織高效合理的考核機制有一定的難度。根據前幾任授課教師的經驗,如果以考查密碼學的理論知識為主,學生對理論知識的理解很有限,尤其是專科生,所以會造成考核成績的大面積低下,效果不是特別好;如果以考查考實踐操作為主,又必然造成學生忽視理論學習,舍本逐末。此外,現有書本和參考資料合適作為考試題的習題比較少,更多依賴于教師自身的探索和挖掘。
3教學方法探索
3.1有針對性地選擇教學內容,突出教學內容的目的性和層次性
由于密碼學覆蓋的教學內容多,我們在教學時要有選擇性和針對性。我們只介紹基礎知識和培養基本技能,講授最基本和最本質的東西,即基本的密碼思想和方法以及基本的算法。例如對于序列密碼,只講最簡單的線性反饋移位寄存器和RC4算法,而不涉及更多的算法和數學知識,重點讓學生理解序列密碼和分組密碼的區別和不同的使用環境。對于公鑰密碼,只提及橢圓曲線密碼體制,而不作詳細講解。重點講解RSA密碼體制,包括其基本思想、實現方法和使用環境,讓學生深刻理解和掌握RSA密碼體制。
獨立學院的多數學生對理論知識的學習缺乏耐心,而且學生學習目的性很強,有時甚至很功利。他們在學習任何知識之前都會問:學習這些東西干什么?如果覺得有意思,他們才會繼續認真地學習下去。因此教師必須首先回答學習這些知識能做什么,能達到什么目的,而且在這期間要充分調動學生的學習興趣。
在教學過程中,還要注意教學內容的層次性。例如,在開始學密碼學時學生對加密是最感興趣的,所以我們結合實驗課,先講清楚加密原理的一個框架——對稱密碼和公鑰密碼。然后給出對稱密碼的分支——分組密碼和序列密碼。在講公鑰密碼的時候就要引進數字簽名的概念。我們以RSA為主線,便于學生理解和掌握,HASH函數的概念也是在這個過程中慢慢引入的。我們要講清楚每塊內容之間的區別和聯系,讓學生心目中形成一定的內容系統框架,便于他們掌握密碼學的基本思想和方法。
另外,要注重語言的簡潔和通俗易懂,并且要隨時注意課堂氣氛,調動學生的學習興趣,比如適時的講一些現實生活中的例子,問一些有趣的問題,做一些師生互動的教學活動,時刻讓學生參與進來,而不能一味地只顧著完成教學任務。這些是中小學課堂的特點,但實踐證明學生很喜歡這種方式,課堂效果很不錯。最后,在授課過程中還要適當地介紹一些現代密碼學的理論和應用熱點,從而激發和鼓勵一部分有余力的學生進一步學習。
3.2注重教學實踐,不忽視學生對密碼理論的理解
我們在每次理論學習后都配備實驗課,在進行密碼學課程的教學內容設置時,考慮到獨立院校學生的特點,如果純粹講授理論知識,學生的學習熱情會消失的更快,因而我們把教學重點放在密碼學的基本概念和經典算法上的同時,介紹一些相關的軟件,例如PGP、CAP、TrueCrypt和國產的大狼狗加密專家等等,讓他們在實現加密、解密和簽名等的過程中,提高學習興趣。
每次做實驗的時候我們適當的加些課后練習,注重培養學生的理論分析。比如在完成完數字簽名和HASH的學習后,我們給出練習:某企業規定應用公鑰簽名技術。簽名算法為RSA,散列算法為MD5。假定算法以及密鑰長度是安全的。已知公司總經理的公鑰為:(el,n1)=(10001,64266254DF……),Bob的公鑰為:(e2,n2)=(10001,94816639D0……),Bob的私鑰為:(d2,n2)=
(665289C16……,94816639D0……)。有一天,員工Bob收到一份文件《放假通知》,署名為總經理,并附帶該文件的簽名值:IDFOEE6683……。請根據這份文件和附帶的簽名,驗證這份文件是否經過總經理的數字簽名?寫出驗證的步驟。通過做這樣的練習,學生既可以理解理論知識,又可以將理論運用到實際當中,鍛煉他們分析問題的能力。
獨立學院的多數學生課后可能不會花很多的時間重溫上課的內容,在講理論知識的過程當中要不斷的強化所學過的知識,并鼓勵他們學會自己查資料,在查資料的過程當中積累一些知識。由于學生的數學基礎不一樣,所以我們重點講授一些基本的數學概念,比如:同余、模運算、歐幾里得算法和擴展的歐幾里得算法、歐拉函數等,并通過課堂聯系和作業等方式反復的給他們作練習,反復講解,這樣有助于他們的理解。只有通過多練習,從不同側面逐漸把握概念的內涵,才能形成準確的理解。但是密碼學教學中沒有足夠的時間這樣訓練學生,為此教師一定要把概念講透徹,并隨遇隨講,常講常新,反復強調,使學生對概念形成準確的理解。
3.3采用靈活的考核制度
在獨立學院,采用靈活的考核機制是有必要的。我們重視平時成績的積累,提高平時成績的比例,平時成績與考試成績的比例是6:4,平時成績的來源一方面是檢查學生的作業,看他們對理論知識的理解情況;另一方面是注重學生的創新能力,比如幾個同學一組實現一些簡單的密碼算法或者介紹一個實用密碼軟件的使用方法。
對于考試試題,一方面,選擇與實際直接關聯和具有典型性的理論知識作為考查點,務必做到少而精。另一方面,選擇較多的實踐操作操作題目,盡可能地做到實踐操作不流于表面,要能夠從實踐操作中體現對密碼知識的理解。另外,適當考查一些密碼學方面名人軼事,以提高試題的趣味性;增加一道主觀題論述題,讓學生充分發揮自己對密碼學的理解。
4教學效果分析
通過上述的教學實踐和最終的考核結果來看,學生對數學理論的理解和掌握仍然有待提高,但最終的教學效果達到了預期的目標。通過這門課程的學習,學生不但能理解基本的密碼原理,掌握了相關軟件的使用,最重要的是他們對密碼學有了比較濃厚的興趣,懂得了密碼學在信息安全中所起到的重要作用,這為其在后續的信息安全相關課程中的學習奠定了堅實的基礎。
5結束語
本文根據我們在獨立學院開設密碼學選修科的實踐經驗,并結合獨立學院學生的實際特點和這門課程本身的教學特點,分析了獨立學院密碼學課程教學現狀分析,然后在教學方法上進行了一些分析和探索,總結了幾點適合獨立學院學生的教學經驗。實踐證明最終的教學效果達到了預期的目標。