世界上最早的一種密碼產生於公元前兩世紀。是由一位希臘人提出的,人們稱之為
棋盤密碼,原因為該密碼將26個字母放在5×5的方格里,i,j放在一個格子裡,具體情
況如下表所示
1 2 3 4 5
1 a b c d e
2 f g h i,j k
3 l m n o p
4 q r s t u
5 v w x y z
這樣,每個字母就對應了由兩個數構成的字元αβ,α是該字母所在行的標號,β是列
標號。如c對應13,s對應43等。如果接收到密文為
43 15 13 45 42 15 32 15 43 43 11 22 15
則對應的明文即為secure message。
另一種具有代表性的密碼是凱撒密碼。它是將英文字母向前推移k位。如k=5,則密
文字母與明文與如下對應關係
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
F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
於是對應於明文secure message,可得密文為XJHZWJRJXXFLJ。此時,k就是金鑰。為了
傳送方便,可以將26個字母一一對應於從0到25的26個整數。如a對1,b對2,……,y對
25,z對0。這樣凱撒加密變換實際就是一個同餘式
c≡m+k mod 26
其中m是明文字母對應的數,c是與明文對應的密文的數。
隨後,為了提高凱撒密碼的安全性,人們對凱撒密碼進行了改進。選取k,b作為兩
個引數,其中要求k與26互素,明文與密文的對應規則為
c≡km+b mod 26
可以看出,k=1就是前面提到的凱撒密碼。於是這種加密變換是凱撒野加密變換的
推廣,並且其保密程度也比凱撒密碼高。
以上介紹的密碼體制都屬於單表置換。意思是一個明文字母對應的密文字母是確定
的。根據這個特點,利用頻率分析可以對這樣的密碼體制進行有效的攻擊。方法是在大
量的書籍、報刊和文章中,統計各個字母出現的頻率。例如,e出現的次數最多,其次
是t,a,o,I等等。破譯者透過對密文中各字母出現頻率的分析,結合自然語言的字母頻
率特徵,就可以將該密碼體制破譯。
鑑於單表置換密碼體制具有這樣的攻擊弱點,人們自然就會想辦法對其進行改進,
來彌補這個弱點,增加抗攻擊能力。法國密碼學家維吉尼亞於1586年提出一個種多表式
密碼,即一個明文字母可以表示成多個密文字母。其原理是這樣的:給出金鑰
K=k[1]k[2]…k[n],若明文為M=m[1]m[2]…m[n],則對應的密文為C=c[1]c[2]…c[n]。
其中C[i]=(m[i]+k[i]) mod 26。例如,若明文M為data security,金鑰k=best,將明
文分解為長為4的序列data security,對每4個字母,用k=best加密後得密文為
C=EELT TIUN SMLR
從中可以看出,當K為一個字母時,就是凱撒密碼。而且容易看出,K越長,保密程
度就越高。顯然這樣的密碼體制比單表置換密碼體制具有更強的抗攻擊能力,而且其加
密、解密均可用所謂的維吉尼亞方陣來進行,從而在操作上簡單易行。該密碼可用所謂
的維吉尼亞方陣來進行,從而在操作上簡單易行。該密碼曾被認為是三百年內破譯不了
的密碼,因而這種密碼在今天仍被使用著。
古典密碼的發展已有悠久的歷史了。儘管這些密碼大都比較簡單,但它在今天仍有
其參考價值。
世界上最早的一種密碼產生於公元前兩世紀。是由一位希臘人提出的,人們稱之為
棋盤密碼,原因為該密碼將26個字母放在5×5的方格里,i,j放在一個格子裡,具體情
況如下表所示
1 2 3 4 5
1 a b c d e
2 f g h i,j k
3 l m n o p
4 q r s t u
5 v w x y z
這樣,每個字母就對應了由兩個數構成的字元αβ,α是該字母所在行的標號,β是列
標號。如c對應13,s對應43等。如果接收到密文為
43 15 13 45 42 15 32 15 43 43 11 22 15
則對應的明文即為secure message。
另一種具有代表性的密碼是凱撒密碼。它是將英文字母向前推移k位。如k=5,則密
文字母與明文與如下對應關係
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
F G H I J K L M N O P Q R S T U V W X Y Z A B C D E
於是對應於明文secure message,可得密文為XJHZWJRJXXFLJ。此時,k就是金鑰。為了
傳送方便,可以將26個字母一一對應於從0到25的26個整數。如a對1,b對2,……,y對
25,z對0。這樣凱撒加密變換實際就是一個同餘式
c≡m+k mod 26
其中m是明文字母對應的數,c是與明文對應的密文的數。
隨後,為了提高凱撒密碼的安全性,人們對凱撒密碼進行了改進。選取k,b作為兩
個引數,其中要求k與26互素,明文與密文的對應規則為
c≡km+b mod 26
可以看出,k=1就是前面提到的凱撒密碼。於是這種加密變換是凱撒野加密變換的
推廣,並且其保密程度也比凱撒密碼高。
以上介紹的密碼體制都屬於單表置換。意思是一個明文字母對應的密文字母是確定
的。根據這個特點,利用頻率分析可以對這樣的密碼體制進行有效的攻擊。方法是在大
量的書籍、報刊和文章中,統計各個字母出現的頻率。例如,e出現的次數最多,其次
是t,a,o,I等等。破譯者透過對密文中各字母出現頻率的分析,結合自然語言的字母頻
率特徵,就可以將該密碼體制破譯。
鑑於單表置換密碼體制具有這樣的攻擊弱點,人們自然就會想辦法對其進行改進,
來彌補這個弱點,增加抗攻擊能力。法國密碼學家維吉尼亞於1586年提出一個種多表式
密碼,即一個明文字母可以表示成多個密文字母。其原理是這樣的:給出金鑰
K=k[1]k[2]…k[n],若明文為M=m[1]m[2]…m[n],則對應的密文為C=c[1]c[2]…c[n]。
其中C[i]=(m[i]+k[i]) mod 26。例如,若明文M為data security,金鑰k=best,將明
文分解為長為4的序列data security,對每4個字母,用k=best加密後得密文為
C=EELT TIUN SMLR
從中可以看出,當K為一個字母時,就是凱撒密碼。而且容易看出,K越長,保密程
度就越高。顯然這樣的密碼體制比單表置換密碼體制具有更強的抗攻擊能力,而且其加
密、解密均可用所謂的維吉尼亞方陣來進行,從而在操作上簡單易行。該密碼可用所謂
的維吉尼亞方陣來進行,從而在操作上簡單易行。該密碼曾被認為是三百年內破譯不了
的密碼,因而這種密碼在今天仍被使用著。
古典密碼的發展已有悠久的歷史了。儘管這些密碼大都比較簡單,但它在今天仍有
其參考價值。