密码协议详解
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
协议7.1 简单口令身份认证协议 协议7.2 动态口令身份认证协议 协议7.3 基于口令的智能卡认证协议
双向口令身份认证协议
协议7.4 基于Hash函数的双向口令身份认证协议 协议7.5 基于对称密码的双向认证协议 协议7.6 基于非对称密码的双向认证协议
11
第7章
7.1 7.2 7.3 7.4 7.5
安全性基础 攻击者只能得到a, p , YA , YB,要想求出K ,必 须先求出XA或XB ,这是离散对数问题
21
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Diffie-Hellman密钥交换协议 密钥交换协议(DH-KEP) 密钥交换协议 例子:设p=97,a=5 (1) A选择XA=36,计算YA=aXA=536=50 mod 97, 将YA发送给B. Y B. (2) B选择XB=58,计算YB=aXB=558=44 mod 97, 将YB发送给B. (3) A计算共享密钥K=(YB)XA=4436=75 mod 97. (4) B计算共享密钥K=(YA)XB=5058=75 mod 97.
协议是有序的过程,每一步必须依次执行 协议至少需要两个参与者 通过执行协议必须能够完成某项任务
4
7.1
协议(Protocol) 特点
密码协议概述
协议的参与方必须了解协议,明确协议执行的所 有步骤 协议的参与方都承诺按协议步骤执行协议 协议必须清楚、完整,对每种可能的情况必须规 定明确、具体的动作
基本要求
17
7.3
协议步骤
密钥认证协议
基于对称密码技术的密钥认证协议 Denning改进协议:运用时间戳 改进协议: 改进协议 运用时间戳T
抑制重放攻击
如果发送者的时钟比接收者的时钟要快,攻击者就 可以从发送者窃听消息,并在以后当时间戳对接收 者来说成为当前时重放给接收者。
克服抑制重放攻击的方法 • 强制各方定期检查自己的时钟是否与KDC的时钟同
该协议可抵抗前两个协议可能遭受的攻击
19
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Diffie-Hellman密钥交换协议 密钥交换协议(DH-KEP) 密钥交换协议
协议步骤 • 公开参数:大素数 p的本原根 公开参数:大素数p, 的本原根 的本原根a • 共享密钥:K 共享密钥:
用户 A 随机选择 X A < p 计算 YA = a X A mod p 计算 K = YBX A mod p 用户 B 随机选择 X B < p 计算 YB = a X B mod p 计算 K = Y AX B mod p
8
第7章
7.1 7.2 7.3 7.4 7.5
密码协议
密码协议概述 实体认证协议 密钥认证协议 比特承诺协议 零知识证明与身份识别协议
9
7.2
实体认证协议
认证:一个实体向另一个实体证明某种声称的过程 认证协议:主要目标是确认某个主体的真实性,确 保信息的安全性 认证协议分类 消息认证协议:验证消息与其主体的一致性 实体认证协议:验证消息发送者所声称的身份 密钥认证协议(认证的密钥建立协议):生成、 获得加(解)密密钥
有效性 公平性 完整性
5
7.1
密码协议概述
密码协议(安全协议) 具有安全功能的协议——安全协议 安全协议的设计必须采用密码技术——密码协议 具体意义:密码协议是建立在密码体制基础上的 一种交互通信的协议,它运行在计算机通信网或 分布式系统中,借助于密码算法来达到安全功能 密码技术:随机数生成、加密/解密算法、Hash运算、 密码技术 数字签名等 安全功能:密钥建立、密钥分配、消息鉴别、身份 安全功能 认证 应用系统:电子选举、电子拍卖、公平电子交易等。 应用系统
16
7.3
协议步骤
密钥认证协议
基于对称密码技术的密钥认证协议 Denning改进协议:运用时间戳 改进协议: 改进协议 运用时间戳T
(1) A → KDC: IDA || IDB (2) KDC → A: EK A [ K s || IDB || T || EKB [ K S || T ]] (3) A → B: EKB [ K S || IDA || T ] (4) B → A: EKS [ N 2 ] (5) A → B: EKS [ f ( N 2 )]
20
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Diffie-Hellman密钥交换协议 密钥交换协议(DH-KEP) 密钥交换协议
协议步骤 • 公开参数:大素数 p的本原根 公开参数:大素数p, 的本原根 的本原根a • 共享密钥:K 共享密钥: 合理性证明
K = YBX A mod p = (a X B mod p ) X A mod p = a X B X A mod p = (a X A ) X B mod p = (a X A mod p ) X B mod p = YAX B mod p.
步。 • 采用临时随机数(nonce)技术
18
7.3
协议步骤
密钥认证协议
基于对称密码技术的密钥认证协议 KEHN改进协议 改进协议
(1) A → B: IDA || N A (2) B → KDC: IDB || N B || EKB [ IDA || N A || TB ] (3) KDC → A : EK A [ IDB || N A || KS || TB ] || EKB [ IDA || K S || TB ] || N B (4) A → B: EKB [ IDA || K S || TB ] || EKS [ N B ]
彭代渊 信息科学与技术学院 dypeng@swjtu.edu.cn 2009年12月 年 月
2
第7章
7.1 7.2 7.3 7.4 7.5
密码协议
密码协议概述 实体认证协议 密钥认证协议 比特承诺协议 零知识证明与身份识别协议
3
7.1
密码协议概述
协议(Protocol) 基本概念 两个或两个以上的参与者为完成某项特定任务 而采取的一系列步骤。 三层含义
14
7.3
密钥认证协议
基于对称密码技术的密钥认证协议 Needham-Schroeder 协议 密钥分配中心KDC (key distribution center)安全 密钥分配中心 安全 地分发一个会话密钥K 给用户A和 。 地分发一个会话密钥 s给用户 和B。
协议步骤
(1) A → KDC: IDA || IDB || N1 (2) KDC → A: EK A [ Ks || IDB || N1 || EKB [ K S || IDA ]] (3) A → B: EKB [ K S || IDA ] (4) B → A: EKS [ N 2 ] (5) A → B: EKS [ f ( N 2 )]
15
7.3
密钥认证协议
基于对称密码技术的密钥认证协议 Needham-Schroeder 协议
重放攻击 假定攻击方C已经掌握A和B之间一个旧的会话密钥, 且可以中途阻止第(4)步的执行
(1) A → KDC: IDA || IDB || N1 (2) KDC → A: EK A [ Ks || IDB || N1 || EKB [ K S || IDA ]] (3) A → B: EKB [ K S ' || IDA ] (4) B → A: EKS [ N 2 ] (5) A → B: EKS ' [ f ( N 2 )]
密码协议
密码协议概述 实体认证协议 密钥认证协议 比特承诺协议 零知识证明与身份识别协议
12
7.3
密钥认证协议
密钥认证协议:对通信主体A和B及建立的密钥K进 行认证 只有A、B(或可信第三方TTP)能够知道K A和B确认对方知道K A和B确认K是最新建立的
13
7.3
密钥认证协议
K
K
会话密钥K 会话密钥
29
7.4
比特承诺协议 比特承诺协议
安全比特承诺协议的直观描述 A 把比特b放入一个箱子,用一把只有用A自己的钥 匙才能开启的锁锁上这个箱子,然后把这个箱子交给 B;当时机成熟时,A把比特b和打开箱子的钥匙交给 B,B通过打开箱子可以验证比特b 的内容没有改动, 因为箱子在B的控制之下。
22
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Diffie-Hellman密钥交换协议 密钥交换协议(DH-KEP) 密钥交换协议
中间人攻击
A XA < p YA = a X A modp
YA YZ
Z XZ < p YZ = a X z modp
YZ YB
B XB < p YB = a X B modp
21世纪高等学校计算机规划教材
现代密码学
Modern Cryptography
作 者:何大可 彭代渊 唐小虎 何明星 梅其祥 出版社:人民邮电出版社 彭代渊 信息科学与技术学院 dypeng@swjtu.edu.cn 2009.9-2010.1
1
现代密码学
Modern Cryptography
第7章 密码协议
10
7.2
实体认证协议
身份认证协议:验证用户知道什么(如口令等)、 验证用户拥有什么(如IC卡等)或验证用户具有什 么特征(如指纹、掌纹、虹膜、DNA等) 身口令认证协议( PAP,Password Authentication Protocol):通过验证用户口令来进行身份认证 单向口令身份认证协议
四个主体:客户C,应用服务器V,认证服务器AS, 票证授予服务器TGS。认证服务器与票证授予服务器 又统称为密钥分配中心(KDC)。 详细步骤见教材
25
7.3
密钥认证协议
对协议的攻击类型 重放攻击(Replay Attacks) 重放攻击 重放攻击是指入侵者捕获以前协议运行或当前协议 运行中的消息用于对当前协议运行的攻击 已知密钥攻击( 已知密钥攻击(Known-key attack) 对手从用户以前用过的密钥确定新的密钥的攻击 伪装攻击( 伪装攻击(Impersonation attack) ) 对手扮演合法实体进行的攻击 字典攻击(Dictionary attack) 字典攻击 主要针对口令的一种按某种顺序进行搜索的攻击
K AZ = YZX A modp
K AZ = YAX Z modp K BZ = YBX Z modp
K ZB = YZX B modp
23
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 加密的密钥交换协议(EKE)(协议 协议7.11) 加密的密钥交换协议 协议 Kerberos 协议 (协议 协议7.12) 协议
26
7.3
密钥认证协议
对协议的攻击类型 交错攻击(Interleaving attack) 交错攻击 把前面一次或多次(或者并行)执行协议的信息有 选择地组合在一起所实施的攻击。 选择挑战攻击( 选择挑战攻击(Chosen-text attack) ) 在挑战应答协议中对手巧妙地选择挑战消息,试图 得到所需的信息。 反射攻击( 反射攻击(Reflection attack) ) 正在执行的协议中,一方把对方发送过来的消息再 发回给对方
27
第7章
7.1 7.2 7.3 7.4 7.5
密码协议
密码协议概述 实体认证协议 密钥认证协议 比特承诺协议 零知识证明与身份识别协议
28
7.4
比特承诺协议 比特承诺协议
股票预测大师问题 股票预测大师经常在讲座中给股民推荐股票,可股民 按照大师推荐买股票却常常赚不了钱,然而预测大师 却生意红火。为什么?因为预测大师没有对股民给出 一个明确的承诺 明确的承诺,尤其在股民选择股票买进时间和卖 明确的承诺 出时间上。往往在股民亏本后与预测大师论理时,预 测大师总可以用偷换预测的前提和条件(时间)来 “说服” 股民相信大师预测的正确性
主要目的是解决分布式网络环境下,客户访问网 络资源的安全认证问题。 实现用户与服务器之间的相互认证;向每个实体 证实另一个实体的身份;产生会话密钥,供客户 和服务器(或两个客户之间)使用。 V5于1994年作为RFC1510公布
24
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Kerberos 协议 (协议 协议7.12) 协议
6
百度文库.1
密码协议概述
密码协议分类—按协议执行的轮数分 2轮协议 3轮协议,……, n轮协议 密码协议分类—按协议功能分 身份认证协议 密钥分配协议 密钥协商协议 秘密共享协议 不经意传输协议,……
7
7.1
密码协议概述
密码协议分类—按协议应用目标分 选举协议 拍卖协议 支付协议,…… 密码协议分类—按协议的交互性分 交互协议 非交互协议 密码协议分类—按协议第三方性质分 仲裁协议 裁决协议 自动执行协议
双向口令身份认证协议
协议7.4 基于Hash函数的双向口令身份认证协议 协议7.5 基于对称密码的双向认证协议 协议7.6 基于非对称密码的双向认证协议
11
第7章
7.1 7.2 7.3 7.4 7.5
安全性基础 攻击者只能得到a, p , YA , YB,要想求出K ,必 须先求出XA或XB ,这是离散对数问题
21
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Diffie-Hellman密钥交换协议 密钥交换协议(DH-KEP) 密钥交换协议 例子:设p=97,a=5 (1) A选择XA=36,计算YA=aXA=536=50 mod 97, 将YA发送给B. Y B. (2) B选择XB=58,计算YB=aXB=558=44 mod 97, 将YB发送给B. (3) A计算共享密钥K=(YB)XA=4436=75 mod 97. (4) B计算共享密钥K=(YA)XB=5058=75 mod 97.
协议是有序的过程,每一步必须依次执行 协议至少需要两个参与者 通过执行协议必须能够完成某项任务
4
7.1
协议(Protocol) 特点
密码协议概述
协议的参与方必须了解协议,明确协议执行的所 有步骤 协议的参与方都承诺按协议步骤执行协议 协议必须清楚、完整,对每种可能的情况必须规 定明确、具体的动作
基本要求
17
7.3
协议步骤
密钥认证协议
基于对称密码技术的密钥认证协议 Denning改进协议:运用时间戳 改进协议: 改进协议 运用时间戳T
抑制重放攻击
如果发送者的时钟比接收者的时钟要快,攻击者就 可以从发送者窃听消息,并在以后当时间戳对接收 者来说成为当前时重放给接收者。
克服抑制重放攻击的方法 • 强制各方定期检查自己的时钟是否与KDC的时钟同
该协议可抵抗前两个协议可能遭受的攻击
19
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Diffie-Hellman密钥交换协议 密钥交换协议(DH-KEP) 密钥交换协议
协议步骤 • 公开参数:大素数 p的本原根 公开参数:大素数p, 的本原根 的本原根a • 共享密钥:K 共享密钥:
用户 A 随机选择 X A < p 计算 YA = a X A mod p 计算 K = YBX A mod p 用户 B 随机选择 X B < p 计算 YB = a X B mod p 计算 K = Y AX B mod p
8
第7章
7.1 7.2 7.3 7.4 7.5
密码协议
密码协议概述 实体认证协议 密钥认证协议 比特承诺协议 零知识证明与身份识别协议
9
7.2
实体认证协议
认证:一个实体向另一个实体证明某种声称的过程 认证协议:主要目标是确认某个主体的真实性,确 保信息的安全性 认证协议分类 消息认证协议:验证消息与其主体的一致性 实体认证协议:验证消息发送者所声称的身份 密钥认证协议(认证的密钥建立协议):生成、 获得加(解)密密钥
有效性 公平性 完整性
5
7.1
密码协议概述
密码协议(安全协议) 具有安全功能的协议——安全协议 安全协议的设计必须采用密码技术——密码协议 具体意义:密码协议是建立在密码体制基础上的 一种交互通信的协议,它运行在计算机通信网或 分布式系统中,借助于密码算法来达到安全功能 密码技术:随机数生成、加密/解密算法、Hash运算、 密码技术 数字签名等 安全功能:密钥建立、密钥分配、消息鉴别、身份 安全功能 认证 应用系统:电子选举、电子拍卖、公平电子交易等。 应用系统
16
7.3
协议步骤
密钥认证协议
基于对称密码技术的密钥认证协议 Denning改进协议:运用时间戳 改进协议: 改进协议 运用时间戳T
(1) A → KDC: IDA || IDB (2) KDC → A: EK A [ K s || IDB || T || EKB [ K S || T ]] (3) A → B: EKB [ K S || IDA || T ] (4) B → A: EKS [ N 2 ] (5) A → B: EKS [ f ( N 2 )]
20
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Diffie-Hellman密钥交换协议 密钥交换协议(DH-KEP) 密钥交换协议
协议步骤 • 公开参数:大素数 p的本原根 公开参数:大素数p, 的本原根 的本原根a • 共享密钥:K 共享密钥: 合理性证明
K = YBX A mod p = (a X B mod p ) X A mod p = a X B X A mod p = (a X A ) X B mod p = (a X A mod p ) X B mod p = YAX B mod p.
步。 • 采用临时随机数(nonce)技术
18
7.3
协议步骤
密钥认证协议
基于对称密码技术的密钥认证协议 KEHN改进协议 改进协议
(1) A → B: IDA || N A (2) B → KDC: IDB || N B || EKB [ IDA || N A || TB ] (3) KDC → A : EK A [ IDB || N A || KS || TB ] || EKB [ IDA || K S || TB ] || N B (4) A → B: EKB [ IDA || K S || TB ] || EKS [ N B ]
彭代渊 信息科学与技术学院 dypeng@swjtu.edu.cn 2009年12月 年 月
2
第7章
7.1 7.2 7.3 7.4 7.5
密码协议
密码协议概述 实体认证协议 密钥认证协议 比特承诺协议 零知识证明与身份识别协议
3
7.1
密码协议概述
协议(Protocol) 基本概念 两个或两个以上的参与者为完成某项特定任务 而采取的一系列步骤。 三层含义
14
7.3
密钥认证协议
基于对称密码技术的密钥认证协议 Needham-Schroeder 协议 密钥分配中心KDC (key distribution center)安全 密钥分配中心 安全 地分发一个会话密钥K 给用户A和 。 地分发一个会话密钥 s给用户 和B。
协议步骤
(1) A → KDC: IDA || IDB || N1 (2) KDC → A: EK A [ Ks || IDB || N1 || EKB [ K S || IDA ]] (3) A → B: EKB [ K S || IDA ] (4) B → A: EKS [ N 2 ] (5) A → B: EKS [ f ( N 2 )]
15
7.3
密钥认证协议
基于对称密码技术的密钥认证协议 Needham-Schroeder 协议
重放攻击 假定攻击方C已经掌握A和B之间一个旧的会话密钥, 且可以中途阻止第(4)步的执行
(1) A → KDC: IDA || IDB || N1 (2) KDC → A: EK A [ Ks || IDB || N1 || EKB [ K S || IDA ]] (3) A → B: EKB [ K S ' || IDA ] (4) B → A: EKS [ N 2 ] (5) A → B: EKS ' [ f ( N 2 )]
密码协议
密码协议概述 实体认证协议 密钥认证协议 比特承诺协议 零知识证明与身份识别协议
12
7.3
密钥认证协议
密钥认证协议:对通信主体A和B及建立的密钥K进 行认证 只有A、B(或可信第三方TTP)能够知道K A和B确认对方知道K A和B确认K是最新建立的
13
7.3
密钥认证协议
K
K
会话密钥K 会话密钥
29
7.4
比特承诺协议 比特承诺协议
安全比特承诺协议的直观描述 A 把比特b放入一个箱子,用一把只有用A自己的钥 匙才能开启的锁锁上这个箱子,然后把这个箱子交给 B;当时机成熟时,A把比特b和打开箱子的钥匙交给 B,B通过打开箱子可以验证比特b 的内容没有改动, 因为箱子在B的控制之下。
22
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Diffie-Hellman密钥交换协议 密钥交换协议(DH-KEP) 密钥交换协议
中间人攻击
A XA < p YA = a X A modp
YA YZ
Z XZ < p YZ = a X z modp
YZ YB
B XB < p YB = a X B modp
21世纪高等学校计算机规划教材
现代密码学
Modern Cryptography
作 者:何大可 彭代渊 唐小虎 何明星 梅其祥 出版社:人民邮电出版社 彭代渊 信息科学与技术学院 dypeng@swjtu.edu.cn 2009.9-2010.1
1
现代密码学
Modern Cryptography
第7章 密码协议
10
7.2
实体认证协议
身份认证协议:验证用户知道什么(如口令等)、 验证用户拥有什么(如IC卡等)或验证用户具有什 么特征(如指纹、掌纹、虹膜、DNA等) 身口令认证协议( PAP,Password Authentication Protocol):通过验证用户口令来进行身份认证 单向口令身份认证协议
四个主体:客户C,应用服务器V,认证服务器AS, 票证授予服务器TGS。认证服务器与票证授予服务器 又统称为密钥分配中心(KDC)。 详细步骤见教材
25
7.3
密钥认证协议
对协议的攻击类型 重放攻击(Replay Attacks) 重放攻击 重放攻击是指入侵者捕获以前协议运行或当前协议 运行中的消息用于对当前协议运行的攻击 已知密钥攻击( 已知密钥攻击(Known-key attack) 对手从用户以前用过的密钥确定新的密钥的攻击 伪装攻击( 伪装攻击(Impersonation attack) ) 对手扮演合法实体进行的攻击 字典攻击(Dictionary attack) 字典攻击 主要针对口令的一种按某种顺序进行搜索的攻击
K AZ = YZX A modp
K AZ = YAX Z modp K BZ = YBX Z modp
K ZB = YZX B modp
23
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 加密的密钥交换协议(EKE)(协议 协议7.11) 加密的密钥交换协议 协议 Kerberos 协议 (协议 协议7.12) 协议
26
7.3
密钥认证协议
对协议的攻击类型 交错攻击(Interleaving attack) 交错攻击 把前面一次或多次(或者并行)执行协议的信息有 选择地组合在一起所实施的攻击。 选择挑战攻击( 选择挑战攻击(Chosen-text attack) ) 在挑战应答协议中对手巧妙地选择挑战消息,试图 得到所需的信息。 反射攻击( 反射攻击(Reflection attack) ) 正在执行的协议中,一方把对方发送过来的消息再 发回给对方
27
第7章
7.1 7.2 7.3 7.4 7.5
密码协议
密码协议概述 实体认证协议 密钥认证协议 比特承诺协议 零知识证明与身份识别协议
28
7.4
比特承诺协议 比特承诺协议
股票预测大师问题 股票预测大师经常在讲座中给股民推荐股票,可股民 按照大师推荐买股票却常常赚不了钱,然而预测大师 却生意红火。为什么?因为预测大师没有对股民给出 一个明确的承诺 明确的承诺,尤其在股民选择股票买进时间和卖 明确的承诺 出时间上。往往在股民亏本后与预测大师论理时,预 测大师总可以用偷换预测的前提和条件(时间)来 “说服” 股民相信大师预测的正确性
主要目的是解决分布式网络环境下,客户访问网 络资源的安全认证问题。 实现用户与服务器之间的相互认证;向每个实体 证实另一个实体的身份;产生会话密钥,供客户 和服务器(或两个客户之间)使用。 V5于1994年作为RFC1510公布
24
7.3
密钥认证协议
基于非对称密码技术的密钥认证协议 Kerberos 协议 (协议 协议7.12) 协议
6
百度文库.1
密码协议概述
密码协议分类—按协议执行的轮数分 2轮协议 3轮协议,……, n轮协议 密码协议分类—按协议功能分 身份认证协议 密钥分配协议 密钥协商协议 秘密共享协议 不经意传输协议,……
7
7.1
密码协议概述
密码协议分类—按协议应用目标分 选举协议 拍卖协议 支付协议,…… 密码协议分类—按协议的交互性分 交互协议 非交互协议 密码协议分类—按协议第三方性质分 仲裁协议 裁决协议 自动执行协议