身份认证
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
8/18/2018
19
基于口令的身份认证 1 2 3 4 5 本地简单口令认证 简单口令认证协议(PAP) 一次性口令(OTP) 质询/响应认证协议(CHAP) 口令的管理
8/18/2018
20
简单口令认证
• 本地简单口令认证
帐户 查询帐户/口令信息表 系统已知合法帐户 的密码 比较 口令
口令是否正确? 是 认证通过
• 口令序列(S/Key) • 时间同步(SecurID) • 挑战/应答(异步)
一次性口令认证(OTP)
• 口令序列(S/Key)
– Lamport, L., "Password Authentication with Insecure Communication", Communications of the ACM 24.11, November 1981,770-772. – Haller, N., "The S/KEY One-Time Password System", Proceedings of the ISOC Symposium on Network and Distributed System Security,February 1994, San Diego, CA – RFC1760 :The S/KEY One-Time Password System. 1995 – 口令为一个单向的前后相关的序列。系统只用记录第N个 口令。用户第i(1<i<N)个口令登录时,系统用单向算 法算出第i+1个口令与自己保存的第i+1个口令匹配,以 判断用户的合法性。
身份认证的方式(2/2)
• 本地多用户认证
– Login:如何管理口令
• 远程用户认证
– 一次性
• 访问资源或者服务之前进行认证
– 多次访问资源或者服务
• 身份,获得credential • 利用credential访问资源或者服务
身份认证基本途径
• 基于你所知道的(What you know )
Code
CHAP认证结果响应包格式
• Code
–1 –2 –3 –4
8/18/2018
Challenge Response Success Failure
33
质询/握手认证协议(CHAP)
Code Identifier Length ValueSize Value Name
CHAP口令请求和应答包格式 Code Identifier Length Message
8/18/2018 15
常用的身份认证技术/协议
• 口令认证技术
– 简单口令认证 – 质询/响应认证 – 一次性口令认证(OTP)
• Kerberos认证技术 • 基于公钥证书的身份认证 • 基于生物特征的身份认证
8/18/2018
16
回顾
• 网络安全中的“身份认证”
– 网络安全服务:数字身份 – 场景 – 方式(单向、双向、单点) – 本地与远程 – 模型 – 基本途径
– 口令管理的作用:
• 生成了合适的口令 • 口令更新 • 能够完全保密
8/18/2018
35
上讲回顾
• 基于口令的身份认证
8/18/2018
3
身份认证的概念
• 身份认证是计算机及网络系统识别操作者身份的 过程。
– 计算机只能识别用户的数字身份,所有对用户的授权 也是针对用户数字身份的授权 – 现实世界是一个真实的物理世界,每个人都拥有独一 无二的物理身份 保证操作者的物理身份与数字身份相对应
8/18/2018
4
身份认证的分类
网络与信息安全
身份认证
沈超 刘烃 自动化科学与技术系 西安交通大学电子与信息工程院 chaoshen@mail.xjtu.edu.cn tingliu@mail.xjtu.edu.cn
8/18/2018 1
身份认证的必要性?重要性?
• 身份认证的作用是判别用户的身份:
– 由计算机的访问监视器根据用户的身份和授权决定用 户能够访问的资源 – 保障信息系统安全的第一道关卡
一次性口令认证(OTP) • 时间同步(RSA SecurID)
– 以用户登录时间作为随机因子 – 登录密码=HASH(用户名+密码+时间) – 要求通信双方的时间准确度高
一次性口令认证(OTP)
一次性口令认证(OTP)
•
挑战/应答(异步):
– 用户要求登录 – 系统产生一个随机数(Challenge)发送给用户 – 用户通过口令卡(用某种单向算法)将自己的口令和随 机混合起来产生一个新的一次性口令发给系统 – 系统用同样的方法来做验算,即可验证用户身份 ID challenge
passwd
加密
$%@&)*=-~`^,{
解密
8/18/2018
9
身份认证的方式(1/2)
• 单向认证
– 只有通信的一方认证另一方的身份 ,而没有反向的认证过程
• 双向认证
– 用于通信双方的相互认证 – 认证的同时可以协商会话密钥
• 单点认证(Single Sign-On)
– 用户只需要一次认证操作就可以访 问多种服务
• 抵抗被动的威胁(窃听),口令不在网上 明文传输
sniffer 进行下列网络服务的身份认证时, 口令传输哪些是明文传输,哪些是 源 目的 加密传输:
Telnet,FTP,SMTP,SSH
8/18/2018 7
Wireshark抓包验证telnet明文传输密码
8/18/2018
8
身份认证的需求(2/2) • 抵抗主动的威胁,比如阻断、伪造、重放 ,网络上传输的认证信息不可重用
OK / Disconnect
s
MAC’=H(R,K) 比较MAC’和MAC
MAC的计算可以基于Hash算, 对称密钥算法,公开密钥算法
8/18/2018 32
质询/握手认证协议(CHAP)
Code Identifier ValueValue Name Size CHAP口令请求和应答包格式 Length Identifier Length Message
• OTP: One Time Password
– 系统在用户登录时给用户提供一个随机数,用户将 这个随机数送入口令发生器,口令发生器以用户的 密钥对随机数加密,然后用户再将口令发生器输出 的加密口令送入认证系统。认证系统再进行同样方 法计算出一个结果,比较两个结果决定是否该身份 有效。 – 动态口令
• 身份认证系统一旦被攻破:
– 系统的所有安全措施将形同虚设
– 黑客攻击的首要目标往往就是身份认证系统
8/18/2018
2
提纲
1. 身份认证技术概述 2. 基于口令的身份认证 3. Kerberos 身份认证协议 4. 基于X.509的身份认证 5. 基于生物特征的身份认证 6. Windows系统身份认证设计
PAP请求包格式 Code Identifier Length MsgLength Message
PAP应答包格式
• Code –1 –2 –3
Authenticate-Request Authenticate-Ack Authenticate-Nak
简单口令认证
Peer-ID Code Identifier Length Length Password Peer-ID Length Password
否 认证没通过
简单口令认证 • Windows本地登录认证
Winlogon
GINA
LSA
msv1_0
SAM
简单口令认证 • Linux本地登录认证
帐户 查询/etc/passwd 合法帐户?
密码 否
加密算法(Hash) 查询/etc/shadow 密码正确? 是 认证通过 否
ห้องสมุดไป่ตู้
退出
简单口令认证协议
Know Have Be
8/18/2018
17
提纲
1. 身份认证技术概述 2. 基于口令的身份认证 3. Kerberos 身份认证协议 4. 基于X.509的身份认证 5. 基于生物特征的身份认证 6. Windows系统身份认证设计
8/18/2018
18
安全口令认证系统设计内容
• 口令传输 • 口令验证
B
1. AB: (IDA||N1) 2. BA: EKab[Ks,IDB,f(N1),N2)] 3. AB: EKs[f(N2)] 这里的f函数为某个确定的运算,比如f(x)=x+1
8/18/2018
14
身份认证的基本模型
• 假设A和B要进行通讯,A和B与KDC各有一个共享密 钥Ka和Kb, 如何利用这两个密钥进行认证,并且 商定一个会话密钥Ks 会话密钥Ks
• 用户与主机之间的认证 – 认证人的身份
– 单机/网络环境下的身份认证 – 计算机验证人的身份:你是否是你声称的那个人?
• 主机与主机之间的认证 – 通信的初始认证握手
– 网络环境下的身份认证 – 计算机验证计算机
8/18/2018
5
当前计算环境中的什么场景会用到身份认证?
• 操作系统登录
– Windows – Unix – Linux
我是A,我 想和B通讯 KDC ,由A送给B 的认证信息
A
Ka
我把必要的 信息告诉你
Kb
B
我把消息给你,如果 你是B,你就可以解开
1. AKDC: (IDA||IDB||N1) 2. KDCA: EKa[Ks||IDB||N1||EKb(Ks,IDA)] 3. AB: EKb(Ks,IDA)||EKs(M)
• 网络接入服务
– Internet – 校园网 – 企业内部网
• 远程服务登录
– – – –
8/18/2018
• 在线交易
– 网上银行 – 电子证券 – 电子商务
Telnet FTP Email VPN
6
身份认证的需求(1/2) • 唯一的身份标识(ID):
– uid,uid@domain – E.g., Email = dhx@cernet.edu.cn
Pass phrase + challenge Token
Server
OTP
OTP
OTP
质询/握手认证协议(CHAP)
• Challenge and Response Handshake Protocol: RFC1994 • 三次握手认证
c
Login ,IDc IDc, R MAC=H(R,K) IDc, MAC
• PAP(Password Authentication Protocol):
– 口令认证协议 – 两次握手验证过程 – 用户名和密码以明文(不加密的)形式发送到远程访问 服务器
请求信息(用户名,密码)
客户端 (Client) 验证结果(Ack/Nak)
服务器端 (Server)
简单口令认证
Peer-ID Code Identifier Length Length Password Peer-ID Length Password
交换AI 申请AI
验证AI
申请AI
8/18/2018
验证AI
13
身份认证的基本模型
• 假设A和B要进行通讯,A和B有一个共享的密钥 Kab,如何利用这个密钥进行认证,并且商定一个 会话密钥Ks 我是A
A
好的,我用它 试试,可我怎 么知道你是B呢 Kab
告诉你Ks, 以后就用它, 别让别人知道 如果你知道Kab, 那么你就知道Ks, 我就知道你是A
PAP请求包格式 Code Identifier Length
MsgLength
Message
PAP应答包格式
• PAP简单且易于实现。 • PAP存在很大的安全问题,用户的用户名和密码是 以明码的方式进行传送的,数据在从用户端发出 到认证方接收到的整个过程中毫无遮拦的暴露在 线路上面。
一次性口令认证(OTP)
CHAP认证结果响应包格式
• CHAP对PAP进行了改进,不再直接通过链路 发送明文口令,而是使用挑战口令以哈希 算法对口令进行加密,安全性比PAP高。
8/18/2018 34
口令管理
• 口令管理
– 口令属于“他知道什么”这种方式,容易被窃取。 – 口令的错误使用:
• 选择一些很容易猜到的口令; • 把口令告诉别人; • 把口令写在一个贴条上并把它贴在键盘旁边。
– 知识、口令、密码
• 基于你所拥有的(What you have )
– 身份证、信用卡、钥匙、智能卡、令牌、私钥 等
• 基于你的个人特征(What you are)
– 指纹,笔迹,声音,手型,脸型,视网膜,虹 膜
• 双因素、多因素认证
8/18/2018 12
身份认证的基本模型
• • • • 申请者(Claimant) 验证者(Verifier) 认证信息AI(Authentication Information) 可信第三方(Trusted Third Party)