密碼學
維基百科,自由的百科全書
(重定向自密碼學)
跳轉到: 導航, 搜尋
汉漢▼▲為了閱讀方便,本文使用全文手工轉換。轉換內容:
简体:信息;繁體:訊息; 當前用字模式下顯示為→訊息
简体:学科;繁體:學門; 當前用字模式下顯示為→學門
简体:信息;繁體:資訊; 當前用字模式下顯示為→資訊
简体:信息论;繁體:資訊理論; 當前用字模式下顯示為→資訊理論
简体:自动柜员机;繁體:自動櫃員機; 當前用字模式下顯示為→自動櫃員機
简体:算法;繁體:演算法; 當前用字模式下顯示為→演算法
简体:钥匙;繁體:金鑰; 當前用字模式下顯示為→金鑰
简体:数字签名;繁體:數位簽章; 當前用字模式下顯示為→數位簽章
简体:公元;繁體:西元; 當前用字模式下顯示為→西元
简体:数字水印;繁體:數位浮水印; 當前用字模式下顯示為→數位浮水印
简体:分组密码;繁體:區塊加密法; 當前用字模式下顯示為→區塊加密法
简体:流密码;繁體:串流加密法; 當前用字模式下顯示為→串流加密法
顯示↓關閉↑附加說明(對轉換結果有疑問時)
字詞轉換是中文維基的一項自動轉換,目的是通過電腦程式自動消除繁簡、地區詞等不同用字模式的差異,以達到閱讀方便。
字詞轉換包括全局轉換和手動轉換,本說明所使用的標題轉換和全文轉換技術,都屬於手動轉換。
由於技術所限,字詞轉換有時會不穩定,在剛增加標題轉換時,由於緩存原因標題不一定馬上顯示轉換后的正確結果。你可以嘗試單擊這裡進行強制刷新。
德國的洛倫茲密碼機,所使用的二次世界大戰加密機密郵件。密碼學(在西歐語文中之源於希臘語kryptós,「隱藏的」,和gráphein,「書寫」)是研究如何隱密地傳遞資訊的學門。在現代特別指對資訊以及其傳輸的數學性研究,常被認為是數學和電腦科學的分支,和資訊理論也密切相關。著名的密碼學者Ron Rivest解釋道:「密碼學是關於如何在敵人存在的環境中通訊」,自工程學的角度,這相當于密碼學與純數學的異同。密碼學是 資訊安全等相關議題,如認證、存取控制的核心。密碼學的首要目是隱藏訊息的涵義,並不是將隱藏訊息的存在。密碼學也促進了電腦科學,特別是在於電腦與網路安全所使用的技術,如存取控制與資訊的機密性。密碼學已被應用在日常生活:包括自動櫃員機的晶片卡、電腦使用者存取密碼、電子商務等等。
目錄 [隱藏]
1 術語
2 密碼學與密碼分析的歷史
2.1 經典密碼學
2.2 中世紀至第二次世界大戰
2.2.1 蘇格蘭的瑪麗女王
2.2.2 第一次世界大戰
2.2.3 第二次世界大戰
2.3 現代密碼學
3 現代密碼學
3.1 公鑰密碼學
3.2 密碼分析
3.3 密碼學原型
3.4 密碼協議
4 與密碼學有關的法律議題
4.1 禁令
4.2 出口管制
4.3 美國國家安全局介入
4.4 數位智慧財產權管理
5 相關條目
6 延伸閱讀
7 外部連結
[編輯] 術語
直到現代以前,密碼學幾乎專指加密演算法:將普通資訊(明文)轉換成難以理解的資料(密文)的過程;解密演算法則是其相反的過程:由密文轉換回明文;加解密(cipher或cypher)包含了這兩種演算法,一般加密即同時指稱加密與解密的技術。 加解密的具體運作由兩部分決定:一個是演算法,另一個是金鑰。金鑰是一個用於加解密演算法的秘密參數,通常只有通訊者擁有。歷史上,金鑰通常未經認證或完整性測試而被直接使用在加解密上。
密碼協議(cryptographic protocol)是使用密碼技術的通信協議(communication protocol)。近代密碼學者多認為除了傳統上的加解密演算法,密碼協議也一樣重要,兩者為密碼學研究的兩大課題。在英文中,cryptography和cryptology都可代表密碼學,前者又稱密碼術。但更嚴謹地說,前者(cryptography)指密碼技術的使用,而後者(cryptology)指研究密碼的學門,包含密碼術與破密學。破密學 (cryptanalysis)是研究如何破解密碼學的學門。但在實際使用中,通常都稱密碼學(英文通常稱cryptography),而不具體區分其含義。
口語上,編碼(code)常意指加密或隱藏訊息的各種方法。然而,在密碼學中,編碼有更特定的意義:它意指以碼字(code word)取代特定的明文。例如,以『蘋果派』(apple pie)替換『拂曉攻擊』(attack at dawn)。編碼已經不再被使用在嚴謹的密碼學,它在消息理論或通訊原理上有更明確的意義。
在漢語口語中,電腦系統或網路使用的個人帳戶通行碼 (password)也常被以密碼代稱,雖然通行碼亦屬密碼學研究的範圍,但學術上通行碼與密碼學中所稱的金鑰(key)並不相同,即使兩者間常有密切的關連。
[編輯] 密碼學與密碼分析的歷史
[編輯] 經典密碼學
在近代以前,密碼學只考慮到訊息的機密性(confidentiality):如何將可理解的訊息轉換成難以理解的訊息,並且使得有秘密訊息的人能夠逆向回復,但缺乏秘密訊息的攔截者或竊聽者則無法解讀。近數十年來,這個領域已經擴展到涵蓋身分認證(或稱鑒權)、訊息完整性檢查、數位簽章、互動證明、安全多方計算等各類技術。
其實在西元前,秘密書信已用於戰爭之中。西洋「史學之父」希羅多德(Herodotus)的《歷史》(The Histories)當中記載了一些最早的秘密書信故事。西元前5世紀,希臘城邦為對抗奴役和侵略,與波斯發生多次衝突和戰爭。於西元前480年,波斯秘密結了強大的軍隊,準備對雅典(Athens)和斯巴達(Sparta)發動一次突襲。希臘人狄馬拉圖斯(Demaratus)在波斯的蘇薩城(Susa)裏看到了這次集結,便利用了一層蠟把木板上的字遮蓋住,送往並告知了希臘人波斯的圖謀。最後,波斯海軍覆沒於雅典附近的沙拉米斯灣(Salamis Bay)。
由於古時多數人並不識字,最早的秘密書寫的形式只用到紙筆或等同物品,隨著識字率提高,就開始需要真正的密碼學了。最古典的兩個加密技巧是是:
置換(Transposition cipher):將字母順序重新排列,例如『help me』變成『ehpl em』;與
替代(substitution cipher):有系統地將一組字母換成其他字母或符號,例如『fly at once』變成『gmz bu podf』(每個字母用下一個字母取代)。
這兩種單純的方式都不足以提供足夠的機密性。凱撒密碼(Caesar Cipher)是最經典的替代法,據傳由古羅馬帝國的皇帝凱撒所發明,用在與遠方將領的通訊上,每個字母被往後位移三格字母所取代。
加密旨在確保通訊的秘密性,例如間諜、軍事將領、外交人員間的通訊,同時也有宗教上的應用。舉例來說,早期基督徒使用密碼學模糊他們寫作的部份觀點以避免遭受迫害。666或部分更早期的手稿上的616是新約基督經啟示錄所指的野獸的數字,常用來暗指專迫害基督徒的古羅馬皇帝尼祿(Nero)。史上也有部份希伯來文密碼的記載。古印度愛經中也提及愛侶可利用密碼來通信。隱寫術(steganography)也出現在古代,希羅多德記載將訊息刺青在奴隸的頭皮上,較近代的隱寫術使用隱形墨水、縮影術(microdots)或數位浮水印來隱藏訊息。
古中國周朝兵書《六韜.龍韜》也記載了密碼學的運用,其中的《陰符》和《陰書》便記載了周武王問姜子牙關於征戰時與主將通訊的方式:
太公曰:「主與將,有陰符,凡八等。有大勝克敵之符,長一尺。破軍擒將之符,長九寸。降城得邑之符,長八寸。卻敵報遠之符,長七寸。警眾堅守之符,長六寸。請糧益兵之符,長五寸。敗軍亡將之符,長四寸。失利亡士之符,長三寸。諸奉使行符,稽留,若符事聞,泄告者,皆誅之。八符者,主將祕聞,所以陰通言語,不泄中外相知之術。敵雖聖智,莫之能識。」
武王問太公曰:「… 符不能明;相去遼遠,言語不通。為之奈何?」
太公曰:「諸有陰事大慮,當用書,不用符。主以書遺將,將以書問主。書皆一合而再離,三發而一知。再離者,分書為三部。三發而一知者,言三人,人操一分,相參而不相知情也。此謂陰書。敵雖聖智,莫之能識。」
陰符是以八等長度的符來表達不同的消息和指令,可算是密碼學中的替代法(substitution),把資訊轉變成敵人看不懂的符號。至於陰書則運用了移位法,把書一分為三,分三人傳遞,要把三份書從新拼合才能獲得還原的資訊。
除了應用於軍事外,西元四世紀婆羅門學者跋舍耶那(Vatsyayana) 所書的《愛慾經》(Kama-Sutra)4 中曾提及到用代替法加密資訊。書中第45項是秘密書信 (mlecchita-vikalpa) ,用以幫助婦女隱瞞她們與愛郞之間的關係。其中一種方法是把字母隨意配對互換,如套用在羅馬字母中,可有得出下表:
A B C D E F G H I J K L M
Z Y X W V U T S R Q P O N
由經典加密法產生的祕文很容易洩漏關於明文的統計資訊,以現代觀點其實很容易被破解。阿拉伯人津帝(al-Kindi)便提及到如果要破解加密資訊,可在一篇至少一頁長的文章中數算出每個字母出現的頻率,在加密信件中也數算出每個符號的頻率,然後互相對換,這是頻率分析的前身,此後幾乎所有此類的密碼都馬上被破解。但經典密碼學現在仍未消失,經常出現在謎語之中(見cryptogram)。這種分析法除了被用在破解密碼法外,也常用於考古學上。在破解古埃及象形文字(Hieroglyphs)時便運用了這種解密法。
[編輯] 中世紀至第二次世界大戰
本質上所有的密碼仍然受到上述的破密法的危害,直到阿伯提(Leon Battista Alberti)約在1467年發明了多字元加密法(polyalphabetic cipher),阿伯提的創新在於對訊息的不同部分使用不同的代碼,他同時也發明了可能是第一個自動加密器,一個實現他部分想法的轉輪。多字元加密法最典型的例子是維瓊內爾加密法(Vigenere cipher):加密重複使用到一個關鍵字(key word),用哪個字母取代端視輪替到關鍵字的哪個字母而定。儘管如此,多字元加密法仍然受到頻率分析法的部分危害,不過這直到十九世紀中期才被巴貝奇(Charles Babbage)發現。
比較近代的著名的例子可數中世紀蘇格蘭的瑪麗女王(Mary Stuart, Queen of Scotland)、第一次世界大戰德國的齊默爾曼電報(Zimmerman Telegram)和第二次世界大戰的「謎」(Enigma)。
[編輯] 蘇格蘭的瑪麗女王
西元1578年,瑪麗女王被伊莉莎白女王軟禁。在1586年1月6日瑪麗收到一批秘密信件,得悉了安東尼.貝平頓(Anthony Babington)的計劃。安東尼和幾個同黨在密謀營救瑪麗,並計劃行刺伊莉莎白女王。他們的信件被轉成密碼,並藏在啤酒桶的木塞以掩人耳目。但卻被英格蘭大臣華興翰(Walsingham)的從中截獲、複製、還信入塞,並由菲力普.馬尼斯(Philip van Marnix)破解信件。信件破解後,華興翰使菲力普摹擬瑪麗的筆跡引誘安東尼行動,把叛逆者一網成擒,審判並處死瑪麗女王。問題在於錯誤地使用脆弱的加密法會製造虛假的安全錯覺:安東尼對他們的通訊方式太過有信心,令他的加密方法過於簡單,輕易被敵人破解。
[編輯] 第一次世界大戰
1914年8月25日德國的馬格德堡巡洋艦(Magdeburg)在芬蘭灣(Gulf of Finland)擱淺,俄國搜出多份德國的文件及兩本電碼本,一本被送往英國的「40號房間」(Room 40)進行密碼分析。同時,無線電的發明亦使得截獲密信易如反掌。由於德國通往美國的電纜在大戰開始時被剪斷了,德國借用了美國的海底電纜發電報到華盛頓,但電纜經過了英國,1917年1月17日齊默爾曼電報被「40號房間」截獲。同年2月23日,密電內容揭開了,內容指德國將在1917年2月1日開始『無限制海戰』,用潛艇攻擊戰時包括中立國在內的海上商運船。為了阻止美國因此參戰,德國建議墨西哥入侵美國,並承諾幫助墨西哥從美國手中奪回德克薩斯、新墨西哥和亞利桑那三州。德國還要墨西哥說服日本共同進攻美國,德國將提供軍事和資金援助。密電內容揭開後,美國在4月16日向德國宣戰。
[編輯] 第二次世界大戰
德國汲取了第一次大戰的教訓,發展出以機械代替人手的加密方法。雪畢伍斯(Arthur Scherbius)發明了「謎」(ENIGMA),用於軍事和商業上。「謎」主要由鍵盤、編碼器和燈板組成。三組編碼器合、加上接線器和其他配件,合共提供了種一億億種編碼的可能性。1925年,「謎」開始有系列生產,在20年間,德國軍方購入了3萬多台「謎」,亦難倒了「40號房間」,成為德國在二次大戰的重要工具。波蘭位於德國東面,俄國的西面,一直受到威脅,故成立了波蘭密碼局(Biuro Szyfrow)以獲取情報。波蘭從漢斯-提羅.施密德(Hans-Thilo Schmidt)處得到諜報,由年輕的數學家馬理安.瑞傑斯基(Marian Rejewski)解譯,用了一年時間編纂目錄,並在1930年代製造了「炸彈」(bomba),漸漸掌握瞭解「謎」的技術。
1938年12月德國加強了「謎」的安全性,令波蘭失去了情報。「謎」成為了希特勒(Hitler)閃電戰略的核心,每天更改的加密排列維繫了強大快速的攻擊。 1939年4月27日德國撤銷與波蘭的互不侵犯條約,波蘭才不得不把決定「炸彈」這個構想與英、法分享,合力破解新的「謎」。1939年9月1日,德國侵擊波蘭,大戰爆發。英國得到了波蘭的解密技術後,40號房間除了原有的語言和人文學家,還加入了數學家和科學家,後來更成立了政府代碼曁密碼學校(Government code and Cipher School),5年內人數增至7000人。1940至1942年是加密和解密的拉鋸戰,成功的解碼提供了很多寶貴的情報。例如在1940年得到了德軍進攻丹麥和挪威的作戰圖,以及在不列顚戰役(Battle of Britain)事先獲得了空襲情報,化解了很多危機。但「謎」卻並未被完全破解,加上「謎」的網路很多,令德國一直在大西洋戰役中佔上風。最後英國在「順手牽羊」的行動中在德國潛艇上俘獲「謎」的密碼簿,破解了「謎」。英國以各種虛假手段掩飾這件事,免得德國再次更改密碼,並策劃摧毀了德國的補給線,縮短了大西洋戰役。
許多物理裝置被用來輔助加密,例如古希臘斯巴達的密碼棒(scytale),這是一個協助置換法的圓柱體,可將資訊內字母的次序調動,利用了字條纏繞木棒的方式,把字母進行位移,收信人要使用相同直徑的木棒才能得到還原的資訊。在歐洲中世紀時期,密碼欄(cipher grille)用在某類隱寫術上。多字元加密法出現後,更多樣的輔助工具出現,如阿伯提發明的密碼盤(cipher disk)、特裡特米烏斯發明的表格法(tabula recta)、以及美國總統湯瑪士傑佛遜(Thomas Jefferson)發明的多圓柱(Bazeries約在1900年再次獨立發明改進)。廿世紀早期,多項加解密機械被發明且被註冊專利,包括最有名的轉輪機(rotor machines),第二次世界大戰德軍所用,別名『謎』(Enigma machine),其加密法是在第一次世界大戰後針對當時破密術所做最好的設計。
[編輯] 現代密碼學
第二次世界大戰後計算機與電子學的發展促成了更複雜的密碼,而且計算機可以加密任何二進位形式的資料,不再限於書寫的文字,以語言學為基礎的破密術因此失效。多數計算機加密的特色是在二進位字串上操作,而不像經典密碼學那樣直接地作用在傳統字母數字上。然而,計算機同時也促進了破密分析的發展,抵消了某些加密法的優勢。不過,優良的加密法仍保持領先,通常好的加密法都相當有效率(快速且使用少量資源),而破解它需要許多級數以上的資源,使得破密變得不可行。
雖然頻率分析是很有效的技巧,實際上加密法通常還是有用的。不使用頻率分析來破解一個訊息需要知道目前是使用何種加密法,因此才會促成了諜報、賄賂、竊盜或背叛等行為。直到十九世紀學者們才體認到加密法的演算法並非理智或實在的防護。實際上,適當的密碼學機制(包含加解密法)應該保持安全,即使敵人知道了使用何種演算法。對好的加密法來說,金鑰的秘密性理應足以保障資料的機密性。這個原則首先由奧古斯特•柯克霍夫(en:Auguste Kerckhoffs)提出並被稱為柯克霍夫原則(Kerckhoffs』 principle)。資訊理論始祖香農(Claude Shannon)重述:「敵人知道系統。」
大量的公開學術研究出現,是現代的事,這起源於一九七零年代中期,美國國家標準局(en:National Bureau of Standards, NBS;現稱國家標準枝術研究所,en:National Institute of Standards and Technology, NIST)制定數位加密標準(DES),Diffie和Hellman提出的開創性論文,以及公開釋出RSA。從那個時期開始,密碼學成為通訊、電腦網路、電腦安全等上的重要工具。許多現代的密碼技術的基礎依賴於特定基算問題的困難度,例如因數分解問題或是離散對數問題。許多密碼技術可被證明為只要特定的計算問題無法被有效的解出,那就安全。除了一個著名的例外:一次墊(en:one-time pad,OTP),這類證明是偶然的而非決定性的,但是是目前可用的最好的方式。
密碼學演算法與系統設計者不但要留意密碼學歷史,而且必須考慮到未來發展。例如,持續增加計算機處理速度會增進暴力攻擊法(brute-force attacks)的速度。量子計算的潛在效應已經是部份密碼學家的焦點。
二十世紀早期的密碼學本質上主要考慮語言學上的模式。從此之後重心轉移,現在密碼學使用大量的數學,包括資訊理論、計算複雜性理論、統計學、組合學、抽象代數以及數論。密碼學同時也是工程學的分支,但卻是與別不同,因為它必須面對有智能且惡意的對手,大部分其他的工程僅需處理無惡意的自然力量。檢視密碼學問題與量子物理間的關連也是目前熱門的研究。
[編輯] 現代密碼學
現代密碼學大致可被區分為數個領域。 對稱金鑰密碼學指的是傳送方與接收方都擁有相同的金鑰。直到1976年這都還是唯一的公開加密法。
現代的研究主要在區塊加密法(Block Cipher)與串流加密法(Stream Cipher)及其應用。區塊加密法在某種意義上是阿伯提的多字元加密法的現代化。區塊加密法取用明文的一個區塊和金鑰,輸出相同大小的密文區塊。由於訊息通常比單一區塊還長,因此有了各種方式將連續的區塊編織在一起。 DES和AES是美國聯邦政府核定的區塊加密法標準(AES將取代DES)。儘管將從標準上廢除,DES依然很流行(triple-DES變形仍然相當安全),被使用在非常多的應用上,從自動交易機、電子郵件到遠端存取。也有許多其他的區塊加密被發明、釋出,品質與應用上各有不同,其中不乏被破解者。
串流加密法,相對於區塊加密,製造一段任意長的金鑰原料,與明文依位元或字元結合,有點類似一次墊(one-time pad)。輸出的串流根據加密時的內部狀態而定。在一些串流加密法上由金鑰控制狀態的變化。RC4是相當有名的串流加密法。
密碼雜湊函數(有時稱作消息摘要函數,雜湊函數又稱散列函數或哈希函數)不一定使用到金鑰,但和許多重要的密碼演算法相關。它將輸入資料(通常是一整份文件)輸出成較短的固定長度雜湊值,這個過程是單向的,逆向操作難以完成,而且碰撞(兩個不同的輸入產生相同的雜湊值)發生的機率非常小。
訊息認證碼或押碼(Message authentication codes, MACs)很類似密碼雜湊函數,除了接收方額外使用秘密金鑰來認證雜湊值。
[編輯] 公鑰密碼學
主條目:公鑰密碼學
公開金鑰密碼學,簡稱公鑰密碼學,又稱非對稱金鑰密碼學,相對於對稱金鑰密碼學,最大的特點在於加密和解密使用不同的金鑰。
在對稱金鑰密碼學中,加密和解密使用相同的金鑰,也許對不同的訊息使用不同的金鑰,但都面臨金鑰管理的難題。由於每對通訊方都必須使用異於他組的金鑰,當網路成員的數量增加時,金鑰數量成二次方增加。更尷尬的難題是:當安全的通道不存在於雙方時,如何建立一個共有的金鑰以利安全的通訊?如果有通道可以安全地建立金鑰,何不使用現有的通道。這個『雞生蛋、蛋生雞』的矛盾是長年以來密碼學無法在真實世界應用的阻礙。
1976年, Whitfield Diffie與Martin Hellman發表開創性的論文,提出公開金鑰密碼學的概念:一對不同值但數學相關的金鑰,公開金鑰(或公鑰, public key)與私密金鑰(私鑰,private key or secret key)。在公鑰系統中,由公開金鑰推算出配對的私密金鑰於計算上是不可行的。歷史學者David Kahn這樣描述公開金鑰密碼學;「從文藝復興的多字元取代法後最革命性的概念。」
在公鑰系統中,公鑰可以隨意流傳,但私鑰只有該人擁有。典型的用法是,其他人用公鑰來加密給該接受者,接受者使用自己的私鑰解密。Diffie與Hellman也展示了如何利用公開金鑰密碼學來達成Diffie-Hellman金鑰交換協定。
1978年,MIT的Ron Rivest、Adi Shamir和Len Adleman發明另一個公開金鑰系統,RSA。
直到1997年的公開文件中大眾才知道,早在1970年代早期,英國情報機構GCHQ的數學家James H. Ellis便已發明非對稱金鑰密碼學,而且Diffie-Hellman與RSA都曾被Malcolm J. Williamson與Clifford Cocks分別發明於前。 這兩個最早的公鑰系統提供優良的加密法基礎,因而被大量使用。其他公鑰系統還有Cramer-Shoup、Elgamal、以及橢圓曲線密碼學等等。
除了加密外,公開金鑰密碼學最顯著的成就是實現了數位簽章。數位簽章名符其實是普通簽章的數位化,他們的特性都是某人可以輕易製造簽章,但他人卻難以仿冒。數位簽章可以永久地與被簽署訊息結合,無法自訊息上移除。數位簽章大致包含兩個演算法:一個是簽署,使用私密金鑰處理訊息或訊息的雜湊值而產生簽章;另一個是驗證,使用公開金鑰驗證簽章的真實性。RSA和DSA是兩種最流行的數位簽章機制。數位簽章是公開金鑰基礎建設(public key infranstructures, PKI)以及許多網路安全機制(SSL/TLS, VPNs等)的基礎。
公開金鑰演算法大多基於計算複雜度上的難題,通常來自於數論。例如,RSA源於整數因數分解問題;DSA源於離散對數問題。近年發展快速的橢圓曲線密碼學則基於和橢圓曲線相關的數學難題,與離散對數相當。由於這些底層的問題多涉及模數乘法或指數運算,相對於區塊加密法需要更多計算資源。因此,公開金鑰系統通常是複合式的,內含一個高效率的對稱金鑰演算法,用以加密訊息,再以公開金鑰加密對稱金鑰系統所使用的金鑰,以增進效率。
[編輯] 密碼分析
主條目:密碼分析
密碼分析又稱破密術。 密碼分析的目的是發現密碼機制的弱點,從事者可能是意圖顛覆系統惡意的攻擊者或評估系統弱點的設計人。在現代,密碼演算法與協定必須被仔細檢查和測試,確定其保證的安全性。
大眾普遍誤解認為所有加密法都可以被破解。Bell Labs的Claude Shannon在二次世界大戰時期便證明只要金鑰是完全隨機,不重覆使用,對外絕對保密,與訊息等長或比訊息更長的一次墊是不可能破解的。除了一次墊以外的多數加密法都可以以暴力攻擊法破解,但是破解所需的努力可能是金鑰長度的指數成長。
密碼分析的方式有很多,因此有數個分類。一個常見的分別法則是攻擊者知曉多少資訊。在唯密文攻擊中,密碼分析者只能存取密文,好的現代密碼系統對這種情況通常是免疫的。在已知明文攻擊中,密碼分析者可以存取多個明文、密文對。在選擇明文攻擊中,密碼分析者可以自選任意明文,並被賦予相對應的密文,例如二戰時布列顛所使用的園藝法。最後,選擇密文攻擊中,密碼分析者可以自選任意密文,並被賦予相對應的明文
對稱金鑰加密的密碼分析通常旨在尋找比已知最佳破解法更有效率的方式。例如,以最簡單的暴力法破解DES需要一個已知明文與255 解密運算,嘗試近半數可能的金鑰。線性分析攻擊法對DES需要243 已知明文與243 DES運算,顯然比暴力法有效。
公開金鑰演算法則基於多種數學難題,其中最有名的是整數分解和離散對數問題。許多公開金鑰密碼分析在研究如何有效率地解出這些計算問題的數值演算法。例如,已知解出機於橢圓曲線的離散對數問題比相同金鑰大小的整數因數分解問題更困難。因此,為了達到相等的安全強度,基於因數分解的技術必須使用更長的金鑰。由於這個因素,基於橢圓曲線的公開金鑰密碼系統從1990年代中期後逐漸流行。
當純粹的密碼分析著眼於演算法本身時,某些攻擊則專注於密碼裝置執行的弱點,稱為副通道攻擊。如果密碼分析者可以存取到裝置執行加密或回報通行碼錯誤的時間,它就可能使用時序攻擊法破解密碼。攻擊者也可能研究訊息的模式與長度,得出有用的資訊,稱為流量分析,對機敏的敵人這相當有效。當然,社會工程與其它針對人事、社交的攻擊與破密術一併使用時可能是最有力的攻擊法。
[編輯] 密碼學原型
多數的密碼學理論研究在探討密碼學原型:具備基本密碼學特質的演算法以及和其他問題的關連。例如,容易正向運算卻難以逆向運算的單向函數。通常而言,密碼應用如果要安全,就必須保證單向函數存在。然而,如果單向函數存在,就表示P ≠ NP。既然目前P與NP問題仍是未解,我們就無從得知單向函數是否存在。如果單向函數存在,那安全的準亂數產生器與準亂數函數就存在。 目前己之的密碼學原型僅提供基本的機能。通常是機密、訊息完整、認證、和不可否認。任何其他機能都是基本演算法的組合與延伸,這類組合稱為密碼系統。例如PGP、SSH、 SSL/TLS、公開金鑰基礎建設和數位簽章等。 其他密碼原型還有加密演算法本身、單向排列、暗門排列等。
[編輯] 密碼協議
主條目:密碼協議
在許多狀況,密碼技術涉及通訊的雙方或多方(例如公司總部與分部)或是跨越時間(例如保護備份資料)。 密碼協議已經擴展到涵蓋多種議題,像是互動證明、秘密分享與零知識,更複雜的有電子鈔票和安全多人計算。
當一個好的密碼系統的安全失效時,很少是密碼學原型出現漏洞。大部分的弱點都發生於協定設計、系統實作、或是某些人為錯誤。許多密碼學協定都在非系統化的過程中發展出來,很少有安全上的証明。一些正規分析協定安全的方式都本於數學邏輯(例如BAN邏輯)或近期的具體安全原則,這些都是數十年來研究人員的主題。很不幸的,這些工具都相當的笨重也無法用於複雜的設計。 如何時現與整合密碼學的應用本身是截然不同的領域,參見密碼學工程與安全工程。
[編輯] 與密碼學有關的法律議題
[編輯] 禁令
密碼學長期以來都是情報或司法機構的興趣。由於這些單位的隱密性以及禁令後個人隱私的減少,密碼學也是人權支持者關心的焦點。環繞密碼學的法律議題已有很長的歷史,特別是在可以執行高品質密碼的廉價計算機問世後。
在某些國家甚至本國性的密碼學也受限制。直到1999年,法國仍然限制國內密碼學的使用。在中國,使用密碼學需要申請執照。許多國家有更嚴格的限制,例如白俄羅斯、哈薩克、蒙古、巴基斯坦、俄羅斯、新加坡、突尼西亞、委內瑞拉和越南。
在美國,國內的使用是合法的,但仍然有許多法律衝突。一個特別重要的議題是密碼軟體與硬體的出口管制。由於密碼分析在二戰時期扮演的重要腳色,也期待密碼學可以持續在國家安全上效力,許多西方國家政府嚴格規範密碼學的出口。二戰之後,在美國散佈加密科技到國外曾是違法的。事實上,加密技術曾被視為軍需品,就像坦克與核武。直到個人電腦和網際網路問世後情況才改變。好的密碼學與壞的密碼學對絕大部分使用者來說是沒有差別的,其實多數情況下,大部分現行密碼技術普遍緩慢而且易出錯。然而當網際網路與個人電腦日益成長,優良的加密技術逐漸廣為人知。可見出口管制將成為商務與研究上的阻礙。
[編輯] 出口管制
在1990年代發生了數件挑戰美國出口規範的事件。其中一件是Phillip Zimmermann的PGP加密程式,於1991年六月在美國連原始碼一併釋出於網際網路。在RSA Security公司提出抗議後,Zimmermann被商務部和聯邦調查局偵訊達數年。接著,柏克萊加州大學的研究生Daniel Bernstein發起了對美國政府的法律訴訟,以言論自由挑戰禁令的某些觀點。1995年的Bernstein v. United States案例促成了在1999年判決印出密碼演算法的原始碼屬美國憲法言論自由保障範圍內。 在1996年,39個國家簽訂處理軍武出口的 華沙公約。該公約約定使用短金鑰長度(對稱金鑰56位元;RSA 512位元)的密碼學不再受到出口管制。從2000年後,美國出口密碼學已經寬鬆許多。現在,幾乎所有的網際網路使用者都可存取到優良的密碼學,就在瀏覽器內建的傳輸層安全性(TLS)或安全介面層(SSL)。 Mozilla Thunderbird和微軟Outlook電子郵件用戶端程式可以用TLS連結至IMAP或 POP伺服器,並以S/MIME收送加密的電子郵件。許多網路用戶並不知曉他們的基本應用內含大量的密碼系統。這些瀏覽器與郵件程式如此普及,甚至試圖規範市民使用密碼學使用的政府單位也無力從事有效的限制。
[編輯] 美國國家安全局介入
另一個密碼學的爭議點是美國國家安全局(NSA)在加密法發展的介入。國家安全局考量到將其制訂為國家表準局的聯邦標準,曾介入於IBM發展的DES。DES是NSA與 IBM為了剋制強力的差分分析法而制定,這個攻擊直到1980年代晚期才公開。根據Steven Levy所說,IBM曾重新發現差分分析法,但被NSA下禁口令。這個攻擊法直到Biham與Shamir在數年後再次發現才公開。這些事情顯示了決定攻擊者擁有哪些資源或知識的困難。 還有1993年,NSA涉入用在Capstone計劃的加密微晶片 Clipper chip。Clipper飽受密碼學者的批評,其一是因為其加密演算法被列為機密,NSA可能蓄意設計較弱的加密法已達成情報目的;其二是整個計畫案違反克考夫原則,由於這機制使用到一個特別的只有政府才有的委任金鑰,難保沒有竊聽的可能。
[編輯] 數位智慧財產權管理
數位智慧財產權管理又稱數位智財權(Digital rights management, DRM) 密碼學是數位智慧財產權的核心,有許多技術被應用在保障版權資料的使用。1998年,美國總統Bill Clinton簽署了數位千禧年版權法案(Digital Millennium Copyright Act, DMCA),明定特定破密技術的重制或散佈屬犯罪行為,特別是某些迴避DRM者。這對密碼學研究社群造成了相當嚴重的潛在衝擊,由於任何破密技術都可以被認定違反DMCA。考慮到這些爭議,美國聯邦調查局與司法部並未嚴格執行DMCA。一位廣受敬重的密碼學者Niels Ferguson曾公開陳述由於怕遭到DMCA的迫害,他將不會釋出部分研究給Intel安全設計。Linux核心的第二號發展人物 Alan Cox與Princeton大學教授Edward Felten都曾受到這法案的相關困擾。Dmitry Sklyarov在從俄羅斯到美國訪問時曾因違反該法案被監禁達數月,但違反DMCA的作品實際上發生於俄羅斯,而且在俄羅斯是合法行為。類似的情事發生在許多國家。例如歐盟所制定的Copyright Directive。在2007年,負責DVD與HDDVD防偽的金鑰被發現且是出在網際網路上,同時,美國電影協會發出多個違犯 DMCA的告示,導致大量網際網路使用者回擊,也引出了公平使用與言論自由的議題。
[編輯] 相關條目
密碼學主題列表
密碼學家列表
密碼學領域重要出版物
[編輯] 延伸閱讀
密碼學相關書籍
[編輯] 外部連結
Helger's cryptography pointers
RSA Laboratories' FAQ About today's cryptography essentially elementary coverage
The sci.crypt FAQ extensive and detailed; in 'traditional FAQ' format
sci.crypt mini-FAQ (more recent)
The sci.crypt newsgroup
Savard's glossary an extensive and detailed view of cryptographic history with emphasis on crypto devices
The Beginner's Guide to Cryptography - An elementary overview of a few basic areas of cryptography.
An Introduction to the Use of Encryption - A fairly non-technical introduction to the subject.
Encryption and Privacy
取自"http://zh.wikipedia.org/wiki/%E5%AF%86%E7%A0%81%E5%AD%A6"
個分類: 密碼學
查看條目 討論 編輯本頁 歷史 監視 不轉換 简体 繁體 大陆简体 港澳繁體 马新简体 台灣正體 個人工具Thsrc291 我的對話頁 參數設置 監視列表 我的編修記錄 登出 導航
首頁
分類索引
特色內容
新聞動態
最近更改
隨機頁面
搜尋
幫助
幫助
社群入口
方針與指引
互助客棧
詢問處
字詞轉換
聯繫我們
關於維基百科
資助維基百科
工具箱
鏈入頁面
相關頁面修訂記錄
上傳檔案
特殊頁面
可列印版
永久連結
引用此文
其它語言
Afrikaans
العربية
Беларуская (тарашкевіца)
Català
Česky
Dansk
Deutsch
Ελληνικά
English
Español
Eesti
Euskara
فارسی
Suomi
Français
Galego
עברית
हिन्दी
Hrvatski
Magyar
Bahasa Indonesia
Italiano
日本語
ქართული
한국어
Latina
Bahasa Melayu
Nederlands
Norsk (nynorsk)
Norsk (bokmål)
Português
Română
Русский
Slovenščina
Shqip
Српски / Srpski
Svenska
ไทย
Türkçe
Українська
O'zbek
Tiếng Việt
本頁最後更動時間:2008年7月17日 (星期四) 08:20。 本站的全部文本内容在GNU自由文檔許可證之條款下提供(詳情)。
Wikipedia®是維基媒體基金會的註冊商標;維基™是維基媒體基金會的商標。
維基媒體基金會是在美國佛羅里達州登記的501(c)(3)免稅、非營利、慈善機構。
隱私政策 關於維基百科 免責聲明
沒有留言:
張貼留言