网络安全讲座之二:加密的应用(2)
建立信任关系
应用加密指的是在主机之间建立一个信任关系。在最基本的级别上,一个信任关系包括一方加密的信息,并只有另一方的合作伙伴可以解密这个信息。这种任务是利用公钥加密来完成的。这种类型的加密要求你建立一个私钥和一个公钥。一旦你已经产生了一对密钥,你可以把公钥发布给任何人。
你可以通过以下两种方法来发布你的公钥:
·手动:你首先必须和接收方交换公钥,然后用接收方的公钥来加密信息。PGP和S/MIME需要使用这种方法。
·自动:SSL和IPSec通过一系列的握手可以安全地交换信息(包括私钥)。 在本课你将学到有关这方面更多的知识。
下面是在加密中一些术语的简单介绍:
对称加密
在对称加密(或叫单密钥加密)中,只有一个密钥用来加密和解密信息。尽管单密钥加密是一个简单的过程,但是双方都必须完全的相信对方,并都持有这个密钥的备份。但要达到这种信任的级别并不是想像中的那么简单。当双方试图建立信任关系时可能一个安全破坏已经发生了。首先密钥的传输就是一个重要问题,如果它被截取,那么这个密钥以及相关的重要信息就没有什么安全可言了。
但是,如果用户要在公共介质 (如互联网) 上传递信息,他需要一种方法来传递密钥,当然物理的发送和接收密钥是最安全的,但有时这是不可能的。一种解决方法就是通过电子邮件来发送,但这样的信息很容易的被截取到,从而击破了加密的目的。用户不能加密包含密钥的邮件,因为他们必须共享另一个用来加密含有密钥邮件的密钥。这种困境就产生了问题:如果对称密钥用它们自己来加密,那为什么不直接用相同的方法在第一步就使用?一个解决方案就是用非对称加密,我们将在本课的后面提到。
所有类型加密的一个主题就是破解。一种减少使用对称加密所造成的威胁的反措施就是改变密钥的规律性。然而,定期改变密钥经常是困难的,尤其是你的公司里有很多用户。另外,黑客可以使用字典程序,password sniffing来危及对称密钥的安全,或者通过搜翻办公桌,钱包以及公文包。对称加密也很容易被暴力攻击的手段击败。
非对称加密
非对称加密在加密的过程中使用一对密钥,而不像对称加密只使用一个单独的密钥。一对密钥中一个用于加密,另一个用来解密。如用A加密,则用B解密;如果用B加密,则要用A解密。
重要的概念是在这对密钥中一个密钥用来公用,另一个作为私有的密钥;用来向外公布的叫做公钥,另一半需要安全保护的是私钥。非对称加密的一个缺点就是加密的速度非常慢,因为需要强烈的数学运算程序。如果一个用户需要使用非对称加密,那么即使比较少量的信息可以也要花上几个小时的时间。
非对称加密的另一个名称叫公钥加密。麻省里工学院的数学家们在1970年首先开发了非对称密钥(公钥)技术。尽管私钥和公钥都有与数学相关的,但从公钥中确定私钥的值是非常困难的并且也是非常耗时的。在互联网上通信,非对称加密的密钥管理是容易的因为公钥可以任易的传播,私钥必须在用户手中小心保护。
HASH加密把一些不同长度的信息转化成杂乱的128位的编码里,叫做HASH值。HASH加密用于不想对信息解密或读取。使用这种方法解密在理论上是不可能的,是通过比较两上实体的值是否一样而不用告之其它信息。HASH加密别一种用途是签名文件。它还可用于当你想让别人检查但不能复制信息的时候。
举个例子,一台自动取款机(ATM)不需要解密一个消费者的个人标识数字(PIN)。磁条卡将顾客的代码单向地加密成一段HASH值,一旦插卡时,ATM机将计算用户PIN的HASH值并产生一个结果,然后再将这段结果与用户卡上的HASH值比较。使用这种方法,PIN是安全的,即使对于那些维护ATM机的人来说。