网络电子商务在不断发展的同时。信息安全问题也显得愈为突出。作为保证信息安全重要手段之一的加密技术也扮演着越来越重要的角色。本文就给大家讲述了加密技术的发展,两种密钥体制(常规密钥密码体制和公开密钥密码体制),以及密钥的管理(主要讨论密钥分配)。我们可以在加密技术的特点中看到他的发展前景,为网络提供更可靠更安全的运行环境。

一、常规密钥密码体制

所谓常规密钥密码体制,即加密密钥与解密密钥是相同的密码体制。这种加密系统又称为对称密钥系统。使用对称加密方法,加密与解密方必须使用相同的一种加密算法和相同的密钥。

因为通信的双方在加密和解密时使用的是同一个密钥,所以如果其他人获取到这个密钥,那么就会造成失密。只要通信双方能确保密钥在交换阶段未泄露,那么就可以保证信息的机密性与完整性。对称加密技术存在着通信双方之间确保密钥安全交换的问题。同时,一个用户要N个其他用户进行加密通信时,每个用户对应一把密钥,那么他就要管理N把密钥。当网络N个用户之间进行加密通信时,则需要有N×(N-1)个密钥,才能保证任意两者之间的通信。所以,要确保对称加密体系的安全,就好要管理好密钥的产生,分配,存储,和更换。常规密码体制早期有替代密码和置换密码这二种方式。下面我们将讲述一个著名的分组密码——美国的数据加密标准DES。DES是一种对二元数据进行加密的算法,数据分组长度为64位,密文分组长度也是64位,使用的密钥为64位,有效密钥长度为56位,有8位用于奇偶校验,解密时的过程和加密时相似,但密钥的顺序正好相反。DES算法的弱点是不能提供足够的安全性,因为其密钥容量只有56位。由于这个原因,后来又提出了三重DES或3DES系统,使用3个不同的密钥对数据块进行(两次或)三次加密,该方法比进行普通加密的三次块。其强度大约和112比特的密钥强度相当。

二、公开密钥密码体制

公开密钥(publickey)密码体制出现于1976年。与“公开密钥密码体制”相对应的是“传统密码体制”,又称“对称密钥密码体制”。其中用于加密的密钥与用于解密的密钥完全一样,在对称密钥密码体制中,加密运算与解密运算使用同样的密钥。通常,使用的加密算法比较简便高效,密钥简短,破译极其困难。但是,在公开的计算机网络上安全地传送和保管密钥是一个严峻的问题。在“公开密钥密码体制”中,加密密钥不同于解密密钥,加密密钥公之于众,谁都可以用;而解密密钥只有解密人自己知道。它们分别称为“公开密钥”(publickey)和“秘密密钥”(private一key)。

它最主要的特点就是加密和解密使用不同的密钥,每个用户保存着一对密钥──公开密钥PK和秘密密钥SK,因此,这种体制又称为双钥或非对称密钥密码体制。
在这种体制中,PK是公开信息,用作加密密钥,而SK需要由用户自己保密,用作解密密钥。加密算法E和解密算法D也都是公开的。虽然SK与PK是成对出现,但却不能根据PK计算出SK。在公开密钥密码体制中,最有名的一种是RSA体制。它已被ISO/TC97的数据加密技术分委员会SC20推荐为公开密钥数据加密。RSA算法既能用于数据加密,也能用于数字签名,RSA的理论依据为:寻找两个大素数比较简单,而将它们的乘积分解开则异常困难。在RSA算法中,包含两个密钥,加密密钥PK,和解密密钥SK,加密密钥是公开的,其加密与解密方程为:
其中n=p×q,P∈[0,n-1],p和q均为大于10100的素数,这两个素数是保密的。
RSA算法的优点是密钥空间大,缺点是加密速度慢,如果RSA和DES结合使用,则正好弥补RSA的缺点。即DES用于明文加密,RSA用于DES密钥的加密。由于DES加密速度快,适合加密较长的报文;而RSA可解决DES密钥分配的问题。

三、密钥的管理

1.密钥管理的基本内容

由于密码算法是公开的,网络的安全性就完全基于密钥的安全保护上。因此在密码学中就出先了一个重要的分支——密钥管理。密钥管理包括:密钥的产生,分配,注入,验证和使用。它的基本任务是满足用户之间的秘密通信。在这有的是使用公开密钥体制,用户只要保管好自己的秘密密钥就可以了,公开密钥集体公开在一张表上,要向哪个用户发密文只要找到它的公开密钥,再用算法把明文变成密文发给用户,接收放就可以用自己的秘密密钥解密了。所以它要保证分给用户的秘密密钥是安全的。有的是还是使用常规密钥密码体制,当用户A想和用户B通信时,他就向密钥分配中心提出申请,请求分配一个密钥,只用于A和B之间通信。

2.密钥分配

密钥分配是密钥管理中最大的问题。密钥必须通过安全的通路进行分配。例如,在早期,可以派专门的人给用户们送密钥,但是当随着用户数的膨胀,显然已不再适用了,这时应采用网络分配方式。

目前,公认的有效方法是通过密钥分配中心KDC来管理和分配公开密钥。每个用户只保存自己的秘密密钥和KDC的公开密钥PKAS。用户可以通过KDC获得任何其他用户的公开密钥。
首先,A向KDC申请公开密钥,将信息(A,B)发给KDC。KDC返回给A的信息为(CA,CB),其中,CA=DSKAS(A,PKA,T1),CB=DSKAS(B,PKB,T2)。CA和CB称为证明书(Certificate),分别含有A和B的公开密钥。KDC使用其解密密钥SKAS对CA和CB进行了签名,以防止伪造。时间戳T1和T2的作用是防止重放攻击。

然后,A将证明书CA和CB传送给B。B获得了A的公开密钥PKA,同时也可检验他自己的公开密钥PKB。对于常规密钥进行分配要分三步:

(1)用户A向KDS发送自己的密钥KA加密的报文EKA(A,B),说明想和用户B通信。

(2)KDC用随机数产生一个“一次一密”密钥R1供A和B这次的通信使用,然后向A发送回答报文,这个回答报文用A的密钥KA加密,报文中有密钥R1和请A转给B的报文EKB(A,R1),但报文EKB(A,R1)是用B的密钥加密的,因此A无法知道其中的内容,它也没必要知道。

(3)当B收到A转来的报文EKB(A,R1)并用自己的密钥KB解密后,就知道A要和他通信,同时也知道和A通信应当使用的密钥R1。

从一开始,我们就是为了解决一些网络安全问题而提出了密钥体制,也就是我们所说的加密。所以,不言而寓,密钥就是在各种传送机构中发挥他的作用,确保在传送的过程中信息的安全。虽然所使用的方式方法不同,但密钥体制本身是相同的。主要有数字签名、报文鉴别、电子邮件加密几种应用。我们在问题中找到了很好解决信息加密的方法。我们从加密技术一路走来的发展史中可以看出加密技术在不段的发展和完善中。并且就两个经典的算法DES和RSA做出了扼要的介绍。在论文中间也介绍了密钥的分配,这也是加密技术的一个重要方面。相信在不久的将来,可以看到更加完美的加密体制或算法。