信息加密技术——实例分析

来源: 作者: 2006-11-25 出处:pcdog.com

安全  加密  局域网  数据链路  
上一页 1 2 

  (三)clipper加密芯片

  密码虽然可为私人提供信息保密服务,但是它首先是维护国家利益的工具。正是基于这个出发点,考虑到DES算法公开后带来的种种问题,美国国家保密局(NSA)从1985年起开始着手制定新的商用数据加密标准,以取代DES。
1990年开始试用,1993年正式使用,主要用于通信交换系统中电话、传真和计算机通信信息的安全保护。

  新的数据加密标准完全改变了过去的政策,密码算法不再公开,对用户提供加密芯片(clipper)和硬件设备。新算法的安全性远高于DES,其密钥量比DES多1000多万倍。据估算,穷举破译至少需要10亿年。为确保安全,clipper芯片由一个公司制造裸片,再由另一公司编程后方可使用。

  由于完全是官方的封闭控制,该算法除可提供高强度的密码报密外,还可对保密通信进行监听,以防止不法分子利用保密通信进行非法活动,但这种监听是在法律允许的范围内进行的。官方控制也成为美国民间反对该方案的一个重要原因。

  Clipper芯片主要用于商业活动的计算机通信网。NSA同时在着手进行政府和军事通信网中数据加密芯片的研究,并作为clipper的换代产品。它除了具有clipper的全部功能外,还将实现美国数字签名标准(DSS)和保密的哈稀函数标准以及用纯噪声源产生随机数据的算法等。

  (四)公开密钥密码体制

  传统的加密方法是加密、解密使用同样的密钥,由发送者和接收者分别保存,在加密和解密时使用,采用这种方法的主要问题是密钥的生成、注入、存储、管理、分发等很复杂,特别是随着用户的增加,密钥的需求量成倍增加。在网络通信中,大量密钥的分配是一个难以解决的问题。

  例如,若系统中有n个用户,其中每两个用户之间需要建立密码通信,则系统中每个用户须掌握(n-1)/2个密钥,而系统中所需的密钥总数为n*(n-1)/2 个。对10个用户的情况,每个用户必须有9个密钥,系统中密钥的总数为45个。对100个用户来说,每个用户必须有99个密钥,系统中密钥的总数为4950个。这还仅考虑用户之间的通信只使用一种会话密钥的情况。如此庞大数量的密钥生成、管理、分发确实是一个难处理的问题。

  本世纪70年代,美国斯坦福大学的两名学者迪菲和赫尔曼提出了一种新的加密方法--公开密钥加密队PKE方法。与传统的加密方法不同,该技术采用两个不同的密钥来对信息加密和解密,它也称为"非对称式加密方法。每个用户有一个对外公开的加密算法E和对外保密的解密算法D,

  它们须满足条件:
  
  (1)D是E的逆,即D[E(X)]=X;

  (2)E和D都容易计算。

  (3)由E出发去求解D十分困难。

  从上述条件可看出,公开密钥密码体制下,加密密钥不等于解密密钥。加密密钥可对外公开,使任何用户都可将传送给此用户的信息用公开密钥加密发送,而该用户唯一保存的私人密钥是保密的,也只有它能将密文复原、解密。虽然解密密钥理论上可由加密密钥推算出来,但这种算法设计在实际上是不可能的,或者虽然能够推算出,但要花费很长的时间而成为不可行的。所以将加密密钥公开也不会危害密钥的安全。

  数学上的单向陷门函数的特点是一个方向求值很容易,但其逆向计算却很困难。许多形式为Y=f(x)的函数,对于给定的自变量x值,很容易计算出函数Y的值;而由给定的Y值,在很多情况下依照函数关系f(x)计算x值十分困难。例如,两个大素数p和q相乘得到乘积n比较容易计算,但从它们的乘积n分解为两个大素数p和q则十分困难。如果n为足够大,当前的算法不可能在有效的时间内实现。

  正是基于这种理论,1978年出现了著名的RSA算法。这种算法为公用网络上信息的加密和鉴别提供了一种基本的方法。它通常是先生成一对RSA 密钥,其中之一是保密密钥,由用户保存;另一个为公开密钥,可对外公开,甚至可在网络服务器中注册。为提高保密强度,RSA密钥至少为500位长,一般推荐使用1024位。这就使加密的计算量很大。为减少计算量,在传送信息时,常采用传统加密方法与公开密钥加密方法相结合的方式,即信息采用改进的DES或IDEA对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。对方收到信息后,用不同的密钥解密并可核对信息摘要。

  RSA算法的加密密钥和加密算法分开,使得密钥分配更为方便。它特别符合计算机网络环境。对于网上的大量用户,可以将加密密钥用电话簿的方式印出。如果某用户想与另一用户进行保密通信,只需从公钥簿上查出对方的加密密钥,用它对所传送的信息加密发出即可。对方收到信息后,用仅为自己所知的解密密钥将信息脱密,了解报文的内容。由此可看出,RSA算法解决了大量网络用户密钥管理的难题。

  RSA并不能替代DES,它们的优缺点正好互补。 RSA的密钥很长,加密速度慢,而采用DES,正好弥补了RSA的缺点。即DES用于明文加密,RSA用于DES密钥的加密。由于DES加密速度快,适合加密较长的报文;而RSA可解决DES密钥分配的问题。美国的保密增强邮件(PEM)就是采用了RSA 和DES结合的方法,目前已成为E-MAIL保密通信标准。

  四、局域网通信安全措施

  

  对于局域网通信,可采用以下两种具体措施进行加密传输。这些措施的加、解密功能都可以采用上述算法实现:

  (1)链路加密

  链路加密是传输数据仅在物理层前的数据链路层进行加密。接收方是传送路径上的各台节点机,信息在每台节点机内都要被解密和再加密,依次进行,直至到达目的地。

  使用链路加密装置能为某链路上的所有报文提供传输服务。即经过一台节点机的所有网络信息传输均需加、解密,每一个经过的节点都必须有密码装置,以便解密、加密报文。如果报文仅在一部分链路上加密而在另一部分链路上不加密,则相当于未加密,仍然是不安全的。与链路加密类似的节点加密方法,是在节点处采用一个与节点机相连的密码装置(被保护的外围设备),密文在该装置中被解密并被重新加密,明文不通过节点机,避免了链路加密关节点处易受攻击的缺点。

  (2)端--端加密

  端--端加密是为数据从一端传送到另一端提供的加密方式。数据在发送端被加密,在最终目的地(接收端)解密,中间节点处不以明文的形式出现。

  采用端--端加密是在应用层完成,即传输前的高层中完成。除报头外的的报文均以密文的形式贯穿于全部传输过程。只是在发送端和最终端才有加、解密设备,而在中间任何节点报文均不解密,因此,不需要有密码设备。同链路加密相比,可减少密码设备的数量。另一方面,信息是由报头和报文组成的,报文为要传送的信息,报头为路由选择信息。由于网络传输中要涉及到路由选择,在链路加密时,报文和报头两者均须加密。而在端--端加密时,由于通道上的每一个中间节点虽不对报文解密,但为将报文传送到目的地,必须检查路由选择信息,因此,只能加密报文,而不能对报头加密。这样就容易被某些通信分析发觉,而从中获取某些敏感信息。

  (3)加密传输方式的比较

  数据保密变换使数据通信更安全,但不能保证在传输过程中绝对不会泄密。因为在传输过程中,还有泄密的隐患。

  采用链路加密方式,从起点到终点,要经过许多中间节点,在每个节点地均要暴露明文(节点加密方法除外),如果链路上的某一节点安全防护比较薄弱,那么按照木桶原理(木桶水量是由最低一块木板决定),虽然采取了加密措施,但整个链路的安全只相当于最薄弱的节点处的安全状况。

  采用端--端加密方式,只是发送方加密报文,接收方解密报文,中间节点不必加、解密,也就不需要密码装置。此外,加密可采用软件实现,使用起来很方便。在端--端加密方式下,每对用户之间都存在一条虚拟的保密信道,每对用户应共享密钥(传统密码保密体制,非公钥体制下),所需的密钥总数等于用户对的数目。对于几个用户,若两两通信,共需密钥n*(n-1)/2种,每个用户需(n-1)种。这个数目将随网上通信用户的增加而增加。为安全起见,每隔一段时间还要更换密钥,有时甚至只能使用一次密钥,密钥的用量很大。

  链路加密,每条物理链路上,不管用户多少,可使用一种密钥。在极限情况下,每个节点都与另外一个单独的节点相连,密钥的数目也只是n*(n-1)/2 种。这里n是节点数而非用户数,一个节点一般有多个用户。

  从身份认证的角度看,链路加密只能认证节点,而不是用户。使用节点A密钥的报文仅保证它来自节点A。报文可能来自A的任何用户,也可能来自另一个路过节点A的用户。因此链路加密不能提供用户鉴别。端--端加密对用户是可见的,可以看到加密后的结果,起点、终点很明确,可以进行用户认证。

  总之,链路加密对用户来说比较容易,使用的密钥较少,而端--端加密比较灵活,用户可见。对链路加密中各节点安全状况不放心的用户也可使用端--端加密方式。
更多内容请看PCdog.com--网络信息与管理加密专题
上一页 1 2 
上一篇:用脚本新建用户及添加密码问题
下一篇:用 WinRAR 加密文件很安全