这种方法快捷简便,即使传输信息的网络不安全,被别人截走信息,加密后的信息也不易泄露。
但这种方法也存在一个问题,即如果收信者和发信者不在同一地理位置,那么他们必须确保有一个安全渠道来传送加密钥匙。但是如果确实存在这样一个安全渠道(如通过信差、长途电话等等),他们又何必需要加密呢?后来出现的双匙技术解决了这个难题。
双匙技术
此技术使用两个相关互补的钥匙:一个称为公用钥匙(publickey),另一个称为私人钥匙(secretkey)。公用钥匙是大家被告知的,而私人钥匙则只有每个人自己知道。发信者需用收信人的公用钥匙将重要信息加密,然后通过网络传给收信人。收信人再用自己的私人钥匙将其解密。除了私人钥匙的持有者,没有人--即使是发信者--能够将其解密。公用钥匙是公开的,可以通过网络告知发信人(即使网络不安全)。而只知道公用钥匙是无法导出私人钥匙的。现有软件如Internet免费提供的PGP(PrettyGoodPrivacy)可直接实现这些功能。
加密技术主要有两个用途,一是加密信息,正如上面介绍的;另一个是信息数字署名,即发信者用自己的私人钥匙将信息加密,这就相当于在这条消息上署上了名。任何人只有用发信者的公用钥匙,才能解开这条消息。这一方面可以证明这条信息确实是此发信者发出的,而且事后未经过他人的改动(因为只有发信者才知道自己的私人钥匙);另一方面也确保发信者对自己发出的消息负责,消息一旦发出并署了名,他就无法再否认这一事实。
如果既需要保密又希望署名,则可以将上面介绍的两个步骤合并起来。即发信者先用自己的私人钥匙署名再用收信者的公用钥匙加密,再发给对方。反过来收信者只需用自己的私人钥匙解密,再用发信者的公用钥匙验证签名。这个过程说起来有些繁琐,实际上很多软件都可以只用一条命令实现这些功能,非常简便易行。
在网络传输中,加密技术是一种效率高而又灵活的安全手段,值得在企业网络中加以推广。目前,加密算法有多种,大多源于美国,但是大多受到美国出口管制法的限制。现在金融系统和商界普遍使用的算法是美国数据加密标准DES。近几年来我国对加密算法的研究主要集中在密码强度分析和实用化研究上。
除了上面介绍的几种之外,还有一些被广泛应用的网络安全技术,在此做一个简单介绍。
身份验证
身份验证是一致性验证的一种,验证是建立一致性证明的一种手段。身份验证主要包括验证依据、验证系统和安全要求。身份验证技术是在计算机中最早应用的安全技术,现在也仍在广泛应用,它是互联网上信息安全的第一道屏障。
存取控制
存取控制规定何种主体对何种客体具有何种操作权力。存取控制是网络安全理论的重要方面,主要包括人员限制、数据标识、权限控制、类型控制和风险分析。存取控制也是最早采用的安全技术之一,它一般与身份验证技术一起使用,赋予不同身份的用户以不同的操作权限,以实现不同安全级别的信息分级管理。
数据完整性
完整性证明是在数据传输过程中,验证收到的数据和原来数据之间保持完全一致的证明手段。检查是最早采用数据完整性验证的方法,它虽不能保证数据的完整性,只起到基本的验证作用,但由于它的实现非常简单(一般都由硬件实现),现在仍广泛应用于网络数据的传输和保护中。近几年来研究比较多的是数字签名等算法,它们虽可以保证数据的完整性,但由于实现起来比较复杂,系统开销比较大,一般只用于完整性要求较高的领域,特别是商业、金融业等领域。
安全协议
安全协议的建立和完善是安全保密系统走上规范化、标准化道路的基本因素。一个较为完善的内部网和安全保密系统,至少要实现加密机制、验证机制和保护机制。
需要强调的是,网络安全是一个系统工程,不是单一的产品或技术可以完全解决的。这是因为网络安全包含多个层面,既有层次上的划分、结构上的划分,也有防范目标上的差别。在层次上涉及到网络层的安全、传输层的安全、应用层的安全等;在结构上,不同节点考虑的安全是不同的;在目标上,有些系统专注于防范破坏性的攻击,有些系统是用来检查系统的安全漏洞,有些系统用来增强基本的安全环节(如审计),有些系统解决信息的加密、认证问题,有些系统考虑的是防病毒的问题。任何一个产品不可能解决全部层面的问题,这与系统的复杂程度、运行的位置和层次都有很大关系,因而一个完整的安全体系应该是一个由具有分布性的多种安全技术或产品构成的复杂系统,既有技术的因素,也包含人的因素。用户需要根据自己的实际情况选择适合自己需求的技术和产品。
(责任编辑:闫小琪)