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