古典密碼

古典密碼是密碼學中的其中一個型別，其大部分加密方式都是利用替換式密碼或移項式密碼，有時則是兩者的混合。其於歷史中經常使用，但現代已經很少使用，大部分的已經不再使用了。一般而言，經典密碼是基於一個拼音字母、動手操作或是簡單的裝置。它們可能是一種簡單的密碼法，以致於不可信賴的地步，特別是有新技術被發展出來後。現代的方法是用電腦或是其它數位科技，基於位元和位元組上操作。許多經典密碼被受尊重的人使用，像是尤利烏斯·凱撒和拿破崙，他們創造了一些常被人們使用的密碼。許多密碼起源於軍事上，相同立場的人常使用來寄送秘密訊息。經典的方法常攻擊密碼文，有時候甚至不知其密碼系統，也可以使用工具，像是頻率分析法。有些經典密碼是使用先進的機器或是機電密碼機器，像是恩尼格瑪密碼機。經典密碼的型別.經典密碼大致上分為替換式密碼和移項式密碼。替換式密碼.代換密碼是字母作有系統的代換，直到訊息被替換成其它難以解讀的字。凱撒密碼.凱撒密碼是廣為人知的代換密碼。為了用凱撒密碼法加密訊息，每個密碼字母集中的字母將會被其位置的後3個字母替代。因此字母A將會被字母D替代、字母B將會被字母E替代、字母C將會被字母F替代等，最後，X、Y和Z將分別的被替代成A、B和C。例如，"WIKIPEDIA"將被加密成"ZLNLSHGLD"。凱撒把字母向後移"3"位，但其他數字也可照著作。另一種代換密碼是使用關鍵字，你可以選擇一個單字或是短片語並去除所有的空格和重復的字母，接著把它當作密碼字母集的開頭。最後記得去除掉關鍵字的字母把其它字母接續排序。例如，如果關鍵字是CIPHER，則密碼字母表是這樣寫的：一般字母: a b c d e f g h i j k l m n o p q r s t u v w x y z密碼字母: c i p h e r s t u v w x y z a b d f g j k l m n o q維吉尼亞密碼.凱撒密碼的例子是所有單字母替代式密碼，使用的是多個密碼字母集。加密由兩組或多組密碼字母集組成，加密者可自由的選擇然後用交替的密碼字母集加密訊息。這麼做將會增加解碼的困難度，因為密碼破解者必須找出這兩組密碼字母集。另一個多字母替代式密碼的例子，這將更難解密，稱作維吉尼亞密碼，亦作維吉尼亞方格，這是一種創新的加密方法。隨著這個方格，它有26組不同用來加密的密碼字母集。每個密碼字母集就是多移了一位的凱撒密碼。維吉尼亞方格看起來就是這樣：A B C D E F G H I J K L M N O P Q R S T U V W X Y ZB C D E F G H I J K L M N O P Q R S T U V W X Y Z AC D E F G H I J K L M N O P Q R S T U V W X Y Z A BD E F G H I J K L M N O P Q R S T U V W X Y Z A B CE F G H I J K L M N O P Q R S T U V W X Y Z A B C DF G H I J K L M N O P Q R S T U V W X Y Z A B C D EG H I J K L M N O P Q R S T U V W X Y Z A B C D E FH I J K L M N O P Q R S T U V W X Y Z A B C D E F GI J K L M N O P Q R S T U V W X Y Z A B C D E F G HJ K L M N O P Q R S T U V W X Y Z A B C D E F G H IK L M N O P Q R S T U V W X Y Z A B C D E F G H I JL M N O P Q R S T U V W X Y Z A B C D E F G H I J KM N O P Q R S T U V W X Y Z A B C D E F G H I J K LN O P Q R S T U V W X Y Z A B C D E F G H I J K L MO P Q R S T U V W X Y Z A B C D E F G H I J K L M NP Q R S T U V W X Y Z A B C D E F G H I J K L M N OQ R S T U V W X Y Z A B C D E F G H I J K L M N O PR S T U V W X Y Z A B C D E F G H I J K L M N O P QS T U V W X Y Z A B C D E F G H I J K L M N O P Q RT U V W X Y Z A B C D E F G H I J K L M N O P Q R SU V W X Y Z A B C D E F G H I J K L M N O P Q R S TV W X Y Z A B C D E F G H I J K L M N O P Q R S T UW X Y Z A B C D E F G H I J K L M N O P Q R S T U VX Y Z A B C D E F G H I J K L M N O P Q R S T U V WY Z A B C D E F G H I J K L M N O P Q R S T U V W XZ A B C D E F G H I J K L M N O P Q R S T U V W X Y為了使用維吉尼亞密碼加密訊息，必須先選擇一個關鍵字，接著重復這個關鍵字直到跟明文相同長度。然後看明文訊息下方是哪一個密碼字母集可供使用，就是明文的第一個字母下方對映到的關鍵字母。另外，每個密碼字母集由它自己的第一個字母作為名稱。例如關鍵字是WORD、明文是I LOVE CRYPTOGRAPHY，則：訊息： I LOVE CRYPTOGRAPHY關鍵字： W ORDW ORDWORDWORDW密碼訊息： E ZFYA QIBLHFJNOGKU一些替代式密碼牽涉使用數字而非字母。一個例子是偉大密碼，運用格子系統或線和點為字母建立一些象徵符號。當然，還有其它方法也是用符號、點、破折號來建立密碼字母集。移位式密碼.移位式密碼，它們字母本身不變，但它們在訊息中順序是依照一個定義明確的計畫改變。許多移位式密碼是基於幾何而設計的。一個簡單的加密也是一種運用移位方法工具。一個移位式密碼的具體例子縱欄式移項密碼.先選擇一個關鍵字，把原來的訊息由左而右、由上而下依照關鍵字長度轉寫成長方形。接著把關鍵字的字母依照字母集順序編號，例如A就是1、B就是2、C就是3等。例如，關鍵字是CAT，明文是THE SKY IS BLUE，則訊息應該轉換成這樣：C A T3 1 20T H ES K YI S BL U E最後把訊息以行為單位，依照編號大小調換位置。呈現的應該是A行為第一行、C行為第二行、T行為第三行。然後就可以把訊息"The sky is blue"轉寫成HKSUTSILEYBE。另一種移位式密碼是中國式密碼，移位的方法是將訊息的字母加密成由右而左、上下交替便成不規則的字母。範例，如果明文是：THE DOG RAN FAR，則中國式密碼看起來像這樣:R R G TA A O HF N D E密碼文將寫成：RRGT AAOH FNDE絕大多數的移位式密碼與這兩個範例相類似，通常會重新排列字母的行或列，然後有系統的移動字母。其它一些例子包括Vertical Parallel和雙移位式密碼。更複雜的演演算法可以混合替代和移位成為積密碼；現代資料區段密碼像是DES反覆位移和替代的幾個步驟。經典密碼的破譯.經典密碼通常很容易被破解。許多經典密碼可單單經由密文而破解，所以它們容易受到唯密文攻擊法攻擊的金鑰個數有限，所以這類密碼可以使用暴力破解嘗試所有的金鑰。替代式密碼有比較大的金鑰數，但是容易被頻率分析，因為每個密碼字母各代表了一個明文字母。多字母替代式密碼密碼，像是維吉尼亞密碼使用多個替換防止了簡單的頻率分析，然而，更先進的技術卡西斯基試驗就可用來破解這類密碼。另一方面，現代密碼的設計可以承受更強大的唯密文攻擊。一個優秀的現代密碼必須保證廣泛潛在的攻擊，包括known-plaintext attack和chosen-plaintext attack以及chosen-ciphertext attack。對於密碼破解者來說，應不能夠找到關鍵，即使他知道明文和對應的密碼文、即使他可以選擇明文或密碼文。經典密碼再也不能滿足這些強大的標準，因此，有興趣者再也不拿它來作安全應用了。