第4章 身份鉴别

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
访问不同应用系统时避免在鉴别服务器重复
登录,实现单点登录(Single Sign On, SSO) 便于跨域登录!
Windows域(Domain)的登录鉴别
Windows系统域是一个由网络和计算设备互联 构成的一个逻辑安全区域 Windows 2000以前,域登录采用NT局域网管 理器(NT LAN Manager,简称NTLM), NTLM 身份鉴别采用口令的挑战-响应方式 Windows 2000以后,采用域控制器(Domain Controller,DC),DC身份鉴别采用Kerberos 以前Windows的域控制器与活动目录(Active Directory,AD)是分离的,AD用于存放用户信 息,现在域控制器已集成到活动目录中
1 2
…… 165 166 ……
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
基于时间的动态口令身份鉴别
请求访问 要求身份鉴别 动态口令令牌 种子密钥 动态口令 服务器
应用系统
种子密钥
基于时间的动态口令身份鉴别
应用系统
动态口令令牌 种子密钥 动态口令令牌用当前时刻对应的时间段所 对应的编号和种子密钥采用单向不可逆函 数(如散列函数)生成一个字节串,并将字节 串转化为可显示的字符,即动态口令 动态口令 服务器 种子密钥
IDC:用户C的标识(用户名) IDtgs :TGS的标识 TS1 :时间戳1 kc,tgs:AS生成的用户C和TGS间的随机会话密钥 TS2 :时间戳2 Lifetime2:票据Tickettgs的有效时间 Tickettgs:访问TGS的票据,有效期内可重复用 Tickettgs =EK (kc,tgs || IDc || ADc || IDtgs || TS2 || Lifetime2)
动态口令 服务器 种子密钥
基于时间的动态口令身份鉴别
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
动态口令服务器利用用户的种子密钥和同 样的方式生成动态口令,并比较待验证的 动态口令和自己生成的动态口令是否相同
基于时间的动态口令身份鉴别
应用系统
动态口令令牌 种子密钥
返回验证结果 动态口令 服务器 种子密钥
基于挑战码的动态口令生成
应用系统
动态口令令牌 种子密钥 动态口令令牌用返回的随机字串、种子密钥 和单向不可逆函数(如散列函数)生成一个字 节串,并将字节串转化为可显示的字符,即 动态口令 动态口令 服务器 种子密钥
基于挑战码的动态口令生成
用户输入用户名/动 态口令到登录客户端 应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
基于挑战码的动态口令生成
提交用户名/动态口令
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
基于挑战码的动态口令生成
动态口令令牌 种子密钥
请求动态口令验证
请求中包含返回 给用户的随机串 动态口令 服务器 种子密钥
基于挑战码的动态口令生成
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
基于时间的动态口令身份鉴别
拒绝或允许用户访问
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
基于时间的动态口令的时间同步问题
动态口令令牌与动态口令服务需尽可能的时
间同步 无法保证完全同步,动态口令服务在验证口 令不成功时,需要在误差范围内考虑可能的 备选时间段序号
基于挑战码的动态口令生成
b
AS
生成ks
比较N1
Ek (ks || IDA) b
B 用kb解密获 得 ks
Ek (N2) s
用ks解密获 得 N2
Ek(f(N2)) s
拒绝或允许连接
用ks解密f(N2) 与自己计算 的f(N2)比较
Kerberos身份鉴别系统
密钥分发中心 Key Distribution Center
KDC
手机动态口令身份鉴别
应用系统
用户端
提交用户名请求登录 返回随机码到用户手机
用户名/ 用户手机号
用户手机接 收随机码
提交用户名、随机码
允许或拒绝用户访问
用之前返 回的随机 比较
动态口令的安全性
比静态口令安全 基于时间的动态口令不能抵御重播攻击 无法抵御中间人攻击 无法抵御用户端的木马拦截
v
Kerberos协议交互过程
用户C
Ticketv || Authenticator Ek (TS4+1) c,v 服务器V
Ticketv:访问服务器V的票据 Authenticator:用户端生成,用于请求验证
Authenticator =Ek (IDc || ADc || TS5)
c,v
为什么要引入TGS?
基于挑战-应答方式的对称密钥鉴别协议-加密
A、B共享密钥k
A 请求建立连接
B
返回随机串
用k对随机串 加密
提交加密的随机串 用k对加密的 随机串解密
比较之前返回的随 机串和解密获得随 机串是否一致
允许或拒绝连接
基于挑战-应答方式的对称密钥鉴别协议-签名
A、B共享密钥k
A 请求建立连接
B
返回随机串
用k对随机串 HMAC签名
鉴别服务器 Authentication Service 身份鉴别获得访 问TGS的票据 用户 访问TGS获得访问 应用服务器的票据 密钥库
AS
TGS
票据签发服务 Ticket Grant Service 应用服务器
C
使用票据访问应用服务器
V
Kerberos协议交互过程
用户C
IDC || IDtgs || TS1 Ek (kc,tgs || IDtgs || TS2 || Lifetime2 || Tickettgs) c 生成kc,tgs AS
a
用私钥KSa 解密获得Rb
EKUb (Rb) 用私钥KSb 解密获得Rb 允许或拒绝连接
比较Rb
基于加密的公钥双向身份鉴别协议
A E KU (IDa || Ra)

B 用KSb解密 获得IDa , Ra
E KU (Ra || Rb) 用KSa解密获得 R a, R b 比较Ra EKUb (Rb)
提交HMAC的随机串 用k对随机串 HMAC签名
比较接收到随机串 的HMAC与自己计 算的HMAC是否一 致
允许或拒绝连接
Needham-Schroeder协议
Authentication Server
AS
生成 A
会话Ks
B
Needham-Schroeder协议交互过程
A IDA || IDB || N1 Ek (ks || N1 || Ek (ks || IDA)) a b 解密获得ks, N1 和Ek (ks || IDA)
第4章 身份鉴别
身份鉴别(Authentication)
解决你是谁的问题 身份鉴别包括身份标识(Identification)和身
份鉴别(Authentication)两部分 身份标识,即确定你是谁并签发一个身份凭 证,如身份证、用户名/口令、数字证书 身份鉴别,即根据你提交的身份凭证,验证 确定你就是你声称的人,而不是假冒者 不同的身份标识手段,确定了不同的身份鉴 别方法、技术
基于时间的动态口令身份鉴别
用户输入用户名/动 态口令到登录客端 应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
基于时间的动态口令身份鉴别
提交用户名/动态口令
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
基于时间的动态口令身份鉴别
应用系统
动态口令令牌 种子密钥
请求动态口令验证
E KS (IDa || Rb)
a
允许或拒绝连接
比较Rb,用 KUa验证A签 名有效性
公钥身份鉴别协议的问题
如何获取他人的公钥并确保公钥属于声称的
人?
PKI/CA安全体系
Key Infrastructure),公钥基础设 施,一个安全技术体系和一个安全信任体系 PKI的核心是CA(Certification Authority, 认证中心),由CA签发和发布证明最终实体 (End-Entity)拥有公钥的数字证书(Digital Certificate) 数字证书的目的是将公钥与用户或实体绑定 ,并限定公钥的用途,其格式是X509 数字证书由CA证书认证机构通过CA证书认 证系统签发

基于公钥密码技术的身份鉴别协议
基于加密的公钥单向身份鉴别协议 基于加密的公钥双向身份鉴别协议
(Needham-Schroeder) 基于签名的单向公钥身份鉴别协议 基于签名的双向公钥身份鉴别协议 基于CA数字签名的身份鉴别协议
基于加密的公钥单向身份鉴别协议
A IDa B
EKU (Rb)
a
KSb解密 获得Rb 允许或拒绝连接 比较Rb
基于签名的公钥单向身份鉴别协议
A
IDa B
Rb
E KS (IDa || Rb)
a
允许或拒绝连接
比较Rb,用 KUa验证A签 名有效性
基于签名的公钥双向身份鉴别协议
A
IDa || Ra B
E KS (Ra || IDa) || Rb
b
比较Ra,用KUb 验证B签名有效性
基于挑战码的动态口令
手机一次性口令
动态口令系统的组成
应用系统
动态口令令牌 动态口令 服务器
动态口令系统的组成
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥 动态口令令牌与动态口令服务器之间共享 一个秘密,称为动态口令种子密钥
基于时间的动态口令身份鉴别
从某个参考时间点开始,将时间分成一个个的时间段,如按1秒、 15秒、30秒,并给每个时间段编号
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
基于挑战码的动态口令生成
请求登录 要求身份鉴别并 返回随机字串 动态口令令牌 种子密钥 动态口令 服务器
应用系统
种子密钥
基于挑战码的动态口令生成
应用系统
动态口令令牌 种子密钥 用户将返回的随机串字 输入到动态口令令牌 动态口令 服务器 种子密钥
tgs
ADc:用户C的网络地址
Kerberos协议交互过程
用户C
IDv || Tickettgs || Authenticator E (k || IDv || TS4 || Ticketv) kc,tgs c,v TGS 生成kc,v
IDv:服务器V的标识 Authenticator:用户端生成,用于请求验证
如个人的生日、电话,易于被猜测、破解, 如通过社会工程学破解 易于被木马监听 若口令采用明文方式传输,则易于被截获 若口令以明文保存在数据库中,则容易遭受 来自外部和内部的攻击、窃取
静态口令的特点
优点

操作使用简单 用户不需要额外装置
缺点
不安全
动态口令身份鉴别
基于时间的动态口令
动态口令的攻击 ,如盛大密宝遭到攻击,造成用户上百万的 损失
动态口令的特点
优点
比普通口令安全性高 用户操作使用方便
缺点
需要额外系统和装置,费用较高 挑战码模式需要用户输入挑战码(随机字符串)的
额外操作
基于密码技术的身份鉴别
基于对称密钥的身份鉴别方案
基于挑战-应答方式的鉴别协议 Needham-Schroeder协议 Kerberos身份鉴别系统
动态口令服务器使用用户的种子密钥和返 回到用户的随机串用同样的方式生成动态 口令,并比较待验证的动态口令和自己生 成的动态口令是否相同
基于挑战码的动态口令生成
应用系统
动态口令令牌 种子密钥
返回验证结果 动态口令 服务器 种子密钥
基于挑战码的动态口令生成Baidu Nhomakorabea
拒绝或允许用户访问
应用系统
动态口令令牌 种子密钥 动态口令 服务器 种子密钥
常用的身份鉴别技术
用户名/口令
静态口令 普通方式 挑战、响应方式 动态口令
密码技术
对称密钥 非对称密钥
生物特征
指纹、虹膜、面像
用户名/口令身份鉴别
普通静态口令身份鉴别
用户名/口令
用户名/口令
普通静态口令身份鉴别
用户名/口令散列值
用户名/口令散列值
挑战-响应式静态口令身份鉴别
用户名/口令
挑战-响应式静态口令身份鉴别
用户端
请求登录 返回随机串 用户名/口令
用随机串和口 令生成散列值 (HMAC)
提交用户名及散列值 从数据库获取 用户口令 用之前返回的随机 串和获取的口令生 成散列值,比较是 否相同
允许或拒绝用户访问
静态口令的安全性
口令复杂难记忆,用户常采用简单的口令,
身份鉴别中验证的用户特定信息
用户所知道的特定信息,如口令、密码 用户所拥有或持有的特定信息,如动态口令
令牌、USB Key 用户所具有的个人特征,如指纹、虹膜、面 像
身份鉴别技术、方案或协议
身份鉴别技术,指最基本、基础的技术 身份鉴别方案或协议,指在技术上构建的具
体方式和流程
Authenticator =Ek
c,tgs
(IDc || ADc || TS3)
kc,v:TGS生成的用户C和服务器V间的随机会话密钥 TS4 :时间戳4 Ticketv:访问服务器V的票据 Ticketv =E k (kc,v || IDc || ADc || IDv || TS4 || Lifetime4)
相关文档
最新文档