版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
21世紀高等學校精品規(guī)劃教材
信息安全技術基礎
學習目標信息安全基本概念和范疇信息及信息系統(tǒng)面臨的安全威脅安全事件的分類本章介紹了信息安全問題的產生及其重要性,信息系統(tǒng)面臨的威脅及分類,通過本章的學習,讀者應該掌握以下內容:3目錄0課程簡介1.1信息安全問題及其重要性1.2信息安全威脅實例1.3信息安全事件分類40課程簡介主講:學時:理論/實驗時間進度:
上課時間:
實驗安排:
期末考試:50課程簡介突出網絡環(huán)境下的信息安全保障體系建立和相關技術,面向實用。范疇
安全體系
密碼技術
安全協(xié)議
網絡安全
安全應用……什么是信息安全?如何構建信息安全保障體系?信息安全有哪些主要技術?如何應用?60課程簡介參考教材
張浩軍,《信息安全技術基礎》,70課程簡介考核:
平時成績(10%):考勤+作業(yè)+問答
實驗(20%):完成情況
大作業(yè)(30%):
期末考試(40%):8目錄0課程簡介1.1信息安全問題及其重要性1.2信息安全威脅實例1.3信息安全事件分類9在網絡世界中我們的信息安全嗎?10InformationSecurity?信息——一種資源和交流的載體,具有普遍性、共享性、增值性、可處理性和多效用性,對人類社會發(fā)展具有特別重要的意義。信息系統(tǒng)(InformationSystem)——由計算機及其相關的和配套的設備、設施(含網絡)構成的,按照一定的應用目標和規(guī)則對信息進行采集、加工、存儲、傳輸、檢索等處理的人機系統(tǒng)。(GB/Z20986-2007)11信息安全事件(InformationSecurityIncident)——指由于自然或者人為以及軟硬件本身缺陷或故障的原因,對信息系統(tǒng)造成危害,或對社會造成負面影響的事件。保障信息安全保護信息系統(tǒng)和信息網絡中的信息資源免受各種類型的威脅、干擾和破壞。查找、防范、阻斷引起危害和影響的潛在威脅。12我們可能聽到的安全事件報道使用聊天軟件、訪問掛馬網站導致用戶的賬戶等敏感信息泄露網上交易遭遇虛假商家資金被騙病毒和木馬泛濫某某網站遭到攻擊……13案例1——“維基解密”風波2010年維基解密網站(WikiLeaks)連續(xù)三次大規(guī)模公開美國軍事外交機密,包括9萬份阿富汗戰(zhàn)爭文件、40萬份伊拉克戰(zhàn)爭文件、25萬份秘密外交電報,對美國軍方機構的“情報安全和運作安全”構成了嚴重的威脅。14案例1——“維基解密”風波2009年,該網站公布了超過1000封英格蘭東安格利亞大學氣候研究所的郵件內容,郵件內容顯示,氣候學家擅自更改對自己研究不利的氣候數據,以證明全球氣候變暖主要是由人類活動造成的,此事導致人們對全球變暖理論產生懷疑,影響極其惡劣,外界紛紛指責科學家操縱研究結果的行為。15案例2——
Stuxnet蠕蟲攻擊伊朗核電廠事件2010年Stuxnet蠕蟲(“震網”、“超級病毒”或“超級工廠”)攻擊伊朗核電廠。Stuxnet是一款高度精良的惡意軟件。攻擊特定系統(tǒng)監(jiān)控與數據抓取軟件Simatic
WinCCSCADA(SupervisorControlAndDataAcqusition)。利用了Windows四個零日攻擊漏洞,賽門鐵克提供證據稱,Stuxnet蠕蟲的攻擊目標是用于控制馬達速度的頻率轉換器驅動程序。有媒體稱其真正的目標是攻破核計劃。16惡意軟件?。?!案例3——
國內網絡安全現狀嚴峻2010年安徽省每個月都有幾百家網站被黑客攻破。江蘇省網絡詐騙、盜竊案件在網絡犯罪案件中占了八成以上。2010年網絡詐騙立案超過2000起,包括股票類網站詐騙、購物網站詐騙、中獎詐騙、虛假信息視頻聊天詐騙等。網絡盜竊利用釣魚網站虛假頁面盜竊支付平臺密碼進而轉移支付資金,以及用木馬植入電腦替換支付鏈接直接將受害人的錢財轉移至犯罪分子賬戶。17案例3——
國內網絡安全現狀嚴峻2009年,52%的網民曾遭遇網絡安全事件,網民處理安全事件所支出的相關服務費用共計153億元人民幣。(CNNIC和CNCERT,2010年4月)病毒產業(yè)的收益以百億元計,這些總數不到50家的病毒集團獲取的非法收益約
占其中一半,領先的
病毒集團一年可
有數億元的規(guī)模。18病毒數量趨勢目錄0課程簡介1.1信息安全問題及其重要性1.2信息安全威脅實例1.3信息安全事件分類22在使用信息產品和基礎設施時,我們面臨哪些威脅?23Risks?安全威脅實例我的計算機是否感染了病毒或木馬?我在網絡中傳輸的數據是否會被別人看到、截獲(攔截)、篡改?我從網絡中接收到的數據確實來自我所信任或期望的發(fā)送者嗎?我能確信接收到的數據是正確的(沒有被篡改、不是偽造的)嗎?24安全威脅實例內部網絡是否遭到入侵?內部服務器是否受到非法訪問?內部是否被竊取或篡改?內部應用軟件(如內部OA系統(tǒng))是否被非法使用?對外服務器是否受到破壞或干擾?網站主頁是否被篡改,是否被非法外掛惡意代碼?我的計算機是否會被盜?保存有重要數據的移動硬盤或U盤丟失了怎么辦?我的辦公室是否會漏水?供電不穩(wěn)定或打雷會不會導致我的計算機的損壞?如果發(fā)生地震或洪水,我的辦公樓如果倒塌了,我的計算機損壞了,重要的數據就會丟失。25目錄0課程簡介1.1信息安全問題及其重要性1.2信息安全威脅實例1.3信息安全事件分類26信息安全事件如何系統(tǒng)分類?27Category信息安全事件分類分級指南(GB/Z20986-2007)國家標準中將信息安全事件分為7個基本分類,每個基本類型又分為若干子類281.有害程序事件是指蓄意制造、傳播有害程序(或稱惡意代碼、惡意軟件),或是因受到有害程序的影響而導致的信息安全事件。計算機病毒(Virus)事件。蠕蟲(Worm)事件。特洛伊木馬(Trojan)事件。僵尸網絡(Botnet)事件?;旌瞎?HibridAttacks)程序事件。網頁內嵌惡意代碼(EmbeddedMaliciousSoftware)事件。其它有害程序事件。29Malware2.網絡攻擊事件指通過網絡或其他技術手段,利用信息系統(tǒng)的配置缺陷、協(xié)議缺陷、程序缺陷,或使用暴力攻擊對信息系統(tǒng)實施攻擊,并造成信息系統(tǒng)異?;驅π畔⑾到y(tǒng)當前運行造成潛在危害的信息安全事件。30(1)拒絕服務攻擊事件(2)后門攻擊事件(3)漏洞攻擊事件(4)網絡掃描竊聽事件(5)網絡釣魚事件(6)干擾事件(7)其他網絡攻擊事件3.信息破壞事件指通過網絡或其他技術手段,造成信息系統(tǒng)中的信息被篡改、假冒、泄漏、竊取等而導致的信息安全事件。31(1)信息篡改事件(2)信息假冒事件(3)信息泄漏事件(4)信息竊取事件(5)信息丟失事件(6)其它信息破壞事件4.信息內容安全事件指利用信息網絡發(fā)布、傳播危害國家安全、社會穩(wěn)定和公共利益的內容的安全事件。32(1)違反憲法和法律、行政法規(guī)的信息安全事件。(2)針對社會事項進行討論、評論形成網上敏感的輿論熱點,出現一定規(guī)模炒作的信息安全事件。(3)組織串連、煽動集會游行的信息安全事件。(4)其他信息內容安全事件。網絡輿情及監(jiān)測輿情是指在一定的社會空間內,圍繞中介性社會事件的發(fā)生、發(fā)展和變化,民眾對社會管理者產生和持有的社會政治態(tài)度。它是較多群眾關于社會中各種現象、問題所表達的信念、態(tài)度、意見和情緒等等表現的總和。網絡輿情形成迅速,對社會影響巨大。直接性、突發(fā)性、偏差性在現實生活中遇到挫折,對社會問題片面認識等等,都會利用網絡得以宣泄。因此在網絡上更容易出現庸俗、灰色的言論。335.設備設施故障指由于信息系統(tǒng)自身故障或外圍保障設施故障而導致的信息安全事件,以及人為的使用非技術手段有意或無意的造成信息系統(tǒng)破壞而導致的信息安全事件。34(1)軟硬件自身故障(2)外圍保障設施故障(3)人為破壞事故(4)其它設備設施故障6.災害性事件指由于不可抗力對信息系統(tǒng)造成物理破壞而導致的信息安全事件。災害性事件包括水災、臺風、地震、雷擊、坍塌、火災、恐怖襲擊、戰(zhàn)爭等導致的信息安全事件。35“911恐怖襲擊事件”
引發(fā)的數據災難世貿中心,曾經是美國乃至全球財富的象征,在這座建筑群中,聚集了眾多全球一流的大公司,不少是銀行、證券和IT行業(yè)的翹楚,如世界著名的摩根-斯坦利公司、AT&T公司、SUN公司、瑞士銀行等。36“911恐怖襲擊事件”
引發(fā)的數據災難隨著大廈的轟然坍塌,無數人認為摩根-斯坦利將成為這一恐怖事件的殉葬品之一。然而,該公司竟然奇跡般地宣布,全球營業(yè)部第二天可以照常工作。37奇跡什么是黑客?源于英文Hacker,原指熱心于計算機技術,水平高超的電腦專家,尤其是程序設計人員。但到了今天,黑客一詞已被用于泛指那些專門利用電腦搞破壞或惡作劇的家伙,對這些人的正確英文叫法是Cracker,有人翻譯成“駭客”。38那些喜歡發(fā)掘程序系統(tǒng)內部實現細節(jié)、并延展自己的能力的人;那些狂熱地沉浸在編程樂趣的人;那些能夠體會侵入他人系統(tǒng)價值的人;那些擅長快速編程的人;特定程序的專家,經常使用這種程序或在上面工作;一個專家或某領域熱衷者;一個喜歡智力挑戰(zhàn)創(chuàng)造性地突破各種環(huán)境限制的人;一個惡意的愛管閑事的家伙,在網絡上逡巡溜達試圖發(fā)現敏感信息。小結本章介紹了信息安全的基本概念,信息及信息系統(tǒng)的定義,以及信息系統(tǒng)可能面臨的安全威脅。通過列舉信息安全威脅實例,讓讀者了解信息及網絡可能面臨的各種威脅。介紹了GB/Z20986系統(tǒng)定義安全事件分類。最后給出了使用本教材的建議。通過本章學習,讀者應建立信息及信息系統(tǒng)面臨安全威脅的概念和范疇,了解信息安全事件的內容。
39Q&A40作業(yè)與思考請列舉你所遇到過的信息安全問題,分析屬于哪類安全事件。信息安全就是只遭受病毒攻擊,這種說法正確嗎?網絡安全問題主要由于黑客攻擊造成的,這種說法正確嗎?41學習目標信息安全涉及范疇、安全屬性需求以及信息安全保障體系結構動態(tài)和可適應的信息安全防御模型風險評估、等級保護、安全測評的內容與方法本章介紹信息安全保障體系的建立,信息系統(tǒng)主動防御模型,以及信息安全風險評估、等級保護的相關標準規(guī)范和內容。43目錄2.1信息安全保障體系2.2信息安全防御模型2.3風險評估與等級保護44如何構架全面的信息安全保障?45ISAssurance?范疇屬性體系結構2.1.1信息安全范疇信息自身46文本、圖形、圖像、音頻、視頻、動畫等。信息載體信息環(huán)境信息載體信息環(huán)境2.1.1信息安全范疇信息自身47信息載體信息環(huán)境物理平臺計算芯片:CPU、控制芯片、專用處理芯片等。存儲介質:內存、磁盤、光盤、U盤、磁帶等。通信介質:雙絞線、同軸電纜、光纖、無線電波、微波、紅外線等。系統(tǒng)設備:計算機:包括個人計算機、服務器、小型機、智能終端等各類計算機;打印機、掃描儀、數字攝像機、智能手機等硬件設備。2.1.1信息安全范疇信息自身48信息載體信息環(huán)境軟件平臺系統(tǒng)平臺:操作系統(tǒng)、數據庫系統(tǒng)等系統(tǒng)軟件。通信平臺:通信協(xié)議及其軟件。網絡平臺:網絡協(xié)議及其軟件。應用平臺:應用軟件。2.1.1信息安全范疇信息自身49信息載體信息環(huán)境硬環(huán)境機房、電力、照明、溫控、濕控、防盜、防火、防震、防水、防雷、防電磁輻射、抗電磁干擾等設施。軟環(huán)境國家法律、行政法規(guī)、部門規(guī)章、政治經濟、社會文化、思想意識、教育培訓、人員素質、組織機構、監(jiān)督管理、安全認證等方面。2.1.2信息安全屬性50如何刻畫信息及信息系統(tǒng)的安全性?ISAttributes?2.1.2信息安全屬性保密性(也稱機密性,Confidentiality):
保證信息與信息系統(tǒng)不被非授權者所獲取或利用。保密性包含數據的保密性和訪問控制等方面內容。51完整性(Integrity):
保證信息與信息系統(tǒng)正確和完備,不被冒充、偽造或篡改,包括數據的完整性、系統(tǒng)的完整性等方面。2.1.2信息安全屬性鑒別性(也稱可認證性,Authentication):保證信息與信息系統(tǒng)真實,包括實體身份的真實性、數據的真實性、系統(tǒng)的真實性等方面。52不可否認性(不可抵賴性,Non-Repudiation):建立有效的責任機制,防止用戶否認其行為,這一點在電子商務中極為重要。2.1.2信息安全屬性可用性(Availability):
保證信息與信息系統(tǒng)可被授權者在需要的時候能夠被訪問和使用。53可靠性(Reliability):
保證信息系統(tǒng)為合法用戶提供穩(wěn)定、正確的信息服務。2.1.2信息安全屬性可追究性(Accountability):
保證從一個實體的行為能夠唯一地追溯到該實體,它支持不可否認、故障隔離、事后恢復、攻擊阻斷等應用,具有威懾作用,支持法律事務,其結果可以保證一個實體對其行為負責。542.1.2信息安全屬性保障(Assurance):
為在具體實現和實施過程中,保密性、完整性、可用性和可追究性等得到足夠滿足提供信心基礎,這種信心基礎主要通過認證和認可來實現。55可控性(Controlability):
指對信息和信息系統(tǒng)實施有效的安全監(jiān)控管理,防止非法利用信息和信息系統(tǒng)。2.1.3信息安全保障體系結構56如何構建全面的信息安全保障體系?ISAssurance?2.1.3信息安全保障體系結構信息安全保障包括人、政策(包括法律、法規(guī)、制度、管理)和技術三大要素主要內涵是實現上述保密性、鑒別性、完整性、可用性等各種安全屬性保證信息、信息系統(tǒng)的安全性目的。572.1.3信息安全保障體系結構技術體系機制加密、數字簽名、訪問控制、數據完整性、鑒別交換、通信業(yè)務填充、路由選擇控制、公證、可信功能度、安全標記、事件檢測、安全審計跟蹤、安全恢復、電磁輻射控制、抗電磁干擾等。服務鑒別/身份認證、訪問控制、數據機密性、數據完整性、抗抵賴、可靠性、可用性、安全審計等。管理技術管理策略、系統(tǒng)安全管理、安全機制管理、安全服務管理、安全審計管理、安全恢復管理等。標準上述安全技術的實現依據、交互接口和評估準則。582.1.3信息安全保障體系結構組織體系機構決策層:明確總體目標、決定重大事宜。管理層:根據決策層的決定全面規(guī)劃、制定策略、設置崗位、協(xié)調各方、處理事件等。執(zhí)行層:按照管理層的要求和規(guī)定執(zhí)行某一個或某幾個特定安全事務。崗位負責某一個或某幾個特定安全事務的職位。人事負責崗位上人員管理的部門。592.1.3信息安全保障體系結構管理體系法律根據國家法律和行政法規(guī),強制性約束相關主體的行為。制度依據部門的實際安全需求,具體化法律法規(guī),制定規(guī)章制度,規(guī)范相關主體的行為。培訓培訓相關主體的法律法規(guī)、規(guī)章制度、崗位職責、操作規(guī)范、專業(yè)技術等知識,提高其安全意識、安全技能、業(yè)務素質等。602.1.3信息安全保障體系結構安全服務認證(也稱鑒別)服務訪問控制服務數據保密性服務數據完整性服務抗否認性服務可靠性服務可用性服務安全審計服務61《信息系統(tǒng)-開放系統(tǒng)互連基本參考模型第2部分:安全體系結構》GB/T9387.2-1995(等同于ISO7498-2)2.1.3信息安全保障體系結構安全機制加密機制數字簽名機制訪問控制機制數據完整性機制鑒別交換機制業(yè)務流填充機制路由選擇控制機制公正機制62《信息系統(tǒng)-開放系統(tǒng)互連基本參考模型第2部分:安全體系結構》GB/T9387.2-1995(等同于ISO7498-2)目錄2.1信息安全保障體系2.2信息安全防御模型2.3風險評估與等級保護632.2信息安全防御模型64如何有效實現信息安全防御?ISDefenses?2.2信息安全防御模型65主動信息安全防御模型EvaluationPolicyProtectionRestorationDetectionReaction2.2信息安全防御模型1.風險評估66對信息系統(tǒng)進行全面的風險評估,這需要對信息系統(tǒng)應用需求、網絡基礎設施、外部內部環(huán)境、安全威脅、人員、政策法規(guī)、安全技術等具有全面的了解,并善于應用各種方法、手段、工具對系統(tǒng)風險進行人工和自動分析,給出全面細致的風險評估。2.2信息安全防御模型2.制定策略67安全策略是安全模型的核心,防護、檢測、響應和恢復各個階段都是依據安全策略實施的,安全策略為安全管理提供管理方向和支持手段。策略體系的建立包括安全策略的制訂、評估、執(zhí)行等。2.2信息安全防御模型3.實施保護68安全保護就是采用一切可能的方法、手段和技術防護信息及信息系統(tǒng)遭受安全威脅,減少和降低遭受入侵和攻擊的可能,即實現保密性、完整性、可用性、可控性和不可否認性等安全屬性。2.2信息安全防御模型4.監(jiān)測69在系統(tǒng)實施保護之后根據安全策略對信息系統(tǒng)實施監(jiān)控和檢測。監(jiān)控是對系統(tǒng)運行狀態(tài)進行監(jiān)視和控制,發(fā)現異常,并可能作出動態(tài)調整。檢測是對已部署的系統(tǒng)及其安全防護進行檢查測量,是動態(tài)響應和加強防護的依據,是強制落實安全策略的手段。2.2信息安全防御模型5.響應70響應就是已知一個攻擊(入侵)事件發(fā)生之后,所進行的處理。把系統(tǒng)調整到安全狀態(tài);對于危及安全的事件、行為、過程,及時做出處理,杜絕危害進一步擴大,力求系統(tǒng)保持提供正常的服務。2.2信息安全防御模型6.恢復71恢復可以分為系統(tǒng)恢復和信息恢復。系統(tǒng)恢復是指修補安全事件所利用的系統(tǒng)缺陷,如系統(tǒng)升級、軟件升級和打補丁等方法,去除系統(tǒng)漏洞或后門。信息恢復是指恢復丟失的數據。目錄2.1信息安全保障體系2.2信息安全防御模型2.3風險評估與等級保護722.3風險評估與等級保護73建設信息系統(tǒng)時,
如何確定和規(guī)劃安全保護?Protection?2.3風險評估與等級保護2.3.1等級保護2.3.2風險評估2.3.3系統(tǒng)安全測評2.3.4信息系統(tǒng)安全建設實施2.3.5信息安全原則742.3.1等級保護類別級別名稱主要特征AA1驗證設計形式化的最高級描述和驗證,形式化的隱藏通道分析,形式化的代碼對應證明BB3安全區(qū)域存取監(jiān)控,高抗?jié)B透能力B2結構化保護形式化模型/隱通道約束、面向安全的體系結構,較好的抗?jié)B透能力B1標識的安全保護強制存取控制、安全標識CC2受控制的存取控制單獨用戶的可查性、廣泛的審計跟蹤C1自主安全保護自主存取控制DD低級保護系統(tǒng)只為文件和用戶提供安全保護。最普通的形式是本地操作系統(tǒng),或者是一個完全沒有保護的網絡。752.3.2風險評估風險評估是安全建設的出發(fā)點,遵循成本/效益平衡原則,通過對用戶關心的重要資產(如信息、硬件、軟件、文檔、代碼、服務、設備、企業(yè)形象等)的分級,對安全威脅(如人為威脅、自然威脅等)發(fā)生的可能性及嚴重性分析,對系統(tǒng)物理環(huán)境、硬件設備、網絡平臺、基礎系統(tǒng)平臺、業(yè)務應用系統(tǒng)、安全管理、運行措施等方面的安全脆弱性(或稱薄弱環(huán)節(jié))分析,以及已有安全控制措施的確認,借助定量、定性分析的方法,推斷出用戶關心的重要資產當前的安全風險,并根據風險的嚴重級別制定風險處理計劃,確定下一步的安全需求方向。7677風險評估要素關系圖78風險分析原理圖79風險評估實施流程圖2.3.3系統(tǒng)安全測評系統(tǒng)安全測評是指由具備檢驗技術能力和政府授權資格的權威機構(如中國信息安全測評中心),依據國家標準、行業(yè)標準、地方標準或相關技術規(guī)范,按照嚴格程序對信息系統(tǒng)的安全保障能力進行的科學公正的綜合測試評估活動,以幫助系統(tǒng)運行單位分析系統(tǒng)當前的安全運行狀況、查找存在的安全問題,并提供安全改進建議,從而最大程度地降低系統(tǒng)的安全風險。802.3.4信息系統(tǒng)安全建設實施規(guī)劃需求階段:定級備案、風險評估。設計開發(fā)及實施階段:系統(tǒng)安全體系結構及詳細實施方案的設計,采購和使用,建設安全設施,落實安全技術措施。第三方機構評審。運行維護階段:周期性的安全測評和安全認可。廢棄階段:廢棄處理對資產的影響、對信息/硬件/軟件的廢棄處置方面威脅、對訪問控制方面的弱點進行綜合風險評估。812.3.5信息安全原則安全是相對的,同時也是動態(tài)的,沒有絕對的安全!安全是一個系統(tǒng)工程!信息安全技術原則:最小化原則分權制衡原則安全隔離原則82小結本章從信息安全范疇、衡量信息安全的屬性出發(fā),介紹了信息安全保障體系,信息安全保障包括人、政策和技術工程方法,使用各類安全機制實現安全服務,滿足安全功能需求。信息安全防御體系構建應該是動態(tài)和可適應的,以策略為核心,實施評估、保護、監(jiān)測、響應和恢復等環(huán)節(jié)的閉環(huán)管理。最后介紹了等級保護、風險評估和安全測評的內容與方法,以及它們之間的關系。本章從整體上概括了信息系統(tǒng)安全保障體系和實施的工程方法。83Q&A84作業(yè)與思考主要安全屬性有哪些?它們含義是什么?信息防御模型包括哪些主要環(huán)節(jié)?各個環(huán)節(jié)的功能是什么?什么是風險評估?風險評估的主要內容是什么?
什么是等級保護?我國發(fā)布《計算機信息系統(tǒng)安全保護等級劃分準則》將信息系統(tǒng)安全保護能力分為哪幾個等級?各個等級是如何定義的?85學習目標數據保密通信模型及基本術語對稱密碼體制及其分類與工作原理公鑰密碼體制及其工作原理數字簽名技術及其特性消息完整性保護及認證如何定義和衡量密碼體制的安全性本章介紹密碼基本概念、分類、實現和應用原理。873.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析目錄88什么是密碼術?89Cryptography?3.1密碼術及發(fā)展保密性要求即使非授權者獲取了數據副本,他也無法從副本中獲得有用的信息。90
3.1密碼術及發(fā)展宋曾公亮、丁度等編撰《武經總要》“字驗”公元前405年,斯巴達的將領來山得使用了原始的錯亂密碼;公元前一世紀,古羅馬皇帝凱撒曾使用有序的單表代替密碼;1863年普魯士人卡西斯基所著《密碼和破譯技術》
1883年法國人克爾克霍夫所著《軍事密碼學》20世紀初,產生了最初的可以實用的機械式和電動式密碼機,同時出現了商業(yè)密碼機公司和市場。第二次世界大戰(zhàn)德國的Enigma密碼轉輪機,堪稱機械式古典密碼的巔峰之作。913.1密碼術及發(fā)展1976年美國政府頒布數據加密標準(DES)。1976年Diffie和Hellman發(fā)表的文章《密碼學的新動向》1978年R.L.Rivest,A.Shamir和L.Adleman實現了RSA公鑰密碼體制1969年哥倫比亞大學的StephenWiesner首次提出“共軛編碼”
概念。1984年H.Bennett和G.Brassard在此思想啟發(fā)下,提出量子理論BB84協(xié)議1985年Miller和Koblitz首次將有限域上的橢圓曲線用到了公鑰密碼系統(tǒng)中。1989年R.Mathews,D.Wheeler,L.M.Pecora和Carroll等人首次把混沌理論使用到序列密碼及保密通信理論。2001年NIST發(fā)布高級加密標準AES,替代DES作為商用密碼標準。923.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析目錄9394如何在開放網絡中保密傳輸數據?SecretTransmission?953.2數據保密通信模型對于m∈M,k1,k2∈K,有
,五元組(M,C,K,E,D)稱為一個密碼體制,其中E和D代表具體的密碼算法——具體的變換過程或數學方法??梢钥闯觯用芸梢钥醋鍪菍⒚荑€與明文混合變換的過程,而解密是從密文中剝離密鑰的過程,因此也稱脫密過程。Kerchhoff假設:一個密碼體制,對于所有的密鑰,加密和解密算法迅速有效;密碼體制的安全性不應該依賴于算法的保密,而僅依賴密鑰的保密。963.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析目錄9798如何使用相同的密鑰加/解密數據?SymmetricCryptography?99對稱密碼體制3.3對稱密碼體制對稱密碼體制分類:分組密碼先將明文劃分成若干等長的塊——分組,如每個分組長64比特、128比特,然后再分別對每個分組進行加密,得到等長的密文分組。解密過程類似,有些密碼算法解密算法與加密算法完成一樣,如DES。序列密碼是把明文以位或字節(jié)為單位進行加密,一般是與密鑰(如由密鑰種子產生的任意長度的字節(jié)流)進行混合(最簡單地進行異或運算)獲得密文序列。1003.3對稱密碼體制兩個思想:擴散(Diffusion):即將明文及密鑰的影響盡可能迅速地散布到較多的輸出密文中,典型操作就是“置換”(Permutation)(如重新排列字符)?;靵y(Confusion):目的在于使作用于明文的密鑰和密文之間的關系復雜化,使得明文和密文、密文和密鑰之間的統(tǒng)計相關特性極小化,從而使統(tǒng)計分析攻擊不能奏效?;靵y通常采用“代換”(Substitution)操作。101102Feistel網絡結構3.3對稱密碼體制序列密碼(流密碼)將明文流和密鑰流混合(一般為簡單的按字節(jié)或比特位異或)產生密文流。流密碼使用一個“種子密鑰”產生密鑰流(理論上可以是無限長度),通信雙方共享這個“種子密鑰”,按相同方式產生密鑰流。1033.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析目錄104105如何方便地管理和使用密鑰?AsymmetricCryptography?3.4公鑰密碼體制106公鑰加密體制3.4公鑰密碼體制公鑰密碼就是一種陷門單向函數f。即:(1)對f的定義域中的任意x都易于計算f(x),而對f的值域中的幾乎所有的y,即使當f為已知時要計算f-1(y)在計算上也是不可行的。(2)當給定某些輔助信息(陷門信息)時則易于計算f-1(y)。此時稱f是一個陷門單向函數,輔助信息(陷門信息)作為秘密密鑰。這類密碼一般要借助特殊的數學問題,如數論中的大數分解、離散對數等數學難解問題,構造單向函數,因此,這類密碼的安全強度取決于它所依據的問題的計算復雜度。1073.4公鑰密碼體制一個公鑰密碼體制是一個七元組(M,C,SK,PK,Gen,Enc,Dec):明文空間M(Message消息,或Plantext),需要加密的消息表示為m,m∈M。密文空間C(Ciphertext),明文m經過加密變換為密文c,c∈C。私鑰空間SK(SecretKey),所有可能的私鑰構成。公鑰空間PK(PublicKey),所有可能的公鑰構成。密鑰生成算法Gen(KeyGenerationAlgorithm),從可能的私鑰空間中隨機選取一個私鑰kpri(PrivateKey),kpri∈SK,算法Gen輸出私鑰kpri和對應的公鑰kpub(PubklicKey),kpub∈PK。加密算法Enc(EncryptionAlgorithm),給定明文m,m∈M,輸出密文c,c=Enc(m,
kpub),c∈C。解密算法Dec(DecryptionAlgorithm),給定密文c,c∈C,輸出明文m,m=Dec(c,
kpri),m∈M。1083.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析目錄109110如何在電子世界中實現簽名?Digital
Signature?3.5數字簽名一個假想的例子:某人甲要通過網絡傳輸一份文檔給乙,乙接收到這份文檔,乙能確認這份文檔的真實性嗎(確實來自于甲,而不是其他人冒充甲發(fā)送的)?乙能確定這份文檔的正確性碼(在傳輸過程中沒有被篡改)?甲如果否認曾經發(fā)送過該文檔(實際上確實是甲發(fā)送的)怎么辦?111112數字簽名機制3.5數字簽名一個數字簽名機制是使用一種公鑰密碼,使得一個消息接收者相信接收的消息來自聲稱的消息發(fā)送者(消息主體的識別與鑒別),并信任該消息(消息被正確地傳遞,沒有被篡改——完整性保護),同時消息簽名者不能否認簽發(fā)了該消息(不可否認性保護)。1133.5數字簽名一個數字簽名體制是一個七元組(M,S,SK,PK,Gen,Sig,Ver):明文空間M(Message消息,或Plantext),對應需要簽名的消息表示為m,m∈M。密文空間S(Signature),明文m經過密碼變換輸出密文s,s∈S。私鑰空間SK(SecretKey),所有可能的私鑰構成。公鑰空間PK(PublicKey),所有可能的公鑰構成。密鑰生成算法Gen(KeyGenerationAlgorithm),從可能的私鑰空間中隨機選取一個私鑰kpri(PrivateKey),kpri∈SK,算法Gen輸出私鑰kpri和對應的公鑰kpub(PubklicKey),kpub∈PK。簽名算法Sig(SigningAlgorithm),給定明文m,m∈M,輸出簽名s,s=Sig(m,
kpri),
s∈S。加密算法Ver(VerifyingAlgorithm),給定簽名s,s∈S,驗證簽名v=Ver(s,
kpuk),輸出正確或錯誤的結果,v∈{True,False}。114115數字簽名機制3.5數字簽名密碼學哈希函數:密碼學哈希函數將任意長度輸入轉換為特定長度輸出,典型的算法如MD5、SHA、SHA-256等。一個密碼學哈希函數H應具備以下特性:單向性:給定一個輸入m,容易計算哈希值h=H(m);但反過來,給定一個哈希值h,計算原像m是困難的??古鲎残裕阂阎粋€哈希值h=H(m),找出另一個m’,使得H(m’)等于h是困難的;同時任意找到兩個值c1、c2,使得這兩個數的哈希值相同,即H(c1)=H(c2),是困難的。116帶簽名加密封裝1173.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析目錄118119如何保護通信數據的完整性?Digital
Signature?3.5消息完整性保護循環(huán)冗余校驗碼(CyclicRedundancyCheck,CRC)?數字簽名?1203.5消息完整性保護消息認證碼(MessageAuthenticationCode,MAC)——帶密碼的摘要1213.5消息完整性保護一個基于HMAC的應用實例,使用HMAC完成一個典型的“質詢/響應”(Challenge/Response)身份認證過程:(1)客戶端向服務器發(fā)出認證請求,如一個登錄請求(假設是瀏覽器的GET請求)。(2)服務器返回一個質詢(Challenge),一般為一個隨機值,并在會話中記錄這個隨機值。(3)客戶端將該隨機值作為輸入字符串,與用戶口令一起進行HMAC運算,然后提交計算結果給服務器——響應(Response)。(4)服務器讀取用戶數據庫中的用戶口令,并使用步驟2中發(fā)送的隨機值做與客戶端一樣的HMAC運算,然后與用戶返回的響應比較,如果結果一致則驗證了用戶是合法的。1223.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析目錄123124如何驗證主體的身份或消息地真實性?Digital
Signature?3.6認證認證(也稱鑒別,Authentication)是證明一個對象身份的過程,換句話講,指驗證者(Verifier,一般為接收者)對認證者(Authenticator,也稱證明者、示證者,又記Certifier,一般為發(fā)送方)身份的真實性的確認方法和過程。1253.6認證對消息自身的認證,即回答“這個消息真實嗎?”、“這個消息正確嗎?”,換句話講,確認這個消息是合法用戶生成的且在傳遞過程中沒有被篡改。126消息發(fā)送實體認證,人或設備,即回答“是某人嗎?”、“是某臺設備嗎?”、“是某個軟件嗎?”。對實體認證的進一步目的,往往是為了決定將什么樣的特權(Privilege)授權(Authorizing)給該身份的實體。3.6認證零知識證明——一種有趣的“魔咒”認證方法洞穴問題:如圖有一個洞穴,在洞穴深處C點與D點間有一道門,設P知道打開該門的咒語,其他人不知道咒語無法打開此門。那么現在P如何向驗證者V證明他知道咒語但又不告訴V咒語是什么呢?1273.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析目錄128129如何定義一個密碼系統(tǒng)是安全的?Digital
Signature?3.7計算復雜理論理論安全性(也稱無條件安全):如果具有無限計算資源的密碼分析者也無法破譯一個密碼系統(tǒng)(密碼體制),則稱該密碼系統(tǒng)是理論安全的。可證明安全性:如果從理論上可以證明破譯一個密碼系統(tǒng)的代價(困難性)不低于求解某個已知的數學難題,則稱該密碼系統(tǒng)是可證安全的。計算安全性:如果使用已知的最好的算法和利用現有的(或密碼系統(tǒng)生命周期內)最大的計算資源仍然不可能在合理的時間完成破譯一個密碼系統(tǒng),則稱該密碼系統(tǒng)是計算安全的。1301.安全的定義3.7計算復雜理論運算所需的時間T和存儲所需的空間S,它們都是n的函數,記為T(n)和S(n),也稱為時間復雜度和空間復雜度。如果
,其中c>0,那么稱該算法運算的時間是多項式階的。如果
,其中p(n)是關于n的一個多項式,則稱該算法運算時間是指數階的。1312.安全的度量3.7計算復雜理論使用確定算法可以在多項式時間內求解的問題稱為P問題。在多項式時間內可以用非確定性算法求解的問題稱為NP問題。如果一個問題X可以在多項式時間內用確定性算法轉化為問題Y,而Y的解可以在多項式時間內用確定性算法轉化為X的解,則稱問題X可以規(guī)約化為問題Y。因此,如果某類NP問題中任何一個問題可以規(guī)約為問題Y,而且Y本身就是NP問題,則稱Y是一個NP完全問題,記為NPC。如果能夠找到一個計算序列作為解密算法,那么密碼分析者在不知道計算序列的情況下求解問題(稱為客觀求解)在計算上是不可行的。1323.計算理論目錄3.1密碼術及發(fā)展3.2數據保密通信模型3.3對稱密碼體制3.4公鑰密碼體制3.5數字簽名3.5消息完整性保護3.6認證3.7計算復雜理論3.8密碼分析133134如何攻擊密碼系統(tǒng)?Digital
Signature?3.8密碼分析惟密文攻擊(Ciphertextonly):破譯者已知的東西只有兩樣:加密算法、待破譯的密文。已知明文攻擊(Knownplaintext):破譯者已知的東西包括:加密算法和經密鑰加密形成的一個或多個明文-密文對,即知道一定數量的密文和對應的明文。選擇明文攻擊(Chosenplaintext):破譯者除了知道加密算法外,他還可以選定明文消息,并可以知道該明文對應的加密密文。例如,公鑰密碼體制中,攻擊者可以利用公鑰加密他任意選定的明文。1353.8密碼分析選擇密文攻擊(Chosenciphertext):破譯者除了知道加密算法外,還包括他自己選定的密文和對應的、已解密的明文,即知道選擇的密文和對應的明文。選擇文本攻擊(Chosentext):是選擇明文攻擊與選擇密文攻擊的結合。破譯者已知的東西包括:加密算法、破譯者選擇的明文消息和它對應的密文,以及破譯者選擇的猜測性密文和它對應的解密明文。1363.8密碼分析生日悖論與生日攻擊一個有50人班級里有2位同學同一天生日(不要求同年)的概率有多大?有人可能馬上回答50/365,約13.7%。137但實際答案97%。奇怪吧!換個問題,問平均在多少人中才能找到一對人生日相同,答案是25人,實在不可思議。這就是所謂“生日悖論(BirthdayParadox)”,為什么呢?小結本章介紹了密碼技術的基本概念、分類和工作原理?,F代密碼術加/解密算法是公開的,只要求密鑰是保密的,根據密鑰使用的特點,密碼體制可以分為對稱密碼和公鑰密碼,對稱密碼又可以分為分組密碼和流密碼,公鑰密碼體制則允許密鑰公開,方便了應用,同時公鑰密碼體制支持了數字簽名的實現。使用密碼技術可以實現數據的保密性、完整性、認證性和不可否認性保護。密碼體制安全性是相對的,可證安全性和計算安全性滿足實際安全要求。138Q&A139作業(yè)與思考請描述對稱密碼體制的工作原理。請描述公鑰密碼體制的工作原理。什么是Feistel網絡結構,有何作用?如何實現數字簽名?數字簽名具備什么特性?如何保護消息完整性?HMAC實現過程是什么?什么是認證?如何實現對消息源的認證?140學習目標數據加密標準DES高級加密標準AES其它典型分組密碼算法流密碼算法分組密碼算法工作模式本章以幾個典型對稱密碼算法為例,介紹對稱密碼算法實現過程、機理及特點,理解密碼算法的應用背景。142目錄4.1數據加密標準DES4.2 高級加密標準AES4.3其他分組密碼算法介紹4.4流密碼算法RC44.5分組密碼工作模式143如何實現加解密過程相同、
密鑰相同的對稱密碼算法?144SymmetricCryptography?4.1數據加密標準DES數據加密標準DES(DataEncryptionStandard)是一個著名分組加密算法。美國國家標準局1973年5月公開征集用于計算機數據在傳輸和存儲期間實現加密保護的密碼算法。1975年美國國家標準局接受了IBM公司提交的一種密碼算法并向社會公開征求意見。1997年正式采用該算法作為美國數據加密標準。1980年12月美國國家標準協(xié)會正式采用該算法作為美國商用加密算法。1454.1.1概述美國國家標準局征求加密算法的要求:(1)提供高質量的數據保護,防止數據未經授權的泄露和未被察覺的修改。(2)具有相當高的復雜性,使得破譯的開銷超過可能獲得的利益,同時又便于理解和掌握。(3)密碼體制的安全性應該不依賴于算法的保密,其安全性僅以加密密鑰的保密為基礎。(4)實現經濟,運行有效,并且適用于多種完全不同的應用。1464.1.1概述DES是一種分組密碼算法,加密和解密使用相同的密鑰。DES的分組長度為64比特位使用64比特密鑰(其中包括8比特奇偶校驗位),密鑰通過擴展后經過16輪對明文分組的代換和置換147加/解密密鑰相同有何好處?長度為什么選擇64比特?為什么要做16輪?4.1.2DES工作過程1481.初始置換及其逆置換149IP置換逆IP置換2.f函數1502.f函數151f函數中擴展操作S1替換陣列2.f函數152置換P4.1.3密鑰調度56比特密鑰作為初始輸入,經過置換選擇操作PC1,輸出56比特分作左右兩個部分(各28比特),分別做左循環(huán)移位,之后左右兩部分合并再進行置換選擇操作PC2,產生48比特輪密鑰。153置換選擇PC1置換選擇PC24.1.4DES安全性分析S盒是DES的核心,也是DES算法最敏感的部分,所有替換都是固定的,甚顯神秘。許多密碼學家曾擔心NSA設計S盒時隱藏了某些陷門。DES算法具有很好的雪崩效應。1997年互聯網利用上萬臺微機個月成功破譯DES。1998年EFF花費大約25萬美元定制構造了一個DES解密器,該機器包含1856個定制芯片,可以在2天內強力搜索一個DES密鑰。2006年德國Bochum和Kiel大學花費1萬美元,構建了一個名為COPACOBANA機器,它包含120個低成本FPGA,平均在9天內能夠完成一個DES密鑰窮舉。1544.1.53DESP=EK3(DK2(EK1(M)))標準中定義3種密鑰使用方式:(1)3個密鑰相互獨立,互不相同。這種方式提供最強安全性,相當于提供3×56=168比特長度密鑰。(2)K1和K2相互獨立,互不相同,而K3=K1。提供2×56=112比特長度密鑰,密鑰空間為2112=5×1033。實際應用多采用此方法。(3)3個密鑰完全相等,即K1=K2=K3。算法退化為標準DES,保證向后兼容。155如何設計數學上可證明安全性的對稱密碼算法?156ProvableSecurity?目錄4.1數據加密標準DES4.2 高級加密標準AES4.3其他分組密碼算法介紹4.4流密碼算法RC44.5分組密碼工作模式1574.2.1AES基本操作流程AES也是由多輪操作組成,輪數由分組和密鑰長度決定。AES在4×n字節(jié)數組(矩陣)上操作,稱為狀態(tài)(State),其中n是密鑰字節(jié)數除4。1584.2.1AES基本操作流程AES允許分組和密鑰以128比特為基礎,以8字節(jié)倍數擴展長度,因此192、256比特分組(或密鑰)就被組織成4×6、4×8矩陣。AES標準中使用Nb、Nk分別表示分組矩陣、密鑰矩陣列數,如當分組為4×6矩陣,即Nb=6,密鑰為4×8矩陣,則Nk=8。AES算法流程中輪數依賴于密鑰長度,標準中使用Nr表示輪數。AES包括3個分組密碼套件:AES-128、AES-192、AES-265對應Nk分別為4、6、8,即密鑰長度對應128、192和256比特,對應輪數Nr等于10、12、14,分組長度都為128比特。1594.2.1AES基本操作流程(1)字節(jié)替換(Byte):執(zhí)行一個非線性替換操作,通過查表替換每個字節(jié)。(2)行移位:狀態(tài)(矩陣)的每一行按字節(jié)為單位循環(huán)移動若干字節(jié)。(3)列混合:基于狀態(tài)列的混合操作。(4)輪密鑰疊加:狀態(tài)的每一個字節(jié)混合輪密鑰。輪密鑰也是由密鑰調度算法產生。1601614.2.2輪操作1621.字節(jié)替換4.2.2輪操作1632.行移位4.2.2輪操作1643.列混合4.2.2輪操作1654.輪密鑰加4.2.3密鑰擴展166對稱密碼中混亂與替換的不同實現方法?167ProvableSecurity?目錄4.1數據加密標準DES4.2 高級加密標準AES4.3其他分組密碼算法介紹4.4流密碼算法RC44.5分組密碼工作模式1684.3.1IDEA算法國際數據加密算法IDEA是1991年由JamesMassey和我國學者來學嘉共同設計的,在協(xié)議PGP中廣泛應用。IDEA算法采用64比特分組和128比特密鑰,包括相同的8輪轉換和1個輸出轉換(半輪)。IDEA通過交叉使用不同群-模加和乘運算,以及比特位異或,這些運算在代數上是“不協(xié)調的”。輪變換輸入將64比特分為4個16比特子分組,經過變換輸出4個16比特子分組,作為下一輪輸入。每輪變換中,在模乘或模加運算中混合6個16比特密鑰,最后一輪4個運算,混合K1到K4密鑰,4個16比特輸出,合并后作為IDEA加密產生的64比特密文。169170IDEA加密輪變換4.3.2Blowfish算法BruceSchneier在1993設計的分組加密算法,速度快。依賴密鑰的S盒和復雜密鑰調度。使用64比特分組,從32比特到448比特可變長度密鑰,采用16輪Feistel結構。1714.3.2Blowfish算法1724.3.3RC5/RC6算法173RC5算法:可變分組長度(32、64或128比特)、密鑰長度(0到2040比特)以及輪數(0到255),原始建議選擇參數64比特分組、128比特密鑰和12輪。用于研究和評估作為密碼原語相關操作。RC5包括一系列模加和異或運算,采用類Feistel網絡結構。其密鑰調度本質上單向函數擴展密鑰。每一輪變換有相同的2個半輪構成。如何實現“無限”長度密鑰的對稱密碼算法?174StreamCipher?目錄4.1數據加密標準DES4.2 高級加密標準AES4.3其他分組密碼算法介紹4.4流密碼算法RC44.5分組密碼工作模式1754.4流密碼算法RC4RC4算法由主密鑰(通信雙方共享的一定長度密鑰)按一定密鑰調度算法產生任意長度偽隨機密鑰字節(jié)流(以字節(jié)為單位),與明文流按字節(jié)異或生成密文流,解密時密文流與相同的密鑰流按字節(jié)異或恢復出明文字節(jié)流。1764.4流密碼算法RC4RC4算法首先使用1到256字節(jié)(8到2048比特)的可變長度密鑰初始化一個256個字節(jié)的狀態(tài)矢量,記為S,S的元素記為S[0]、S[1]、S[2]……S[255],類似于數組表示。至始至終S向量始終包含0~255(十進制)所有的8比特數。加密和解密過程中,密鑰流每個字節(jié)由S中的256個元素按一定方式依次選出一個元素生成,每生成一個密鑰字節(jié),S中的元素就被重新置換一次。1774.4流密碼算法RC4S最初被初始化時,從低到高字節(jié)順序放置0至255這256個數。同時設置一個臨時向量T,將密鑰K按字節(jié)賦值給T,也稱使用密鑰調度算法KSA。使用T產生S的初始置換。下標i從0到255,依次當前根據T[i]和S[i]的值,確定將S[i]中元素與S中另一個元素交換。通過初始置換,原先順序排列數值0~255的S向量根據T(主密鑰)被重新亂序,不同的主密鑰,亂序結果不同。1784.4流密碼算法RC4以初始化后的矢量S為基礎,依次產生密鑰流的每一個字節(jié),每選擇一個密鑰字節(jié),還有再完成一次置換,密鑰字節(jié)產生算法(也稱偽隨機發(fā)生算法PRGA)如下,其中使用2個8比特指針,表示為i和j。179生成密鑰流如何應用有限密鑰長度分組密碼安全加密長消息?180Working
Mode?目錄4.1數據加密標準DES4.2 高級加密標準AES4.3其他分組密碼算法介紹4.4流密碼算法RC44.5分組密碼工作模式1814.5.1電子密碼本1824.5.2密文分組鏈接183CBC加密CBC解密4.5.3密文反饋184CFB加密CFB解密4.5.4輸出反饋185OFB加密OFB解密4.5.5計數模式186小結本章介紹了典型分組密鑰算法,重點介紹了DES和AES實現過程和工作原理,簡單介紹了IDEA、Blowfish和RC5/RC6等密碼算法的核心實現機理。同時介紹了典型流密碼算法RC4的加密過程及實現機理。最后介紹了分組密碼的工作模式。187Q&A188作業(yè)與思考什么是Feistel網絡結構,有何特點?編寫DES的實現程序,能夠對任意長度的字符串或文件進行加密和對應的解密。請說明分組密碼算法和流密碼算法的區(qū)別?分組密碼的工作模式有哪幾種?各自特點是什么?分析RC4是如何產生偽隨機序列?189第5章公鑰密碼技術學習目標RSA公鑰密碼算法及其用于加密和簽名的實現。ElGamal公鑰密碼算法及其用于加密和簽名的實現。ECC公鑰密碼算法及其用于加密和簽名的實現。公鑰密碼算法的設計基本方法和安全性原理。公鑰密碼體制加密密鑰公開,解決了密鑰管理與分發(fā)的問題。那么如何實現公鑰密碼呢?本章介紹幾個典型的公鑰密鑰算法,包括基于大數分解難題的RSA算法,基于有限域上求解離散對數難解問題的ElGamal算法,以及基于橢圓曲線上求解離散對數難解問題的ECC算法。191目錄5.1RSA公鑰密碼算法5.2Diffie-Hellman密鑰協(xié)商機制5.3ElGamal公鑰密碼體制5.4橢圓曲線密碼體制192如何實現加密密鑰公開的加密算法?1935.1.1RSA基本算法RSA(public-keycryptography),以當時在MIT的提出者Rivest、Shamir和Adleman三個人的名字命名,于1978年公開描述的。RSA既可以用于加密也可以用于簽名。RSA包括公鑰和私鑰兩個密鑰,公鑰可以讓任何人知道并用于加密消息,使用公鑰加密的消息只能使用對應的私鑰解密。194信息安全技術基礎張浩軍1951965.1.1RSA基本算法1975.1.2RSA加密算法的數論基礎定義1(同余):設a、b、m是正整數,如果m|(a-b),即m整除(a-b),則稱a和b模m同余,記為定理1:(素數分解定理):對任意正整數n,存在唯一的正素數序列
,以及正整數
,使得:
。定義2(歐拉數):設n是一個正整數,
,即小于n的與n互素的正整數,稱為歐拉數。特別地,當p是一個素數時,則
。1985.1.2RSA加密算法的數論基礎定理2:如果n1和n2互素,則
。定理3:如果一個正整數n按“定理1”分解并表示為
,則
。定理4:(Euler定理,歐拉定理)設x和n都是正整數,如果gcd(x,n)=1,則定理5(Fermat小定理):設x和p都是正整數。如果p是素數,則1995.1.3RSA算法實現中的計算問題概率測試方法,選取特定比特長度的隨機數,通過多次迭代進行概率素性測試。例如Fermat素性測試:
給定整數n,選擇一些與n互素整數a,計算an-1modn,如果結果不是1,則n是合數;若結果是1,n可能是也可能不是素數。200如何快速產生素數?5.1.3RSA算法實現中的計算問題Miller-Rabin素性測試和Solovay-Stassen素性測試算法,對于任意合數n,至少3/4(Miller-Rabin)、1/2(Solovay-Stassen)的a可以作為n是合數的證據。也稱合數測試。Miller-Rabin方法:給定整數n,選擇一些整數a<n,令
,d為奇數。對于所有的
如果:
而且
,則n是合數;否則n可能是素數,也可能不是素數。通過多次迭代,提高判定n是素數概率。201如何快速產生素數?5.1.3RSA算法實現中的計算問題模冪運算滿足分配律
[(amodn)×(bmodn)]modn=(a×b)modn
利用中間結果對n取模,即降低了存儲要求,并可實現高效算法。遞進式指數計算
例如計算ad(modn),為了便于計算機實現,其中指數d可以表示為k比特二進制(bk-1bk-2...b1b0)2,因此,d可以記為:
有:202如何快速進行模指數運算?5.1.3RSA算法實現中的計算問題采用擴展歐幾里得算法快速計算d:
ax+by=gcd(a,b)
gcd(a,b)表示a和b的最大公約數即求解x和y,使得上面等式成立。對應地,求解式子
ed+(-k)φ(n)=1中d和-k。203如何求解私鑰?5.1.4RSA體制安全性分析(1)窮舉攻擊
即列出所有可能的私鑰,顯然這是缺乏效率和困難的。(2)因數分解攻擊
給定某個整數
,求c的模n的e次方根
是一個困難問題,但如果整數n的素數分解已知,則上述問題易解。因此,因數分解攻擊RSA途徑包括:分解n為p和q。直接確定
,而不確定p和q。直接確定d,而不確定
。2045.1.4RSA體制安全性分析(3)參數選取不當造成的攻擊
選取p和q時應該是隨機的且不應太接近。
因為,
,當(p-q)/2很小時,那么(p+q)/2只比
大一點,因此逐個檢查大于
的整數x,使得
是一個完全平方數,記為y2,那么就有
:
和
。2055.1.4RSA體制安全性分析(4)選擇密文攻擊
攻擊者得到兩個明/密文對
、
,則可以獲得
的密文結果,因為
由明密文對
,可以獲得對
的加密結果,因為
此外,能夠獲得
的解密結果,就可以恢復出c對應的明文。2065.1.4RSA體制安全性分析2075.1.4RSA體制安全性分析2085.1.5RSA填充加密機制隨機填充機制加密消息——優(yōu)化非對稱加密填充OAEP(OptimalAsymmetricEncryptionPadding)機制添加隨機元素將確定密碼機制(如基本RSA)轉換為一個概率機制。部分密文解密(或其他信息泄露),只要不能翻轉單向陷門函數,攻擊者仍不能解密任何密文部分。209使用相同公鑰,加密相同明文能否得到不同密文?5.1.5RSA填充加密機制(1)明文m后面填充k1個0。(2)產生k0比特隨機數r。(3)使用G將k0比特隨機數r擴展為(n-k0)長度比特串。(4)計算x=m00…0
G(r)。(5)使用H將(n-k0)長度x壓縮為長度k0比特串。(6)計算y=r
H(x)。(7)最后輸出x||y。210解密操作:(1)恢復隨機串r=
y
H(x)。(2)恢復消息m00…0=x
G(r)。5.1.6RSA簽名算法211能否在不安全的通信信道上傳輸一些公開信息,最終使得雙方獲得秘密信息?212目錄5.1RSA公鑰密碼算法5.2Diffie-Hellman密鑰協(xié)商機制5.3ElGamal公鑰密碼體制5.4橢圓曲線密碼體制2135.2Diffie-Hellman密鑰協(xié)商機制D-H密鑰協(xié)商機制,可以實現在不安全信道中為兩個實體建立一個共享秘密,協(xié)商的秘密可以作為后續(xù)對稱密碼體制的密鑰使用。214信息安全技術基礎張浩軍5.2Diffie-Hellman密鑰協(xié)商機制215D-H協(xié)商協(xié)議描述及實例5.2Diffie-Hellman密鑰協(xié)商機制216D-H協(xié)議中間人攻擊基于離散對數難解問題設計的公鑰密碼算法?217目錄5.1RSA公鑰密碼算法5.2Diffie-Hellman密鑰協(xié)商機制5.3ElGamal公鑰密碼體制5.4橢圓曲線密碼體制2182195.3.1ElGamal加密算法2205.3.2ElGamal公鑰密碼體制的安全性離散對數難解問題,即給定ga,求解a是困難的。2215.3.2ElGamal公鑰密碼體制的安全性2225.3.3ElGamal簽名算法223如何發(fā)現可用于公鑰密碼體制的代數系統(tǒng)?224目錄5.1RSA公鑰密碼算法5.2Diffie-Hellman密鑰協(xié)商機制5.3ElGamal公鑰密碼體制5.4橢圓曲線密碼體制2255.4.1橢圓曲線基本概念2265.4.1橢圓曲線基本概念2275.4.1橢圓曲線基本概念2285.4.1橢圓曲線基本概念2295.4.1橢圓曲線基本概念2305.4.1橢圓曲線基本概念2315.4.1橢圓曲線基本概念2325.4.1橢圓曲線基本概念2335.4.1橢圓曲線基本概念2345.4.1橢圓曲線基本概念2355.4.1橢圓曲線基本概念2365.4.1橢圓曲線基本概念2375.4.1橢圓曲線基本概念2385.4.1橢圓曲線基本概念2395.4.1橢圓曲線基本概念2405.4.1橢圓曲線基本概念2415.4.1橢圓曲線基本概念242橢圓曲線上點群法則規(guī)定如下:設P、Q是E上的兩個點,連接兩個點得到一條直線,如果直線與曲線交叉,則得到第3個點(如圖所示得到點R);如果該直線在其中一個點與曲線相切,則該點計兩次;如果直線與y軸平行,則定義第3個點為無窮遠點。3.橢圓曲線上加法運算幾何含義5.4.1橢圓曲線基本概念2433.橢圓曲線上加法運算幾何含義5.4.1橢圓曲線基本概念性質:(1)曲線上三個點在一條直線上,則它們的和等于O。(2)曲線上點P,則存在一個負點,記為-P,P+(-P)=O。(3)若一條垂直x軸的豎線交于曲線上兩點P、Q,
則P+Q+O=O,于是有P=-Q。(4)如果曲線上兩個點P和Q的x坐標不同,則連接P和Q得到一條直線與曲線交于R‘點,則P+Q+R’=O,若R是R‘的負點,則P+Q=-R’=R。(5)倍數運算,定義一個點P的兩倍是它的切線與曲線的另一個交點R‘,則P+P=2P=-R’=R。2443.橢圓曲線上加法運算幾何含義5.4.1橢圓曲線基本概念2453.橢圓曲線上加法運算幾何含義5.4.2基于橢圓曲線的加密體制2465.4.2基于橢圓曲線的加密體制2475.4.2基于橢圓曲線的加密體制2485.4.2基于橢圓曲線的加密體制2495.4.2基于橢圓曲線的加密體制2505.4.2基于橢圓曲線的加密體制2515.4.3橢圓曲線D-H密鑰協(xié)商2525.4.4基于橢圓曲線的數字簽名
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《復式統(tǒng)計表》(教學實錄)-2023-2024學年三年級下冊數學人教版
- 方案策劃范文匯編6篇
- 2024年度個人助學貸款擔保合同模板3篇
- 《簡愛》讀書筆記(合集15篇)
- 保護環(huán)境建議書(合集15篇)
- 警示教育片2022年心得體會
- 2022中職教師教學工作計劃
- 2024年木工機械設備租賃與維修合同范本6篇
- 個人醫(yī)生述職報告范文匯編八篇
- 學習經驗演講稿匯編15篇
- 體育賽事輿情危機管理方案
- 《工業(yè)機器人系統(tǒng)集成》課標
- 過敏反應的分類和護理
- DBJ43 003-2017 湖南省公共建筑節(jié)能設計標準
- 蘇少版(2024)小學美術一年級上冊教學設計(附教材目錄)
- 【課件】講文明懂禮儀守規(guī)矩 課件-2024-2025學年文明禮儀教育主題班會
- 計算流體力學CFD
- 汽車保險與理賠課件 7.4新能源汽車保險理賠典型事故案例
- 流行性腦脊髓膜炎診療方案(2023版)
- TCNLIC 0110-2023 卡牌玩具規(guī)范
- 靈活用工模式下的薪酬管理
評論
0/150
提交評論