摘要:針對知識經(jīng)濟時代培養(yǎng)學(xué)生創(chuàng)新意識和創(chuàng)新能力的要求,在分析總結(jié)密碼學(xué)課程特點和多年從事信息安全及密碼學(xué)課程教學(xué)經(jīng)驗的基礎(chǔ)上,闡述如何將創(chuàng)新教育融入密碼學(xué)教學(xué)中。
關(guān)鍵詞:教學(xué)思路;創(chuàng)新教育;密碼學(xué);課程特點
21世紀是知識經(jīng)濟時代,“科技進步日新月異,國際競爭日趨激烈,各國之間的競爭,說到底,是人才的競爭,是民族創(chuàng)新能力的競爭”[1]。21世紀也是中華民族偉大復(fù)興的世紀,面對前所未有的機遇與挑戰(zhàn),黨的十七大作出了“提高自主創(chuàng)新能力,建設(shè)創(chuàng)新型國家……優(yōu)先發(fā)展教育,建設(shè)人力資源強國”的戰(zhàn)略部署。中國未來發(fā)展、中華民族的偉大復(fù)興對提高國民素質(zhì)和培養(yǎng)創(chuàng)新型人才提出了迫切需求,中共中央國務(wù)院頒布的《關(guān)于深化教育改革全面推進素質(zhì)教育的決定》中指出實施素質(zhì)教育就是以培養(yǎng)學(xué)生的創(chuàng)新精神和實踐能力為重點??梢?,創(chuàng)新是實施素質(zhì)教育的核心和關(guān)鍵。創(chuàng)新教育是以培養(yǎng)人們創(chuàng)新精神和創(chuàng)新能力為基本價值取向的教育,是知識經(jīng)濟時代的要求。培養(yǎng)創(chuàng)新人才、實施創(chuàng)新教育無疑是高校教師責(zé)無旁貸的歷史責(zé)任,本文結(jié)合作者進行密碼學(xué)教學(xué)的實踐,對如何進行創(chuàng)新教育提出了一些思路與體會,期望與同行相互探討。
1密碼學(xué)課程具有適合創(chuàng)新教育的特點
隨著信息技術(shù)的發(fā)展,信息安全已變得至關(guān)重要,信息安全技術(shù)已成為信息科學(xué)的熱點課題。信息安全也成為國家重點發(fā)展的新興交叉學(xué)科,國內(nèi)數(shù)十所高校根據(jù)國家需求設(shè)置了信息安全專業(yè),各高校也紛紛在數(shù)學(xué)、信息安全、信息與計算科學(xué)、計算機和通信等信息類專業(yè)開設(shè)了密碼學(xué)課程。密碼技術(shù)是信息安全技術(shù)的核心和關(guān)鍵,相關(guān)密碼學(xué)課程是信息安全專業(yè)的重要專業(yè)基礎(chǔ)課。密碼學(xué)發(fā)展歷史悠久,形成了深厚的理論基礎(chǔ)與豐富的應(yīng)用實踐[2],既能培養(yǎng)學(xué)生的信息安全素養(yǎng),又能培養(yǎng)學(xué)生創(chuàng)新精神,它天然具有一些適合創(chuàng)新教育的特點:
密碼學(xué)具有寬廣深厚的理論基礎(chǔ),涉及豐富的數(shù)學(xué)知識。密碼學(xué)發(fā)展歷史較長,形成的內(nèi)容與分支較多,涉及數(shù)學(xué)知識也比較多,包括初等數(shù)論、代數(shù)、橢圓曲線、組合論、圖論、概率論、信息論、數(shù)理統(tǒng)計、隨機過程、頻譜、糾錯編碼、計算復(fù)雜性和數(shù)理邏輯等[3]。
密碼學(xué)由密碼編碼與密碼分析兩個分支組成,它們相互對立,又相互促進。
密碼學(xué)與其他學(xué)科聯(lián)系廣泛,這些學(xué)科包括:應(yīng)用數(shù)學(xué)、通信、計算機應(yīng)用、信息處理和電子電路技術(shù)等,多學(xué)科的交叉融合往往是創(chuàng)新的突破點和必由之路。從應(yīng)用數(shù)學(xué)的角度看,密碼學(xué)是數(shù)論、抽象代數(shù)等理論的一種應(yīng)用;從通信的角度看,密碼學(xué)是保密通信和通信網(wǎng)絡(luò)安全的研究內(nèi)容;從計算機應(yīng)用的角度看,密碼學(xué)是數(shù)據(jù)安全、計算機安全和網(wǎng)絡(luò)安全的研究內(nèi)容;從信息處理的角度看,密碼是信息處理的一種形式。密碼學(xué)的研究內(nèi)容決定了它的交叉性和廣泛性,這使密碼學(xué)從不同的方面得到研究,從而得以不斷發(fā)展。各種數(shù)學(xué)和其他學(xué)科研究的新結(jié)果會很快地應(yīng)用于密碼學(xué),如基于橢圓曲線的加密和簽名方法、量子密碼等[4]。
具有較強的先進性,新思想、新技術(shù)不斷涌現(xiàn)。信息技術(shù)發(fā)展迅猛,與之相關(guān)的信息安全保障技術(shù)——密碼學(xué)理論與技術(shù)也是日新月異。
密碼學(xué)面向?qū)嶋H應(yīng)用,具有較強的可操作性。密碼算法的軟件或者硬件實現(xiàn)也是密碼學(xué)的一個重要研究熱點。
2將創(chuàng)新教育融入密碼學(xué)教學(xué)中
利用以上特點,作者在教學(xué)中設(shè)計和采用了以下策略和思路。
2.1設(shè)置密碼學(xué)課程內(nèi)容
創(chuàng)新意味著拋棄舊思想舊事物,創(chuàng)立新思想新事物,不迷信書本、權(quán)威,但并不反對學(xué)習(xí)前人經(jīng)驗;相反,任何創(chuàng)新都是在前人成就的基礎(chǔ)上進行的。比如,古典密碼的兩個基本手段是代替和置換,現(xiàn)代密碼算法雖然比古典密碼復(fù)雜得多,大多數(shù)好的算法仍然是代替與置換的組合。因此,基本知識的學(xué)習(xí)是創(chuàng)新的基礎(chǔ)。密碼學(xué)課程教學(xué)內(nèi)容繁多,在教學(xué)時要有選擇性和針對性,作為信息科學(xué)技術(shù)學(xué)科信息安全專業(yè)的一門基礎(chǔ)課,課程的目標是:使學(xué)生掌握密碼學(xué)的基本知識與基本理論,掌握常用的密碼算法和密碼協(xié)議的原理與技術(shù),具備解決信息安全中與密碼相關(guān)的工程實踐問題的能力,并為進一步研究密碼學(xué)奠定基礎(chǔ)。基于此目標,課程內(nèi)容選擇最基本與最本質(zhì)的東西,筆者將其歸為密碼算法、密碼技術(shù)、密碼學(xué)應(yīng)用和密碼協(xié)議四個部分。課程主要內(nèi)容如表1所示。在“密碼算法”的介紹中選擇經(jīng)典算法;“密碼技術(shù)”介紹與密碼實際應(yīng)用相關(guān)的一些問題;“密碼學(xué)應(yīng)用”介紹應(yīng)用密碼算法解決實際問題的一些典型成功案例;僅有安全的算法是不夠的,“密碼協(xié)議”是基于密碼算法解決安全問題的重要技術(shù),表1給出了一些典型和有趣的密碼協(xié)議實例。
2.2通過恰當實例培養(yǎng)學(xué)生的學(xué)習(xí)興趣
愛因斯坦說“興趣是最好的老師”,美國著名心理學(xué)家布魯納也認為最好的學(xué)習(xí)動機是學(xué)生對所學(xué)知識本身的內(nèi)在興趣。在密碼學(xué)教學(xué)中,如何調(diào)動學(xué)生的學(xué)習(xí)興趣,就成為要解決的首要問題。然而,由于密碼學(xué)涉及的數(shù)學(xué)知識較多,知識跨度廣,如果一開始就涉及深奧的數(shù)學(xué)知識,學(xué)生就會產(chǎn)生畏難情緒,失去學(xué)習(xí)興趣。
古典密碼是密碼學(xué)的淵源,如凱撒密碼、維吉尼亞密碼等,這些密碼大都比較簡單,易于理解,我們可以以此為例解釋密碼學(xué)的一些基本概念:明文、密文、加密、解密、密鑰和密碼分析。
密碼伴隨著戰(zhàn)爭的出現(xiàn)而出現(xiàn),圍繞密碼所展開的斗爭卻遠勝于戰(zhàn)爭本身,它既是人類智力的另類較量,又是數(shù)學(xué)的神秘之美的比拼[6]。在教學(xué)中穿插一些密碼背后的精彩故事,也能使同學(xué)們在辛苦學(xué)習(xí)的同時得到放松,并產(chǎn)生興趣,如轉(zhuǎn)輪加密機恩尼格瑪背后的故事、一些著名公司、著名人物所犯的密碼使用過程中的教訓(xùn)[7]129。
對復(fù)雜的算法,進行形象的教學(xué)設(shè)計,也是一個有效途徑。文獻[8]針對流密碼算法RC4教學(xué)過程中存在難以理解的問題,在分析RC4算法的基礎(chǔ)上,提出了一種基于摸球模型的RC4算法教學(xué)模型和教學(xué)過程。
與實際應(yīng)用問題結(jié)合,更能使同學(xué)們產(chǎn)生興趣,并且印象深刻,如安全電子郵件PGP、加密文件系統(tǒng)EFS的原理介紹與實際操作和使用。
2.3通過密碼學(xué)的發(fā)展歷史啟發(fā)學(xué)生的創(chuàng)新意識[5]
密碼學(xué)的發(fā)展歷史與有文字記載的歷史一樣長,回顧密碼學(xué)的發(fā)展歷史,可以看到密碼編碼與密碼分析相互對抗從而相互促進的發(fā)展過程,密碼學(xué)的發(fā)展歷史天然就是一個創(chuàng)新教育的完美實例。發(fā)現(xiàn)問題和解決問題是創(chuàng)新的開始,所謂創(chuàng)新,“就是發(fā)現(xiàn)了新的需要解決的問題,在廣泛研究了現(xiàn)有的理論和方法以后,認為不能解決,或者解決得不夠好,于是去研究新的理論和方法”[9]。有人通過研究密碼編碼隱藏消息的內(nèi)容,有人通過研究密碼分析破譯出明文。每次出現(xiàn)新的密碼編碼方法,就吸引眾多的人去研究密碼破譯的方法,而密碼分析方法的每一次進步都會導(dǎo)致密碼編碼方法的改進,或者出現(xiàn)新的密碼編碼方法。
任意單表代替密碼可以被基于語言統(tǒng)計特性的分析方法所破譯,因而出現(xiàn)了多表代替密碼。維吉尼亞密碼是多表代替密碼的典型實例,在重碼分析法和重合指數(shù)法出現(xiàn)之前,它被安全地使用了二百多年。對稱密碼算法存在大規(guī)模密鑰管理、密鑰秘密傳送的困難,并且無法解決抗否認問題,因此出現(xiàn)了非對稱密碼算法,其典型算法是RSA,RSA算法的三個發(fā)明人因此獲得了2002年國際計算機界的最高獎“圖靈獎”。非對稱密碼算法的出現(xiàn)又提出了公鑰管理的問題,引發(fā)了數(shù)字證書和公鑰基礎(chǔ)設(shè)施(PKI)解決方案的出現(xiàn)。為避免PKI帶來的證書管理、存儲和計算的代價以及撤銷的困難,基于身份的密碼學(xué)(IBC)成為一個新的解決思路與研究熱點。1996年,Paul Kocher博士首次提出計時攻擊的重要奠基思想,并發(fā)表相關(guān)研究成果,此后十余年,側(cè)信道攻擊及防御對策便成為密碼學(xué)研究中的一個重要分支[10]。新的密碼分析方法的出現(xiàn),對密碼編碼提出了挑戰(zhàn);新的密碼編碼方法,又吸引大家去研究更強大的密碼分析方法,密碼編碼與密碼分析天然就是一對問題。教師在教學(xué)中側(cè)重算法的基本思想,讓學(xué)生從中體會如何去發(fā)現(xiàn)研究問題,并用新思想去解決問題。
2.4采用啟發(fā)式教學(xué)方法
良好的教學(xué)方法是提高學(xué)生創(chuàng)新意識和培養(yǎng)學(xué)生創(chuàng)新能力的有效手段。密碼學(xué)課程教學(xué)內(nèi)容多,教師最常用的方式就是灌輸式的傳統(tǒng)講授方式,傳統(tǒng)的教學(xué)方法側(cè)重于知識的傳授,學(xué)生只知道死記硬背,不能在已有的基礎(chǔ)上推陳出新。二十世紀60年代,著名教育家葉圣陶先生提出了“凡為教,目的在達到不需要教”的著名論點。我國古代偉大的哲學(xué)家和思想家老子說“授人以魚,不如授之以漁,授人以魚只救一時之急,授人以漁則可解一生之需?!痹诒菊n程的教學(xué)中,采用了提問、比較和討論的啟發(fā)式教學(xué)方式,使學(xué)生在思考中學(xué)習(xí),在學(xué)習(xí)中主動思考。
如1883年Kerchoff第一次明確提出了密碼編碼的原則:加密算法應(yīng)建立在變換規(guī)則的公開不影響明文和密鑰的安全的基礎(chǔ)上。在教學(xué)中,不僅僅是簡單地給出這一結(jié)論,而是向大家提出問題,為什么基于密鑰的算法比受限制的算法更安全和實用,并引導(dǎo)大家進行討論,從而對這一原則有了深刻的領(lǐng)悟和理解[7]16。如可以引導(dǎo)大家進行討論:對稱分組密碼加密時要求對明文進行分組,大多數(shù)信息不能被完整地分成幾組(如最后一部分不夠一組),對此可以采用填充的方式來解決,如果是分組長度整數(shù)倍的報文是否需要進行填充呢?為什么任何密鑰都有一定的生存周期,也就是授權(quán)使用該密鑰的周期?
2.5采用由淺入深循序漸進的多層次教學(xué)模式
根據(jù)密碼學(xué)面向應(yīng)用,新思想新技術(shù)不斷涌現(xiàn)的特點,對每一個知識點設(shè)計了“基本概念和基本原理→基本算法→算法實現(xiàn)→相關(guān)應(yīng)用案例→前沿研究課題”的多層次教學(xué)模式和教學(xué)理念,使同學(xué)們在掌握基礎(chǔ)的同時,開拓思維,遠瞻未來發(fā)展。
如對于數(shù)字簽名,從與手寫簽名的比較中,引出數(shù)字簽名的功能與特性,再給出數(shù)字簽名的定義和設(shè)計要求,然后給出若干數(shù)字簽名方案(如RSA簽名方案、數(shù)字簽名標準DSS),最后再引入不可否認簽名、一次性數(shù)字簽名、群簽名方案、盲簽名和聚合簽名方案等熱點前沿課題。
2.6基于密碼學(xué)多學(xué)科綜合的特點引導(dǎo)大家主動思考
密碼學(xué)具有面向應(yīng)用、與實際聯(lián)系密切的特點,很多創(chuàng)新成果都是多學(xué)科交叉融合的結(jié)果,結(jié)合不同的應(yīng)用學(xué)科,引導(dǎo)同學(xué)深入思考,是實現(xiàn)創(chuàng)新的可行途徑。筆者結(jié)合數(shù)據(jù)庫安全,引導(dǎo)學(xué)生對以下問題進行思考:
對于密文數(shù)據(jù)庫,對某些字段進行統(tǒng)計、平均、求和等數(shù)學(xué)運算時,必須先對這些字段進行解密運算,然后對明文進行數(shù)學(xué)運算,之后再加密,這樣增大了時空開銷。在實際應(yīng)用中,對于某些重要或敏感數(shù)據(jù),滿足用戶的操作需求,但又不讓用戶了解其中信息。
如何解決上述問題,削減加、解密所需要的時空開銷,提高數(shù)據(jù)庫的運行效率,采用秘密同態(tài)技術(shù)是一個有效方法[7]306-307。
由于密碼學(xué)涵蓋的知識廣泛,在適當?shù)臅r候,讓同學(xué)們就感興趣的相關(guān)問題撰寫課程論文,可以幫助他們更好地理解課程內(nèi)容,開拓學(xué)習(xí)思路,鍛煉文獻閱讀能力,引導(dǎo)大家主動獲取知識的熱情。
3結(jié)語
信息保密的需求由來已久,互聯(lián)網(wǎng)時代信息安全的重要性日益凸顯,密碼技術(shù)是信息安全的核心技術(shù),信息技術(shù)人才掌握必要的密碼學(xué)知識也成為一種基本要求。為迎接知識經(jīng)濟的挑戰(zhàn),適應(yīng)全面建設(shè)小康社會,建設(shè)創(chuàng)新型國家的需要,高等教育的創(chuàng)新教育也是國家和時代的要求。在信息技術(shù)類學(xué)科設(shè)置密碼學(xué)相關(guān)課程,不僅可以提高學(xué)生的信息安全素養(yǎng),通過將創(chuàng)新教育融入密碼學(xué)教學(xué)中,也有助于培養(yǎng)學(xué)生的創(chuàng)新意識和創(chuàng)新能力。
參考文獻:
[1] 江澤民. 江澤民文選(第三卷)[M]. 北京:人民