首页 > 电脑教程/ 正文
信息安全技术是一门综合的学科,它涉及信息论、计算机科学和密码学等多方面知识,主要任务是研究计算机系统和通信网络内信息的保护方法以实现系统内信息的安全、保密、真实和完整。其中,信息安全的核心是密码技术。
传统的加密系统是以密钥为基础的,这是一种对称加密,也就是说,用户使用同一个密钥加密和解密.而公钥则是一种非对称加密方法,加密者和解密者各自拥有不同的密钥。当然,还有其他的诸如流密码等加密算法。
数据加密是防止未经授权的用户访问敏感信息的手段,这就是人们通常理解的安全措施,也是其他安全方法的基础。研究数据加密的科学叫做密码学(Cryptography),它又分为设计密码体制的密码编码学和破译密码的密码分析学。密码学有着悠久而光辉的历史,古代的军事家已经用密码传递军事情报了,而现代计算机的应用和计算机科学的发展又为这一古老的科学注入了新的活力.现代密码学是经典密码学的进一步发展和完善。由于加密和解密此消彼长的斗争永远不会停止,这门科学还在迅速发展之中。
一般的保密通信模型如图6-1所示。在发送端,把明文P用加密算法E和密钥K加密,变换成密文C,即
C=E(K, P)
在接收端利用解密算法D和密钥K对C解密得到明文P,即
P=D(K,G)
这里加/解密函数E和D是公开的,而密钥K(加解密函数的参数)是秘密的。在传送过
程中,偷听者得到的是无法理解的密文,而他又得不到密钥,这就达到了对第三者保密的目的。
如果不论偷听者获取了多少密文,但是密文中没有足够的信息,使得可以确定出对应的明文,则这种密码体制是无条件安全的,或称为是理论上不可破解的。在无任何限制的条件下,几乎目前所有的密码体制都不是理论上不可破解的。能否破解给定的密码,取决于使用的计算资源。所以密码专家们研究的核心问题就是要设计出在给定计算费用的条件下,计算上(而不是理论上)安全的密码体制。下面分析几种曾经使用过的和目前正在使用的加密方法。
所谓经典加密方法,主要是使用了如下三种加密技术。
(1)替换加密(substitution)。用一个字母替换另一个字母,例如Caesar密码(D替换a,E替换b等)。这种方法保留了明文的顺序,可根据自然语言的统计特性(例如字母出现的频率)
破译。
(2)换位加密(transposition).按照一定的规律重排字母的顺序。例如以CIPHER作为密钥(仅表示顺序),对明文attackbeginsatfour加密,得到密文abacnuaiotettgfksr,如图6一所示。偷听者得到密文后检查字母出现的频率即可确定加密方法是换位密码,然后若能根据其他情况猜测出一段明文,就可确定密钥的列数,再重排密文的顺序进行破译。
(3)一次性填充(one-time pad)。把明文变为位串(例如用ASCII编码),选择一个等长的随机位串作为密钥,对二者进行按位异或,得到密文。这样的密码理论上是不可破解的。但是这种密码有实际的缺陷。首先是密钥无法记忆,必须写在纸上,这在实践上是最不可取的:其次是密钥长度有限,有时可能不够使用;最后是这个方法对插入或丢失字符的敏感性,如果发送者与接收者在某一点上失去同步,以后的报文全都无用了。
现代密码体制使用的基本方法仍然是替换和换位.但是采用更加复杂的加密算法和简单的密钥。而且增加了对付主动攻击的手段,例如加入随机的冗余信息,以防止制造假消息;加入时间控制信息,以防止旧消息重放。
替换和换位可以用简单的电路来实现。图6-3 (a)所示的设备称为P盒(Permutation box),用于改变8位输入线的排列顺序。可以看出,左边输入端经P盒变换后的输出顺序为360712450图6-3 (b)所示的设备称为S盒(Substitution box),起置换作用,从左边输入的3位首先被解码,选择8根P盒输入中的I根,将其置1,其他线置0,经编码后在右边输出。可以看出,如果01234567依次输入,其输出为 24506713.
把一串盒子连接起来,可以实现复杂的乘积密码(Product cipher),如图6-3 (c)所示,它可以对12位进行有效的置换。Pt的输入有12根线,P1的输出有212=40%根线,由于第二
级使用了4个S盒,所以每个w的输入只有1024根线,这就简化了S盒的复杂性。在乘积密码中配置足够多的设备,可以实现非常复杂的置换函数。下面介绍的DES算法就是用类似的方法实现的。
1 .DES (Data Encryption Standard)
1977年1月,美国NSA (National Security Agency)根据li:33i的专利技术Lucifer制订TDES。明文被分成64位的块,对每个块进行19次变换(替代和换位),其中16次变换由56位的密钥的不同排列形式控制(IBM使用的是128位的密钥),最后产生64位的密文块。如图6-4所示。
由于NSA减少了密钥,而且对DES的制订过程保密,甚至为此取消了IEEE计划的一次密码学会议。人们怀疑NSA的目的是保护自己的解密技术,因而对DES从子开始就充满了怀疑和争论。仁
1977年,Diffie和Hellman设计了DES解密机。只要知道一小段明文和对应的密文,该机器可以在一天之内穷试256种不同的密钥(这叫做野蛮攻击)。据估计,这个机器当时的造价为2千万美元。
2.三重DES (Triple-DES)
这种方法是DES的改进算法,它使用两把密钥对报文作三次I,]*}加密,效果相当于将DES密钥的长度加倍了,克服了DES密钥长度较短的缺点。本来,应该使用三个不同的密钥进行三次加密,这样就可以把密钥的长度加长到3X56=168位。但许多密码设计者认为168位的密钥已经超过实际需要了,所以便在第一层和第三层中使用相同的密钥,产生一个有效长度为112位的密钥。之所以没有直接采用两重DES,是因为第二层DES不是十分安全,它对一种称为“中间可遇”的密码分析攻击极为脆弱,所以最终还是采用了利用两个密钥进行三重DES加密操作。
假设两个密钥分别是K1和K2,其算法的步骤如下:
(1)用密钥K1进行DES加密。
(2)用K2对步骤(1)的结果进行DES解密。
(3)对步骤(2)的结果使用密钥K1进行DES加密。
这种方法的缺点是要花费原来三倍的时间,但从另一方面来看,三重DES的112位密钥长度是很“强壮”的加密方式了。
3 .IDEA(International Data Encryption Algorithm)
1990年,瑞士联邦技术学院的来学嘉和Massey建议了一种新的加密算法。这种算法使用128位的密钥,把明文分成64位的块,进行8轮迭代加密。IDEA可以用硬件或软件实现,并且比DES快。在苏黎世技术学院用25MHz的VLSI芯片,加密速率是177MBPS o
IDEA经历了大量的详细审查,对密码分析具有很强的抵抗能力,在多种商业产品中得到应用,已经成为全球通用的加密标准.
4.高级加密标准(Advanced Encryption Standard, AES )
1997年1月,美国国家标准与技术局(NIST)为高级加密标准征集新算法。最初从许多
响应者中挑选了15个候选算法,经过了世界密码共同体的分析,选出了其中的5个。经过用ANSI C和Java语言对5个算法的加懈密速度、密钥和算法的安装时间,以及对各种攻击的拦截程度等进行了广泛的测试后,2000年10月,NIST宣布助ndael算法为AES的最佳候选算法,并于2002年5月26日发布为正式的AES加密标准。
AES支持128, 192和256位三种密钥长度,能够在世界范围内免版税使用,提供的安全级别足以保护未来20^-30年内的数据,可以通过软件或硬件实现。
5.流加密算法和RC4
所谓流加密,就是将数据流与密钥生成二进制比特流进行异或运算的加密过程。这种算法采用如下两个步骤。
(1)利用密钥K生成一个密钥流KS(伪随机序列)。
(2)用密钥流KS与明文P进行“异或”运算,产生密文C.
解密过程则是用密钥流与密文C进行“异或”运算,产生明文P.
为了安全,对不同的明文必须使用不同的密钥流,否则容易被破解。
Ronald L. Rivest是MIT的教授,用他的名字命名的流加密算法有RC2^-RC6系列算法,其中RC4是最常用的。
RC代表Rivest Ciphe:或Ron's Cipher, RC4是Rivest在1987年设计的,其密钥长度可选择64位或128位。
RC4是RSA公司私有的商业机密,1994年9月,被人匿名发布在因特网上,从此得以公开。这个算法非常简单,就是256内的加法,置换和异或运算。由于简单,所以速度极快,加密的速度可达到DES的10倍。
6.公钥加密算法
以上的加密算法中使用的加密密钥和解密密钥是相同的,称为共享密钥算法或对称密钥算法。1976年,斯坦福大学的Diffie和Heilman提出了使用不同的密钥进行加密和解密的公钥加密算法。设P为明文,C为密文,E为公钥控制的加密算法,D为私钥控制的解密算法,这些参数满足下列三个条件。
(I)D (E (P))=
(2)不能由E导出Do
(3)选择明文攻击(选择任意明文一密文对以确定未知的密钥)不能破解Eo
加密时计算C=E (P),解密时计算P=D (C)。加密和解密是互逆的。用公钥加密,私钥解密,可实现保密通信;用私钥加密,公钥解密,可实现数字签名。
7. RSA(Rivest Shamir and Adleman)算法这是一种公钥加密算法。方法是按照下面的要求选择公钥和密钥。
(1)选择两个大素数p和q(大于10100)0
(2)令n p*q和z= (p-1)*(q-1)。
(3)选择d与z互质。
(4)选择e,使e*d 1(mod z)o
明文P被分成k位的块,k是满足2k<n的最大整数,于是有0≤P<n。加密时计算
这样公钥为(e, n )。解密时计算
即私钥为(d,n).
用例子说明这个算法,设p=3, q=11, n=33, z=20, d=7, e=3,C=P3(mod 33), P=C7(mod
33)。则有
RSA算法的安全性是基于大素数分解的困难性。如果攻击者可以分解已知的n,得到P和q,然后可得到z;最后用Euclid算法,由e和z得到d。然而要分解200位的数,需要40亿年;分解500位的数,则需要1025年。
- 上一篇:网络安全的基本概念
- 下一篇:网络安全认证包含哪些方法
更多信息加密技术详细介绍相关文章
- 网页内容优化:一个优化Sharepoint的新方法
- 高中生学什么好就业?
- 郑州哪一家电脑学校学费比较合理呢?
- 计算机TCPIP协议教程
- 电脑应用小技巧
- 内存条的作用_内存条选择技巧
- 电脑技术学习
- 学习电脑设计需要什么软件
- 想学习c语言程序设计需要学哪些知识
- 学电脑怎么从新手到高手呢?
- 如何自学编程?
- 创建网站需要用到什么软件?
- 学习网络技术有什么方法及技巧
- 计算机网络体系结构(二)
- 数据通信的基本概念
- 广域网是如何互连
- ICMP详细介绍
- TCP和UDP是什么
- 数字签名是什么
- 虚拟专用网详细介绍
- 病毒怎么进行防护
- DNS服务器的配置教程
- DHCP服务器的配置计算机教程
- 电子邮件服务器的配置计算机教程
- 路由器的配置
- 网络诊断和配置命令
- 计算机学习网告诉大家几个电脑小常识
- 郑州计算机学校:windows权限提升基础知识
- 搜索
-
- 热门标签
-
- it技术培训学校
- 洛阳计算机电脑学校哪家比较好呢
- 北大青鸟郑州翔天信鸽学校口碑怎么样呢
- 许昌学软件技哪个专科学校学软件技术好
- 初中毕业学习成绩非常差可以读北大青鸟吗
- 郑州ava编程专业培训去哪里好呢
- 郑州北大青鸟电脑学校有哪些校区呢
- 男孩学什么专业前景好
- 郑州中专技校春季招生开始了吗
- 初中毕业学什么技术好找工作
- 郑州北大青鸟招生简章2020年招生详情
- 郑州北大青鸟软件编程课程怎么样
- 郑州计算机大学哪里比较好呢
- 一台电脑最近一接通电源就自行开机
- 郑州北大青鸟招生报名截止时间
- 什么基础也没有可以学计算机技术吗
- 濮阳市华龙区北大青鸟培训机构
- 郑州电脑技术学校选择哪家比较不错呢
- 北大青鸟可信吗
- 河南适合初中毕业十五岁男孩学的技术学校