文档库

最新最全的文档下载
当前位置:文档库 > 古典密码技术

古典密码技术

替代密码(代换密码)

替代密码就是明文中每一个字符被替换成密文中的另外一个字符。接收者对密文进行逆替换就恢复出明文来。替代法加密是用另一个字母表中的字母替代明文中的字母。

加密算法Ek(m)是一个代换函数,将每一个m∈M代换为相应的c ∈C,代换函数的参数是秘钥k;解密算法Dk(c)只是逆代换。

在替代法加密体制中,使用了密钥字母表。它可以由单个字母表构成,也可以由多个字母表构成。

如果是由一个字母表构成的替代密码,称为单表密码。其替代过程是在明文和密码字符之间进行一对一的映射。

如果是由多个字母表构成的替代密码,称为多表密码。

1.单表替代密码

单表替代密码的一种典型方法是凯撒(Caesar)密码,又叫循环移位密码。它的加密方法就是把明文中所有字母都用它右边的第k个字母替代,并认为Z后边又是A。这种映射关系表示为如下函数:F(a)=(a+k) mod n

其中:a表示明文字母;n为字符集中字母个数;k为密钥。

凯撒(Caesar)密码k=3.

映射表中,明文字母中在字母表中的相应位置数为C,(如A=1,B=2,…Y=25,Z=0)形式如下:

设k=3;对于明文P=COMPUTE SYSTEMS则

f(C)=(3+3)mod 26=6=F

f(O)=(15+3)mod 26=18=R

f(M)=(13+3)mod 26=16=P

f(S)=(19+3)mod 26=22=V

密文C= Ek(P)=FRPSXRWHUVBVWHPV。

除了凯撒密码,在其他的单表替代法中,有的字母表被打乱。比如,在字母表中首先排列出密钥中出现的字母,然后在密钥后面填上剩余的字母。如密钥是HOW,那么新的字母表就是:HOWABCDEFGIJKLMNPQRSTUVXYZ

这个密钥很短,多数明文字母离开其密文等价字母,仅有一个或几个位置。若用长的密钥字,则距离变大,因而便难于判断是何文字密钥。

2.多表替代密码

周期替代密码,又称为维吉尼亚(Vigenere)密码。

循环的使用有限个字母来实现替代的一种方法。若明文信息mlm2m3…mn,采用n个字母(n个字母为B1,B2,…Bn)替代法,那么,ml将根据字母Bn的特征来替代,mn+l 又将根据B1的特征来替代,mn+2又将根据B2的特征来替代……,如此循环。可见B1,B2,…Bn就是加密的密钥。

以字母表移位为基础把26个英文字母进行循环移位,排列在一起,形成26×26的方阵。该方阵被称为维吉尼亚表。采用的算法为:f(a)=(a+Bi)mod n (i=(1,2,…,n))例如:以YOUR为密钥,加密明码文HOW AREYOU。

P =HOW AREYOU

K =YOURYOURY

Ek(P) =FCQRPSSFS

H=7,Y=24, 31 MOD 26=5

查佛吉尼亚表,其加密过程就是以明文字母选择列,以密钥字母选择行,两者的交点就

免费下载Word文档免费下载: 古典密码技术

(共2页)