IPSECVPN之安全基础篇
无止境系列文档将以网络安全为方向,以专题的形式每周天发布,希望大家支持。
第一期专题:IPSECVPN,将分为四周完成,每周一篇,分别为安全基础篇,重要概念解析篇,配置详解篇,深入理解篇。
【阅读说明】
为了方便大家阅读,特作如下说明:1.专业术语或者一些概念用红色标识。2.重要或者强调的语句用蓝色标识。3.总结的部分用绿色标识。
【主要内容】
1.机密性保护2.完整性保护3.身份认证
【例子说明】
本篇通过一个简单的例子来说明很多安全相关的概念。例子:主机A和主机B要进行通信,要保证他们的通信是安全的。
【机密性保护】
机密性保护的作用:防止信息泄漏给未经授权的个人。
A和B要进行安全通信,假设A要发送给B:“hello“这个信息,肯定不可能直接明文发送,所以要对发出去的信息进行加密处理,然后B收到后再进行解密处理,这样的过程就是
-1-
作者:wzhj132保护数据机密性的过程。
心无止境,路慢慢走!
图1-1:加密和解密的过程
图1-1
几个概念:
算法:在加密和解密过程中采用的一组规则。
密钥:可以看作是密码算法的参数,用来控制加密,解密操作。分为加密密钥Ke和解密密钥Kd。
就上面的例子,比如A的消息“hello”就是明文,假设算法是这样的一组规则:加密的时候将字母往后移x个字母,解密的时候往前移位三个字母。密钥是x,这里假设密钥为3。根据这个算法,加密后的密文就成了:“khoor”,这样别人看到这串字母就不知道什么意思了。解密密钥也是x(这里也是3),接受方根据解密算法就可以将密文向前移位三个字母,就可以得到明文。
因此我们可以这样理解,加密是要由算法和密钥共同组成的。
目前,很多加密算法都是公开的,也就是大家可以知道这些算法是怎么算的,都是有标准的。
-2-
作者:wzhj132心无止境,路慢慢走!
但是密钥是要保护的,这样即时知道了算法,也不能解密。就上面的例子来说,你知道算法是加密后移k位,解密前移k位,但是你不知道密钥k是多少,所以也就不能解密了。
算法是公开的,密钥是私有的,如何管理和分配私钥成为重要问题。
现在来看下图中的Ke和Kd,Ke是加密时候用的密钥,Kd是解密时候用的密钥。如果在算法中Ke和Kd是相同的,我们说这是个对称密钥算法。如果在算法中Ke和Kd是不一样的,我们就说这是个非对称密钥算法。
在这里不对比这两种算法的优缺点,这里只需知道不管是对称还是非对称,都是加密算法,都可以用来作加密,只是密钥不同。
对称加密算法有:DES,3DES,AES,IDEA,RC4,A5,SNOW2.0(记住常用的三个即可)
非对称加密算法有:RSA,Diffie-Hellman,Rabin,ELGmal(记住常用的两个即可)
机密性总结:
1.在传输过程中对数据加密解密就是数据机密性的保护。2.目前情况,算法是可以公开的,需要保护的是密钥。
3.常用的对称加密算法:DES,3DES,AES;常用的非对称加密算法:RSA,Diffie-Hellman(简称DH)
【完整性保护】
通过对主机A的原始数据加密形成密文再传送保护了数据的机密性,但是在传输过程中,如果密文因为某些原因丢失了一部分,或者被别人篡改了,那么在主机B中就不能收到完整
-3-
作者:wzhj132心无止境,路慢慢走!
的A所发送的的信息了。因此我们需要一种方法来解决这个问题,即验证数据的完整性。
完整性,可以这样理解,我们要通过某种方法,来判断B收到的信息和A给的信息是一样的,是完整的。
我们通过hash算法实现这一功能。(这里需要注意的是完整性可以通过hash函数来实现,但是这些hash函数不仅仅只能用来做完整性保护,具体情况要看被hash的数据是什么而定,后续会提到。)
HASH算法是通过HASH函数来实现的。hash函数的特点,必须记住的:
1.输入是变长的数据,输出是固定长度的值的值(MD5是128位),叫hash值。2.hash函数是单向的,即正向计算容易,求逆极其困难,我们这里认为是不可能的。
这里有两点提醒:
1.注意hash算法跟以上提到的加密算法的区别。
2.不要纠结于为什么正向容易,求逆困难,这是有严格的数学基础的,你只要知道这个结论就行。
图1-2:完整性保护过程
-4-
作者:wzhj132
图1-2
心无止境,路慢慢走!
hash函数有:MD5,SHA-1
完整性总结:
1.理解需要保护完整性的目的。2.记住hash函数的特点。3.常用的hash函数:MD5,SHA-1
【身份认证】
身份认证:一种用来验证发送者的身份的真实性,通过身份认证可以发现那些假冒的顶替的入侵者。
从例子上看,A发给B消息,B要验证消息确实是A发出的,而不是别人发出的。
身份认证可用公钥密码体制来验证。
首先了解一下公钥的密钥体制的一些重要概念:1.有一对密钥,分为公钥和私钥。
2.私钥加密,只有对应的公钥才能解密。-----用于身份认证3.公钥加密,只有对应的私钥才能解密。-----用于数据加密
公钥密码体制不仅可以用在保护数据的机密性,而且可以用在身份认证中。将公钥公开,就是任何人都可以得到公钥,发送者用相应的私钥加密,由于只有发送者才有私钥,所以只要接受者能用公钥解开,就能证明一定是拥有私钥的人发送的。这样就验证了对方的身份。
总结一句话:
私钥加密,公钥解密,实现身份认证。
-5-
作者:wzhj132心无止境,路慢慢走!
【本期总结】
主要介绍了三个重要的基本概念,一个安全通信的机密性保护,完整性保护和身份认证。这是理解IPSECVPN最基础也最重要的部分,之后的很多东西都是在这些概念的基础上延伸的。
完成于2009年10月4日星期日
下周主要内容预告:IPSECVPN之重要概念解析篇(MAC消息认证码,数字签名,数字证书,DH等)
敬请期待!
-6-
因篇幅问题不能全部显示,请点此查看更多更全内容