考试大纲
- 掌握安全协议的概念
- 掌握Kerberose协议
- 掌握TLS和SSL协议
- 身份认证协议——一次性口令认证,加“盐”的认证系统、PAP、CHAP等
一、协议安全基础
安全协议:
在消息交换和处理过程中使用的若干密码算法的协议
二、安全协议分类
1.按照协议目的分类
- 密钥交换协议
1.密钥传输协议:RPC
2.密钥协商协议:DH
- 认证协议
包括:实体认证、消息认证、数据起源认证和消息目的认证
单向认证协议
双向认证协议 - 认证与密钥交换协议
站间(STS)协议
- 电子商务协议:
除了一般协议要求的机密性、完整性、不可抵赖性之外,还强调公平性、匿名性
SET协议
2.按照是否需要可信第三方
- 仲裁协议(借助可信第三方/仲裁者)
NSSK协议
- 裁决协议(出现争议,裁决人才参与)
- 自动执行协议(不需要第三方)
二、协议安全协议
协议不安全根本原因:
环境复杂性,存在协议攻击者
公认较好的攻击者模型:Dolev-Yao
协议缺陷及其原因:
1.基本协议缺陷
2.口令/密码设置缺陷
3.陈旧消息缺陷(协议设计未考虑时效性,易重放攻击*)
4.并行会话缺陷(协议设计缺乏多个协议并行的考虑)
5.内部协议缺陷(协议参与者不能完成必须动作)
6.密码系统缺陷(密码算法不安全)
NSSK协议中的消息重放攻击
消息重放对策:
1.挑战-应答机制(发送挑战值)
2.时戳机制(对比接收时间和发送时间差值,只能由消息发送者提供)
3.序列号机制
安全协议设计的基本原则:
1.消息独立性原则(消息含义一目了然)
2.消息前提准确原则(明确指出所依赖条件)
3.协议主题身份标识原则
4.加密目的明确原则(明确加密的作用和目的)
5.签名原则(一般原则:先加密后签名)
6.随机数使用原则
7.随机数随机性原则
8.时戳使用原则(全局同步)
9.密钥新鲜性原则
10.编码原则(明确说明使用的编码方法)
11.信任原则(依赖于安全策略判断,而不是逻辑)
三、认证协议
1.用户口令认证协议PAP
用于向点到点连接(PPP)服务器证明自己身份的协议,仅初期
2.挑战-握手认证协议CHAP
同上,但也可以再次认证
3.Kerberos认证协议
认证步骤:
1.认证服务交换
2.票据许可服务交换
3.用户与服务器交换
Kerberos的跨域认证
4.X.509认证协议
应用:
PEM、SSL、SET、IPSec
认证协议:
- 单向认证协议
- 双向认证协议
- 三向认证协议
四、电子商务及其安全协议
1.概述
分类:
- 按活动内容
- 按是否涉及支付
- 按涉及的交易实体
2.设计原则
1.公平性
2.不可否认性
3.可追究性
4.匿名性
3.安全电子商务交易SET协议
安全性体现:
1.认证:数字证书+数字签名
2.数据完整性
3.消息私密性:对称密码算法,公钥密码算法
SET协议中的实体:
- 持卡人
- 商家
- 发卡行
- 收单行(处理付款授权和付款结算)
- 支付网关(第三方的一套设备)
- 认证中心
SET协议中的密码算法
使用方法:
- DES:数据加密
- RSA:身份认证、密钥交换、数字签名
- SHA1和HMAC-SHA1:生成摘要
算法:
1.数字信封:保证数据私密性
2.双重数字签名:持卡人对订单信息和支付信息同时签名
交易流程
1.购买请求
2.支付请求
3.付款结算
SET协议与SSL协议的区别
1.认证方面:早期SSL没提供商家身份认证,不能实现多方认证
2.安全方面:SET规范了整个商务流程;SSL只对持卡人与商家的信息交换进行加密
3.网络层协议方面:SSL基于传输层;SET位于应用层
4.应用领域方面:SSL和Web一起工作;SET为信用卡交易提供保障