密碼學

密碼學

密碼學是研究編製密碼和破譯密碼的技術科學。研究密碼變化的客觀規律,套用于編製密碼以保守通信秘密的,稱為編碼學;套用于破譯密碼以獲取通信情報的,稱為破譯學,總稱密碼學。

  • 書名
    套用密碼學基礎
  • 出版社
    武漢大學出版社
  • 作者
    張益發,趙亞群,張習勇,張鐸.
  • 裝幀
    平裝
  • 開本
    16
  • 頁數
    432

基本簡介

密碼學是研究編製密碼和破譯密碼的技術科學。研究密碼變化的客觀規律,套用于編製密碼以保守通信秘密的,稱為編碼學;套用于破譯密碼以獲取通信情報的,稱為破譯學。總稱密碼學。

密碼學密碼學

密碼學(在西歐語文中,源于希臘語kryptós“隱藏的”,和gráphein“書寫”)是研究如何隱密地傳遞信息的學科。在現代特別指對信息以及其傳輸的數學性研究,常被認為是數學和電腦科學的分支,和資訊理論也密切相關。著名的密碼學者Ron Rivest解釋道:“密碼學是關于如何在敵人存在的環境中通訊”,自工程學的角度,這相當于密碼學與純數學的異同。密碼學是信息安全等相關議題,如識別、訪問控製的核心。密碼學的首要目的是隱藏信息的涵義,並不是隱藏信息的存在。密碼學也促進了電腦科學,特別是在于電腦與網路安全所使用的技術,如訪問控製與信息的機密性。密碼學已被套用在日常生活:包括自動櫃員機的晶片卡、電腦使用者存取密碼、電子商務等等。

密碼是通信雙方按約定的法則進行信息特殊變換的一種重要保密手段。依照這些法則,變明文為密文,稱為加密變換;變密文為明文,稱為脫密變換。密碼在早期僅對文字或數碼進行加、脫密變換,隨著通信技術的發展,對語音、圖像、資料等都可實施加、脫密變換。

發展歷史

密碼學是在編碼與破譯的鬥爭實踐中逐步發展起來的,並隨著先進科學技術的套用,已成為一門綜合性的尖端技術科學。它與語言學、數學、電子學、聲學、資訊理論、電腦科學等有著廣泛而密切的聯系。它的現實研究成果,特別是各國政府現用的密碼編製及破譯手段都具有高度的機密性。

密碼學進行明密變換的法則,稱為密碼的體製。指示這種變換的參數,稱為密鑰。它們是密碼編製的重要組成部分。密碼體製的基本類型可以分為四種:錯亂--按照規定的圖形和線路,改變明文字母或數碼等的位置成為密文;代替--用一個或多個代替表將明文字母或數碼等代替為密文;密本--用預先編定的字母或數位密碼組,代替一定的片語單詞等變明文為密文;加亂--用有限元素組成的一串序列作為亂數,按規定的演算法,同明文序列相結合變成密文。以上四種密碼體製,既可單獨使用,也可混合使用 ,以編製出各種復雜度很高的實用密碼。

20世紀70年代以來,一些學者提出了公開密鑰體製,即運用單向函式的數學原理,以實現加、脫密密鑰的分離。加密密鑰是公開的,脫密密鑰是保密的。這種新的密碼體製,引起了密碼學界的廣泛註意和探討。

利用文字和密碼的規律,在一定條件下,採取各種技術手段,通過對截取密文的分析,以求得明文,還原密碼編製,即破譯密碼。破譯不同強度的密碼,對條件的要求也不相同,甚至很不相同。

隻需重排密碼表二十六個字母的順序,允許密碼表是明碼表的任意一種重排,密鑰就會增加到四千億億億多種,我們就有超過 4×10^27 種密碼表。破解就變得很困難。

公元9世紀,阿拉伯的密碼學家阿爾·金迪(al' Kindi 也被稱為伊沙克(Ishaq),(801?~873年),同時還是天文學家、哲學家、化學家和音樂理論家)提出解密的頻度分析方法,通過分析計算密文字元出現的頻率破譯密碼。

公元16世紀中期,義大利的數學家卡爾達諾(GCardano15011576)發明了卡爾達諾漏格板,覆蓋在密文上,可從漏格中讀出明文,這是較早的一種分置式密碼。

公元16世紀晚期,英國的菲利普斯(Philips)利用頻度分析法成功破解蘇格蘭女王瑪麗的密碼信,信中策劃暗殺英國女王伊麗莎白,這次解密將瑪麗送上了斷頭台。幾乎在同一時期,法國外交官維熱納爾(或譯為維瓊內爾) Blaisede Vigenere(1523-1596)提出著名的維熱納爾方陣密表和維熱納爾密碼(Vigenerecypher),這是一種多表加密的替代密碼,可使阿爾—金迪和菲利普斯的頻度分析法失效。

公元1863,普魯士少校卡西斯基(Kasiski)首次從關鍵字的長度著手將它破解。英國的巴貝奇Charles Babbage)通過仔細分析編碼字母的結構也將維熱納爾密碼破解。

公元20世紀初,第一次世界大戰進行到關鍵時刻,英國破譯密碼的專門機構“40號房間利用繳獲的德國密碼本破譯了著名的齊麥曼電報,促使美國放棄中立參戰,改變了戰爭進程。大戰快結束時,準確地說是1918年,美國數學家吉爾伯特·維那姆發明一次性便箋密碼,它是一種理論上絕對無法破譯的加密系統,被譽為密碼編碼學的聖杯。但產生和分發大量隨機密鑰的困難使它的實際套用受到很大限製,從另一方面來說安全性也更加無法保證。

第二次世界大戰中,在破譯德國著名的恩格瑪(Enigma)”密碼機密碼過程中,原本是以語言學家和人文學者為主的解碼團隊中加入了數學家和科學家。電腦之父亞倫·圖靈(Alan Mathison Turing)就是在這個時候加入了解碼隊伍,發明了一套更高明的解碼方法。同時,這支優秀的隊伍設計了人類的第一部電腦來協助破解工作。顯然,越來越普及的電腦也是軍工轉民用產品。美國人破譯了被稱為紫密的日本九七式密碼機密碼。靠前者,德國的許多重大軍事行動對盟軍都不成為秘密;靠後者,美軍炸死了偷襲珍珠港的元凶日本艦隊總司令山本五十六。

同樣在二次世界大戰中,印第安納瓦約土著語言被美軍用作密碼,從吳宇森導演的《風語者》Windtalkers中能窺其一二。所謂風語者,是指美國二戰時候特別征摹使用的印第安納瓦約(Navajo)通信兵。在二次世界大戰日美的太平洋戰場上,美國海軍軍部讓北墨西哥和亞歷桑那印第安納瓦約族人使用約瓦納語進行情報傳遞。納瓦約語的文法、音調及辭彙都極為獨特,不為世人所知道,當時納瓦約族以外的美國人中,能聽懂這種語言的也就一二十人。這是密碼學和語言學的成功結合,納瓦約語密碼成為歷史上從未被破譯的密碼。

1975年1月15日,對電腦系統和網路進行加密的DES(DataEncryption Standard資料加密標準)由美國國家標準局頒布為國家標準,這是密碼術歷史上一個具有裏程碑意義的事件。1976年,當時在美國斯坦福大學的迪菲(Diffie)和赫爾曼(Hellman)兩人提出了公開密鑰密碼的新思想(論文"NewDirection in Cryptography"),把密鑰分為加密的公鑰和解密的私鑰,這是密碼學的一場革命。

1977年,美國的裏維斯特(Ronald Rivest)、沙米爾(Adi Shamir)和阿德勒曼(Len Adleman)提出第一個較完善的公鑰密碼體製——RSA體製,這是一種建立在大數因子分解基礎上的演算法。

1985年,英國牛津大學物理學家戴維·多伊奇(David Deutsch)提出量子電腦的初步構想,這種電腦一旦造出來,可在30秒鍾內完成傳統電腦要花上100億年才能完成的大數因子分解,從而破解RSA運用這個大數產生公鑰來加密的信息。

同一年,美國的貝內特(Bennet)根據他關于量子密碼術的協定,在實驗室第一次實現了量子密碼加密信息的通信。盡管通信距離隻有30釐米,但它證明了量子密碼術的實用性。與一次性便箋密碼結合,同樣利用量子的神奇物理特徵,可產生連量子電腦也無法破譯的絕對安全的密碼。

2003位于日內瓦的id Quantique公司和位于紐約的MagiQ技術公司,推出了傳送量子密鑰的距離超越了貝內特實驗中30釐米的商業產品。日本電氣公司在創紀錄的150公裏傳送距離的演示後,最早將在明年向市場推出產品。IBM、富士通和東芝等企業也在積極進行研發。目前,市面上的產品能夠將密鑰通過光纖傳送幾十公裏。美國的國家安全局和美聯儲都在考慮購買這種產品。

​MagiQ公司的一套系統價格在7萬美元到10萬美元之間。

專業術語

密鑰:分為加密密鑰和解密密鑰。

明文:沒有進行加密,能夠直接代表原文含義的信息。

密文:經過加密處理處理之後,隱藏原文含義的信息。

加密:將明文轉換成密文的實施過程。

解密:將密文轉換成明文的實施過程。

密碼演算法:密碼系統採用的加密方法和解密方法,隨著基于數學密碼技術的發展,加密方法一般稱為加密演算法,解密方法一般稱為解密演算法。

直到現代以前,密碼學幾乎專指加密(encryption)演算法:將普通信息(明文,plaintext)轉換成難以理解的資料(密文,ciphertext)的過程;解密(decryption)演算法則是其相反的過程:由密文轉換回明文;加解密包含了這兩種演算法,一般加密即同時指稱加密(encrypt或encipher)與解密(decrypt或decipher)的技術。

加解密的具體運作由兩部分決定:一個是演算法,另一個是密鑰。密鑰是一個用于加解密演算法的秘密參數,通常隻有通訊者擁有。歷史上,密鑰通常未經識別或完整性測試而被直接使用在密碼機上。

密碼協定(cryptographic protocol)是使用密碼技術的通信協定(communication protocol)。近代密碼學者多認為除了傳統上的加解密演算法,密碼協定也一樣重要,兩者為密碼學研究的兩大課題。在英文中,cryptography和cryptology都可代表密碼學,前者又稱密碼術。但更嚴謹地說,前者(cryptography)指密碼技術的使用,而後者(cryptology)指研究密碼的學科,包含密碼術與密碼分析。密碼分析(cryptanalysis)是研究如何破解密碼學的學科。但在實際使用中,通常都稱密碼學(英文通常稱cryptography),而不具體區分其含義。

口語上,編碼(code)常意指加密或隱藏信息的各種方法。然而,在密碼學中,編碼有更特定的意義:它意指以碼字(code word)取代特定的明文。例如,以‘蘋果派’(apple pie)替換‘拂曉攻擊’(attack at dawn)。編碼已經不再被使用在嚴謹的密碼學,它在資訊理論或通訊原理上有更明確的意義。

在漢語口語中,電腦系統或網路使用的個人帳戶口令(password)也常被以密碼代稱,雖然口令亦屬密碼學研究的範圍,但學術上口令與密碼學中所稱的鑰匙(key)並不相同,即使兩者間常有密切的關連。

相關詞條

相關搜尋

其它詞條