竇本年,許春根
(南京理工大學 理學院,江蘇 南京 210094)
如何培養大學生的創新能力是當前和未來一段時間高等教育的一個重要和緊迫的課題。本科階段是學習方式由教師傳授為主向自我學習為主的轉化階段,此階段雖以學習知識為主要目的,但也要求本科生逐步獲得探索世界、獨立解決問題的能力。
對本科生進行必要的科研方法論教育無疑對培養本科生的創新精神和創新能力極其重要。因此,在課程教學中挖掘學科體現的科學思想和研究方法,并以這些思想和方法引導學生的課程和專業學習,甚至培養科研創新能力具有重要的意義。
科研方法論能為本科生提供必要的研究方法和技能,對本科生了解科學研究的過程、為今后從事科學研究提供方法上的準備[1]。2009年,張偉剛教授提出并設計了“問題三層次分析法”和“科研三階段訓練法”研究性教學模式, 并指出在大學研究性教學中,讓大學生掌握基本的科研方法、參加一定的科研訓練,對大學生科研素質的養成及科研能力的提高具有重要的現實意義[2],張偉剛教授一直致力于科研方法論的教學實踐,目前主持國家級精品課程科研方法論。2014年,楊云松等人探討了在醫學院校中進行科研方法學課程的教學改革與實踐,提出“只有掌握方法學原理才會真正具備科學思維”的理念,并在實踐中采用“從具體案例導入到抽象原理引出”的教育模式[3]。2016年,王艷濱在科研方法教學中為了避免傳統教學模式的不足,提出任務型教學模式,任務型教學以學生為中心、以任務為導向,教師作為指導者和資源提供者;任務型教學可更好地實現教學目標[4]。2017年,邱宏等人對于基于研究性教學的科研方法教育在培養拔尖人才方面進行了實踐,取得顯著的成果[5]。
隨著計算機網絡的廣泛應用和深入發展,網絡信息安全越來越成為影響國家安全、經濟發展、社會穩定的重要因素,已成為國家安全的一個重要方面。信息安全的基本目標包括實現數據的機密性、完整性、認證性、不可否認性等要求。現代密碼理論和技術是實現這些信息安全目標的重要技術和理論核心[6]。
密碼學是各類高等院校本科生信息類、數學類、計算機類等專業競相開設的重要選修課,也是信息安全專業的主干基礎課。密碼學及相關課程被引入信息安全專業以及其他相關專業的時間不是很長,但各高校教師對密碼學課程內容的設置、教學方法的改革及教材建設進行了有益的探索,取得了豐碩成果[7-10]。筆者所在教學團隊自2005年起一直負責南京理工大學密碼學課程的教學工作。在教學中,筆者團隊積極吸取各兄弟院校密碼學課程教學的經驗,也積極探索密碼學課程的教學改革和教學實踐。
1976年后的現代密碼學雖然歷史不長,卻不斷有重大理論的突破。這些理論突破體現了豐富的科學研究思想和方法,使密碼學課程非常適合講述一些重要的科學思想和研究方法。這幾年筆者團隊的主要工作是結合密碼學課程的教學,進行科研方法論教育的探索和實踐。
密碼學中一些重大理論發現或方案的創建都來源于對一些實際問題的思考和解決,可以說,理論來源于實際,且具有直觀的實際背景。
在傳統的基于PKI(Public Key Infrastructure,公鑰基礎設施)的公鑰密碼系統中,每個用戶有一對密鑰(pk,sk),其中pk是公鑰,sk是私鑰。用戶在使用自己的公鑰pk前需要CA(證書頒發機構)對自己的公鑰pk進行簽名,產生公鑰證書以保證公鑰的合法真實性;另外,CA還要運行并管理一個含有用戶公鑰證書狀態的網站。這樣就導致基于PKI的公鑰密碼系統密鑰管理復雜,實現代價高。1984年,著名的密碼學家Shamir為了解決公鑰管理的復雜性,提出了基于身份的公鑰密碼學概念。在基于身份的密碼方案中,用戶的公鑰可以是任何能唯一對應用戶身份的字符串,這些字符串可以是用戶的電話號碼、身份證號碼或E-mail地址等。很顯然,若基于身份的公鑰密碼學能夠實現,將大大降低密鑰管理的復雜度。18年后,也就是2002年,Boneh等人利用配對實現了基于身份的加密方案。此后數年,密碼學迎來了一個研究爆發期,大量的各種基于身份的密碼方案被提出來。
密碼學中還有許多密碼方案和理論(如健忘傳輸協議、抗量子密碼方案、各種數字簽名方案)像基于身份的密碼學一樣,是基于解決實際問題而創建的。 學生在接觸和理解這些理論和方案后,會領會一個重要的科學思想:密碼學很多理論和方案都是問題驅動的。授課教師可以利用一些教材中未出現的方案進一步引導學生思考,進而加深這一理解。筆者團隊在課程教學中曾經讓學生思考如何對電子投票進行簽名而不泄露投票內容且不能追蹤投票者身份。首先讓學生考慮,若是紙質投票將如何辦到,學生經過討論提出一些解決方案。最后,告訴學生盲簽名(Blind signature)就是為了完美地解決這一實際問題而產生的。
自然科學研究中常常會把復雜問題的解決規約成一個或幾個更容易解決的問題。20世紀數學最大的成就是費馬大定理的證明。為了證明費馬大定理,數學家將之規約為與之等價的“谷山—志村猜想”,英國數學家 Wiles通過證明“谷山—志村猜想”最終證明了費馬大定理。密碼學中處處體現著規約的思想。
現代密碼學的一個主要特點是有形式化的定義,精確的假設和安全性證明[11]。現代密碼學要求在設計方案時將方案的安全性規約到一個數學難題或歸結到已有的安全方案。這方面的例子有教科書式Rabin密碼體制的IND-CPA(Indistinguishability under chosen plaintext attack,選擇明文攻擊下的密文不可區分性)安全可規約到大整數分解的難題;設計安全性高的ID-CCA(Indistinguishability under chosen ciphertext attack,選擇密文攻擊下的密文不可區分性)安全的公鑰加密方案可規約到安全性要求稍低的IND-CPA安全的公鑰加密方案。
偽隨機生成器、隨機函數、消息認證碼、偽隨機置換、對稱加密以及消息認證碼都屬于對稱密碼學的范疇。從密碼學課程可知有如下重要結果:所有這些對稱密碼學原語(Primitives)存在的充要條件是單向函數(One way function)的存在。換句話說,單向函數是對稱密碼學的最小條件。事實上,密碼學的另一個重要原語數字簽名的最小條件也是單向函數。這些結果表明:一些復雜的高層(High level)對稱密碼方案設計可以規約到概念和性質相對容易理解的低層(Low level)單向函數。
這一部分的訓練案例可包括:
(1)一次一密(One time pad)是無條件安全的加密方案。可引導學生思考如下問題:如何利用一次一密設計一個加密方案,使其安全性歸結到偽隨機生成器的偽隨機性。
(2)學生已經知道數字簽名的最小條件也是單向函數。很自然地,可以引導他們提出和思考一個很有意義的問題,即基于身份的數字簽名存在的最小條件是什么?
(3)陷門單向函數的存在意味著公鑰加密方案的存在,從而自然地引導學生提出一個重要課題,即公鑰加密方案的存在是否意味著陷門單向函數的存在?
其他學科在思考問題和建模時,經常暫不考慮一些次要因素而只考慮某種理想化的環境。密碼學中有些理論也需要這樣的理想模型。密碼學中最經典的理想化模型莫過于下面要說的隨機預言模型。
隨機預言模型是20世紀90年代初由Bellare和Rogaway提出的。在隨機預言模型中,Hash函數被理想化為一個隨機函數。隨機預言模型的設計范式包括如下兩步:①在隨機語言模型下設計一個密碼方案并證明其安全;②在實際應用中,將理想化隨機模型替換為一個合適的Hash函數。
盡管密碼學界對隨機預言模型還有爭議,但隨機預言模型在密碼方案的設計方面取得了巨大的成功,表現在:①在隨機預言模型下,很多高效率的密碼方案被構造出來,比如隨機預言模型下的RSA簽名和加密方案;②目前,還沒有發現一個實際的在隨機預言模型下被證明是安全的但在Hash函數替換后卻不安全的密碼方案。
密碼學中除了隨機預言模型使用了理想化思想外,還有不少方案的安全模型定義使用了理想化的思想,這些定義往往引入一個值得絕對信任的第三方。教師可以讓學生思考如何定義安全的多方計算。實際上,可以假設在一個多方參與的計算中,有一個絕對可信的第三方,所有參與方將自己的輸入發給這個第三方,第三方再將計算結果發給每個參與方。
密碼學課程的許多教學內容體現了學科間和學科內的融合這一科學研究越來越普遍的趨勢。量子密碼學是密碼學與量子物理相融合而產生的一個新的密碼學研究分支。 編碼學是研究信息傳輸糾錯的學科,密碼學是研究信息傳輸保密的學科。1978年,Mceliece將編碼理論用于密碼學的構造,提出了著名的Mceliece公鑰加密體制。Mceliece公鑰加密體制是抗量子計算機重要的算法之一。密碼學學科自身內也有許多將不同功能融合而產生新功能的密碼方案的實例。比如,鄭玉良教授將加密和簽名功能融合提出了簽密方案;不同的簽名被融合產生新簽名(基于身份的多重簽名、基于身份的盲簽名等)。
教師可讓學生思考怎么實現電子的公平的合同簽署,在公平的合同簽署中,雙方都能確保對方對合同簽名且某個時刻后能拿到對方對合同的簽名;可引導學生將一些密碼方案融合以實現公平的合同簽署,實際上,可驗證加密簽名可實現公平的合同簽署。
本文討論了密碼學課程體現的科學思想和研究方法,包括問題驅動、規約、理想化建模和融合等科學思想,并對每種思想和方法提供可能的案例以實現對大學生的科研方法論教育,從而更好地培養大學生逐步獲得探索世界、獨立解決問題的能力,為今后從事科學研究提供方法上的準備。筆者所在教學團隊近十幾年一直負責南京理工大學密碼學課程的教學工作,在實際教學中不斷摸索將科研方法論教育融入課程教學中,對學生進行創新能力和創新精神的培養,在此基礎上指導本科生畢業設計、科研訓練、全國密碼技術競賽等實踐教學活動。幾年來,我們在實際中取得了良好的教學效果。團隊指導學生曾獲2013年校“百篇優秀畢業設計”、2016年國家級科研訓練項目資助以及2016年全國密碼技術競賽一等獎。
參考文獻:
[1]張偉剛. 科研方法論[M]. 天津: 天津大學出版社, 2006.
[2]張偉剛. 大學研究性教學與科研方法[J]. 高等理科教育, 2009, 84(2): 65-68.
[3]楊云松, 常存庫, 孫麗英.醫學院校科研方法學課程教學模式改革與實踐[J].中醫教育, 2014, 33(6): 35-36.
[4]王艷濱. 任務型教學法與科研方法教學[J]. 跨語言文化研究, 2016, 10(2): 333-341.
[5]趙雪丹, 于明鵬, 吳平. 基于研究型教學開展拔尖人才培養的實踐探索[J]. 高等理科教育, 2017, 134(4): 83-86.
[6]蔣春洋, 李秀天. 研究性教學在“教育科研方法”課程中的實踐與反思[J]. 現代教育科學, 2016(11): 66-69.
[7]李夢東.《密碼學》課程設置與教學方法探究[J]. 北京電子科技學院學報, 2007, 15(3): 61-66.
[8]射絨娜, 鄭秀林, 李子臣.密碼學課程實踐教學體系探索[C]//第九屆中國通信學會學術年會論文集. 北京: 中國通信學會青年工作委員會, 2012: 472-475.
[9]張瑞霞, 唐成華, 唐麟. 密碼學實驗教學改革應用實踐[J].計算機教育, 2013(5): 68-71.
[10]王少輝, 郁天嬋. 現代密碼學教學實踐與思考[J].中國科教創新導刊, 2012(4): 151-153.
[11]Katz J, Lindell Y. Introduction to modem cryptography[M]. Florida: CRC Press, 2008.