關于密碼學技術讀書筆記
一.密碼學的介紹
密碼學(在西歐語文中,源于希臘語kryptós“隱藏的”,和gráphein“書寫”)是研究如何隱密地傳遞信息的學科。在現代特別指對信息以及其傳輸的數學性研究,常被認為是數學和計算機科學的分支,和信息論也密切相關。著名的密碼學者Ron Rivest解釋道:“密碼學是關于如何在敵人存在的環境中通訊”,自工程學的角度,這相當于密碼學與純數學的異同。密碼學是信息安全等相關議題,如認證、訪問控制的核心。密碼學的首要目的是隱藏信息的涵義,并不是隱藏信息的存在。密碼學也促進了計算機科學,特別是在于電腦與網絡安全所使用的技術,如訪問控制與信息的機密性。密碼學已被應用在日常生活:包括自動柜員機的芯片卡、電腦使用者存取密碼、電子商務等等。
密碼是通信雙方按約定的法則進行信息特殊變換的一種重要保密手段。依照這些法則,變明文為密文,稱為加密變換;變密文為明文,稱為脫密變換。密碼在早期僅對文字或數碼進行加、脫密變換,隨著通信技術的發展,對語音、圖像、數據等都可實施加、脫密變換。
二.密碼學的發展歷史
密碼學的發展歷程大致經歷了三個階段:古代加密方法、古典密碼和近代密碼。
1.古代加密方法(手工階段)
古代加密方法大約起源于公元前440年出現在古希臘戰爭中的隱寫術。當時為了安全傳送軍事情報,奴隸主剃光奴隸的頭發,將情報寫在奴隸的光頭上,待頭發長長后將奴隸送到另一個部落,再次剃光頭發,原有的信息復現出來,從而實現這兩個部落之間的秘密通信。
公元前400年,斯巴達人就發明了“塞塔式密碼”,即把長條紙螺旋形地斜繞在一個多棱棒上,將文字沿棒的水平方向從左到右書寫,寫一個字旋轉一下,寫完一行再另起一行從左到右寫,直到寫完。解下來后,紙條上的文字消息雜亂無章、無法理解,這就是密文,但將它繞在另一個同等尺寸的棒子上后,就能看到原始的消息。這是最早的密碼技術。
我國古代也早有以藏頭詩、藏尾詩、漏格詩及繪畫等形式,將要表達的真正意思或“密語”隱藏在詩文或畫卷中特定位置的記載。
2.古典密碼(機械階段)
古典密碼的加密方法一般是文字置換,使用手工或機械變換的方式實現。古典密碼系統已經初步體現出近代密碼系統的雛形,它比古代加密方法復雜,其變化較小。古典密碼的代表密碼體制主要有:單表代替密碼、多表代替密碼及轉輪密碼。
3.近代密碼(計算機階段)
密碼形成一門新的學科是在20世紀70年代,這是受計算機科學蓬勃發展刺激和推動的結果。快速電子計算機和現代數學方法一方面為加密技術提供了新的概念和工具,另一方面也給破譯者提供了有力武器。