




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
《網(wǎng)絡安全技術(shù)實踐教程》教案授課單位:授課時間:授課班級:授課教師:年月日教案6(第6號/17號)課程名稱網(wǎng)絡安全技術(shù)實踐授課日期、節(jié)次班級課堂類型理論+實踐地點章節(jié)(任務)名稱任務3.1哈希算法任務3.2對稱加密算法教學目標知識目標1.了解算法基本原理2.了解應用場景;3.掌握通過對IP地址和域名加以限制來限制對WWW的訪問。能力目標1.能夠使用MD5算法加密;2.能使用DES對數(shù)據(jù)加解密;3.能夠熟練操作課程的網(wǎng)絡攻防實訓平臺。素質(zhì)目標1.培養(yǎng)學生良好的職業(yè)道德、法律意識、愛崗敬業(yè)精神;2.培養(yǎng)學生自主學習能力、交流溝通能力、創(chuàng)新能力和團隊合作意識;3.培養(yǎng)學生網(wǎng)絡安全意識、民族自豪感和科技報國精神。學情分析1.專業(yè)興趣高,動手能力強,信息化接受程度高;2.具備一定系統(tǒng)軟件、應用軟件操作維護技能,但掌握不深入;3.有一定溝通交通能力,85%的學生不具備換位思考意識,70%的學生沒有網(wǎng)絡安全相關(guān)基礎(chǔ)。重難點分析教學重點算法的基本原理教學難點1.MD5算法加密2.DES對數(shù)據(jù)加解密信息化應用方法基于省級精品在線開放課程,通過泛雅教學平臺發(fā)布教學資源(如微課、操作流程、操作視頻、安全案例等),做好課前預習;通過翻轉(zhuǎn)課堂,先發(fā)布任務,學生根據(jù)任務現(xiàn)場操作,教師糾錯,以小組為單位,生生互評(根據(jù)操作評分細則),并錄制視頻;對于學生的易錯點和本節(jié)課的難點進行突破學習,提升學生對操作流程的熟悉度、熟練度和規(guī)范化。課程思政元素家國情懷。了解國家加密算法的現(xiàn)狀及應用,增強使命和擔當。民族自信。通過人物事跡,王小云院士破解MD5\SHA-1算法,打破國際密碼學壟斷。教學實施過程課前:平臺發(fā)布LINUX系統(tǒng)安全加固任務1、任務2學習任務,供學生預習。課中:導入新課消息認證機制是防御網(wǎng)絡主動攻擊的一種重要技術(shù),主要用于驗證接收消息的真實性(驗證消息發(fā)送方和接收方的真?zhèn)危?、完整性(驗證消息在傳輸過程中是否被篡改、重放或延遲等)。MD5算法是一種被廣泛使用的哈希算法,其通過對比散列值來驗證消息的完整性,常用于防御篡改攻擊。工程師小林通過查看服務器系統(tǒng),發(fā)現(xiàn)數(shù)據(jù)庫文件被篡改,小林采用MD5算法工具進行一致性校驗,對被篡改的文件進行恢復或刪除,降低了系統(tǒng)被入侵的風險。對于許多人來說,密碼學是隱藏信息的科學和藝術(shù)。在密碼學的世界里,加密的強度取決于算法的細節(jié)和密鑰的大小。對稱加密算法是一種使用單鑰密碼系統(tǒng)的加密算法,發(fā)送方和接收方可以用同一個密鑰對信息進行加密和解密。工程師小林在客戶端和服務器端傳輸數(shù)據(jù)時,將DES算法和其他算法混合起來使用,形成混合加密體系,以保證數(shù)據(jù)的機密性和完整性。任務1知識點講解1、哈希算法簡介哈希算法(Hash函數(shù),又稱散列函數(shù)、雜湊函數(shù)),是一種廣泛應用的密碼學算法,被應用于多種不同的安全應用和網(wǎng)絡協(xié)議中。哈希算法能夠把任意長度的輸入變換成固定長度的輸出,該輸出就是散列值。在消息認證過程中,發(fā)送方根據(jù)待發(fā)送的消息,使用哈希算法計算出一組Hash值,然后將Hash值和消息一起發(fā)送出去,接收方收到消息后對該消息執(zhí)行同樣的Hash計算,并將結(jié)果與收到的Hash值進行對比,如果不匹配,則接收方可推斷出該消息可能遭受了篡改攻擊。MD5是計算機安全領(lǐng)域廣泛使用的一種哈希算法,主要用于驗證信息傳輸?shù)囊恢滦?。MD5算法在20世紀90年代初由美國麻省理工學院教授李維斯特(Rivest)開發(fā)實現(xiàn),其前身為MD2、MD3和MD4算法。目前,主流編程語言普遍已有MD5算法的實現(xiàn)。MD5算法的作用是讓大容量信息在用數(shù)字簽名軟件簽署私鑰前被“壓縮”成一種保密的格式(把一個任意長度的字符串變換成一定長度的十六進制數(shù)字串)。除MD5算法以外,較常用的算法還有SHA-1、RIPEMD以及HAVAL等。2、MD算法的發(fā)展歷史1.MD2算法李維斯特在1989年開發(fā)出MD2算法。在這個算法中,首先對信息進行數(shù)據(jù)補位,使信息的字節(jié)長度是16的倍數(shù)。然后,將一個16位的檢驗和追加到信息末尾,并且根據(jù)這個新產(chǎn)生的信息計算出散列值。隨著時間的推移,人們發(fā)現(xiàn)MD2算法存在安全漏洞。攻擊者可以利用這些漏洞找到不同的輸入值產(chǎn)生相同哈希值的情況(即“碰撞”),從而破壞MD2的安全性。2.MD4算法為了加強算法的安全性,李維斯特在1990年又開發(fā)出MD4算法。MD4算法同樣需要填補信息,以確保信息的比特長度減去448后能被512整除(即模512等于448)。填充后的消息末尾還需附加填充前消息長度的64位表示。然后將填充后的消息按512比特長度進行分塊,且每個區(qū)塊要經(jīng)過3個不同步驟的處理。但是,鄧波爾(Denboer)和博斯勒(Bosselaers)以及其他人很快發(fā)現(xiàn)了MD4版本中可被用于攻擊的安全漏洞。多柏?。―obbertin)向人們演示了如何利用一臺普通的個人電腦在幾分鐘內(nèi)找到MD4完整版本中的沖突,這個沖突實際上是一種漏洞,它將導致對不同的內(nèi)容進行加密卻可能得到相同的加密結(jié)果。盡管MD4算法存在安全漏洞,但它對在其后數(shù)種信息安全加密算法的提出有著不可忽視的引導作用。3.MD5算法1992年,李維斯特開發(fā)出技術(shù)上更趨近成熟的MD5算法,它在MD4算法的基礎(chǔ)上增加了“安全-帶子”(Safety-Belts)的概念。雖然MD5比MD4復雜度高,但卻更為安全。3、MD5算法的實現(xiàn)原理由于MD5算法較為復雜,涉及較深層的數(shù)學運算,因此這里只介紹MD5算法的處理過程。簡單概括起來,MD5算法的處理過程分為4步:處理原文、設置初始值、循環(huán)加工、拼接結(jié)果。(1)處理原文:對源文件或源字符串進行處理,使得處理后的信息長度滿足算法要求。(2)設置初始值:MD5算法的哈希結(jié)果長度為128位,按每32位分成一組,共4組。這4組結(jié)果是由4個初始值A(chǔ)、B、C、D經(jīng)過不斷演變得到的。MD5算法的官方實現(xiàn)中,給出了A、B、C、D的十六進制初始值。(3)循環(huán)加工:這一步是最復雜的一步,經(jīng)過多次循環(huán)演變,最終得到A、B、C、D的值。(4)拼接結(jié)果:把循環(huán)加工最終產(chǎn)生的A、B、C、D這4個值拼接在一起,轉(zhuǎn)換成字符串即可。該字符串即為得到的128位MD5值。4、MD5算法的特點MD5算法具有以下特點。(1)壓縮性:對于任意長度的數(shù)據(jù),計算出的MD5值的長度都是固定的。(2)易計算性:從原數(shù)據(jù)計算出MD5值很容易,這使開發(fā)者很容易理解和開發(fā)出MD5加密工具。(3)抗修改性:對原數(shù)據(jù)進行任何修改,哪怕只修改1個字節(jié),所得到的MD5值都有很大區(qū)別。(4)強抗碰撞性:已知原數(shù)據(jù)及其MD5值,想找到一個具有相同MD5值的數(shù)據(jù)(即偽造數(shù)據(jù))是非常困難的,這大大提高了數(shù)據(jù)的安全性。5、MD5算法的應用場景1.一致性校驗MD5的典型應用是使一段信息產(chǎn)生消息摘要(MessageDigest),以防止其被篡改。我們都知道,地球上的任何人都擁有獨一無二的指紋,指紋鑒別通常為司法機關(guān)鑒別罪犯身份最值得信賴的方法之一。與之類似,文件的MD5值就像文件的“數(shù)字指紋”,MD5可以為任何文件(不論其大小、格式、數(shù)量)產(chǎn)生一個獨一無二的數(shù)字指紋,如果任何人對文件做了修改,這個數(shù)字指紋就會發(fā)生變化。比如,下載服務器為一個文件預先提供一個MD5值,用戶下載完該文件后,用MD5重新計算下載文件的MD5值,通過比較這兩個值是否相同,即可判斷下載的文件是否出錯,或者下載的文件是否被篡改。利用MD5來進行文件校驗的方法被大量應用于軟件下載站點、論壇數(shù)據(jù)庫、系統(tǒng)文件安全等方面。2.安全訪問認證MD5還被廣泛應用于操作系統(tǒng)的登錄認證,如用于認證UNIX、Linux、各類BSD(BerkeleySofiuareDistribution,伯克利軟件套件)系統(tǒng)的登錄密碼、數(shù)字簽名等。在UNIX系統(tǒng)中,用戶的密碼由MD5或其他類似算法經(jīng)哈希計算后存儲在文件系統(tǒng)中,當用戶登錄系統(tǒng)時,系統(tǒng)把用戶輸入的密碼經(jīng)過MD5Hash計算得出MD5值,再將該MD5值和保存在文件系統(tǒng)中的MD5值進行比較,進而確定輸入的密碼是否正確。通過這樣的步驟,系統(tǒng)在并不知道用戶密碼明文的情況下就可以確定用戶登錄系統(tǒng)的合法性,也可以避免用戶密碼被具有系統(tǒng)管理員權(quán)限的用戶所竊取。6、MD5算法的破解從技術(shù)的角度來講,MD5比較安全,但可通過撞庫的方式進行破解。其通常用于登錄密碼的破解,MD5撞庫的方法有很多,主要包括暴力枚舉法、字典法、彩虹表法等。彩虹表法是對字典法的優(yōu)化,它基于空間/時間替換的原理,通過預先計算并存儲大量的哈希值及其對應的明文密碼,來加速破解過程。對于單機來說,暴力枚舉法的時間成本很高,字典法的空間成本很高。但是利用分布式計算和分布式存儲,仍然可以有效破解MD5算法,因此這兩種方法被黑客們廣泛使用。任務1實施步驟1.MD5加密(1)登錄服務器,打開實驗環(huán)境,打開“Desktop\實驗工具\MD5Verify”文件夾,如圖3-1所示。圖3-1MD5加密工具MD5Verify(2)雙擊“MD5Verify”圖標打開軟件,在打開的“MD5加密與校驗比對器”窗口的“加密或校驗內(nèi)容”文本框中輸入“123456”,然后單擊“加密或校驗”按鈕生成MD5密文,如圖3-2所示。圖3-2生成MD5密文2.MD5破解(1)打開“Desktop\實驗工具\MD5Crack3”文件夾,如圖3-3所示。圖3-3MD5破解工具MD5Crack3(2)雙擊“MD5Crack3”圖標打開軟件,在打開的窗口中選中“破解單個密文”,復制之前生成的MD5密文,并將其粘貼到“破解單個密文”右邊的文本框中。在“使用字符集”下勾選“數(shù)字”,然后單擊“開始”按鈕進行暴力破解,一段時間后提示破解成功,結(jié)果如圖3-4所示。圖3-4破解MD5密文3.MD5一致性校驗(1)打開“Desktop\實驗工具\MD5一致性校驗”文件夾,如圖3-5所示。(2)雙擊“MD5”圖標打開軟件,將test.docx文件拖入軟件窗口,自動計算test.docx文件的MD5值,結(jié)果如圖3-6所示。圖3-5MD5一致性校驗工具圖3-6計算MD5值任務2知識點講解1、對稱加密算法的概念為保證數(shù)據(jù)傳輸?shù)陌踩?,通常要對?shù)據(jù)進行加密。加密必備的要素有
3
個:一是明文和密文;二是密鑰;三是算法。對稱加密算法是指加密和解密使用相同密鑰的加密算法。解密是加密的逆運算,與加密是完全對稱的行為,所以將該算法叫作對稱加密算法,它是應用較早的一種加密算法,又被稱為傳統(tǒng)加密算法或單鑰加密算法。在對稱加密算法中,數(shù)據(jù)發(fā)送方將明文(原始數(shù)據(jù))和加密密鑰一起經(jīng)過特殊加密算法處理,使其變成復雜的加密密文并發(fā)送出去。接收方收到密文后,若想將其恢復成可讀明文,則需要使用加密時用過的密鑰及相同算法的逆運算對密文進行解密。在對稱加密算法中,使用的密鑰只有一個,發(fā)送方和接收方都使用這個密鑰對數(shù)據(jù)進行加密和解密。2、對稱加密算法的優(yōu)缺點對稱加密算法的優(yōu)點是:計算量小、加密速度快、加密效率高、適用于加密大數(shù)據(jù)大文件。但同時它的缺點也很明顯:由于發(fā)送方和接收方都使用相同密鑰,安全性得不到保證;另外,發(fā)送方和接收方每次使用對稱加密算法時,都需要使用他人不知道的唯一密鑰,這會使得收、發(fā)雙方所擁有的密鑰數(shù)量巨大,密鑰管理會成為雙方的負擔。3、常見的對稱加密算法基于“對稱密鑰”的加密算法主要有DES、3DES(TripleDES)、AES(AdvancedEncrgptionStandard,高級加密標準)等。(1)DES:目前研究最透徹的對稱加密算法之一,由于它的加密強度不夠,能夠被暴力破解,因此現(xiàn)在實際應用得較少。但作為對稱加密算法的基石,其設計理念給當前許多密碼的設計提供了一定的啟發(fā),學習DES可以幫助我們更好地理解其他許多對稱加密算法。(2)3DES:原理和DES幾乎一樣,只是使用3個密鑰,對相同的數(shù)據(jù)執(zhí)行3次加密,可以增加加密強度。其缺點是要維護3個密鑰,大大增加了維護成本。(3)AES:目前公認的最安全的加密算法之一,也是對稱密鑰加密中最流行的算法之一。4、DES算法DES算法是IBM公司于1975年研究成功并公開發(fā)表的。DES算法的加解密過程,以及密鑰加密過程都是公開的,它的安全性主要依賴于密鑰的復雜性。DES算法的入口參數(shù)有3個:Key、Data、Mode。其中Key的長度為8個字節(jié)共64比特,是DES算法的密鑰,64比特密鑰中有8比特用于校驗,有效密鑰為56比特;Data的長度也為8個字節(jié)共64比特,是要被加密或被解密的數(shù)據(jù);Mode為DES算法的工作模式,分別是加密或解密。5、DES算法的實現(xiàn)原理由于DES算法較為復雜,涉及較深層的數(shù)學運算,這里只簡要介紹DES算法的處理過程。其處理過程可分為以下幾步。1.初始置換將輸入的64位明文數(shù)據(jù)進行初始置換,初始置換后,明文數(shù)據(jù)被分為左、右兩部分,每部分32位。數(shù)據(jù)的前32位為左半部分記為L0,數(shù)據(jù)的后32位為右半部分記為R0。圖3-7圖3-7DES算法初始置換2.16輪迭代在密鑰的控制下,進行16輪迭代變換。與幾乎所有現(xiàn)代分組加密算法類似,DES算法也是一種迭代算法。DES算法對明文中每個分組的加密過程都包含16輪,且每輪的操作完全相同。右半部分Ri-1將被送入f函數(shù)中,f函數(shù)的輸出將與32位的左半部分Li進行XOR(異或)運算。最后,左、右兩部分進行交換。后面的每輪都重復這個過程,可以將其表示為:Li=Ri?1Ri=Li?1f(Ri?1,Ki)其中i=1,…,16。經(jīng)過16輪后,均為32位的左半部分L16和右半部分R16將再次交換,最后進行逆置換。16輪迭代詳細過程如圖3-8所示。圖3-816輪迭代詳細過程在上述過程中,每輪都會使用不同的子密鑰Ki,并且所有的子密鑰都是從主密鑰K中推導而來。為了抵抗高級的分析攻擊,設計f函數(shù)時必須十分小心,如果f函數(shù)的設計足夠安全,DES密碼的安全性也會隨著密鑰位數(shù)和輪數(shù)的增加而增強。圖3-9圖3-9DES算法逆置換16輪迭代運算后,左、右兩部分交換并連接在一起,然后進行逆置換,輸出64位密文。逆置換是初始置換的逆運算。從初始置換規(guī)則中可以看到,原始數(shù)據(jù)的第1位置換到了第40位,第2位置換到了第8位。則逆置換就是將第40位置換到第1位,第8位置換到第2位,以此類推。逆置換規(guī)則如圖3-9所示。任務2實施步驟(1)登錄服務器,打開實驗環(huán)境,打開“Deskop\實驗工具\對稱加密”文件夾,如圖3-10所示。圖3-10對稱加密工具Apocalypso(2)雙擊“Apocalypso”圖標打開軟件,單擊“DESEncryption”按鈕,如圖3-11所示,進入DES算法加密界面。圖3-11單擊“DESEncryption”按鈕(3)在界面上方文本框中輸入明文“123456”,在下方“EnteryourEncryptionPhrasehere”文本框中輸入加密密鑰“abc”,單擊“Encrypt”按鈕進行DES加密,如圖3-12所示。圖3-12輸入明文和加密密鑰,進行DES加密(4)在界面上方文本框中生成DES加密后的密文,如圖3-13所示。圖3-13DES加密后的密文(5)單擊“Decrypt”按鈕進行DES解密,解密后的明文顯示為“123456”,如圖3-14所示。圖3-14DES解密后的明文課后:1.任務總結(jié)2.教師答疑3.布置預習任務作業(yè)布置請打開一個信譽良好的在線MD5計算器網(wǎng)站,如MD5Online或MD5HashGenerator,在網(wǎng)站提供的輸入框中,輸入一段自定義文本,如“MySecurePasswordLinlin123”。單擊相應的計算按鈕,網(wǎng)站將為你計算出該文本的MD5值,復制并記錄此MD5值?;氐捷斎肟颍瑢υ嘉谋具M行細微修改,如將“123”改為“124”,再次計算MD5值。比較兩次計算結(jié)果,觀察并記錄MD5值的變化情況。然后使用一個常見的密鑰,模擬MD5破解,并思考其基本原理。DES算法是一種對稱加密算法,它將明文劃分為64位的數(shù)據(jù)塊,并對每一個數(shù)據(jù)塊進行一系列的置換和替換操作,最后輸出密文。請簡述DES算法的實現(xiàn)過程,并使用工具演示DES破解過程。教學反思從內(nèi)容看,本次課程內(nèi)容基于復雜數(shù)學原理,理論講述有難度,對相關(guān)內(nèi)容進行適當取舍。注重立德樹人,在教學過程注重學生素質(zhì)培養(yǎng),全方位育人,相關(guān)安全加固必須安全合規(guī),遵守相關(guān)法律法規(guī)?!毒W(wǎng)絡安全技術(shù)實踐教程》教案授課單位:授課時間:授課班級:授課教師:年月日教案7(第7號/17號)課程名稱網(wǎng)絡安全技術(shù)實踐授課日期、節(jié)次班級課堂類型理論+實踐地點章節(jié)(任務)名稱任務3.3非對稱加密算法任務3.4國密算法教學目標知識目標1.了解課程內(nèi)容及面向崗位2.了解RSA功能;3.掌握RSA算法應用;4.了解常用的國密算法及應用場景。能力目標1.掌握通過RSA算法加密數(shù)據(jù);2.能夠熟練操作課程的網(wǎng)絡攻防實訓平臺。3.掌握通過國密算法加密數(shù)據(jù)。素質(zhì)目標1.培養(yǎng)學生良好的職業(yè)道德、法律意識、愛崗敬業(yè)精神;2.培養(yǎng)學生自主學習能力、交流溝通能力、創(chuàng)新能力和團隊合作意識;3.培養(yǎng)學生網(wǎng)絡安全意識、民族自豪感和科技報國精神。學情分析1.專業(yè)興趣高,動手能力強,信息化接受程度高;2.具備一定系統(tǒng)軟件、應用軟件操作維護技能,但掌握不深入;3.有一定溝通交通能力,85%的學生不具備換位思考意識,70%的學生沒有網(wǎng)絡安全相關(guān)基礎(chǔ)。重難點分析教學重點RSA密鑰生成;RSA算法的應用;祖沖之算法的應用。教學難點算法基本原理及過程信息化應用方法基于省級精品在線開放課程,通過泛雅教學平臺發(fā)布教學資源(如微課、操作流程、操作視頻、安全案例等),做好課前預習;通過翻轉(zhuǎn)課堂,先發(fā)布任務,學生根據(jù)任務現(xiàn)場操作,教師糾錯,以小組為單位,生生互評(根據(jù)操作評分細則),并錄制視頻;對于學生的易錯點和本節(jié)課的難點進行突破學習,提升學生對操作流程的熟悉度、熟練度和規(guī)范化。課程思政元素責任擔當。了解國家加密算法的現(xiàn)狀及應用,增強使命和擔當。組織學生討論“挖礦”,比特幣基本原理,樹立法制思維和社會責任感。教學實施過程課前:平臺發(fā)布LINUX系統(tǒng)安全加固任務3、任務4學習任務,供學生預習。課中:導入新課隨著微服務框架的流行,公網(wǎng)中可被捕獲的交互越來越多,為了防止非授權(quán)第三方偷窺數(shù)據(jù)、篡改數(shù)據(jù),我們需要進行數(shù)據(jù)加密和數(shù)字簽名,這就會用到非對稱加密算法。與對稱加密算法不同,非對稱加密算法需要兩個密鑰:公鑰和私鑰。公鑰與私鑰是一對,如果用公鑰對數(shù)據(jù)進行加密,只有用對應的私鑰才能解密;如果用私鑰對數(shù)據(jù)進行加密,那么只有用對應的公鑰才能解密。公鑰可以任意對外發(fā)布,而私鑰必須由用戶自行嚴格秘密保管,絕不能通過任何途徑向他人提供。工程師小林通過非對稱加密算法RSA來加密對稱加密算法的密鑰,綜合發(fā)揮兩種加密算法的優(yōu)點,既加快了加解密的速度,又解決了對稱加密算法中密鑰保存和管理困難的問題。在當今信息化社會,信息安全已成為關(guān)乎個人隱私、社會穩(wěn)定乃至國家利益的重要議題。面對日益復雜多變的網(wǎng)絡環(huán)境和日益嚴峻的安全挑戰(zhàn),選擇并應用一套高效、安全且自主可控的密碼算法體系尤為重要。在此背景下,國密算法這一由我國自主研發(fā)的密碼算法體系,以其獨特的技術(shù)優(yōu)勢、較強的法規(guī)適應性及廣泛的實踐應用,成為眾多領(lǐng)域中保障信息安全的關(guān)鍵工具。本任務中工程師小林將帶領(lǐng)讀者了解常見的國密算法,深入探討國密算法的種類、應用場景和實現(xiàn)原理,并利用國密算法工具對數(shù)據(jù)進行加解密處理。任務3知識點講解1、非對稱加密算法原理在1976年以前,所有的加密方法都使用對稱加密算法,加密和解密使用同一套規(guī)則。1976年,美國計算機科學家惠特菲爾德·迪菲(WhitfieldDiffie)和馬丁·赫爾曼(MartinHellman)為解決信息公開傳送和密鑰管理問題,提出一種新的密鑰交換協(xié)議,允許通信雙方在不安全的媒體上交換信息,并安全地達成一致的密鑰,這就是“公鑰系統(tǒng)”。因為加密和解密使用的是兩個不同的密鑰,所以這種算法叫作“非對稱加密算法”。非對稱加密算法又稱“現(xiàn)代加密算法”,它是計算機通信安全的基石,保證了加密數(shù)據(jù)不會被輕易破解。非對稱加密算法的工作過程如下。(1)乙方生成一對密鑰(公鑰和私鑰)并將公鑰向甲方公開。(2)得到該公鑰的甲方使用該密鑰對機密信息進行加密后再發(fā)送給乙方。(3)乙方再用自己保存的私鑰對加密后的信息進行解密。乙方只能用其私鑰解密由對應的公鑰加密后的信息。(4)在傳輸過程中,即使攻擊者截獲了傳輸?shù)拿芪?,并得到了乙方的公鑰,也無法解密密文,因為只有使用乙方的私鑰才能解密密文。同樣,如果乙方要回復加密信息給甲方,那么需要甲方先公布甲方的公鑰給乙方用于加密,甲方保存自己的私鑰用于解密。常用的非對稱加密算法有RSA(Rivest-Shamir-Adleman)、DSA(DigitalSignatureAlgorithm,數(shù)字簽名算法)、背包算法、Rabin(雷賓)、D-H(Diffie-Hellman,迪菲-赫爾曼)、ECC(EllipticCarveCryptosystem,橢圓曲線密碼體制)等,不同算法的實現(xiàn)機制不相同。2、非對稱加密算法的優(yōu)缺點非對稱加密算法的優(yōu)點如下。(1)安全性高:非對稱加密算法的核心在于私鑰的保密性。由于只有私鑰的持有者才能解密數(shù)據(jù),因此即使公鑰被泄露,也無法對數(shù)據(jù)進行解密或偽造有效的簽名。這種特性使得非對稱加密算法在保護敏感信息方面具有很高的安全性。(2)密鑰管理簡單:在非對稱加密中,公鑰是公開的,可以自由分發(fā)給其他人,而私鑰則保密。這種機制減少了密鑰管理的復雜性,因為用戶只需要保護自己的私鑰即可。(3)認證與抗抵賴:非對稱加密算法可以用于數(shù)字簽名,這不僅可以確保信息的機密性,還可以驗證發(fā)送者的身份和信息的完整性。數(shù)字簽名還可以使發(fā)送者不能否認他們發(fā)送了信息的證據(jù),從而增強了通信的可信度。(4)可擴展性:非對稱加密系統(tǒng)可以輕松地擴展到大量用戶。每個用戶只需要生成自己的公鑰和私鑰對,然后與其他用戶交換公鑰即可。這種機制使得非對稱加密在大型網(wǎng)絡環(huán)境中具有很高的實用性。(5)適應性強:非對稱加密算法可以適應各種安全需求。例如,可以使用不同長度的密鑰來提高安全性。這種靈活性使得非對稱加密算法能夠應對不同的安全威脅和攻擊手段。非對稱加密算法的缺點如下。(1)計算復雜性高:相比對稱加密算法,非對稱加密算法的計算復雜性較高。加密和解密過程需要更多的計算資源,因此速度相對較慢。這使得非對稱加密算法在某些需要快速處理大量數(shù)據(jù)的場景中可能不太適用。(2)加密速度慢:由于非對稱加密算法的計算復雜性高,因此其加密速度相對較慢。這可能導致在某些需要實時通信或快速數(shù)據(jù)傳輸?shù)膱鼍爸?,非對稱加密算法的性能受到限制。(3)密鑰長度與安全性:雖然非對稱加密算法的安全性較高,但密鑰長度也是影響其安全性的一個重要因素。較長的密鑰可以提供更高的安全性,但也會增加計算復雜性和加密時間。因此,在選擇密鑰長度時需要權(quán)衡安全性和性能之間的關(guān)系。3、RSA算法簡介1977年,美國麻省理工學院的3位數(shù)學家:羅納德·李維斯特(RonaldRivest)、阿迪·薩莫爾(AdiShamir)和倫納德·阿德爾曼(LeonardAdleman)共同設計了一種算法,可以實現(xiàn)非對稱加密,算法用他們3人姓氏的開頭字母拼在一起命名,即RSA。2002年,他們3人共同獲得了圖靈獎,以表彰其在公鑰算法上所作出的突出貢獻。RSA算法是目前最流行的公鑰算法,因其高安全性和可靠性,在數(shù)字簽名、密鑰交換、加密通信等多個領(lǐng)域得到了廣泛的應用。例如,HTTPS、SSH等協(xié)議使用RSA算法來加密通信過程中的數(shù)據(jù),確保數(shù)據(jù)在傳輸過程中的安全性和完整性。在電子商務中,商家可以使用RSA算法對訂單進行數(shù)字簽名,確保訂單的真實性和完整性,防止數(shù)據(jù)被篡改。在云計算、移動設備等場景中,RSA算法可以對敏感數(shù)據(jù)進行加密,如用戶密碼、支付信息等,防止數(shù)據(jù)泄露。還可通過與對稱加密算法(如AES)的結(jié)合使用,進一步提高數(shù)據(jù)加密的效率和安全性。4、RSA算法原理RSA算法基于一個十分簡單的數(shù)論事實:將兩個大質(zhì)數(shù)(素數(shù))相乘十分容易,但是想要對其乘積進行因數(shù)分解卻極其困難。RSA算法的實現(xiàn)主要分為以下幾步。1.找出質(zhì)數(shù)首先選取兩個大質(zhì)數(shù),記作p和q。根據(jù)當今求解大數(shù)因數(shù)的技術(shù)水平,這兩個數(shù)應該至少有200位(這里的位數(shù)是指將p或q轉(zhuǎn)換為二進制形式后的長度,太短容易被破解),這樣在實踐中才可以被認為是安全的。2.計算公共模數(shù)n計算p和q的乘積,記作n,將n轉(zhuǎn)換為二進制形式后,二進制數(shù)的長度就是密鑰的長度,實際應用中一般選擇1024位、2048位。3.計算歐拉數(shù)(n)計算公式如下:(n)=(p-1)(q-1)4.選擇加密指數(shù)e隨機選擇一個整數(shù)e,滿足(n)>e>1,且e與(n)互質(zhì)(實際應用中e一般選用65537)。5.計算e對(n)的模反元素dd=e-1mod(p-1)(q-1)等價于:edmod(p-1)(q-1)=1,其中1<d<(p-1)(q-1)。6.生成公鑰將n和e封裝成公鑰,記作公鑰P=(e,n)。7.生成私鑰將n和d封裝成私鑰,記作私鑰S=(d,n)8.加密加密方使用P來加密數(shù)據(jù)。9.解密解密方使用S來解密數(shù)據(jù)。RSA算法實現(xiàn)如圖3-15所示。圖3-15RSA算法實現(xiàn)5、RSA算法實例我們用具體的數(shù)字來實踐RSA算法的密鑰對生成,以及RSA算法加解密的全過程。為方便理解,我們使用較小數(shù)字來實踐。(1)準備兩個較小的質(zhì)數(shù):p=3,q=11。(2)計算n=pq=33。(3)計算歐拉數(shù)(n)=(p-1)(q-1)=20。(4)選擇e=3。(5)計算d=7,滿足edmod(p-1)(q-1)=1。(6)生成公鑰(e,n)=(3,33)。(7)生成私鑰(d,n)=(7,33)。(8)加密。假設明文=4,則密文=明文的e次方對n求余=43mod33=31。(9)解密。明文=密文的d次方對n求余=317mod33=4。任務3實施步驟登錄服務器,打開實驗環(huán)境,打開“Desktop\實驗工具\非對稱加密\RSATool”文件夾,如圖3-16所示。圖3-16非對稱加密工具RSATool(2)雙擊“RSATool2v110”圖標打開軟件,在“1stPrime(P)”文本框中輸入“3”,在“2ndPrime(Q)”文本框中輸入“11”,作為3.3.5節(jié)RSA算法實例中兩個較小的質(zhì)數(shù),在“NumberBase”處選擇“10”,表示十進制輸入,在“PublicExponent(E)”文本框中輸入“3”,作為公鑰,然后單擊左下角“Calc.D”按鈕,生成私鑰,“PrivateExponent(D)”文本框中顯示私鑰為“7”,和3.3.5節(jié)RSA算法實例的計算結(jié)果一致,如圖3-17所示。圖3-17RSA算法實例演示(3)關(guān)閉軟件,然后雙擊“RSATool2v110”圖標打開軟件,單擊“Generate”按鈕,隨機生成一對公鑰和私鑰,如圖3-18所示。圖3-18隨機生成一對公鑰和私鑰(4)如圖3-19所示,單擊“Test”按鈕,打開“RSA-Test”對話框,利用生成密鑰進行加解密測試。圖3-19利用生成密鑰進行加解密測試(5)在“Message(M)toencrypt”文本框中輸入待加密的消息“abcdef@123”,單擊“Encrypt”按鈕,利用RSA算法進行加密,“Ciphertext(C)”文本框中出現(xiàn)加密結(jié)果,如圖3-20所示。圖3-20利用RSA算法加密消息單擊“Decrypt”按鈕,利用RSA算法進行解密,“Ciphertext(C)”文本框中出現(xiàn)解密結(jié)果,如圖3-21所示。圖3-21利用RSA算法解密消息任務4知識點講解1、國密算法簡介國密算法是由我國自主研發(fā)、具有自主知識產(chǎn)權(quán)的一系列密碼算法體系,其具有較高安全性,由國家密碼管理局公開并大力推廣。我國公開的國密算法包括SM1、SM2、SM3、SM4、SM7、SM9及祖沖之算法,其中SM2、SM3、SM4較為常用,用于對應替代RSA、DES、3DES、SHA等國際通用密碼算法體系。2、國密算法的設計原則國密算法的設計原則主要包括安全性、效率性、標準化和兼容性。國密算法的設計旨在提供高強度的安全保障,同時確保算法的實現(xiàn)效率和互操作性。(1)安全性是國密算法設計的核心原則。國密算法基于橢圓曲線密碼學,利用橢圓曲線的數(shù)學特性,確保算法的復雜度和安全性。例如,SM2算法基于橢圓曲線公鑰密碼學,通過選擇合適的曲線和基點,確保離散對數(shù)問題的難度,從而保證了算法的安全性。(2)效率性也是國密算法設計時考慮的重要因素,確保算法能夠在普通計算機和各種嵌入式系統(tǒng)中快速執(zhí)行。例如,SM3算法設計時注重計算效率,適用于多種安全應用場景,包括電子簽名、消息認證碼生成等。(3)國密算法的設計遵循標準化和兼容性原則。國密算法遵循國家密碼管理局的標準,確保與現(xiàn)有的公鑰基礎(chǔ)設施和其他加密標準兼容。3、國密算法的優(yōu)勢1.自主可控國密算法作為我國自主研發(fā)的密碼學成果,自主可控是其顯著優(yōu)勢之一。相較于依賴國外密碼技術(shù),采用國密算法能夠降低對外部技術(shù)的依賴,尤其是在當前全球信息技術(shù)競爭加劇、地緣政治風險上升的背景下,自主可控的密碼技術(shù)對于維護國家安全、防止關(guān)鍵技術(shù)被“卡脖子”具有重大意義。此外,國密算法的研發(fā)與升級完全由我國自主掌控,能夠根據(jù)國內(nèi)信息安全需求進行快速迭代與優(yōu)化,更好地適應我國信息化建設的實際情況,為構(gòu)建安全、可信的信息環(huán)境提供堅實的技術(shù)支撐。2.更高的安全性國密算法在設計之初就嚴格遵循了現(xiàn)代密碼學的嚴謹原則,通過采用非線性S盒、置換運算等復雜機制,以及基于ECC的算法設計,實現(xiàn)了對各種密碼攻擊的有效抵御。以SM2算法為例,其算法設計基于ECC理論,與國際主流的RSA算法相比,在同等安全級別下,SM2所需的密鑰長度和簽名長度更短,這既降低了計算開銷,又提升了加密和解密的效率,尤其適用于大規(guī)模、高并發(fā)的數(shù)據(jù)傳輸與處理場景。此外,SM3算法在SHA-256基礎(chǔ)上進行改進,進一步增強了抗碰撞性、抗原像攻擊等安全性,為數(shù)據(jù)完整性校驗和消息認證提供了更為堅實的保障。3.性能良好國密算法在兼顧安全性的同時,充分考慮了實際應用中的性能需求。其高運算速度和較低的資源消耗,使其在處理各類規(guī)模數(shù)據(jù)時都能展現(xiàn)出良好的性能表現(xiàn)。以SM4算法為例,其在實現(xiàn)高強度加密的同時,保持了較高的加解密速度,適用于大量數(shù)據(jù)的實時加密和解密,如可用于金融交易、在線支付等對時間敏感的應用場景。這種兼顧安全性與性能的設計理念,使得國密算法在實際應用中既能滿足嚴格的安全要求,又能確保系統(tǒng)的穩(wěn)定運行和提供良好的用戶體驗。4、常用的國密算法1.SM1算法SM1算法,即商密1號算法,亦稱SCB2算法。該算法是由國家密碼管理局審批的分組密碼算法,分組長度和密鑰長度都為128比特,算法的安全強度及相關(guān)軟硬件實現(xiàn)性能與AES的相當。不公開,僅以IP核的形式存在于芯片中。SM1算法常用于電子政務、電子商務以及其他應用系統(tǒng)中。2.SM2算法SM2算法基于ECC機制,因其安全強度比密鑰長度為2048位的RSA算法的高,且運算速度快于RSA算法的運算速度,所以在我國商用密碼體系中被用來替換RSA算法,廣泛應用于電子政務、移動辦公、電子商務、移動支付、電子證書等基礎(chǔ)設施、云計算服務等領(lǐng)域。與SM2相關(guān)的標準有GM/T0003.1~GM/T0003.5系列,以及GM/T0009、GM/T0010、GM/T0015、GM/T0092,SM2標準包括總則、數(shù)字簽名算法、密鑰交換協(xié)議、公鑰加密算法、參數(shù)定義5個部分,并在每個部分的附錄詳細說明了實現(xiàn)的相關(guān)細節(jié)及示例。3.SM3算法SM3算法是一種密碼哈希算法,它給出了雜湊函數(shù)算法的計算方法和步驟。此算法適用于商用密碼應用中的數(shù)字簽名和驗證、消息認證碼的生成與驗證以及隨機數(shù)的生成,可滿足多種密碼應用的安全需求。SM3算法對輸入長度小于2的64次方比特的消息,經(jīng)過填充和迭代壓縮,生成長度為256比特的雜湊值,其中使用了異或、模、模加、移位、與、或、非等運算,由填充、迭代過程、消息擴展和壓縮函數(shù)所構(gòu)成。因此SM3算法的安全性要高于MD5算法和SHA-1算法,SM3算法的具體描述詳見GM/T0004—2012。SM3算法已成為我國電子簽名類密碼系統(tǒng)、計算機安全登錄系統(tǒng)、計算機安全通信系統(tǒng)、數(shù)字證書、網(wǎng)絡安全基礎(chǔ)設施、安全云計算平臺與大數(shù)據(jù)等領(lǐng)域信息安全的基礎(chǔ)技術(shù)。4.SM4算法SM4算法是由我國自主設計的分組對稱密碼算法,其設計目標是提供高安全性、高效率和易于實現(xiàn)的分組對稱密碼方案,以保證數(shù)據(jù)和信息的機密性。SM4算法采用128位密鑰長度和128位分組長度,通過32輪的迭代結(jié)構(gòu)和一系列的置換、代換和異或等基本運算來實現(xiàn)加密和解密操作,具有較高的安全性。該算法已通過了多種密碼學安全性分析和評估,被廣泛認可和接受,常被應用于電子商務、移動通信和云計算等領(lǐng)域,SM4算法的具體描述詳見GM/T0002—2012。5.SM7算法SM7算法是一種分組密碼算法,分組長度為128比特,密鑰長度為128比特。SM7算法適用于非接觸式IC(IntegratedCircait,集成電路)卡,常應用于身份識別領(lǐng)域(如門禁卡、工作證、參賽證)、票務領(lǐng)域(如大型賽事門票、展會門票)、支付與通卡領(lǐng)域(如積分消費卡、校園一卡通、企業(yè)一卡通等)。6.SM9算法SM9算法是一種標識密碼算法。為了降低公鑰系統(tǒng)中密鑰和證書管理的復雜性,以色列科學家、RSA算法發(fā)明人之一阿迪·薩莫爾在1984年提出了標識密碼的理念。標識密碼將用戶的標識(如郵件地址、手機號碼、QQ號碼等)作為公鑰,省略了交換數(shù)字證書和公鑰的過程,使得安全系統(tǒng)變得易于部署和管理。2008年,標識密碼算法正式獲得國家密碼管理局頒發(fā)的商密算法SM9,為我國標識密碼技術(shù)的應用奠定了堅實的基礎(chǔ)。SM9算法不需要申請數(shù)字證書,為互聯(lián)網(wǎng)領(lǐng)域的各種新興應用。如基于云技術(shù)的密碼服務、電子郵件安全、智能終端保護、物聯(lián)網(wǎng)安全、云存儲安全等提供了安全保障。該算法可采用手機號碼或郵件地址作為公鑰,實現(xiàn)數(shù)據(jù)加密、身份認證、通話加密、通道加密等安全應用,具有使用方便、易于部署等特點。SM9算法的具體描述詳見GM/T0044.1~GM/T0044.5系列及GM/T0080、GM/T0081、GM/T0085、GM/T0086。7.祖沖之算法祖沖之算
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基層公共衛(wèi)生考試模擬題(含答案)
- 2025屆廣東省汕頭市潮南實驗學校校高考沖刺模擬英語試題含答案
- 鉗工四級理論知識復習題(附參考答案)
- 車工高級工模擬習題(附參考答案)
- 職業(yè)技術(shù)學院2024級嬰幼兒托育服務與管理專業(yè)人才培養(yǎng)方案
- 助產(chǎn)技術(shù)-娠合并癥專項考核試題
- 眼鏡生產(chǎn)過程中的品質(zhì)監(jiān)控手段考核試卷
- 糖品包裝設計與可持續(xù)發(fā)展理念考核試卷
- 健康飲食食物中的銅與貧血的預防考核試卷
- 聚合纖維在能源儲存領(lǐng)域的應用考核試卷
- 卷料加工中的跑偏與糾偏控制
- 波紋鋼裝配式檢查井通用技術(shù)規(guī)范
- 財務支出預算表模板
- 心房顫動健康宣教
- 人力資源的5分鐘勞動法
- 充電樁工程施工組織設計施工組織
- DL-T 5850-2021 電氣裝置安裝工程 高壓電器施工及驗收規(guī)范
- 多層螺旋CT原理及臨床應用
- 小學語文五年下冊《習作:形形色色的人》說課稿(附教學反思、板書)課件
- 部編版二年級語文(下冊)期末復習教案+計劃2
- 軌道起重吊車安全操作規(guī)程
評論
0/150
提交評論