530 likes | 738 Views
第 5 讲 认证技术基础. 1 、 概述. 访问控制:控制用户和系统,系统和资源进行通信和交互 保护免受未授权访问 为授权做准备. 标识、认证、授权和稽查 标识:一种能够确保主体(用户、程序获进程)就是它所宣称的那个实体的方法 认证:证明、确认标识的正确性 授权:认证通过后,对主体访问资源的能力的安排。是操作系统的核心功能。 稽查:对主体行为的审核和记录. 2 、 标识与认证. 生物标识和认证 口令 有感知的口令 一次性口令 令牌装置 密码认证 存储卡 智能卡. 生物标识和认证.
E N D
1、 概述 访问控制:控制用户和系统,系统和资源进行通信和交互 保护免受未授权访问 为授权做准备
标识、认证、授权和稽查 标识:一种能够确保主体(用户、程序获进程)就是它所宣称的那个实体的方法 认证:证明、确认标识的正确性 授权:认证通过后,对主体访问资源的能力的安排。是操作系统的核心功能。 稽查:对主体行为的审核和记录
2、 标识与认证 生物标识和认证 口令 有感知的口令 一次性口令 令牌装置 密码认证 存储卡 智能卡
生物标识和认证 • 所谓生物识别技术,就是通过计算机与光学、声学、生物传感器和生物统计学原理等高科技手段密切结合,利用人体固有的生理特征和行为特征来进行个人身份的坚定。 • 本质:模式识别
静态 动态 头部特征 手部特征 人 脸 虹 膜 视 网 膜 人 耳 手 型 指 纹 掌 纹 手 背 静 脉 分 布 步 态 静 脉 血 流 速 度 语 音 笔 迹 习 惯 性 签 名 打 字 韵 律 用于鉴别的生物特征
基于特征的生物认证方法需要遵守的几个标准 • 普遍性—意味着这一特征每一个人必须拥有特征 • 唯一性—这一特征与他人没有任何的共性 • 稳定性—这一特征不随时间、外界环境等发生变 化 • 可接受性—这一特征可被人们接受和认可 • 防伪性—这一特征不易仿造、窃取 • 可收集性—这一特征必须能够容易地由提供的技 术设备测量 • 可执行性—这一特征必须准确、快速、健壮,并 且不要求过多的资源
生物认证的一个主要问题是扫描的结果或多或少都会与模板不同生物认证的一个主要问题是扫描的结果或多或少都会与模板不同 • 系统接受冒名顶替者的概率称作错误匹配率FAR(错误接受率) • 系统拒绝授权个人的概率称作错误不匹配率FRR(错误拒绝率) • FAR与FRR相互制约
口令机制 口令或通行字机制是最广泛研究和使用的身份鉴别法。通常为长度为5~8的字符串。选择原则:易记、难猜、抗分析能力强。 口令系统有许多脆弱点: 外部泄露 口令猜测 线路窃听 危及验证者 重放
对付外部泄露的措施 教育、培训; 严格组织管理办法和执行手续; 口令定期改变; 每个口令只与一个人有关; 输入的口令不再现在终端上; 使用易记的口令,不要写在纸上。
对付口令猜测的措施 教育、培训; 严格限制非法登录的次数; 口令验证中插入实时延迟; 限制最小长度,至少6~8字节以上 防止用户特征相关口令, 口令定期改变; 及时更改预设口令; 使用机器产生的口令。
有感知的口令 常规问题+个性化回答
一次性口令 令牌装置+同步机制 令牌装置+异步机制(交互应答+认证服务器通信=“间接的同步”)
密码认证 对称密码体制认证 公钥密码体制认证 HASH认证 ……
存储卡 直接使用存在卡中的信息与库中信息比对 可结合普通口令机制,双重比对
智能卡 卡本身具有认证比对功能,加强卡自身安全保护 随后再进一步认证
3、 授权 授权方法 默认拒绝
授权方法 角色访问方法:不同角色的业务访问需求可能类似 组访问原则方法:需要同样访问权限的用户的集合 物理和逻辑位置访问原则: 时间: 事务类型限制:事务实例取值的不同,访问权限赋予可能也不同。(银行取钱,职责不同,能操作的金额应该不一致;数据库管理员负责建立人事数据库,但他未必有权访问这些数据记录)
默认拒绝 一般授权的基本原则 默认拒绝 需要知晓:授予能够实现业务的最小权限,与最小特权原则一致
4、 单点登录 脚本方式 Kerberos Sesame
脚本方式 包含有每一用户ID、口令字和对应平台登录命令的批处理文件 用户使用方便 管理员需要事先编写脚本 管理员跟踪活替换口令更改机制 脚本本身的机密性、完整性要求极高 平台升级可能会要求脚本升级
Kerberos(科波罗斯) 分布式单点登录的实例 使用对称加密算法体系 主要组件: 密钥分发中心:存有所有用户和服务的密钥;具有密钥分发和认证功能;客户和服务充分信任KDC是系统安全的基础 实体对象:主体,用户、程序或服务, 票证:用户主体之间访问认证 Kerberos协议主要用于计算机网络的身份鉴别(Authentication), 其特点是用户只需输入一次身份验证信息就可以凭借此验证获得的票据(ticket-granting ticket)访问多个服务,即SSO(Single Sign On)。由于在每个Client和Service之间建立了共享密钥,使得该协议具有相当的安全性。
Kerberos认证过程(见图) 用户向AS认证 AS发送初时票证给用户 用户请求访问文件服务器 TGS使用会话迷药创建新票证 用户提取一个绘画迷药并将票证发给文件服务器
Kerberos弱点: 单点故障 必须实施处理大量信息 密钥需要暂时性的存在工作站上,存在威胁 会话密钥被解密后仍保留在缓存中,存在威胁 对密码猜测的字典攻击 密钥更新过程复杂
Sesame Secure European System for application in a Multi-vendor Environment 是为了解决Kerberos的弱点而提出的。SESAME使用公开加密算法和对称加密算法来实现对通信的保护、实现对称密钥的交换和访问控制。与Kerberos不同的是,SESAME提供两种Certificates或者Tickets,一个用来提供认证,另外的一个提供给客户访问许可。SESAME的同样也容易被字典式攻击。 同时基于对称和非对称密码体制 PAS(特权证书)取代访问票证:主体身份、允许访问范围、允许访问时间、有效期限等信息 PAS包括数字签名信息,证明PAC来源的可信
认证过程 用户发送证书 AS发送令牌以与PAS通信 用户将令牌发给PAS,请求访问资源 PAS创建并发送PAC给用户 用户发送PAC向资源认证 (参见下图)
5、 PKI认证(一) 什么是PKI(公钥基础设施)? 所谓PKI就是一个公钥概念和技术实施和提供安全服务的具有普适性的安全基础设施。但PKI的概念在不断的延伸和扩展。 PKI基础设施采用证书管理公钥,通过第三方的可信任机构CA把用户的公钥和用户的其他标识信息捆绑在一起,在internet网上验证用户的身份。 参考: http://www.cnpaf.net/Class/wlaq/0552123202324687222.htm 和本章有关的一些问题解答: http://www.cnpaf.net/Class/wlaq/index.html
什么是恶意程序 什么是黑客(Hacker) 什么是网络安全隔离卡 什么是入侵及入侵检测系统 什么是公钥密码 什么是RSA公钥密码 什么是分组密码及密码分析 什么是数字签名 什么是Hash函数 什么是PKI(公钥基础设施) 什么是信息隐藏技术 什么是信息安全 什么是可信电子信息系统 什么是密钥托管(KeyEscrow) 什么是数字证书 什么是PGP(PrettyGoodPrivacy) 什么是步态识别 什么是DynamicID动态口令卡 什么是DynamicID身份认证服务器 什么是IDShield身份认证系统
PKI:基于公钥密码体制的认证技术框架 MAC:消息认证 RSA:公钥密码算法 SHA:安全杂凑算法 DSS:数字签名标准 AS:认证服务器 CA:认证中心 RA:注册机构 RS:业务受理点 CRL:证书撤销列表 DES:数据加密标准 Recoverykey:私钥 Encryptedkey:密钥
一、认证基本概念 • 1、问题的提出 • 2、认证的分类 • 3、消息认证 • 4、身份认证 • 5、认证协议
1、问题的提出 • 认证就是确认实体是它所声明的。 • 认证是最重要的安全服务之一。认证服务提供了关于某个实体身份的保证。(所有其它的安全服务都依赖于该服务) • 认证可以对抗假冒攻击的危险
2、认证的种类 • 数字签名:手写签名的电子化 • 消息认证:消息来源和内容的合法性 • HASH函数:消息的完整性 • 身份认证:实体所宣称与实体本身的相符性 • 认证协议:身份认证、密钥交换
3、消息认证(1) • 需求:在网络通信中,有一些针对消息内容的攻击方法 • 伪造消息 • 窜改消息内容 • 改变消息顺序 • 消息重放或者延迟 • 定义描述:对收到的消息进行验证,证明确实是来自声称的发送方,并且没有被修改过。 • 如果在消息中加入时间及顺序信息,则可以完成对时间和顺序的认证
3、消息认证(2) • 实现消息认证的基本方法: • Message encryption:用整个消息的密文作为认证标识(接收方必须能够识别错误) • MAC:一个公开函数,加上一个密钥产生一个固定长度的值作为认证标识 • Hash function:一个公开函数将任意长度的消息映射到一个固定长度的散列值,作为认证标识
Hash函数(也称杂凑函数或杂凑算法)就是把任意长的输入消息串变化成固定长的输出串的一种函数。这个输出串称为该消息的杂凑值。 Hash函数主要用于完整性校验和提高数字签名的有效性,目前已有很多方案。这些算法都是伪随机函数,任何杂凑值都是等可能的。输出并不以可辨别的方式依赖于输入;在任何输入串中单个比特的变化,将会导致输出比特串中大约一半的比特发生变化。
一个安全的杂凑函数应该至少满足以下几个条件:一个安全的杂凑函数应该至少满足以下几个条件: ①输入长度是任意的; ②输出长度是固定的,根据目前的计算技术应至少取128bits长,以便抵抗生日攻击; ③对每一个给定的输入,计算输出即杂凑值是很容易的; ④给定杂凑函数的描述,找到两个不同的输入消息杂凑到同一个值是计算上不可行的,或给定杂凑函数的描述和一个随机选择的消息,找到另一个与该消息不同的消息使得它们杂凑到同一个值是计算上不可行的。
4、身份认证(1) • 定义:证实客户的真实身份与其所声称的身份是否相符的过程。 • 依据: • Something the user know (所知) • 密码、口令等 • Something the user possesses (拥有) • 身份证、护照、密钥盘等 • Something the user is (or How he behaves) (即个人特征识别或说生物特征识别) • 指纹、笔迹、声音、虹膜、DNA等
4、身份认证(2) • 消息认证与身份认证的差别: • 身份认证(实体鉴别)一般都是实时的,消息鉴别一般不提供实时性。 • 实体鉴别只证实实体的身份,消息鉴别除了要证实报文的合法性和完整性外,还需要知道消息的含义。 • 数字签字是实现身份识别的有效途径。但在身份识别中消息的语义是基本固定的,一般不是“终生”的,签字是长期有效的。
5、认证协议(1) • 双方认证 (mutual authentication) 通信双方相互进行认证 • 单向认证 (one-way authentication) 通信双方只有一方向另一方进行鉴别
5、认证协议(2) • 最常用的协议。该协议使得通信各方互相认证鉴别各自的身份,然后交换会话密钥。 • 基于鉴别的密钥交换核心问题有两个: • 保密性 • 实效性 • 为了防止伪装和防止暴露会话密钥,基本鉴别和会话密码信息必须以保密形式通信,这就要求预先存在保密或公开密钥供实现加密使用。第二个问题也很重要,因为涉及防止消息重放攻击。
二、身份认证基本情况 • 1、身份认证的作用 • 2、身份认证的分类 • 3、身份认证的模型和组成 • 4、身份认证的要求 • 5、身份认证的实现途径 • 6、身份认证的机制
1、身份认证的作用 • 身份认证需求: 某一成员(声称者)提交一 个主体的身份并声称它是那个主体。 • 身份认证目的: 使别的成员(验证者)获得对声称者所声称的事实的信任
2、身份认证的分类(1) • 实体鉴别可以分为本地和远程两类。 • 实体在本地环境的初始化鉴别(就是说,作为实体个人,和设备物理接触,不和网络中的其他设备通信)。 • 连接远程设备、实体和环境的实体鉴别。 • 本地鉴别:需要用户进行明确的操作 远程鉴别:通常将本地鉴别结果传送到远程。 (1)安全 (2)易用
2、身份认证的分类(2) • 实体鉴别可以是单向的也可以是双向的。 • 单向鉴别是指通信双方中只有一方向另一方进行鉴别。 • 双向鉴别是指通信双方相互进行鉴别。
3、身份认证的组成(1) 可信赖者 TP A B A、B为声称者(Claimant )或者验证者V(Verifier)
3、身份认证的组成(2) • 一方是出示证件的人,称作示证者P(Prover),又称声称者(Claimant)。 • 另一方为验证者V(Verifier),检验声称者提出的证件的正确性和合法性,决定是否满足要求。 • 第三方是可信赖者TP (Trusted third party) ,参与调解纠纷。 • 第四方是攻击者,可以窃听或伪装声称者骗取验证者的信任。
4、身份认证的要求 一个身份认证系统应满足如下要求: (1)验证者正确识别合法申请者的概率极大化。 (2)不具有可传递性(Transferability) (3)攻击者伪装成申请者欺骗验证者成功的概率要小到可以忽略的程度 (4)计算有效性 (5)通信有效性 (6)秘密参数能安全存储 *(7)交互识别,如在某些应用中通信双方能相互认证 *(8)第三方的实时参与,如在线公钥检索服务 *(9)第三方的可信赖性 *(10)可证明的安全性