07密码学与网络安全第七讲.docx
- 文档编号:12373905
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:24
- 大小:815.07KB
07密码学与网络安全第七讲.docx
《07密码学与网络安全第七讲.docx》由会员分享,可在线阅读,更多相关《07密码学与网络安全第七讲.docx(24页珍藏版)》请在冰点文库上搜索。
07密码学与网络安全第七讲
密码学与网络安全
第七讲身份鉴别
⏹讨论议题
1.鉴别的基本概念
2.鉴别机制
3.鉴别与交换协议
4.典型鉴别实例
一、鉴别的基本概念
1、鉴别--Authentication
鉴别就是确认实体是它所声明的,也就是确保通信是可信的。
鉴别是最重要的安全服务之一,鉴别服务提供了关于某个实体身份的保证。
(所有其它的安全服务都依赖于该服务);鉴别可以对抗假冒攻击的危险。
2、鉴别的需求和目的
1)问题的提出:
身份欺诈;
2)鉴别需求:
某一成员(声称者)提交一个主体的身份并声称它是那个主体。
3)鉴别目的:
使别的成员(验证者)获得对声称者所声称的事实的信任。
3、身份鉴别
定义:
证实客户的真实身份与其所声称的身份是否相符的过程。
依据:
1)密码、口令等;
2)身份证、护照、密钥盘等
3)指纹、笔迹、声音、虹膜、DNA等
4)协议
4、鉴别协议
•双向鉴别(mutualauthentication)
•单向鉴别(one-wayauthentication)
1)双向鉴别协议:
最常用的协议。
该协议使得通信各方互相认证鉴别各自的身份,然后交换会话密钥。
•基于鉴别的密钥交换核心问题有两个:
–保密性:
确保信息的机密性,阻止截取、窃听等攻击;
–实效性;阻止冒充、篡改、重放等攻击。
为了防止伪装和防止暴露会话密钥,基本身份信息和会话密钥信息必须以保密形式通信,这就要求预先存在密钥或公开密钥供实现加密使用。
第二个问题也很重要,因为涉及防止消息重放攻击。
●鉴别的两种情形
•鉴别用于一个特定的通信过程,即在此过程中需要提交实体的身份。
1)实体鉴别(身份鉴别):
某一实体确信与之打交道的实体正是所需要的实体。
只是简单地鉴别实体本身的身份,不会和实体想要进行何种活动相联系。
在实体鉴别中,身份由参与某次通信连接或会话的远程参与者提交。
这种服务在连接建立或在数据传送阶段的某些时刻提供使用,使用这种服务可以确信(仅仅在使用时间内):
一个实体此时没有试图冒充别的实体,或没有试图将先前的连接作非授权地重演。
2)数据原发鉴别:
鉴定某个指定的数据是否来源于某个特定的实体。
不是孤立地鉴别一个实体,也不是为了允许实体执行下一步的操作而鉴别它的身份,而是为了确定被鉴别的实体与一些特定数据项有着静态的不可分割的联系。
在数据原发鉴别中,身份和数据项一起被提交,并且声称数据项来源于身份所代表的主体,这种服务对数据单元的重复或篡改不提供保护。
●数据原发鉴别方法:
1)加密:
给数据项附加一个鉴别项,然后加密该结果;
2)封装或数字签名;
3)实体鉴别扩展:
通过完整性机制将数据项和鉴别交换联系起来。
●实体鉴别实现安全目标的方式
1)作为访问控制服务的一种必要支持,访问控制服务的执行依赖于确知的身份(访问控制服务直接对达到机密性、完整性、可用性及合法使用目标提供支持);
2)作为提供数据起源认证的一种可能方法(当它与数据完整性机制结合起来使用时);
3)作为对责任原则的一种直接支持,例如,在审计追踪过程中做记录时,提供与某一活动相联系的确知身份。
●实体鉴别分类
1)实体鉴别可以分为本地和远程两类。
–实体在本地环境的初始化鉴别(就是说,作为实体个人,和设备物理接触,不和网络中的其他设备通信)。
–连接远程设备、实体和环境的实体鉴别。
2)本地鉴别:
需要用户进行明确的操作。
远程鉴别:
通常将本地鉴别结果传送到远程。
3)实体鉴别可以是单向的也可以是双向的。
–单向鉴别是指通信双方中只有一方向另一方进行鉴别。
–双向鉴别是指通信双方相互进行鉴别。
●实体鉴别系统的组成
1)一方是出示证件的人,称作示证者P(Prover),又称声称者(Claimant)。
2)另一方为验证者V(Verifier),检验声称者提出的证件的正确性和合法性,决定是否满足要求。
3)第三方是可信赖者TP(Trustedthirdparty),参与调解纠纷。
4)第四方是攻击者,可以窃听或伪装声称者骗取验证者的信任。
●鉴别模型
●实体鉴别与消息鉴别的差别:
1)实体鉴别一般都是实时的,消息鉴别一般不提供时间性。
2)实体鉴别只证实实体的身份,消息鉴别除了消息的合法和完整外,还需要知道消息的含义。
3)数字签名是实现身份识别的有效途径。
但在身份识别中消息的语义是基本固定的,一般不是“终生”的,签字是长期有效的。
●对身份鉴别系统的要求
(1)验证者正确识别合法申请者的概率极大化;
(2)不具有可传递性(Transferability);
(3)攻击者伪装成申请者欺骗验证者成功的概率要小到可以忽略的程度;
(4)计算有效性;
(5)通信有效性;
(6)秘密参数能安全存储。
●实现身份鉴别的途径
三种途径之一或他们的组合
(1)所知(Knowledge):
密码、口令
(2)所有(Possesses):
身份证、护照、信用卡、钥匙
(3)个人特征:
指纹、笔迹、声纹、手型、血型、视网膜、虹膜、DNA以及个人动作方面的一些特征
(4)你做的事情(如手写签名)
设计依据:
安全水平、系统通过率、用户可接受性、成本等
二、鉴别机制
1)非密码的鉴别机制
2)基于密码算法的鉴别
–采用对称密码算法的机制;
–采用公开密码算法的机制;
–采用密码校验函数的机制;
●非密码的鉴别机制
A.口令机制
B.一次性口令机制
C.基于地址的机制
D.基于个人特征的机制
E.个人鉴别令牌
A.口令机制
•口令或通行字机制是最广泛研究和使用的身份鉴别法。
通常为长度为5~8的字符串。
选择原则:
易记、难猜、抗分析能力强。
•口令系统有许多脆弱点:
外部泄露
口令猜测
线路窃听
危及验证者
重放
Ø对付外部泄露的措施:
首先需要教育、培训;严格组织管理办法和执行手续;口令定期改变;每个口令只与一个人有关;输入的口令不再现在终端上;使用易记的口令,不要写在纸上。
Ø对付口令猜测的措施
1)教育、培训;
2)严格限制非法登录的次数;
3)口令验证中插入实时延迟;
4)限制最小长度,至少6~8字节以上;
5)防止用户特征相关口令;
6)口令定期改变;
7)及时更改预设口令;
8)使用机器产生的口令。
Ø对付线路窃听的措施
•使用保护口令机制:
如单向函数。
Ø主要缺陷及对策
•攻击者很容易构造一张q与p对应的表,表中的p尽最大可能包含所期望的值。
•随机串是使这种攻击变得困难的一种办法。
•在口令后使用随机数。
•只能保护在多台计算机上使用相同口令或在同一计算机上使用同一口令的不同用户。
ØUNIX系统中的口令存储
•UNIX系统使用crypt()保证系统密码的完整性。
这一函数完成被称作单向加密的功能,它可以加密一些明码,但不能够将密码转换为原来的明码。
Ø改进方案
Ø基本的对付危及验证者的措施
•使用单向函数
Ø
Ø对付窃听及危及验证者的措施
B.一次性口令机制
•一次性口令机制确保在每次认证中所使用的口令不同,以对付重放攻击。
•确定口令的方法:
(1)两端共同拥有一串随机口令,在该串的某一位置保持同步;
(2)两端共同使用一个随机序列生成器,在该序列生成器的初态保持同步;
(3)使用时戳,两端维持同步的时钟。
C、基于地址的机制
•基于地址的机制假定声称者的可鉴别性是以呼叫的源地址为基础的。
•在大多数的数据网络中,呼叫地址的辨别都是可行的。
•在不能可靠地辨别地址时,可以用一个呼叫—回应设备来获得呼叫的源地址。
•一个验证者对每一个主体都保持一份合法呼叫地址的文件。
•这种机制最大的困难是在一个临时的环境里维持一个连续的主机和网络地址的联系。
地址的转换频繁、呼叫—转发或重定向引起了一些主要问题。
•基于地址的机制自身不能被作为鉴别机制,但可作为其它机制的有用补充。
D.基于个人特征的机制
•生物特征识别技术主要有:
1)指纹识别;
2)声音识别;
3)手迹识别;
4)视网膜扫描;
5)手形。
这些技术的使用对网络安全协议不会有重要的影响。
E.个人鉴别令牌
•物理特性用于支持认证”某人拥有某东西”,但通常要与一个口令或PIN结合使用。
•这种器件应具有存储功能,通常有键盘、显示器等界面部件,更复杂的能支持一次性口令,甚至可嵌入处理器和自己的网络通信设备(如智能卡)。
•这种器件通常还利用其它密码鉴别方法。
●采用对称密码的鉴别机制
•基于对称密码算法的鉴别依靠一定协议下的数据加密处理。
通信双方共享一个密钥(通常存储在硬件中),该密钥在询问—应答协议中处理或加密信息交换。
介绍在设计认证协议时特别需要注意的问题,并给出抵抗这些攻击的具体设计策略。
1)鉴别和密钥交换协议的核心问题有两个:
⏹保密性
⏹时效性
2)为了防止伪装和防止暴露会话密钥,基本鉴别与会话密码信息必须以保密形式通信。
这就要求预先存在保密或公开密钥供实现加密使用。
A.重放
常见的消息重放攻击形式有:
1、简单重放:
攻击者简单复制一条消息,以后在重新发送它;
2、可被日志记录的复制品:
攻击者可以在一个合法有效的时间窗内重放一个带时间戳的消息;
3、不能被检测到的复制品:
这种情况可能出现,原因是原始信息已经被拦截,无法到达目的地,而只有重放的信息到达目的地。
4、反向重放,不做修改。
向消息发送者重放。
当采用传统对称加密方式时,这种攻击是可能的。
因为消息发送者不能简单地识别发送的消息和收到的消息在内容上的区别。
1)针对同一验证者的重放:
非重复值
2)针对不同验证者的重放:
验证者的标识符
B.非重复值的使用
1.序列号:
计数的策略。
对付重放攻击的一种方法是在认证交换中使用一个序数来给每一个消息报文编号。
仅当收到的消息序数顺序合法时才接受之。
但这种方法的困难是要求双方必须保持上次消息的序号;
2.时间戳:
A接受一个新消息仅当该消息包含一个时间戳,该时间戳在A看来,是足够接近A所知道的当前时间;这种方法要求不同参与者之间的时钟需要同步;
3.验证者发送随机值(如询问):
不可预测、不重复。
时间戳
1.在网络环境中,特别是在分布式网络环境中,时钟同步并不容易做到;
2.一旦时钟同步失败,可能会:
●要么协议不能正常服务,影响可用性(availability),造成拒绝服务(DOS);
●要么放大时钟窗口,造成攻击的机会。
3.时间窗大小的选择应根据消息的时效性来确定。
询问/应答方式(Challenge/Response)
1.A期望从B获得一个消息
–首先发给B一个随机值;
–B收到这个值之后,对它作某种变换,并送回去;
–A收到B的response,希望包含这个随机值。
2.在有的协议中,这个随机值也称为nonce
–可能明文传输,也可能密文传输;
–这个条件可以是知道某个口令,也可能是其他的事情;
–变换例子:
用密钥加密,说明B知道这个密钥;
简单运算,比如增一,说明B知道这个随机值。
3.询问/应答方法不适应非连接性的应用,因为它要求在传输开始之前先有握手的额外开销,这就抵消了无连接通信的主要特点。
●采用对称密码的鉴别机制
1、无可信第三方参与的鉴别
–单向鉴别:
使用该机制时,两实体中只有一方被鉴别。
–双向鉴别:
两通信实体使用此机制进行相互鉴别。
2、有可信第三方参与的鉴别
本部分使用以下记法
3.无可信第三方参与的机制(单向鉴别)
4.无可信第三方参与的机制(单向鉴别)
•两次传送鉴别
(1)TokenAB=Text3||eKAB(RB||B||Text2);
(2)B解密,验证B、RB的正确性。
5.无可信第三方参与的机制(双向鉴别)
•三次传送鉴别
●采用公开密码算法的机制
•在该机制中,声称者要通过证明他知道某秘密签名密钥来证实身份。
由使用他的秘密签名密钥签署某一消息来完成。
消息可包含一个非重复值以抵抗重放攻击。
•要求:
验证者有声称者的有效公钥;声称者有仅由自己知道和使用的秘密签名私钥。
•单向鉴别:
仅对实体中的一个进行鉴别。
双向鉴别:
两个通信实体相互进行鉴别。
Ø采用公开密码算法的机制—单向鉴别
•一次传递机制
(2)B验证A的公开密钥,验证B的标识符号
•两次传递机制
(3)B验证A的公开密钥,验证B的标识符号
Ø采用公开密码算法的机制—双向鉴别(二次传递机制)
•三次传递机制
●采用密码校验函数的机制
•在该机制中,待鉴别的实体通过表明它拥有某个秘密鉴别密钥来证实其身份。
可由该实体以其秘密密钥和特定数据作输入,使用密码校验函数获得密码校验值来达到。
•声称者和验证者共享秘密鉴别密钥,应仅为该两个实体所知,以及他们的信任方。
Ø采用密码校验函数的机制-单向鉴别
•一次传递鉴别
(2)B验证A的标识符号和时间标记
•二次传递鉴别
(3)B验证B的标识符号和随机数
Ø采用密码校验函数的机制-双向鉴别
(1)
•两次传递机制
三、鉴别和交换协议
•如果用于连接完整性服务的密钥被在线建立,那么事实证明将鉴别和密钥交换功能组合在一个协议中是重要的(鉴别和密钥交换协议)。
•它是最常用的协议,该协议使得通信各方互相鉴别各自的身份,然后交换会话密钥。
•基于鉴别的密钥交换核心问题有两个:
–保密性
–时效性
●双向鉴别
传统加密方法
保密密钥Ka和Kb分别是A和KDC、B和KDC之间共享的密钥。
本协议的目的就是要安全地分发一个会话密钥Ks给A和B。
A在第2步安全地得到了一个新的会话密钥,第3步只能由B解密、并理解。
第4步表明B已知道Ks了。
第5步表明B相信A知道Ks并且消息不是伪造的。
第4,5步目的是为了防止某种类型的重放攻击。
特别是,如果敌方能够在第3步捕获该消息,并重放之,这将在某种程度上干扰破坏B方的运行操作。
上述方法尽管有第4,5步的握手,但仍然有漏洞。
假定攻击方C已经掌握A和B之间通信的一个老的会话密钥。
C可以在第3步冒充A利用老的会话密钥欺骗B。
除非B记住所有以前使用的与A通信的会话密钥,否则B无法判断这是一个重放攻击。
如果C可以中途阻止第4步的握手信息,则可以冒充A在第5步响应。
从这一点起,C就可以向B发送伪造的消息而对B来说认为是用认证的会话密钥与A进行的正常通信。
改进:
|Clock-T|<∆t1+∆t2
其中:
∆t1是KDC时钟与本地时钟(A或B)之间差异的估计值;
∆t2是预期的网络延迟时间。
改进在安全性方面增强了一步。
然而,又提出新的问题:
即必须依靠各时钟均可通过网络同步。
一种克服抑制重放攻击的方法是强制各方定期检查自己的时钟是否与KDC的时钟同步。
公钥加密方法:
一个使用时间戳的方法是:
⏹单向鉴别One-WayAuthentication
Ø传统加密方法:
Ø公钥加密方法:
四、典型鉴别实例
•Kerberos
•X.509鉴别服务
Ø引言
•Kerberos:
partofProjectAthenaatMIT(麻省理工学院)
•GreekKerberos:
希腊神话故事中一种三个头的狗,还有一个蛇形尾巴。
是地狱之门的守卫。
•ModernKerberos:
意指有三个组成部分的网络之门的保卫者。
“三头”包括:
–鉴别(authentication)
–簿记(accounting)
–审计(audit)
•80年代中期
•是MIT的Athena(雅典娜)工程的产物
•版本
–前三个版本仅用于内部
–第四版得到了广泛的应用
–第五版于1989年开始设计
•RFC1510,1993年确定
•标准Kerberos
ØKerberos历史
问题
•在一个开放的分布式网络环境中,用户通过工作站访问服务器上提供的服务。
–服务器应能够限制非授权用户的访问并能够鉴别对服务的请求。
–工作站无法可信地向网络服务证实用户的身份,即工作站存在三种威胁。
1)一个工作站上一个用户可能冒充另一个用户操作;
2)一个用户可能改变一个工作站的网络地址,从而冒充另一台工作站工作;
3)一个用户可能窃听他人的信息交换,并用回放攻击获得对一个服务器的访问权或中断服务器的运行。
Ø三种可能的安全方案
•相信每一个单独的客户工作站可以保证对其用户的识别,并依赖于每一个服务器强制实施一个基于用户标识的安全策略。
•要求客户端系统向服务器证实自己的身份,但相信客户端系统负责对其用户的识别。
•要求每一个用户对每一个服务证明其标识身份,同样要求服务器向客户端证明其标识身份。
ØKerberos的解决方案
•在一个分布式的client/server体系机构中采用一个或多个Kerberos服务器提供一个鉴别服务。
ØKerberos系统应满足的要求
•安全。
网络窃听者不能获得必要信息以假冒其它用户;Kerberos应足够强壮以至于潜在的敌人无法找到它的弱点连接。
•可靠。
Kerberos应高度可靠,并且应借助于一个分布式服务器体系结构,使得一个系统能够备份另一个系统。
•透明。
理想情况下,用户除了要求输入口令以外应感觉不到认证的发生。
•可伸缩。
系统应能够支持大数量的客户和服务器。
ØKerberosVersion4
•引入一个信任的第三方鉴别服务;
•采用DES,精心设计协议,提供鉴别服务。
ØKerberos协议中一些概念
1)Principal(安全个体)
–被鉴别的个体,有一个名字(name)和口令(password)
2)KDC(Keydistributioncenter)
–是一个网络服务,提供ticket和临时的会话密钥
3)Ticket
一个记录,客户可以用它来向服务器证明自己的身份,其中包括客户的标识、会话密钥、时间戳,以及其他一些信息。
Ticket中的大多数信息都被加密,密钥为服务器的密钥。
一个简单的鉴别对话
引入鉴别服务(AS),它知道所有用户的口令并将它们存储在一个中央数据库中。
AS与每一个服务器共有一个唯一的保密密钥。
这些密钥已经物理上或以更安全的手段分发。
考虑以下假定的对话:
问题:
1)用户每次和服务器通信之前都要与AS通信,每次都要输入口令,输入口令的次数越多,越容易受到攻击;
2)口令以明文的形式传送被攻击者窃听。
更安全的鉴别对话
•两个主要问题
–希望用户输入口令的次数最少。
–口令以明文传送会被窃听。
⏹Kerberos鉴别协议小结
•特点
–基于口令的鉴别协议
–利用对称密码技术建立起来的鉴别协议
–可伸缩性——可适用于分布式网络环境
–环境特点
•User-to-server
eferences
•MITKerberosWebSite:
http:
//web.mit.edu/kerberos/www
•USC/ISIKerberosPage:
•Password-to-KeyTransformation
•PropagatingCipherBlockChainingMode
•WilliamStallings,Cryptographyandnetworksecurity:
principlesandpractice,SecondEdition
References
•GB/T15843.1-1999信息技术安全技术实体鉴别第一部分:
概述ISO/IEC9798-1:
1997
•GB/T15843.2-1997信息技术安全技术实体鉴别第二部分:
采用对称加密算法的机制ISO/IEC9798-2:
1994
•GB/T15843.3-1999信息技术安全技术实体鉴别第三部分:
采用非对称签名技术的机制ISO/IECDIS9798-3:
1997
•GB/T15843.4-1999信息技术安全技术实体鉴别第四部分:
采用密码校验函数的机制ISO/IEC9798-4:
1995
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 07 密码学 网络安全 第七