对传输的数据进行加密是现代网络安全的重要技术手段。按照OSI参考模型的要求,在网络传输中对数据进行加密,是OSI表示层的基本任务之一。
为了保护数据在传输中不被非法使用,本地操作系统或网络操作系统均可实施对数据加密与解密。加密数据的基本思想,就是把原有的数据打乱或进行变换——对数据进行加密。对数据加密通用的三种基本方法是换位、取代和代数运算。
在实际的加密协议应用中,上述三种方法可以单独使用,也可以多种方法同时使用。一般人是难以得到经过加密的数据内容的,只有接收到加密数据的一方知道加密的算法,对加密的数据进行反运算——解密后才能理解数据内容。
数据加密,原则上用硬件或软件方式均可。然而,端到端数据的加密只能用软件完成,该加密软件被认为是OSI表示层的一部分。
在网络安全系统中最常用的两种加密系统是专用密钥加密系统和公共密钥加密系统。
1.专用密钥加密系统
在专用密钥加密系统中,加密和解密的双方用一个密钥。无论哪个网络实体,只要有了这把密钥,就可以加密或解密报文。该密钥被称为专用密钥。专用密钥加密系统,其实就是“一把钥匙开一把锁”,因而把专用密钥加密系统称为“对称加密系统”。
可见,在专用密钥加密系统中,密钥是整个加密与解密过程的关键。无论加密方,还是解密方,都必须妥善保管好各自的密钥。(www.xing528.com)
在实际的应用中,密钥可以做在硬件芯片里,也可以由网络管理员设置。一旦某个密钥被更换或改变,所有相关设备的密钥都要更新。为了确保密钥的安全,一般建议最好不用网络传送新密钥。若一定要通过网络传送密钥,也必须用其他加密的方法(如非对称加密系统)对密钥进行加密传送。
2.公共密钥加密系统
公共密钥加密系统是一种非对称加密系统。在公共密钥加密系统建立的初始,网络实体得到一个密钥(称为私有密钥)和一个已知数值(密码)。网络实体用这个数值和私有密钥计算出一个公共密钥。其中公共密钥将用于加密数据和验证签名,而私有密钥则用于解密数据和数字签名。由于在公共密钥体系中,加密和解密使用不同的密钥,故而把公共密钥加密系统称为“非对称加密系统”。
在互连网络的环境中,当需要使用公共密钥加密系统进行数据传输时,每个参与者都必须有一对密钥:私有密钥和公共密钥。
当某个网络实体A需要加密传输数据给网络实体B时,事先网络实体A必须得到网络实体B的公共密钥。然后,网络实体A使用网络实体B的公共密钥对数据加密,再把加密后的数据传送给网络实体B。接收方网络实体B用自己的私有密钥,对来自网络实体A的加密数据进行解密,便可得到正确的数据。反过来,若实体B要向实体A发送加密数据,实体B也必须先得到实体A的公共密钥。
可见,一个用户或网络实体的公共密钥是大家都可以得到的密钥,该公共密钥只能用于加密,但不能用于解密。一般来说,要从公共密钥反推出其私有密钥是十分困难的,对于一般人是不可能的。因为这种算法的计算复杂性太高,用有限的时间无法推算出对应的私有密钥。实践证明,通过公共密钥无法推断出别人的私有密钥,因此说明公共密钥加密系统有较高的安全性。
但是,由于计算机的速度越来越快,原来认为非常可靠的加密系统,也可能变得不可靠了。但是,计算机技术在进步,有关密码的数学方法也在发展,新的加密方法在不断研制中。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。