网络/协议
IPsec(IP Security)是IETF制定的三层隧道加密协议,它为Internet上传输的数据提供了高质量的、可互操作的、基于密码学的安全保证。特定的通信方之间在IP层通过加密与数据源认证等方式,提供了以下的安全服务:
数据机密性(Confidentiality):IPsec发送方在通过网络传输包前对包进行加密。
数据完整性(Data Integrity):IPsec接收方对发送方发送来的包进行认证,以确保数据在传输过程中没有被篡改。
数据来源认证(Data Authentication):IPsec在接收端可以认证发送IPsec报文的发送端是否合法。
防重放(Anti-Replay):IPsec接收方可检测并拒绝接收过时或重复的报文。
IPsec具有以下优点:
支持IKE(Internet Key Exchange,因特网密钥交换),可实现密钥的自动协商功能,减少了密钥协商的开销。可以通过IKE建立和维护SA的服务,简化了IPsec的使用和管理。
所有使用IP协议进行数据传输的应用系统和服务都可以使用IPsec,而不必对这些应用系统和服务本身做任何修改。
对数据的加密是以数据包为单位的,而不是以整个数据流为单位,这不仅灵活而且有助于进一步提高IP数据包的安全性,可以有效防范网络攻击。
IPSec的目标
l 为IPv6和IPv6提供具有较强的互操作能力
l 高质量的基于密码的安全
l 在IP层实现多种安全服务,包括:访问控制,无连接完整性,数据源验证,抗重播,机密性和有限的业务流机密性
IPSec安全体系内容
验证头部AH:
为IP包提供数据完整性校验和身份认证功能;
验证算法由SA指定;
认证的范围:整个包。
封装安全载荷ESP:
提供机密性,数据源验证,抗重播以及数据完整性等安全服务;
加密算法和身份验证方法均有SA指定。
用于两种模式:传输模式和隧道模式
AH头格式
AH传输模式
AH隧道模式
AH处理过程
1) 对于发出去的包的处理构造AH
l 创建一个外出SA(手工或通过IKE)
l 产生序列好
l 填充AH头的各字段
l 计算ICV(Integrity Check Value完整性检验值)
内容包括:IP头中部分域,AH自身,上层协议数据
l AH头中的”下一头部“置为原IP包头中的”协议“字段的值,原IP包头的”协议字段置为51(代表AH)
2) 对于接受到的包处理:
l 分片装配
l 查找SA
依据:目标IP地址,AH协议,SPI
l 检查序列号
l ICV检查
1) 对出发出去的包的处理
l 查找SA
l 加密
l 封装必要的数据,放到payload data域中,不同的模式,封装数据的范围不同
l 增加必要的padding数据
l 加密操作
l 验证
l 计算ICV 注意:针对加密后的数据进行计算
2) 对于接受到的包的处理
l 分片装配
l 查找SA
依据:目标IP地址,ESP协议,SPI
l 检查序列号(可选,针对重放攻击)
使用一个滑动串口来检查序列号的重放
l ICV检查
l 解密
根据SA中指定的算法和迷失,参数,对于被加密部分的数据进行解密
去掉padding
重构原始的IP包
SA(Security Association)安全联盟
l SA是单向的(无法反推)
l SA是“协议相关”的(与协议对应)
l 每个SA通过三个参数来标志,《spi,dst(src),protocol》
安全参数索引SPI(Security Parameters Index)
对方IP地址
安全协议标识:AH or ESP
l SA与IPSec系统中实现的两个数据库有关
安全策略数据库(SPD)
安全关联数据库(SAD)
密钥管理(Key Management)
l ISAKMP定义了密钥管理框架。ISAKMP与IKE一样,IKE是高级版本。
l IKE是母线真是确定用于IPSec的密钥交换协议。
ISAKMP参考RFC2308文档,IKE协议参考RFC2409文档。
第一阶段:建立起ISAKMP SA —— IKE SA
双方(例如ISAKMP Sservers)商定如何保护以后的通讯,通信双方建立一个已通过身份鉴别和安全保护的通道;
此SA将用于保护后表的protocol SA的协商过程。
第二阶段:建立起针对其他安全协议的SA —— IPSec SA
这个阶段可以建立多个SA;
此SA将被相应的安全协议用于博阿虎数据或者消息的交换。
IP安全协议:AH,ESP
数据加密标准:DES,3DES
公共密钥密码协议:Diffe-Hellman(D-H)
散列算法:MD5,SHA-1
公钥加密算法:RSA
Internet密钥交换:IKE
证书授权中心:CA
全部0条评论
快来发表一下你的评论吧 !