第3章身份认证技术-概述及常见方式
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本节主题
身份认证概述
身份认证概念 身份认证分类 身份认证面临的安全攻击
身份认证概念——信息安全系统基本结构
安全管理员 身份认证
用 户
授权数据库 访问监视器
访问控制 资源
审计
一个基本的信息安全系统至少应包括身份认证、访问控制 和审计功能。
身份认证是最基本的安全服务,访问控制和审计服务的实 现都要依赖于身份认证系统所识别的用户身份。
口令传输及存储方案实例
美国云存储服务商Dropbox口令存 储方案(2016.9数据)
《How Dropbox securely stores your passwords》 (https://dropbox.tech/security/howdropbox-securely-stores-yourpasswords )
常见的身份认证方式
基于口令认证 基于智能卡认证 基于生物特征认证
常见的身份认证方式
基于口令认证 基于智能卡认证 基于生物特征认证
基于口令的认证机制
身份认证最常用的方法
例如:系统登录
使用二元组信息来表示某用户的身份
<用户账号(用户 ID),口令(Password)>
用户
基于口令的认证机制
服务器
验 证 验证用户ID 通 过 与口令
UID 张三 liweiy guli yuhaibo
Password 123*abc
8990 8668 8965
Permission R
RW RE R WE
口令传输及存储方案1(示意图)——最简单的口令方案
声称者
psw’
ID
网络传输
psw’ ID
验证者 ID psw
的应答值
二者比对,进行认证
挑战应答认证实例
工行电子密码器
具有内置电源和密码生成芯片、外带显示屏和数字键盘的硬件介质 将交易页面显示的数字输入到密码器中,点击确认键后获取6位动态
密码,并在1分钟内将该密码输入相应位置完成交易
通过手机获取验证码 网站验证码
一次性口令认证
根据不确定因子的不同,形成了不同的一次性 口令认证技术:
用户与系统约定相同的口令生成算法 用户需要访问系统时,用户端根据当前时间T和用户与系
统的共享密钥K使用口令生成算法自动生成一次性动态口 令,并传送给认证服务器 服务器基于当前时间使用同样的算法和参数计算出所期望 的输出值,如果该值与用户所生成的口令相匹配,则认证 通过
基于时间同步认证
口令生成标准算法TOTP
口令序列(S/KEY)认证
在初始化阶段,用户选取一个口令P(在实际中,用户口令P会 和服务器给出的一个种子连接为64bit的P)和一个整数N,并根 据单向散列函数H,计算Y=HN(P),把Y和N的值存到服务器上
用户第i次登录时,用户端计算HN-i(P)并发送给服务器,服务器 取出保存的HN-i+1(P),同时计算H(HN-i(P))的值,然后判断HNi+1(P)和该值是否相等。如果二者相等,则用户的身份合法,并 用HN-i(P)更新HN-i+1(P)
Kerberos认证协议
基于公钥密码的认证
X.509认证协议
本节主题
身份认证概述
身份认证概念 身份认证分类 身份认证面临的安全攻击
身份认证面临的安全攻击
身份认证过程容易遭受如下攻击形式。
窃听攻击 重放攻击 伪造攻击/假冒攻击 口令猜测攻击 中间人攻击 ……
本章内容
3.1 • 身份认证概述 3.2 • 常见的身份认证方式 3.3 • 身份认证协议 3.4 • 数字证书与PKI 3.5 • 其它认证技术
https://tools.ietf.org/html/rfc6238 TOTP = HOTP(K,T)=Truncate(HMAC-SHA-1(K,T))
T是整数并代表和初始计数器之间的时间步数 T = (当前时间- T0)/X,T0是Unix开始计时的时间,X=30秒 HMAC = H( K XOR opad || H(K XOR ipad||T))
基于时间同步认证实例——软件程序
一次性口令认证
根据不确定因子的不同,形成了不同的一次性 口令认证技术:
口令序列认证 挑战应答认证 基于时间同步认证 基于事件同步认证
基于事件同步认证
事件同步机制又名计数器同步机制 基于事件同步的认证技术是把变动的数字序列(事件序列)
作为NRV 同步是指每次认证时,认证服务器与口令产生器保持相同
北京电子科技学院
第3章 身份认证技术
信息安全概论课程 组 网络空间安全系
2020.3
身份认证的安全需求——“你是谁”
网络上通信方是谁?
你访问的网站是真实可靠的吗?
本章内容
3.1 • 身份认证概述 3.2 • 常见的身份认证方式 3.3 • 身份认证协议 3.4 • 数字证书与PKI 3.5 • 其它认证技术
基于时间同步认证
操作简单,单向数据传输 用户端需要严格的时间同步电路
基于时间同步认证实例——硬件令牌
中银 E令。一种内置电源、密码生成芯片和显示屏、根据专门的算法每 隔一定时间自动更新动态口令的专用硬件。用户的身份验证密码在使用 过一次后就失效,下次使用时的密码是完全不同的新密码
RSA SecurID。在与RSAACE/服务器结合使用时,每隔一分钟生成一 个唯一的识别用户的、无法预知的密码
口令序列认证 挑战应答认证 基于时间同步认证 基于事件同步认证
基于时间同步认证
Time-based One-Time Password——TOTP 把流逝的时间作为NRV 同步是指用户口令设备和认证服务器所产生的口
令在时间上必须同步
使用“时间窗口”技术的时间同步,一般以30秒为单位
基于时间同步认证
• 例如指纹、声音、视网膜、签名、步态
本节主题
身份认证概述
身份认证概念 身份认证分类 身份认证面临的安全攻击
身份认证分类
根据认证时采用的安全因素性质的不同,身份认证 可以分为:
基于秘密知识的身份认证
例如口令、密钥
基于物品的身份认证
例如U盾、IC卡
基于生物特征的身份认证
指纹、人脸
身份认证分类
根据所使用的安全因素数量,可将身份认证分为以 下两类:
口令序列认证 挑战应答认证 基于时间同步认证 基于事件同步认证
口令序列(S/KEY)认证
也称为基于哈希链的认证 是一次性口令的首次实现,由贝尔通信研究中心于1991年开发,
1995年成为国际标准RFC 1760 (https://tools.ietf.org/html/rfc1760 ) S/Key一次性口令是基于MD4 或MD5生成的,是一个单向的前 后相关的序列 服务器系统内始终只记录1个口令,初始时记录的是第N个口令。 用户用第N-1个口令登录时,系统用单向哈希算法算出第N个口 令,与自己保存的第N个口令匹配,以判断用户的合法性
比较 验证通过与否
安全风险?—— 窃 听 攻 击 / 重 放 攻 击 / 口 令 直 接 泄
露
口令传输及存储方案2(示意图)——对抗窃听和直接泄露
声称者
网络传输
验证者 ID q=hash (psw)
psw’
hash
q’ ID
比较
ID
验证通过与否
从1976年开始,业界开始使用密码学中的Hash函数 加密用户口令
渐渐成为身份认证技术的主流,被广泛应用于网银、游 戏、电信运营商、电子商务等领域
一次性口令认证实例
一次性口令认证
基本原理:在登录过程中加入不确定因子,使每次 登录过程中传送的信息都不相同,以提高登录过程 安全性(https://tools.ietf.org/html/rfc2289 )
为了产生一次性的动态口令,一般采用双运算因子的计算 方式
的事件序列
如果用户使用时,因操作失误多产生了几组口令出现不同步,则服务 器会自动同步到目前使用的口令,一旦一个口令被使用过后,在口令 序列中, 所有在这个口令之前的口令都会失效
基于事件同步认证
用户与系统约定相同的口令生成算法 用户需要访问系统时,用户端根据当前数字序列中的C和
由认证服务器产生的随机数字序列(挑战值)作 为NRV
用户需要持有相应的挑战/应答令牌,令牌内置种 子密钥和加密算法
挑战应答认证
基于挑战/握手认证协议(CHAP)
Challenge-Handshake Authentication Protocol
(https://tools.ietf.org/html/rfc1994)
身份认证概念——什么是身份认证
身份认证(Authentication)是证实实体(客户、 代理、进程、设备等)与其所声称的身份是否相 符的过程,即实体真实性证明。
身份认证可以对抗假冒攻击和重放攻击的威胁。
身份认证概念——什么是身份认证
身份认证系统通常由认证服务器、认证系统客户端和 认证设备组成。
口令序列(S/KEY)认证
这种方案易于实现,且无须特殊硬件的支持 安全性依赖于单向哈希函数 但由于N是有限的,用户登录N次后必须重新初始
化口令序列
一次性口令认证
根据不确定因子的不同,形成了不同的一 次性口令认证技术:
口令序列认证 挑战应答认证 基于时间同步认证 基于事件同步认证
挑战应答认证
NRV
网络传输
ID r’
验证者
ID q
hash NRV
比较
NRV
验证通过与否
一次性口令
验证者和声称者共有一个 非重复值消息
基于口令的认证机制
静态口令
用户提交给系统的验证数据是固定不变的 由用户自己设置或者系统给定的一串静态数据作为口令
一次性口令(One Time Password,OTP)
也称动态口令,在认证过程中加入不确定因素,使每次 认证的口令都不相同,提高认证过程的安全性
一个是声称者的秘密短语,例如口令等 另一个是验证者产生的不确定因子,即,非重复值 进行密码算法计算,使用的算法主要有对称算法、HASH、MAC
一次性口令认证
根据不确定因子的不同,形成了不同的一次性 口令认证技术:
口令序列认证 挑战应答认证 基于时间同步认证 基于事件同步认证
一次性口令认证
根据不确定因子的不同,形成了不同的一次性 口令认证技术:
第1步:对用户口令做一次sha512哈希, 将口令转化为64个字节
第2步:对sha512的结果使用Bcrypt算 法(每个用户独立的盐、强度为10)计 算
第3步:使用AES算法和全局唯一的密 钥将Bcrypt算法的计算结果加密并保存
口令传输及存储方案4示意图——对抗重放攻击
声称者
ID salt p s w ’ hash
单因素身份认证
登录口令
多因素身份认证
银行卡+PIN码
身份认证分类
根据需要认证的通信方只对单方认证还是双方互相 认证,认证协议可以分为:
单向认证
只认证服务器端
双向认证
服务器端和客户端都要认证
身份认证分类
根据认证时所采用的密码体制的不同,可以分为 基于对称密码的认证和基于公钥密码的认证。
基于对称密码的认证
安全风险? ——重放攻击/口令间接泄露
口令间接泄露
哈希函数反查
穷举法 字典法 彩虹表法
口令传输及存储方案3(示意图)——对抗口令间接泄露
声称者
salt psw’
hash
ID
网络传输
q’
ID
验证者
ID q=hash(psw,salt)
比较Fra Baidu bibliotek
验证通过与否
hash算法使用PBKDF2 / BCRYPT / CRYPT之类的慢哈希算法 NIST:Password Hashing Competition——Argon(2015) 安全风险? ——重放攻击
c
MAC的产生算法H可 以基于Hash算法或 分组密钥算法
MAC=H(R,K)
Login ,IDc IDc, R
IDc, MAC
OK / Disconnect
s
Client和 Server有一 个共享密钥K
MAC’=H(R,K) 比较MAC’和MAC
挑战应答认证
认证过程
用户向认证方发出认证请求 认证方根据内置算法计算出一个挑战值并回传 用户将接收到的挑战值输入挑战/应答令牌中 令牌利用内置的种子密钥和加密算法计算出相应的应答值 用户将产生的应答值并上送至认证方 认证方根据该用户存储的种子密钥和加密算法计算出相应
身份认证系统主要通过身份认证协议和认证系统软硬 件进行实现。
认证设备
认证服务器
客户端
身份认证概念——身份认证的物理依据
用户所知道的(something the user knows)
• 例如口令
用户所拥有的(something the user possesses)
• 例如智能卡、密钥盘
用户的特征(something the user is or how he/she behaves)