西工大计算机网络安全第4讲.ppt

上传人:小飞机 文档编号:4949658 上传时间:2023-05-25 格式:PPT 页数:50 大小:261.99KB
返回 下载 相关 举报
西工大计算机网络安全第4讲.ppt_第1页
第1页 / 共50页
西工大计算机网络安全第4讲.ppt_第2页
第2页 / 共50页
西工大计算机网络安全第4讲.ppt_第3页
第3页 / 共50页
西工大计算机网络安全第4讲.ppt_第4页
第4页 / 共50页
西工大计算机网络安全第4讲.ppt_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《西工大计算机网络安全第4讲.ppt》由会员分享,可在线阅读,更多相关《西工大计算机网络安全第4讲.ppt(50页珍藏版)》请在三一办公上搜索。

1、1,第四讲认证技术,2,一、数据认证技术为了防止数据被篡改和伪造,要使用单向散列(Hash)函数对数据完整性进行认证保护。Hash函数具有单向不可逆性,它赋予一个消息惟一的“指纹”,通过验证“指纹”识别和认证该消息的完整性。Hash函数非常精确,能够检查出消息传输过程中所发生的任何变化。在数据完整性认证中,一般采用加密短消息(如数据检查和)来证实数据完整性,而不是加密整段数据。,3,在数据传输过程中,发送者首先计算所发送数据的检查和,并使用Hash函数计算该检查和的散列值,然后将原文和散列值同时发送给接收者。接收者使用相同算法独立计算所接收数据的检查和及散列值,然后与所接收的散列值进行比较,如

2、果两者不相同,则说明数据被改动,从而验证了数据的真实性与完整性。常用的Hash 函数有 MD5、SHA等。,4,当Hash函数H(M)作用于一个任意长度的消息M时,将返回一个固定长度m的散列值h,即h=H(M),并具有如下性质:(1)给定一个消息M,很容易计算出散列值h。(2)给定的散列值 h,很难根据 H(M)=h 计算出消息 M。(3)给定一个消息M,很难找到另一个消息M且满足 H(M)=H(M)。,5,1.MD5算法MD(Message Digest)系列算法都是美国MIT教授Ron Rivest设计的单向散列函数,其中MD5是其它MD的改进版。MD5算法基于如下的设计目标:安全性:通过

3、计算找到两个具有相同散列值的消息是不可行的,不存在比穷举搜索法更有效的攻击方法,并且算法的安全性不基于任何假设,如因子分解的难度。(2)简单性:算法尽可能简单,不需要使用复杂的数据结构和程序来实现。,6,(3)高速度:算法基于32位操作数的简单位操作,即使软件实现也具有很高的速度。(4)适应性:算法适合微处理器结构,特别是Intel微处理器。MD5算法将输入的消息分成512位分组进行处理,输出是4个32位分组,将它们级联起来形成一个128位的散列值。MD5算法处理过程如下:(1)消息填充:消息长度必须是一个512位的整数倍,如果不满足,则必须进行填充。,7,(2)变量初始化:初始化4个32位变

4、量值,其十六进制表示:A0 x01234567 B0 x89abcdefC0 xfedcba98 D0 x76543210(3)主循环:一次处理512位消息,循环次数是消息中512位分组的数目。每次循环有四轮,每轮循环使用一个非线性函数,共使用四个非线性函数。每一轮运算基本相似,共有16次操作。每次操作对消息分组和链接变量进行一次非线性运算,共进行16次非线性运算。,8,(4)输出结果:将最后输出的A,B,C,D级联起来,形成128位散列值输出。MD5安全性MD5是MD4的改进版,将原来的三轮运算改式四轮,同时还增加了算法其它方面的复杂性。有人使用差分密码分析攻击了MD5的单轮,但这种攻击远未

5、达到对全部四轮都有效攻击的程度,对MD5的安全性没有太大的影响。我国山东大学教授从理论上找到一种破解MD5方法,动摇了MD5的安全性。,9,2.SHA算法SHA(Secure Hash Algorithm)算法是美国在安全散列标准(SHS)中提出的单向散列函数,该算法可以与数字签名标准一起使用,也可以单独应用。当一个长度小于 264 位的消息输入时,SHA产生一个160位的散列值输出(即消息摘要)。然后将摘要输入到DSA中,对该摘要进行签名。由于消息摘要比消息小得多,因此可以提高签名处理效率。,10,SHA是以512位分组来处理输入的消息,每个分组又划分为80个32位子分组。输出是5个32位分

6、组,并将它们级联成一个160位散列值。SHA算法的处理过程如下:(1)消息填充:消息长度必须是一个512位的整数倍,如果不满足,则必须进行填充。其填充方法与MD5完全相同。(2)变量初始化:初始化5个32位变量,其十六进制表示:A0 x67452301 B0 xefcdab89 C0 x98badcfe D0 x10325476 E0 xc3d2e1f0,11,(3)算法主循环:一次处理512位消息,循环次数是消息中512位分组的数目。每次循环有四轮,每轮循环使用一个非线性函数,共使用了四个非线性函数。每一轮运算基本相似,共有20次操作(MD5为16次操作)。每次操作对链接变量和消息分组进行1

7、次非线性运算,共进行20次非线性运算。,12,(4)输出结果:将最后输出的A,B,C,D和E级联起来,形成160位散列值输出。SHA安全性SHA采用了MD4算法思想,但比MD4的安全性高,可以将SHA看作是MD4的改进版。SHA是160位的散列函数,比128位的MD5或其它散列函数更能抵抗穷举搜索攻击或其它方法攻击。山大教授的方法同样威胁着SHA的安全性。,13,3.MAC算法 MAC(Message Authentication Code)是与密钥相关的单向散列函数,称为消息鉴别码。MAC除了具有与其它单向散列函数同样的性质外,还包括一个密钥,只有拥有密钥的人才能鉴别这个散列值。MAC主要用

8、于在无安全设施情况下对消息的鉴别。MAC既可用于验证多个用户之间数据通信的完整性,也用于单个用户鉴别磁盘文件的完整性。,14,对于后者,首先计算磁盘文件的MAC并保存起来。然后通过计算和比较MAC来鉴别磁盘文件是否被非法修改。由于MAC受到密钥的保护,黑客并不知道该密钥,从而防止了对原来MAC的修改。如果使用单纯的Hash函数,则黑客在修改文件的同时,也可能重新计算其散列值,并替换原散列值,这样磁盘文件的完整性得不到有效的保护。,15,将单向散列函数转换成 MAC可以通过对称加密算法加密散列值来实现。相反,将MAC转换成单向散列函数只需将密钥公开即可。MAC算法有很多种,常用的MAC是基于分组

9、加密算法和单向散列函数组合的实现方案。可以有两种组合方案:(1)先散列消息,然后再加密散列值;(2)先加密消息,然后再散列密文。,16,二、身份认证技术在现实的社会和经济生活中,每个人都必须具有能够证明个人身份的有效证件,如身份证、护照、驾驶执照、工作证和信用卡等。在身份证件上应当包括个人信息(如姓名、性别、出生年月、住址等)、个人照片、证件编号和权威发证机构签章等,目的是防止身份假冒和欺诈。身份欺诈手法有多种多样。下面是几种典型的身份欺诈:,17,象棋大师问题A不懂象棋,但可向象棋大师B和C同时发出挑战。比赛在同一时间和地点,但不在同一房间进行,并且B和C之间互不见面。A与B之间,A执黑棋,

10、B执白棋;A与C之间,A执白棋,B执黑棋。首先B执白棋先下一步,A记住后走到另一个房间下同样一步,然后等待C执黑棋下一步,A记住后又去对付B,以此类推。比赛结果可能是:A赢一盘并输一盘,或者两盘均平局。这是一种中间人欺诈。,18,中间人合伙欺骗A在黑手党成员B开设的饭馆吃饭,黑手党成员C正在D的珠宝店买珠宝,B和C之间有秘密无线通信联络,而A和D并不知道其中有诈。A准备付账,B向C发出信号准备实施欺诈。A向B出示身份证明,B告诉C,C向D出示同样的证明,D向C询问问题时,C经B向A询问同一问题,B再将答案告诉C,C再回答D。经过B和C两个中间人完成A向D的身份证明,实现了C向D购买了珠宝,而把

11、账记在A的账户上。这是一种中间人B和C合伙的欺诈。,19,多身份欺诈A首先创建多个身份并公布,其中之一从未使用过。然后以该身份作案,并只用一次。由于A不再使用该身份,除了目击者外无人知道犯罪人的真实身份,因此A很难被发现。这就是多个身份的欺诈。为了防止身份欺诈,必须通过身份认证系统进行严格的身份验证。身份认证系统有两方认证和三方认证等形式。,20,两方认证系统由申请者和验证者组成,申请者出示证件,提出某种要求;验证者检验申请者所提供证件的合法性和有效性,以确定是否满足要求。三方认证系统除了申请者和验证者外,还有一个仲裁者,由双方都信任的人充当纠纷的仲裁者和调节者。另外,对于身份认证系统,还有攻

12、击者,试图伪装申请者,骗取验证者的信任。,21,身份认证也称实体认证,它与消息认证的差别在于,前者本身不提供时间性,而后者一般都是实时的。实体认证通常是证实实体本身,而消息认证除了证实消息的合法性和完整性外,还要知道消息的含义。1.身份认证系统的基本要求可识别率最大化:验证者正确识别合法申请者身份的概率最大化。可欺骗率最小化:攻击者伪装申请者欺骗验证者的成功率要小到几乎可以忽略的程度。,22,不可传递性:验证者不能用申请者提供的信息来伪装申请者,骗取他人的验证和信任。计算有效性:身份认证所需的计算量要小。节省通信带宽:身份认证所需的通信次数和数据量要小。安全存储:身份认证所需的秘密参数能够安全

13、地存储。相互认证:有些应用场合要求双方能够互相进行身份认证。第三方可信性:第三方必须是双方都信任的人或组织。,23,2.常用的身份认证技术身份认证是常用的安全设施,一般操作系统都提供了基于口令的身份认证,这也是最常用的身份认证方法。在电子银行、电子证券、电子商务等电子交易系统中,则需要更复杂、更安全的用户身份证明和认证机制,如数字证书、U-Key、IC卡、一次性密码等。(一)基于口令的身份认证在计算机系统中,口令是一种可选的身份认证措施,一般由510个字符串组成,选取原则是易记忆、难猜中和抗分析能力强。,24,口令是最基本的安全措施,可以防止他人非法登录系统,获取敏感信息。防止口令泄漏是保证系

14、统安全的关键口令泄漏的主要原因有:用户保管不善或被攻击者诱骗而无意中泄漏;在操作过程中被他人窥视而泄漏;被攻击者推测猜中而泄漏;在网上传输未加密口令时被截获而泄漏;在系统中存储时被攻击者分析出来而泄漏。,25,防止口令泄漏或破解的措施有:用户必须妥善地保管自己的口令。口令应当足够长,最好不要使用诸如名字、生日、电话号码等公开的和规律性的信息作为口令,以防止口令被攻击者轻易地猜中。口令应当经常更换,最好不要长期固定不变地使用一个口令。口令必须加密后才能在网络中传输或在系统中存储,并且口令加密算法具有较高的抗密码分析能力。,26,在安全性要求高的场合应当采用更加安全身份认证技术。从技术的角度,口令

15、认证系统必须提供口令存储、传输、验证以及管理等措施。(1)口令存储通常,口令是以密文方式存储。例如,Unix系统中采用DES算法对口令加密存储,首先以用户口令的前8个字符作为DES密钥,对一个常数进行加密,将所得的64位结果变换成一个字符串,然后存储在系统字符表中。,27,实验表明,使用穷举搜索法从95个可能的字符中筛选出4个字符只需20多个小时。因此,口令长度小于5个字符是不安全的。很多系统采用Hash对口令加密存储,即使攻击者得到散列值,也无法推导出口令明文。(2)口令传输在网络环境下,由服务器统一管理网络用户的账户,对用户身份进行认证。用户口令要传送到服务器上进行认证。为了防止口令传输泄

16、密问题,需要用双方默认的加密算法对口令加密后再传输。,28,(3)口令验证系统得到用户口令后,与预先存储的口令进行比较,以此来验证该用户的身份。在某些系统中,需要双方相互认证,不仅系统要检验用户的口令,用户也要求检验系统的口令,只有双方的身份都通过认证后,才能开始执行后续的操作。(4)口令管理在操作系统中,通常提供了可选的口令管理功能,如口令最小长度、定期改变的周期、口令惟一性和口令到期后宽限的登录次数等。,29,(二)基于一次性口令的身份认证 在证券、银行以及保险等行业中都提供了电话或网络委托业务,用户可以通过电话委托实现交易。由于用户使用电话机来输入包括口令在内的相关信息,这些信息不可能通

17、过加密方式来保护,必须以明文方式在电话网中传输。如果不采取其它保护措施的话,则可能发生因电话被监听而泄漏口令的问题。下面举例来说明电话委托业务过程。,30,未加保护的电话委托过程用户在证券公司注册账号和口令;用户使用电话机拨通证券公司账号服务器,请求电话委托业务;账号服务器通过电话语音提示用户输入账号和口令;用户的账户和口令以明文方式通过电话线传输到证券公司账号服务器;证券公司账号服务器验证用户的账户和口令后,允许用户通过电话提交委托业务。,31,这里存在着严重的安全隐患,如果有人利用电话线监听到用户账户和口令,则可以轻而易举地进入用户账户。基于一次性口令的电话委托过程用户在证券公司账号服务器

18、上注册账号和口令(注册口令);用户使用电话机拨通账号服务器,并请求电话委托业务;账号服务器通过电话语音提示用户输入账号;账号服务器随机生成一个中间口令,并通过电话语音提示用户;,32,用户将中间口令和注册口令一起输入到一个密码计算器中计算出一个随机口令,然后通过电话线传输到账号服务器;账号服务器收到随机口令后,以同样的方法计算出随机口令,比较两者一致性。如果一致的,则允许该用户通过电话提交委托业务。注册口令保留在账号服务器和用户手中,不在电话线中传输,不存在被监听问题。电话线中传输的是随机生成的中间口令和随机口令,并且只能使用一次。电话收线后再次连接时,系统将重新随机生成新中间口令和随机口令。

19、,33,随机口令是采用Hash函数生成的,不能通过随机口令推导出注册口令,即使被监听到也没有用处。因此,使用一次性口令认证系统能防止因电话线监听而带来的安全风险。在这种口令认证系统中,每个用户都需要配备一个基于Hash函数的密码计算器,专门用于计算随机口令。一次性口令认证系统采用“一次一密”方法能够有效地防止口令监听和传输泄漏问题,并且采用Hash函数来加密口令,具有较高的抗密码分析能力。,34,(三)基于数字证书的身份认证数字证书(Digital Certificate)是标志一个用户身份的一系列特征数据,其作用类似于现实生活中的身份证。一般的数字证书包含一个公钥、用户名以及发证机关的数字签

20、名等,通过数字证书可以建立起有效的网络实体认证系统,为网上电子交易提供用户身份认证服务。在ISO定义的一种称为X.509协议的实体认证框架中,规定了一种称为X.509证书的数字证书格式。,35,36,版本号:证书的版本号。序列号:每个证书都有惟一的序列号。算法标识:对证书签名的算法及其参数,如RSA算法等。发行机构名称:证书发行机构(CA)的名称。有效期:证书有效的时间段,标有起始日期和终止日期。用户名:证书所有人的名称。用户公钥信息:证书所有人的公钥信息,包括算法、参数和公钥。签名:CA对证书的签名。,37,数字证书是由权威的证书发行机构发放和管理的,证书发行机构也称为认证中心(CA)。数字

21、证书发放过程如下:用户产生了自己的密钥对,然后将公钥及有关个人身份信息传送给一个证书认证中心。(2)认证中心在核实用户身份后,发给该用户一个含有认证中心签名的数字证书,表示认证中心对该用户身份及其公钥的认可。当该用户被要求提供身份证明以及公钥合法性时,可以提供数字证书。,38,在基于数字证书的身份认证系统中,证书的可信度非常重要,与CA的可信度密切相关。如果两个人持有同一CA签发的证书,证书验证比较简单,只需验证证书上CA签名即可。如果两个人持有不同CA签发的证书,其证书验证要复杂得多。这需要采用适当的CA信任模型来建立CA之间的信任关系。例如采用一种树型结构,顶级是一个根CA,每个CA都要从

22、它的上一级获取证书,并存放由下级CA签发的所有证书。,39,假如A的证书由CA4签发,B的证书由CA3签发,CA4的证书由CA2签发,而CA2和CA3的证书都是由CA1签发的,即CA1是双方共同信任的CA。如果A和B相互验证对方的证书,则必须沿着证书树回溯找到CA1,通过CA1来验证对方的证书。,40,A和B之间的身份认证可采用单向或双向认证协议来实现。1.单向认证协议单向认证协议是一方到另一方(如从A到B)的单向通信,它除了提供双方身份的证明外,还能提供通信过程中的信息完整性以及防止任何重播攻击。认证过程如下:(1)A产生一个随机数RA,作为消息标识符。,41,(2)A构造一条消息MA(TA

23、,RA,IB,d),其中TA是A的时间标记,IB是B的身份证明,d是任意一条数据消息。为了安全起见,数据可用B的公钥EB加密。(3)A将 MA(CA,DA(MA)发给B,CA是A的证书,DA(MA)是用A的私钥DA加密的消息MA。(4)B收到MA后,确认CA有效,并得到A的公钥EA。(5)B用EA解密DA(MA),这样,既证明了A的身份,又验证了A所签发消息的完整性。,42,(6)B检查MA中的IB,确认该消息是发给自己的。(7)B检查MA中的TA,确认该消息是刚发来的。(8)B检查MA中的RA,确认该消息不是旧消息的重播。2.双向认证协议双向认证协议是在单向认证协议上增加了反向应答,并认证应

24、答者的身份真实性,还可提供双方通信的机密性及抗重播攻击能力。(1)(8)步同上。(9)B产生另一个随机数RB,作为一个应答消息的标识符。,43,(10)B构造一条消息MB(TB,RB,IA,RA,d),其中TB是B的时间标记,IA是A的身份证明,RA是A产生的随机数,d是任意一条数据消息,并可用A的公钥EA加密。(11)B将DB(MB)发给A,DB(MB)是用B的私钥DB加密的消息MB。(12)A收到DB(MB)后,用EB解密DB(MB)。既可证明B的身份,又验证了消息的完整性。(13)A检查MB中的IA,确认该消息是发给自己的。(14)A检查MB中的TB,确认该消息是刚发送来的。(15)A检

25、查MB中的RB,确认该消息不是重播消息。,44,证书可以存放在一个数据库中,通过公共目录发布,用户可通过公共目录查询证书。对于被注销的证书,要从公共目录中删除,但要保留证书副本,作为今后解决纠纷的证据。(四)基于个人特征的身份认证在刑事案件侦破中,经常利用人的生理特征来确认一个人的身份。这种身份认证技术具有可信度高、随身携带、难以伪造等特点。表征个人身份的特征有很多,如容貌、肤色、头发、身材、手印、指纹、脚印、口音、体味、视网膜、遗传因子(DNA)、血型、笔迹等。,45,有些个人特征将随着时间而变化,如容貌、身材、口音等。有些特征将终生不变,如DNA、视网膜、指纹、血型等。并不是所有的个人特征

26、都适合作为验证个人身份来使用,有些验证方式难以被人们接受,如唇印、足印等;有些个人特征识别率低,如可变的特征;有些个人特征识别率高,但难于实现或实现成本过高,如血型、DNA等。基于个人特征的身份验证系统应当具有如下的特点:个人特征强、样本易采集、识别率高、实现成本低、易推广使用。,46,1.指纹认证指纹是一种准确而可靠的身份认证手段,很早就用于侦察破案和契约签定中。每个人手指的皮肤纹路图都不相同,相同的可能性不到1010,且形状不随时间而变化,指纹提取也非常方便。每个手指的纹路可分成两大类:环状和涡状,根据细节和发叉等,每类又可分成50200个不同的图样,通过人工或仪器对指纹进行分析和鉴别。,

27、47,指纹自动识别系统主要由指纹阅读器、指纹图样压缩、指纹数据库、指纹检索和指纹识别等部分组成,能存储数百万个指纹,具有很高的识别率和处理能力。指纹自动识别系统可应用于执法部门、金融机构、证券交易、驾驶执照、社会保险及安全入口等领域的身份验证,效果良好。同类应用系统还有指纹门锁和门禁系统,用于楼宇和家庭保安系统中。,48,2.语音认证每个人的语音都各有特点,人具有很强的语音识别能力,即使在有噪音环境中也能分辨出熟人的声音。语音识别系统将每个人的短语语音分解成特征参数存储在数据库中。由于每个人的语音参数不完全相同,因此可用来身份认证。语音识别的差错率一般在0.8%1.0%左右。语音身份认证系统在

28、军事和商业等领域中得到一些应用。,49,3.视网膜图样验证人的视网膜血管图样具有良好的个人特征。这种识别系统的基本方法是利用电子光学仪器将视网膜血管图样记录下来,然后对图样进行压缩编码并存放在数据库中。根据对图样节点和分支的分析和检测结果进行分类识别。这种识别系统的识别差错率几乎为0,可靠性很高,但成本也很高,主要用于军事和银行等一些身份认证要求严格的场合。,50,4.虹膜图样验证虹膜是眼球角膜和晶体之间的环形薄膜,其图样具有良好的个人特征,可以提供比指纹更细致的信息。虹膜采样比视网膜采样更加方便,易被人们接受,并且识别差错率为1/133000,可靠性很高,同样实现成本也很高。这种身份识别系统可用于安全入口、接入控制、ATM机、信用卡以及护照等领域中的身份认证,已有相应的产品问世。其它身份认证技术还有手写体识别、脸型识别等,但识别精度有待于提高。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号