IPSec (一)
从名称上可以看出:把IP包进行加密,把加密的数据包在公网上进行传输,
三层协议,通过在网关之间(路由器、防火墙、相关软件等)传输时,把数据把进行加密。
不依赖于任何算法,可以使用任何算法
支持site - site / client- site
IPSec Security Services:
Confidentiality:机密性
Data Integrity:数据完整性
Origin Authentication:源认证
Anti-replay Protection:防止重放 保护
IPSec 仅仅提供了一种架构,对服务的事项方式没有明确规定,只是提供建议,
例如:对于机密性,它建议使用加密算法,但是不规定具体使用哪个算法
数据完整性,建议使用 hash 的算法,MD5、SHA两类
Confidentiality (机密性):
在公网传输时,不希望被其他人看懂,所以数据包采取加密,使用加密算法,
加密算法有对称加密( 一个 key,有的时候可能不够安全 )和非对称加密两种( public key and private key )
加密算法的安全是相对的,我们一般认为,在一定时间,一定财力范围内无法解密,就暂时认为这种加密算法是安全的。
DES加密,有人可能在一天甚至几个小时内破解,认为是不安全的,3DES加密,破解可能需要巨大财力和时间,认为暂时安全
“雪崩效应”,明文有一点改变,密文可能会产生巨大变化,与原来完全不一样,这种情况称为“雪崩效应”
DH Key Exchange (DH 密钥交换) 中国余数定理,生成各自的私钥(private key) 作为了解 对称加密 (DES、3DES or AES)
非对称加密:RSA (三个人名字缩写)
公钥加密法,各自生成自己的公钥和私钥(public key and private key) 通过在公网上进行公钥传输,使用公钥加密,私钥解密
对称加密用于大量数据传输,非对称加密用于对称加密的 key 、数字签名和机密性较高的数据等
非对称加密比对称加密速度慢100~1000倍,慢了两到三个数量级,往往使用硬件进行运算,否则更是慢的不可想象
Data Integrity (数据完整性):
为了保证数据完整性,采用 HASH 算法,单行函数功能 ( one-way functions ),不可逆的,固定长度的指纹
HMAC hash 算法原理,HMAC-MD5 128位,HMAC-SHA-1 160位,
HASH 算法对于 “ man-in-the-middle attacks” (中间人攻击)是很难抵挡的。
Origin Authentication (源认证): peer authentication
如何保证接收到的数据是正确的对等方传输过来的?
Pre-shared keys(共享密钥)、RSA Signatures(RSA数字签名)、RSA encrypted nonces(RSA 加密的随机数)
Pre-shared keys(共享密钥):Hash(Auth.key+ID)=Authentication hash
Authentication hash=HASH_I
RSA Signas(RSA数字签名):机密性、完整性、不可否认性,非对称算法 (Private.key(HASH(Auth.key+ID))+digital.cert+Public.key) 一起发送给对方
RSA encrypted nonces(RSA 加密的随机数):这个 key 只有两个认证方知道 (Cisco设备才支持)。在 IKE 认证过程中,peer 产生的伪随机数,