加密技术探析

引  言
 
计算机网络技术的飞速发展,大大方便了人们的工作和生活,也达到了架设互联网的目的——资源共享。但安全问题也随着而来,黑客技术也随着进一步发展。我国计算机及网络是以国外产品为主,其操作系统的安全性基本上是最低层次的,即使最高的也是美国标准的C级 [1]。所以如何保证安全,顺利实现资源共享,对每个计算机工作者来说是一个非常严峻的问题。
加密技术是解决网络信息安全问题的技术核心,本文介绍网络信息安全技术体系结构,对目前信息加密技术进行了分析,并结合笔者的实践,阐述了加密算法的优缺点,为计算机工作者提供有益的参考。
 
1        加密原理及流程
1.1加密原理:假设E为加密算法,D为解密算法,则数据的加密解密数学表达式为:P=D(KD,E(KE,P))。
   1.2任何一个加密系统至少包括下面四个组成部分: 1.2.1未加密的报文,也称明文。 1.2.2加密后的报文,也称密文。 1.2.3加密解密设备或算法。 1.2.4加密解密的密钥。
   信息加解密过程的流程为图1所示
 
    
信息(明文) 加密算法  加密信息(密文) 发送到网络。。。。。。
 

。。。。。。接受端接收 加密信息(密文) 解密算法  还原信息(明文)
 

图1 信息加解密流程
从图1可以看出,信息加解密的过程就是把原文信息(明文),按照一定的加密算法变成与原文信息(明文)完全不同的信息(密文)的过程。
 
信息加密程度分类
   2.1理论上保密的密码。不管获取多少密文和有多大的计算能力,对明文始终不能得到唯一解的密码,叫做理论上保密的密码,也叫理论不可破的密码。如客观随机一次一密的密码就属于这种。 
   2.2实际上保密的密码。在理论上可破,但在现有客观条件下,无法通过计算来确定唯一解的密码,叫做实际上保密的密码。
2.3不保密的密码。在获取一定数量的密文后可以得到唯一解的密码,叫做不保密密码。如早期单表代替密码,后来的多表代替密码,以及明文加少量密钥等密码,现在都成为不保密的密码。
密码的基本要求
密码除了平时要求达到机密性外,还需要达到三方面的功能:鉴别、完整性和抗抵赖性。
鉴别:消息的接收者应该能够确认消息的来源;入侵者不可能伪装成他人。
完整性:消息的接收者应该能够验证在传送过程中消息没有被修改;入侵者不可能用假消息代替合法消息。
抗抵赖性:发送消息者事后不可能虚假地否认他发送的消息。
加密算法
加密算法有很多种,但密码算法标准化是信息化社会发展的必然趋势。按照发展进程划分,经历了古典密码、对称密钥密码和公开密钥密码阶段。古典密码主要分为替代加密、置换加密;对称密钥密码主要包括DES和AES;公开密钥密码主要包括RSA 、背包密码、McEliece密码等。目前最常用的算法有DES加密算法、RSA算法和PGP算法。
4.1 DES加密算法
DES是一种对二元数据进行加密的算法,具有①特点是数据分组长度为64位,密文分组长度也是64位;②使用的密钥为64位,有效密钥长度为56位,有8位用于奇偶校验。解密时的过程和加密时相似,但密钥的顺序正好相反。
笔者经常采用以下三个步骤实现DES加密算法:
第一步:变换明文。对给定的64位比特的明文x,首先通过一个置换IP表来重新排列x,从而构造出64位比特的x0,x0=IP(x)=L0R0,其中L0表示x0的前32比特,R0表示x0的后32位。
第二步:按照规则迭代。规则为:Li = Ri-1。Ri = Li⊕f(Ri-1,Ki)   (i=1,2,3…16)经过第一步变换已经得到L0和R0的值,其中符号⊕表示的数学运算是异或,f表示一种置换,由S盒置换构成,Ki是一些由密钥编排函数产生的比特块。
第三步:对L16R16利用IP-1作逆置换,就得到了密文y。
 
图2  DES加密过程
 
DES加密过程如图2所示。从图2中可以看出,DES加密需要四个关键点:①IP置换表和IP-1逆置换表;②函数f;③子密钥Ki;④S盒的工作原理。
DES算法的弱点是不能提供足够的安全性,其原因是密钥容量只有56位。为了克服这一问题,提出了三重DES或3DES系统,使用3个不同的密钥对数据块进行两次或三次加密,其强度大约和112比特的密钥强度相当。
虽然DES算法的弱点是不能提供足够的安全性,但是笔者在实际应用中发现 DES算法还是比别的加密算法具有更高的安全性,特别是在一些保密性要求高的情况下使用三重DES或3DES系统较可靠。目前除了用穷举搜索法可以对DES算法进行有效地攻击之外,还没有发现其它有效的攻击办法。而56位长的密钥的穷举空间为256,这意味着如果一台计算机的速度是每一秒种检测一百万个密钥,则它搜索完全部密钥就需要将近2285年的时间,显然这是难以实现的。但随着科学技术的发展,特别是出现超高速计算机后,笔者可考虑把DES密钥的长度再增长一些,以此来达到更高的保密程度。
4.2 RSA算法
RSA体制是一种新型公钥密码体制 2 ,RSA算法既能用于数据加密,也能用于数字签名,RSA的理论依据为:寻找两个大素数比较简单,而将它们的乘积分解开则异常困难。
RSA体制可以简单描述如下:
①生成两个大素数p和q。
②计算这两个素数的乘积n=p×q。
③计算小于n并且与n互质的整数的个数,即欧拉函数φ(n)=(p-1)(q-1)。
④选择一个随机数b满足1<b<φ(n),并且b和φ(n)互质,即gcd(b, φ(n))=1。
⑤计算ab=1 mod φ(n)。
⑥保密a,p和q,公开n和b。
利用RSA加密时,明文以分组的方式加密,每一个分组的比特数应该小于log2n比特。加密明文x时,利用公钥(b, n)来计算c=xb mod n就可以得到相应的密文c。解密的时候,通过计算ca mod n就可以恢复出明文x。选取的素数p和q要足够大,从而使乘积n足够大,在事先不知道p和q的情况下分解n是计算上不可行的。
笔者从实践中得知RSA算法的优点是密钥空间大,缺点是加密速度慢,如果把RSA和DES结合使用,则正好弥补RSA的缺点。即把DES用于明文加密,再把RSA用于DES密钥的加密,由于DES加密速度快,而RSA可解决DES密钥分配的问题,两者相结合适合加密较长的报文,保密性也会大大提高。
4.3 PGP(Pretty Good Privacy)算法
PGP是一种基于RSA公钥加密体系的邮件加密软件,提出了公共钥匙或不对称文件的加密技术。
由于RSA算法计算量极大,在速度上不适合加密大量数据,所以PGP实际上用来加密的不是RSA本身,而是采用传统加密算法IDEA,IDEA加解密的速度比RSA快得多。PGP随机生成一个密钥,用IDEA算法对明文加密,然后用RSA算法对密钥加密。收件人同样是用RSA解出随机密钥,再用IEDA解出原文。这样的链式加密既有RSA算法的保密性(Privacy)和认证性(Authentication),又保持了IDEA算法速度快的优势。
结束语
信息安全问题涉及到国家安全和社会公共安全,世界各国已经认识到信息安全涉及重大国家利益,是互联网经济的制高点,也是推动互联网发展、电子政务和电子商务的关键,发展信息安全技术是目前面临的迫切要求,此外,网络与信息安全还涉及到其他很多方面的技术与知识。例如:防火墙技术、入侵检测技术、病毒防护技术、信息隐藏技术等。因此,一个完善的信息安全保障系统,应该根据具体需求对上述安全技术进行取舍。
 
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值