《数据通信与网络》笔记--IPSec
1.IP层的安全:IPSec
IP层安全(IP security,IPsec)是由因特网工程任务组(IETF)设计用来为IP层的分组提供安全的一组协议。IPsec帮助
生成经过鉴别的与安全的IP层的分组,如下图:
1.1.两种方式
在传输方式(transport mode)下,IPsec保护传输层到网络层传递的内容,换言之,传输方式保护网路层的有效载荷,在网络层
中封装有效载荷。
传输方式通常用于主机到主机的数据保护,发送主机使用IPsec鉴别和/或加密来自传输层的有效载荷。接受主机使用IPSec检验鉴别
1.2.两种安全协议
安全协议,鉴别头部(AH)协议和封装安全载荷(ESP)协议,在IP层提供鉴别和/或加密。
1.2.1.鉴别头部协议
当由IP数据报携带鉴别头部时,IP头部中协议字段的初始值就替换为值51。在鉴别头部内的一个字段(写一个头部字段)规定了协
议字段的初始值(由IP数据报携带的有效载荷类型)。加入鉴别头部的步骤如下:
a. 鉴别头部加入到有效载荷中,将鉴别数据字段的值置为0.
b. 散列处理是根据总的分组计算的。但是,IP头部中只有在传输过程中不发生改变的那些字段才包含在报文摘要(鉴别数据)的
计算过程中。
c. 将鉴别数据加入到鉴别头部中协议字段的值改为51,将IP头部加入。
1.2.2.封装安全载荷
当IP数据报携带ESP的头部和尾部时,IP头部中协议字段的值更改为50。在ESP尾部内有一个字段(下一个头部字段)保留着协议字段的初始值
(IP数据报所携带的载荷类型,比如TCP或UDP)。ESP过程遵循下列步骤:
a. 对ESP尾部加入到有效载荷中。
b. 对有效载荷和尾部进行加密。
c. 加入ESP头部。
d. 使用ESP头部,有效载荷以及ESP尾部生成鉴别数据。
e. 将鉴别数据加入到ESP尾部的末尾。
f. 将协议值改为50后,在加入到IP头部。
1.2.3.AH和ESP
1.2.4.IPSec提供的服务
AH和ESP两个协议可在网路层对分组提供几种安全服务。
访问控制:IPSec通过安全关联数据库(SADB)简介地提供访问控制,当一个分组到达目的端时,如果还没有为该分组建立安全关联,那么就
丢弃该分组。
报文鉴别:AH和ESP两者通过使用鉴别数据提供报文的完整性。生成一个数据摘要,该摘要由发送方发给接收方,由接收方进行检验。
实体鉴别:在AH和ESP中,用发送方发送的安全关联和秘钥散列数据摘要鉴别数据的发送方。
保密性:在ESP中报文加密提供保密性,但是AH没有提供保密性。如果需要保密性,我们应该用ESP而不是AH。
避免重放攻击:在两个协议中,用序列号和一个滑动窗口防止重放攻击(reply
attack)。当建立安全关联时,每个IPSec头部都有一个
1.3.安全关联
安全关联数据库(SADB)
1.4.因特网密钥交换(IKE)
现在我们来解决最后的部分,如何创建SADB。因特网密钥交换(Internet key exchange,IKE)是用于建立SADB中入关联于
出关联的一个协议。
IKE是在其他三个协议(Oakley,SKEME和ISAKMP)之上的一个更复杂的协议。如下图所示:
Oakley协议时由Hilarieorman开发的一个协议,他是在Diffie-Hellman密钥交换方法基础上的一个密钥生成协议,但做了一些改进,
Oakley是一个无格式的协议,就是说没有规定交换的报文格式。
SKEME是有HugoKrawcyzk设计的,它是另一个密钥交换协议,它使用公钥密码和密钥交换作为实体鉴别。
因特网安全关联和密钥管理协议(Internet SecurityAssociation and Key Management Protocol, ISAKMP)是由国家安全机构(NSA)
设计的协议,它具有实现IKE定义的交换。在生成标准化的和格式化的保温过程中,它允许IKE交换的多个分组,协议以及参数,从而生成安
全关联。
2.虚拟专用网(VPN)
《数据通信与网络》笔记--IPSec的更多相关文章
- 《数据通信与网络》笔记--虚电路网络:帧中继和ATM
在之前的文章中已经介绍过虚电路交换,详细请参见:http://blog.csdn.net/todd911/article/details/9069447 这边介绍下使用虚电路交换的2中WAN技术:帧中 ...
- 《数据通信与网络》笔记--TCP中的拥塞控制
1.拥塞窗口 发送方窗口的大小不仅取决于接收方,而.而且还取决于网络拥塞的情况. 发送方有2种信息:接收方通告的窗口大小和拥塞窗口的大小,实际的窗口大小事这两者中的最小者. 实际窗口大小 = min( ...
- 《数据通信与网络》笔记--QoS
QoS(Quality of Service)服务质量,是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术. 1.QoS参数 衡量服务质量QoS的参数主要包括: 端到端延迟(Delay) ...
- 《数据通信与网络》笔记--SSL/TLS
上次简单地介绍了IP层的安全,今天来介绍下在传输层提供安全性最主要的2个协议:安全套接字层(SSL)协议和传输 层安全(TLS)协议.TLS实际上就是SSL的IETF版本. 1.SSL服务 设计安全套 ...
- 《数据通信与网络》笔记--SCTP
SCTP(stream control transmission protocol)是一种新的可靠的,面向报文的传输层控制协议.它兼有UDP和TCP的特性,它是可靠的面向报文的协议,它保存报文的边界, ...
- 网络笔记02数据解析 -1-JSON解析
1.JSON解析 1.JSON介绍 JSON是最网络传输数据最为广泛的数据格式,没有之一,出身草根,是Javascript的子集,专门负责描述数据格式.Javascript是网页开发的一种脚本语言,和 ...
- 网络笔记-unity 实现AOP
该文章来自网络,如有冒犯,请及时联系! 前提 引用以下文件 Microsoft.Practices.ObjectBuilder2.dll Microsoft.Practices.Unity.dll M ...
- Android网络笔记
(1)网络状态: ConnectivityManager负责管理所有连接的服务(如:系统服务,3G/4G,WiFi,蓝牙等).查看网络状态的类是NetWorkInfo,它是通过Connectivity ...
- Github上点赞90k的计算机基础、操作系统、网络笔记,赶紧收藏
最近,有粉丝发消息给我,说想要好好学习计算机,但是找不到门路啊,所以小编打算给大家推荐一些很奈斯的计算机学习的资料,希望大家赶紧收藏起来好好学习. 资料分为四份,给大家展示了部分内容,头条受限,无法全 ...
随机推荐
- Win32/MFC的基本概念
一.MFC的基本概念 单文档.多文档和对话框框架的区别 MFC中的类继承图的基本框架 CView类与CDocument的关系 Onpaint()和Ondraw()的关系 hdc-cdc区别联系 RUN ...
- 泛型 Field 和 SetField 方法 (LINQ to DataSet)
LINQ to DataSet 为 DataRow 类提供用于访问列值的扩展方法:Field 方法和 SetField 方法.这些方法使开发人员能够更轻松地访问列值,特别是 null 值.DataSe ...
- JSF标签大全详解
1. JSF入门 藉由以下的几个主题,可以大致了解JSF的轮廓与特性,我们来看看网页设计人员与应用程序设计人员各负责什么. 1.1简介JSF Web应用程序的开发与传统的单机程序开发在本质上存在着太多 ...
- iphone开发之适配iphone5
iphone5出来了,从不用适配的我们也要像android一样适配不同分辨率的屏幕了. 公司产品新版本需要适配iphone5,经过一番折腾算是搞定了.下面分享给大家: iphone5的屏幕分辨 ...
- html与css的移动端与pc端需要注意的事项
一个移动端与pc端之间最主要的也就是尺寸问题,苹果与安卓的机型尺寸大小相差甚多,一个尺寸都会影响用户的体验.那么我们来了解一下一些常用的解决方法. 一般在网页中都会在头部有一些这样的代码 <me ...
- sql 根据时间获取数据
获取当月数据 MONTH(时间字段)=MONTH(GETDATE()) and year(时间字段)=year(GETDATE()) 计算两个时间差了多少分钟 DATEDIFF(mi,'7:00',c ...
- eclipse 连接手机的 核心解决办法
重启adb的方法 根本不是最本质的方法 最本质的问题 ,一句话概括 : 没安装好驱动呗! 下面是转载的 android开发一般用到的开发工具就是eclipe,而安卓手机则用来调试程序.一般新手在建立 ...
- js-Array
1.合并数组 var a = ["aaa", "aaaa"];var b = ["bbb", "bbbb", " ...
- css实现超连接按钮形式显示
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- FileUpload
一upload原理: 1.表单的method必须是post方法 2.enctype属性必须是“mutipatr/form-data”类型 enctype默认的属性是“application/x-www ...