古典密码安全算法有哪些?

说越多分越多... 说越多分越多 展开
 我来答
圣人不剩
推荐于2016-04-20 · TA获得超过2334个赞
知道小有建树答主
回答量:906
采纳率:0%
帮助的人:0
展开全部
世界上最早的一种密码产生于公元前两世纪。是由一位希腊人提出的,人们称之为
棋盘密码,原因为该密码将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越长,保密程
度就越高。显然这样的密码体制比单表置换密码体制具有更强的抗攻击能力,而且其加
密、解密均可用所谓的维吉尼亚方阵来进行,从而在操作上简单易行。该密码可用所谓
的维吉尼亚方阵来进行,从而在操作上简单易行。该密码曾被认为是三百年内破译不了
的密码,因而这种密码在今天仍被使用着。

古典密码的发展已有悠久的历史了。尽管这些密码大都比较简单,但它在今天仍有
其参考价值。
znlaw
2008-06-08 · 超过12用户采纳过TA的回答
知道答主
回答量:41
采纳率:0%
帮助的人:33.1万
展开全部
古典密码算法历史上曾被广泛应用,大都比较简单,使用手工和机械操作来实现加密和
解密.它的主要应用对象是文字信息,利用密码算法实现文字信息的加密和解密.下面是
两种常见的具有代表性的古典密码算法.
1. 替代密码
替代密码算法的原理是使用替代法进行加密,就是将明文中的字符用其它字符替代后形
成密文.例如:明文字母a,b,c,d ,用D,E,F,G做对应替换后形成密文.
替代密码包括多种类型,如单表替代密码,多明码替代密码,多字母替代密码,多表替
代密码等.下面我们介绍一种典型的单表替代密码,恺撒(caesar)密码,又叫循环移位密码.
它的加密方法,就是将明文中的每个字母用此字符在字母表中后面第k个字母替代.它的加
密过程可以表示为下面的函数:
E(m)=(m+k) mod n
其中:m为明文字母在字母表中的位置数;n为字母表中的字母个数;k为密钥;E(m)
为密文字母在字母表中对应的位置数.
例如,对于明文字母H,其在字母表中的位置数为8,设k=4,则按照上式计算出来的
密文为L:
E(8) = (m+k) mod n = (8+4) mod 26 = 12 = L
2. 置换密码
置换密码算法的原理是不改变明文字符,只将字符在明文中的排列顺序改变,从而实现
明文信息的加密.置换密码有时又称为换位密码.
矩阵换位法是实现置换密码的一种常用方法.它将明文中的字母按照给的顺序安排在
一个矩阵中,然后用根据密钥提供的顺序重新组合矩阵中字母,从而形成密文.例如,明文
为attack begins at five,密钥为cipher,将明文按照每行6列的形式排在矩阵中,形成如下形
式:
a t t a c k
b e g i n s
a t f i v e
根据密钥cipher中各字母在字母表中出现的先后顺序,给定一个置换:
1 2 3 4 5 6
f =
1 4 5 3 2 6
根据上面的置换,将原有矩阵中的字母按照第1列,第4列,第5列,第3列,第2
列,第6列的顺序排列,则有下面形式:
a a c t t k
b i n g e s
a i v f t e
从而得到密文:abatgftetcnvaiikse
其解密的过程是根据密钥的字母数作为列数,将密文按照列,行的顺序写出,再根据
由密钥给出的矩阵置换产生新的矩阵,从而恢复明文.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式