加密第四节_IPSec基本理论
加密第四节_IPSec基本理论
本节内容
- IPSec简介
- IPSec两种工作模式
- 判断隧道模式和传输模式
- IPSec两种模型
- IPSec两个数据库
IPSec基本理论
IPSec简介
- 提供了网络层的安全;
- 在明文的IP头部和网络层数据之间插入了一个IPSec的头部,保证了网络负载的安全。
- IPSec头部有ESP头部和AH头部两种;
- 是IPV6的强制部分
IPSec组成部分:
- ESP(负载安全封装)协议;
- 认证头(AH)协议;
- Internet秘钥交换(IKE)协议
IPSec两种工作模式:
传输模式:在IP头部和网络层数据之间插入了一个头部
隧道模式: 将原始数据封装到里面,然后在外面插入IPSec头部,再在外面插入一个新的IP头部
判断隧道模式和传输模式:
第一种判断方法:加密点:两个配置了VPN的通讯设备;通讯点:两个需要通讯的网络设备
加密点不等于通讯点为隧道模式
第二种判断方法:两通讯设备中间的承载网络是全局可路由的是传输模式;若中间承载网络不是全局可以路由的是隧道模式。
IPSec两种模型
站点到站点模型和远程接入模型
IP层协议号:1->icmp;6->tcp;17->udp;47->gre;50->esp;51->ah
ESP介绍:协议号是50;不加密原始IP头部;提供私密性,数据完整性和数据源认证(HMAC);能够抵御重放攻击。
ESP包结构

SPI:一个32位的值,用来唯一标识一个安全关联(SA)用来处理这个包
SA(安全关联):双方所有协商的结果的集合
序列号:抵御重放攻击,收到相同序列号的包,将丢弃后面收到的包,只保留第一次收到该序列号的包
IV位:加密的时候会产生IV位,不加密时没有IV位
垫片(padding):标识垫片
padding length(垫片长度):用来补齐类似于DES的64bit加密数据
Report Handler(下一个头部)
ESP traller(esp尾部)
ESP认证块:96bit长度,整块从ESP头部到尾部的数据做哈希,得到的值放到ESP认证块中
AH介绍:协议号是51;完整性校验和和源认证;能防重放攻击;不能提供数据加密(严重问题);IP头部部分被认证,包括版本号,载荷长度,总长度,标示符,IP协议,源IP地址,目的IP地址,因为IP地址需要被认证,所以AH不能穿越NAT(严重问题)因为存在这两个问题,所以一般不会使用AH
AH包结构

IPSec两个数据库
SPD(安全策略数据库):SPD决定了什么流量将接受IPSec处理
SADB(安全关联数据库):SADB维护每一个SA(安全关联)包含的参数
SPD(安全策略数据库)
选择器选择感兴趣流加密,可以通过源IP,目的IP,名字,传输层协议,源目端口号来进行选择
选择流量后有三种处理方式:旁路,不管它;丢弃和IPSec加密。
SPD中每一个条目都与SA关联
SADB(安全关联数据库)
在SADB里面的每一个条目决定了一个特定SA的参数,当一个IPSec SA被创建,SADB更新所有关于这个SA的参数。当一个inbound IPSec数据包抵达,SADB基于外层IP头部的目的IP地址,SPI和IPSec封装协议(ESP/AH)检索数据库以获得相应的SA,然后用这个SA的相关参数处理这个inbound IPSec数据包。对于outbound IPSec数据包处理的相关参数,是由SPD相关联的SA来获取的。
示意图
SA包含的9大部分
- 序列号
- 序列号溢出位(序列号有32位,溢出之后重新开始)
- 防重放窗口,默认是64位
- SA的生存时间,分为软时间和硬时间,SA在到期前一段时间会申请新的KEY,在KEY生效到申请新KEY之间这段时间叫软时间
- 模式(传输模式和隧道模式)
- AH验证算法
- ESP验证算法
- ESP加密算法
- path MTU(在该方向最小的MTU,从A->B过程中最小的MTU)
什么是SA(安全关联)
SA是IPSec的一个基本组成部分,SA是SADB的一个条目,它包含双方关于IKE和IPSec已经协商完毕的安全信息
两种SA
IKE SA或者叫ISAKMP SA:1双向;2决定了IKE协议处理相关细节
IPSec SA:1单向的;2与封装协议相关;3决定了具体加密流量的处理
两种类型的SA都由IKE协议协商产生
加密第四节_IPSec基本理论的更多相关文章
- 大白话5分钟带你走进人工智能-第四节最大似然推导mse损失函数(深度解析最小二乘来源)(2)
第四节 最大似然推导mse损失函数(深度解析最小二乘来源)(2) 上一节我们说了极大似然的思想以及似然函数的意义,了解了要使模型最好的参数值就要使似然函数最大,同时损失函数(最小二乘)最小,留下了一 ...
- 第三百八十四节,Django+Xadmin打造上线标准的在线教育平台—路由映射与静态文件配置以及会员注册
第三百八十四节,Django+Xadmin打造上线标准的在线教育平台—路由映射与静态文件配置以及会员注册 基于类的路由映射 from django.conf.urls import url, incl ...
- 风炫安全WEB安全学习第二十四节课 利用XSS钓鱼攻击
风炫安全WEB安全学习第二十四节课 利用XSS钓鱼攻击 XSS钓鱼攻击 HTTP Basic Authentication认证 大家在登录网站的时候,大部分时候是通过一个表单提交登录信息. 但是有时候 ...
- android内部培训视频_第四节(1)_异步网络操作
第四节(1):异步网络操作 一.结合asyncTask下载网络图片 1.定义下载类,继承自asyncTask,参数分别为:String(url地址),Integer(刻度,本例没有用到),BitMa ...
- Centos7 install Openstack - (第四节)添加计算服务(Nova)
Centos7 install Openstack - (第四节)添加计算服务(Nova) 我的blog地址:http://www.cnblogs.com/caoguo 该文根据openstack官方 ...
- 第四节,Linux基础命令
第四节,Linux基础命令 命令是系统操作员对系统传入的指令,传入指令后回车,系统接收到指令做出相应的行为 1.查看用户位于系统什么位置 [pmd]检查操作用户位于系统的什么位置 命令 ...
- VUE2.0实现购物车和地址选配功能学习第四节
第四节 v-on实现金额动态计算 用¥金额 进行格式处理,可以使用原生js进行转换,但是在vuei,使用filter过滤器更加方便 注: 1.es6语法=>和import等 好处在于res参数后 ...
- delphi 线程教学第四节:多线程类的改进
第四节:多线程类的改进 1.需要改进的地方 a) 让线程类结束时不自动释放,以便符合 delphi 的用法.即 FreeOnTerminate:=false; b) 改造 Create 的参数 ...
- 大白话5分钟带你走进人工智能-第十四节过拟合解决手段L1和L2正则
第十四节过拟合解决手段L1和L2正则 第十三节中, ...
随机推荐
- DevOps能力是落地微服务的前提
在软件开发领域不存在银弹,当用一项新的技术或新的架构时一定要明白其背后的原理,确保把合适的技术应用在合适的项目上,而不是盲目跟风. 单体应用伸缩性差,而且随着应用规模的扩大,业务逻辑和开发部署过程都变 ...
- Ubuntu16.04下编译android6.0源码
http://blog.csdn.net/cnliwy/article/details/52189349 作为一名合格的android开发人员,怎么能不会编译android源码呢!一定要来一次说编译就 ...
- DNS 递归/迭代 原理
递归查询 递归:客户端只发一次请求,要求对方给出最终结果.一般客户机和服务器之间属递归查询,即当客户机向DNS服务器发出请求后,若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到结 ...
- php数组函数-array_reduce()
array_reduce()函数发送数组中的值到用户自定义函数,并返回一个字符串. 注:如果数组是空的或则初始化值未传递,该函数返回NULL array_reduce(array,myfunction ...
- 20145240 《Java程序设计》第四次实验报告
20145240 <Java程序设计>第四次实验报告 北京电子科技学院(BESTI)实验报告 课程:Java程序设计 班级:1452 指导教师:娄嘉鹏 实验日期:2016.04.26 实验 ...
- iOS_数据存取(一)
目录: 一.沙盒机制 二.用户偏好设置 三.归档 一.沙盒机制 每个iOS应⽤都有⾃己的应用沙盒(应⽤沙盒就是⽂件系统⽬录),与其他文件系统隔离.应⽤必须待在⾃己的沙盒⾥,其他应用不能访问该应用沙盒的 ...
- Windows Server 2008 架设 Web 服务器教程(图文详解)
Windows Server 2008 架设 Web 服务器教程(图文详解) 一.安装 IIS 7.0 : 虽然 Windows Server 2008 内置了I IS 7.0,但是默认情况下并没有安 ...
- MapReduce-二进制输入
Hadoop的MapReduce不只是可以处理文本信息,它还可以处理二进制格式的数据1. 关于SequenceFileInputFormat类Hadoop的顺序文件格式存储二进制的键/值对的序列.由于 ...
- PAT1022. Digital Library (30)
两个坑. 一个是一直用的malloc不行了.因为malloc分配的是固定大小,之前做的题没遇到过是因为一般string都不长(malloc分配string为24个Byte),这次直接报段错误,呢们了半 ...
- 微信开发之SSM环境搭建
首先,感谢大神的文章,地址:http://blog.csdn.net/zhshulin/article/details/37956105# 第一步:新建maven项目 如有需要,查看之前的文章:从配置 ...