1、第九章 系统安全性9.1 9.1 系统安全的基本概念系统安全的基本概念 9.2 9.2 数据加密技术数据加密技术 9.3 9.3 认证技术认证技术 9.4 9.4 访问控制技术访问控制技术9.5 9.5 计算机病毒计算机病毒9.1系统安全的基本概念9.1.1系统安全性的内容和性质系统安全性的内容和性质1系统安全性的内容系统安全性的内容系统安全性包括系统安全性包括物理安全物理安全、逻辑安全逻辑安全和和安全安全管理管理三方面的内容。三方面的内容。逻辑安全则包括逻辑安全则包括:(1)(1)数据机密性数据机密性(Data Secrecy)(Data Secrecy)(2)(2)数据完整性数据完整性(D
2、ata Integrity)(Data Integrity)(3)(3)系统可用性系统可用性(System Availability)(System Availability)2系统安全的性质(1)多面性多面性(2)动态性动态性(3)层次性层次性(4)适度性适度性 9.1.2 对系统安全威胁的类型(1)(1)假冒假冒(Masquerading)(Masquerading)用户身份用户身份 (2)(2)数据截取数据截取(Data Interception)(Data Interception)(3)(3)拒绝服务拒绝服务(Denial of Server)(Denial of Server)(4
3、)(4)修改修改(Modification)(Modification)信息信息 (5)(5)伪造伪造(Fabrication)(Fabrication)信息信息(6)(6)否认否认(Repudiation)(Repudiation)操作操作(7)(7)中断中断(Interruption)(Interruption)传输传输 (8)(8)通信量分析通信量分析(Traffic Analysis)(Traffic Analysis)对各类资源的威胁 1.1.对硬件的威胁对硬件的威胁 电源掉电电源掉电 ;设备故障和丢失;设备故障和丢失 2.2.对软件的威胁对软件的威胁 删除软件;拷贝软件;恶意修改删
4、除软件;拷贝软件;恶意修改 3.3.对数据的威胁对数据的威胁 窃取机密信息窃取机密信息 ;破坏数据的可用性;破坏数据的可用性 ;破;破坏数据的完整性坏数据的完整性 4.4.对远程通信的威胁对远程通信的威胁 被动攻击方式;主动攻击方式被动攻击方式;主动攻击方式9.1.3信息技术安全评价公共准则1CC的由来的由来TCSECTCSEC中安全程度分:中安全程度分:D D1 1,C,C1 1,C,C2 2,B,B2 2,B,B3 3,A,A1 1,A,A2 2八级。八级。D D1 1安全保护欠缺级(最低)安全保护欠缺级(最低)C C1 1自由安全保护级自由安全保护级C C2 2受控存取控制级受控存取控制
5、级(ORACLE,UNIX(ORACLE,UNIX皆达到此级皆达到此级)BB有强制存取控制和形式化模式技术的应用有强制存取控制和形式化模式技术的应用B B3 3,A,A1 1对内核进行形式化的最高级描述和验证对内核进行形式化的最高级描述和验证2CC的组成CC由两部分组成,一部分是信息技术产品的安由两部分组成,一部分是信息技术产品的安全功能需求定义,这是面向用户的,用户可以全功能需求定义,这是面向用户的,用户可以按照安全功能需求来定义按照安全功能需求来定义“产品的保护框架产品的保护框架(PP)”;CC的另一部分是安全保证需求定义,这是面向的另一部分是安全保证需求定义,这是面向厂商的,厂商应根据厂
6、商的,厂商应根据PP文件制定产品的文件制定产品的“安安全目标文件全目标文件”(ST)。9.2数据加密技术9.2.1数据加密的基本概念数据加密的基本概念1数据加密技术的发展数据加密技术的发展密码学是一门既古老又年轻的学科。早在几密码学是一门既古老又年轻的学科。早在几千年前,人类就已经有了通信保密的思想,并千年前,人类就已经有了通信保密的思想,并先后出现了先后出现了易位法易位法和和置换法置换法等加密方法。到了等加密方法。到了1949年,信息论的创始人香农年,信息论的创始人香农(C.E.Shannon)论证了由传统的加密方法所获得的密文几乎都论证了由传统的加密方法所获得的密文几乎都是可攻破的。是可攻
7、破的。1数据加密技术的发展直至进入直至进入2020世纪世纪6060年代,由于电子技术和计算机年代,由于电子技术和计算机技术的迅速发展,以及结构代数、可计算性理技术的迅速发展,以及结构代数、可计算性理论学科研究成果的出现,才使密码学的研究走论学科研究成果的出现,才使密码学的研究走出困境而进入了一个新的发展时期;特别是美出困境而进入了一个新的发展时期;特别是美国的国的数据加密标准数据加密标准DESDES和和公开密钥密码体制公开密钥密码体制的推的推出,又为密码学的广泛应用奠定了坚实的基础。出,又为密码学的广泛应用奠定了坚实的基础。2数据加密模型一个数据加密模型由下述四部分组成。一个数据加密模型由下述
8、四部分组成。(1)明文。准备加密的文本,称为明文明文。准备加密的文本,称为明文P。(2)密文。加密后的文本,称为密文密文。加密后的文本,称为密文Y。(3)加密加密(解密解密)算法算法E(D)。用于实现从明文。用于实现从明文(密文密文)到密文到密文(明文明文)转换的公式、规则或程序。转换的公式、规则或程序。(4)密钥密钥K。密钥是加密和解密算法中的关键参数。密钥是加密和解密算法中的关键参数。加密加密算法算法EKe解密解密算法算法DKd干扰干扰密密 文文干扰干扰明文明文P明文明文P加密钥匙加密钥匙Ke解密钥匙解密钥匙KdY YY Y图图 数据加密模型数据加密模型 2数据加密模型加密过程可描述为:在
9、发送端利用加密算法加密过程可描述为:在发送端利用加密算法EKe和加密密钥和加密密钥Ke对明文对明文P进行加密,得到密文进行加密,得到密文Y=EKe(P)。接收端利用解密算法。接收端利用解密算法DKd和解密和解密密钥密钥Kd对密文对密文Y进行解密,将密文恢复为明文进行解密,将密文恢复为明文P=DKd(Y)。在密码学中,把设计密码的技术称为密码编在密码学中,把设计密码的技术称为密码编码,把破译密码的技术称为密码分析。密码编码,把破译密码的技术称为密码分析。密码编码和密码分析合起来称为密码学。码和密码分析合起来称为密码学。3加密算法的类型1)按其对称性分类按其对称性分类 (1)对称加密算法。对称加密
10、算法。(2)非对称加密算法。非对称加密算法。2)2)按所变换明文的单位分类按所变换明文的单位分类 (1)序列加密算法序列加密算法 (2)分组加密算法分组加密算法4基本加密方法1)易位法易位法易位法是指按照一定的规则,重新安排明文易位法是指按照一定的规则,重新安排明文中的比特或字符的顺序来形成密文,而字符本中的比特或字符的顺序来形成密文,而字符本身保持不变。按易位单位的不同又可分成比特身保持不变。按易位单位的不同又可分成比特易位和字符易位两种易位方式。前者的实现方易位和字符易位两种易位方式。前者的实现方法简单易行,并可用硬件实现,主要用于数字法简单易行,并可用硬件实现,主要用于数字通信中;而后者
11、即字符易位法则是利用密钥对通信中;而后者即字符易位法则是利用密钥对明文进行易位后形成密文。明文进行易位后形成密文。1afllskso5esilyntw4lnmomant7paedobuoGEMACUBK3toossctc8eriricxb2selawaia6rnntsowdESIL YNTWRNNTSOWDFAEDOBNO TOOSSCTCLNMOMANTAFLLSKSOSELAWAIA 密 文two two Swiss Bank account sixmillion dollars to myPlease transfer one 原 文2)置换法置换法置换法是按照一定的规则,用一个字符去置
12、置换法是按照一定的规则,用一个字符去置换换(替代替代)另一个字符来形成密文。如将字母另一个字符来形成密文。如将字母a,b,c,x,y,z循环右移三位后,形成循环右移三位后,形成d,e,f,a,b,c字符序列,再利用移位后字符序列,再利用移位后的序列中的字母去分别置换未移位序列中对应的序列中的字母去分别置换未移位序列中对应位置的字母。单纯移动位置的字母。单纯移动K位的置换算法很容易位的置换算法很容易被破译,比较好的置换算法是进行映像。被破译,比较好的置换算法是进行映像。a b c d e f g h i j k l m n o p q r s t u v w x y z QWE R T YU I
13、 O P A S D F GH J K L Z X C V B NM9.2.2对称加密算法与非对称加密算法1对称加密算法对称加密算法最有代表性的对称加密算法是数据加密标准最有代表性的对称加密算法是数据加密标准DES(Data Eneryption Standard)。该算法原。该算法原来是来是IBM公司于公司于19711972年研制成功的,后年研制成功的,后被美国国家标准局选为数据加密标准。被美国国家标准局选为数据加密标准。ISO现现在已将在已将DES作为数据加密标准。作为数据加密标准。在在DES中所使用的密钥长度为中所使用的密钥长度为64位,它由位,它由两部分组成,一部分是实际密钥,占两部分
14、组成,一部分是实际密钥,占56位;另一部分是位;另一部分是8位奇偶校验码。位奇偶校验码。DES属于分组加密算法,它将明文按属于分组加密算法,它将明文按64位一位一组分成若干个明文组,每次利用组分成若干个明文组,每次利用56位密位密钥对钥对64位的二进制明文数据进行加密,位的二进制明文数据进行加密,产生产生64位密文数据。位密文数据。初始易位处理初始易位处理迭代处理迭代处理i左右互换左右互换还原易位还原易位56位位钥钥匙匙Kii=11664位密文位密文Li1Ri1LiRif(a)DES算法总框图算法总框图(b)迭代过程示意图迭代过程示意图64位明文位明文第一阶段:先将明文分出第一阶段:先将明文分
15、出64位的明文段,然后对位的明文段,然后对64位明文段做初始易位处理。位明文段做初始易位处理。第二阶段:对初始易位结果第二阶段:对初始易位结果X0进行进行16次迭代处理次迭代处理(相应于第相应于第217步步),每一次使用,每一次使用56位加密密钥位加密密钥Ki。第。第217步的迭代过程如图步的迭代过程如图9-4(b)所示。由所示。由图可以看出,输出的左图可以看出,输出的左32位位Li是输入右是输入右32位位Ri-1的拷贝;而输出的右的拷贝;而输出的右32位位Ri,则是在密钥,则是在密钥Ki的控制下,对输入右的控制下,对输入右32位位Ri-1做函数做函数f的变换后的变换后的结果,再与输入左的结果
16、,再与输入左32位位Li-1进行异或运算而进行异或运算而形成的,即形成的,即第三阶段:把经过第三阶段:把经过16次迭代处理的结果次迭代处理的结果(64位位)的的左左32位与右位与右32位互易位置。位互易位置。第四阶段:进行初始易位的逆变换。第四阶段:进行初始易位的逆变换。Li=Ri-1Ri=f(Ri-1,Ki)Li-1 2非对称加密算法非对称密码算法在对数据进行加密和解密非对称密码算法在对数据进行加密和解密时,使用不同的密钥。每个用户都保存时,使用不同的密钥。每个用户都保存着一对密钥,每个人的公开密钥都对外着一对密钥,每个人的公开密钥都对外公开。公开。可用公开密钥对数据进行加密,用私用密可用公
17、开密钥对数据进行加密,用私用密钥进行解密。这样就可以保证信息不会钥进行解密。这样就可以保证信息不会外泄。外泄。公开密钥算法的特点如下:公开密钥算法的特点如下:(1)设加密算法为设加密算法为E、加密密钥为加密密钥为Ke,可利用它们可利用它们对明文对明文P进行加密,得到进行加密,得到EKe(P)密文。设解密算法密文。设解密算法为为D,解密密钥为解密密钥为Kd,可利用它们将密文恢复为可利用它们将密文恢复为明文,即明文,即 DKd(EKe(P)=P(2)要保证从要保证从Ke推出推出Kd是极为困难的,或者说,是极为困难的,或者说,从从Ke推出推出Kd实际上是不可能的。实际上是不可能的。(3)在计算机上很
18、容易产生成对的在计算机上很容易产生成对的KeKe和和KdKd。(4)加密和解密运算可以对调,即利用加密和解密运算可以对调,即利用DKd对明文对明文进行加密形成密文,然后用进行加密形成密文,然后用EKe对密文进行解密,对密文进行解密,即即 EKe(DKd(P)=P 在公开密钥体制中,最著名的是在公开密钥体制中,最著名的是RSA体制,它已体制,它已被被ISO推荐为公开密钥数据加密标准。推荐为公开密钥数据加密标准。9.2.3 数字签名和数字证明书 1 1.数字签名数字签名 为使数字签名能代替传统的签名,必须满足为使数字签名能代替传统的签名,必须满足三个条件:三个条件:(1)1)接收者能够核实发送者对
19、报文的签名。接收者能够核实发送者对报文的签名。(2)2)发送者事后不能抵赖其对报文的签名。发送者事后不能抵赖其对报文的签名。(3)3)接收者无法伪造对报文的签名。接收者无法伪造对报文的签名。1)简单数字签名简单数字签名在这种数字签名方式中,发送者在这种数字签名方式中,发送者A可使用私用可使用私用密钥密钥Kda对明文对明文P进行加密,形成进行加密,形成DKda(P)后传送后传送给接收者给接收者B。B可利用可利用A的公开密钥的公开密钥Kea对对DKda(P)进行解密,得到进行解密,得到EKea(DKda(P)=P.DPDKda(P)=YEEKea(DKda(P)=PKdaKea(a)DPDKda(
20、P)EEKeb(DKda(P)KdaKeb(b)DKdbDKda(P)EKeaP我们按照对数字签名的三点基本要求进行分析后我们按照对数字签名的三点基本要求进行分析后可以得知:可以得知:(1)接收者能利用接收者能利用A的公开密钥的公开密钥Kea对对DKda(P)进进行解密,这便证实了发送者对报文的签名。行解密,这便证实了发送者对报文的签名。(2)由于只有发送者由于只有发送者A才能发送出才能发送出DKda(P)密文,密文,故不容故不容A进行抵赖。进行抵赖。(3)由于由于B没有没有A所拥有的私用密钥,故所拥有的私用密钥,故B无法伪无法伪造对报文的签名。造对报文的签名。2)保密数字签名为了实现在发送者
21、为了实现在发送者A A和接收者和接收者B B之间的保密数字签之间的保密数字签名,要求名,要求A A和和B B都具有密钥。都具有密钥。(1)(1)发送者发送者A A可用自己的私用密钥可用自己的私用密钥KdaKda对明文对明文P P加密加密,得到密文得到密文DKda(P)DKda(P)。(2)A(2)A再用再用B B的公开密钥的公开密钥KebKeb对对DKda(P)DKda(P)进行加密,进行加密,得到得到EKeb(DKda(P)EKeb(DKda(P)后送后送B B。(3)B(3)B收到后,先用私用密钥收到后,先用私用密钥KdbKdb进行解密,即进行解密,即DKdb(EKeb(DKda(P)=D
22、Kda(P)DKdb(EKeb(DKda(P)=DKda(P)。(4)B(4)B再用再用A A的公开密钥的公开密钥KeaKea对对DKda(P)DKda(P)进行解密,进行解密,得到得到EKea(DKda(P)=PEKea(DKda(P)=P。2.数字证明书(Certificate)(1)1)用户用户A A在使用数字证明书之前,应先向认证机在使用数字证明书之前,应先向认证机构构CACA申请数字证明书,此时申请数字证明书,此时A A应提供身份证明应提供身份证明和希望使用的公开密钥和希望使用的公开密钥A A。(2)CA2)CA在收到用户在收到用户A A发来的申请报告后,若决定接发来的申请报告后,若
23、决定接受其申请,便发给受其申请,便发给A A一份数字证明书,在证明一份数字证明书,在证明书中包括公开密钥书中包括公开密钥A A和和CACA发证者的签名等信息,发证者的签名等信息,并对所有这些信息利用并对所有这些信息利用CACA的私用密钥进行加密的私用密钥进行加密(即即CACA进行数字签名进行数字签名)。(3)(3)用户用户A A在向用户在向用户B B发送报文信息时,由发送报文信息时,由A A用私用私用密钥对报文加密用密钥对报文加密(数字签名数字签名),并连同已加,并连同已加密的数字证明书一起发送给密的数字证明书一起发送给B B。(4)(4)为了能对所收到的数字证明书进行解密,为了能对所收到的数
24、字证明书进行解密,用户用户B B须向须向CACA机构申请获得机构申请获得CACA的公开密钥的公开密钥B B。CACA收到用户收到用户B B的申请后,可决定将公开密钥的申请后,可决定将公开密钥B B发送给用户发送给用户B B。(5)5)用户用户B B利用利用CACA的公开密钥的公开密钥B B对数字证明书加以对数字证明书加以解密,以确认该数字证明书确系原件,并从解密,以确认该数字证明书确系原件,并从数字证明书中获得公开密钥数字证明书中获得公开密钥A A,并且也确认该并且也确认该公开密钥公开密钥A A确系用户确系用户A A的。的。(6)6)用户用户B B再利用公开密钥再利用公开密钥A A对用户对用户
25、A A发来的加密发来的加密报文进行解密,得到用户报文进行解密,得到用户A A发来的报文的真实发来的报文的真实明文。明文。9.2.4网络加密技术1链路加密链路加密(Link Encryption)链路加密,是对在网络相邻结点之间通信线链路加密,是对在网络相邻结点之间通信线路上传输的数据进行加密。路上传输的数据进行加密。EEDEDP结点结点1Ke1EKe1(P)Kd2Ke2结点结点2EKe2(P)结点结点3EKe3(P)Kd3Ke3P2端端加密(End to End Encryption)在单纯采用链路加密方式时,所传送的在单纯采用链路加密方式时,所传送的数据在中间结点将被恢复为明文,因此,数据在
26、中间结点将被恢复为明文,因此,链路加密方式尚不能保证通信的安全性;链路加密方式尚不能保证通信的安全性;而端而端端加密方式是在源主机或前端机端加密方式是在源主机或前端机FEPFEP中的高层中的高层(从传输层到应用层从传输层到应用层)对所传对所传输的数据进行加密。输的数据进行加密。这样可以保证在中这样可以保证在中间结点不会出现明文。间结点不会出现明文。ACCFEPKDCFEP主机AFFEPFEP主机B12345图 端端加密方式9.3 认证技术9.3.1基于口令的身份认证基于口令的身份认证1口令口令当一个用户要登录某台计算机时,操作系统当一个用户要登录某台计算机时,操作系统通常都要认证用户的身份。而
27、利用口令来确认通常都要认证用户的身份。而利用口令来确认用户的身份是当前最常用的认证技术。用户的身份是当前最常用的认证技术。2对口令机制的基本要求1)口令长度适中口令长度适中2)自动断开连接自动断开连接3)不回送显示不回送显示 4)记录和报告记录和报告3一次性口令(One Time Password)为了把由于口令泄露所造成的损失减到最小,为了把由于口令泄露所造成的损失减到最小,用户应当经常改变口令。用户应当经常改变口令。一次性口令机制,即口令被使用一次后,就换另一次性口令机制,即口令被使用一次后,就换另一个口令。在采用该机制时,用户必须提供记一个口令。在采用该机制时,用户必须提供记录有一系列口
28、令的一张表,并将该表保存在系录有一系列口令的一张表,并将该表保存在系统中。系统为该表设置一指针用于指示下次用统中。系统为该表设置一指针用于指示下次用户登录时所应使用的口令。户登录时所应使用的口令。4口令文件通常在口令机制中,都配置有一份口令文件,通常在口令机制中,都配置有一份口令文件,用于保存合法用户的口令和与口令相联系的用于保存合法用户的口令和与口令相联系的特权。特权。保证口令文件安全性的最有效的方法是,利用保证口令文件安全性的最有效的方法是,利用加密技术,其中一个行之有效的方法是选择加密技术,其中一个行之有效的方法是选择一个函数来对口令进行加密一个函数来对口令进行加密,将加密后的口将加密后
29、的口令存入口令文件中。令存入口令文件中。超过规超过规定次数?定次数?口令合法?口令合法?进入系统进入系统拒绝拒绝进入进入否否是是否否口令文件口令文件进行口令进行口令比较比较f(x)f(x)加密函数加密函数存入口令存入口令用户输用户输入口令入口令是是5挑战响应验证在该方法中,由用户自己选择一个算法,算在该方法中,由用户自己选择一个算法,算法可以很简单,也可以比较复杂,如法可以很简单,也可以比较复杂,如X2运算。运算。该算法也需告知服务器。每当用户登录时,服该算法也需告知服务器。每当用户登录时,服务器就给用户发来一个随机数,如务器就给用户发来一个随机数,如12,用户,用户收到后便对该数据进行平方运
30、算得到收到后便对该数据进行平方运算得到144,用,用户就用它作为口令。服务器将所收到的口令与户就用它作为口令。服务器将所收到的口令与自己计算自己计算(利用利用X2算法算法)的结果进行比较,如相的结果进行比较,如相同,则允许用户上机,否则,拒绝用户登录。同,则允许用户上机,否则,拒绝用户登录。9.3.2 基于物理标志的认证技术1基于磁卡的认证技术基于磁卡的认证技术根据数据记录原理,可将当前使用的卡分根据数据记录原理,可将当前使用的卡分为磁卡和为磁卡和IC卡两种。磁卡是基于磁性原理来卡两种。磁卡是基于磁性原理来记录数据的,在其上贴有含若干条磁道的磁记录数据的,在其上贴有含若干条磁道的磁条。一般在磁
31、条上有三条磁道,每条磁道都条。一般在磁条上有三条磁道,每条磁道都可用来记录不同标准和不同数量的数据。可用来记录不同标准和不同数量的数据。2.基于IC卡的认证技术 在在ICIC卡中可装入卡中可装入CPUCPU和存储器芯片,使该卡具和存储器芯片,使该卡具有一定的智能。有一定的智能。ICIC卡分为以下三种类型:卡分为以下三种类型:(1)(1)存储器卡存储器卡:这种卡中只有一个这种卡中只有一个E2PROM(E2PROM(可电可电擦、可编程只读存储器擦、可编程只读存储器)芯片芯片(2)(2)微处理器卡微处理器卡:它除具有它除具有E2PROME2PROM外,还增加外,还增加了一个微处理器了一个微处理器(3
32、)(3)密码卡。在这种卡中又增加了加密运算协密码卡。在这种卡中又增加了加密运算协处理器和处理器和RAMRAM9.3.3基于生物标志的认证技术1常用于身份识别的生理标志常用于身份识别的生理标志被选用的生理标志应具有这样三个条件:被选用的生理标志应具有这样三个条件:(1)足够的可变性,系统可根据它来区别成千上足够的可变性,系统可根据它来区别成千上万的不同用户;万的不同用户;(2)被选用的生理标志应保持稳定,不会经常发被选用的生理标志应保持稳定,不会经常发生变化;生变化;(3)不易被伪装。不易被伪装。1)指纹指纹2)视网膜组织视网膜组织3)声音声音4)手指长度手指长度2生物识别系统的组成1)对生物识
33、别系统的要求对生物识别系统的要求生物识别系统是一个相当复杂的系统,要设生物识别系统是一个相当复杂的系统,要设计出一个非常实用的生物识别系统必须满足计出一个非常实用的生物识别系统必须满足如下三方面的要求。如下三方面的要求。(1)识别系统的性能必须满足需求。识别系统的性能必须满足需求。(2)能被用户接受。能被用户接受。(3)系统成本适当。系统成本适当。2)生物识别系统的组成生物识别系统通常由注册和识别两部分组成的。生物识别系统通常由注册和识别两部分组成的。(1)注册部分。在该系统中,配置有一张注册表,注册部分。在该系统中,配置有一张注册表,每个注册用户在表中都有一个记录。记录中至每个注册用户在表中
34、都有一个记录。记录中至少包含用户姓名和用户的重要特征。少包含用户姓名和用户的重要特征。(2)识别部分。它可分为两步,第一步是要求用识别部分。它可分为两步,第一步是要求用户输入用户登录名;第二步是对用户输入的生户输入用户登录名;第二步是对用户输入的生物特征进行识别。物特征进行识别。3指纹识别系统从从20世纪世纪70年代,开始研究利用计算机进行指纹年代,开始研究利用计算机进行指纹自动识别。自动识别。80年代指纹自动识别系统已在许多国家使用。但年代指纹自动识别系统已在许多国家使用。但他们的指纹识别系统是建立在中、小型计算机他们的指纹识别系统是建立在中、小型计算机系统的基础上的。系统的基础上的。20世
35、纪世纪90年代中期,随着年代中期,随着VLSI的迅速发展,才使的迅速发展,才使指纹识别系统小型化并进入了广泛应用的阶段。指纹识别系统小型化并进入了广泛应用的阶段。9.3.4基于公开密钥的认证技术 1.1.申请数字证书申请数字证书 由于由于SSLSSL所提供的安全服务,是基于公开密所提供的安全服务,是基于公开密钥证明书钥证明书(数字证书数字证书)的身份认证,因此,凡是的身份认证,因此,凡是要利用要利用SSLSSL的用户和服务器,的用户和服务器,都必须先向认证都必须先向认证机构机构(CA)(CA)申请公开密钥证明书。申请公开密钥证明书。(1)(1)服务器申请数字证书服务器申请数字证书 (2)(2)
36、客户申请数字证书客户申请数字证书2.SSL握手协议 (1)(1)身份认证身份认证 (2 2)协商加密算法协商加密算法 (3 3)协商加密密钥协商加密密钥3.数据加密和检查数据的完整性(1)1)数据加密数据加密 在客户机和服务器间传送的所有信息,都应利用协在客户机和服务器间传送的所有信息,都应利用协商后所确定的加密算法和密钥进行加密处理。商后所确定的加密算法和密钥进行加密处理。(2)2)检查数据的完整性检查数据的完整性 SSLSSL协议利用某种算法对所传送的数据进行计算,协议利用某种算法对所传送的数据进行计算,以产生能保证数据完整性的数据识别码以产生能保证数据完整性的数据识别码(MAC)(MAC
37、),再再把把MACMAC和业务数据一起传送给对方;而收方则利用和业务数据一起传送给对方;而收方则利用MACMAC来检查所收到数据的完整性。来检查所收到数据的完整性。9.4 访问控制技术9.4.1访问矩阵访问矩阵1保护域保护域(Protection Domain)1)访问权访问权为了对系统中的对象加以保护,应由系统来控为了对系统中的对象加以保护,应由系统来控制进程对对象的访问。制进程对对象的访问。把一个进程能对某对象把一个进程能对某对象执行操作的权力称为访问权执行操作的权力称为访问权(Access Right)。每个访问权可以用一个有序对每个访问权可以用一个有序对(对象名,权集对象名,权集)来表
38、示。来表示。2)保护域为了对系统中的资源进行保护而引入为了对系统中的资源进行保护而引入了保护域的概念,保护域简称为了保护域的概念,保护域简称为“域域”。“域域”是进程对一组对象访问权的集合,是进程对一组对象访问权的集合,进程只能在指定域内执行操作,这样,进程只能在指定域内执行操作,这样,“域域”也就规定了进程所能访问的对象也就规定了进程所能访问的对象和能执行的操作。和能执行的操作。F1RF2RW域域1F3RF4RWE域域 2F5RWF6RWEPloter2WPrinter1W域域 33)进程和域间的静态联系方式在进程和域之间,可以一一对应,即一个在进程和域之间,可以一一对应,即一个进程只联系着
39、一个域。这意味着,在进程的进程只联系着一个域。这意味着,在进程的整个生命期中,其可用资源是固定的,我们整个生命期中,其可用资源是固定的,我们把这种域称为把这种域称为“静态域静态域”。在这种情况下,。在这种情况下,进程运行的全过程都是受限于同一个域,这进程运行的全过程都是受限于同一个域,这将会使赋予进程的访问权超过了实际需要。将会使赋予进程的访问权超过了实际需要。4)进程和域间的动态联系方式在进程和域之间,也可以是一对多的关系,即一在进程和域之间,也可以是一对多的关系,即一个进程可以联系着多个域。在此情况下,可将个进程可以联系着多个域。在此情况下,可将进程的运行分为若干个阶段,其每个阶段联系进程
40、的运行分为若干个阶段,其每个阶段联系着一个域。着一个域。我们把这种一对多的联系方式称为动态联系方式,我们把这种一对多的联系方式称为动态联系方式,在采用这种方式的系统中,应增设保护域切换在采用这种方式的系统中,应增设保护域切换功能。功能。2访问矩阵我们可以利用一个矩阵来描述系统的访问控我们可以利用一个矩阵来描述系统的访问控制,并把该矩阵称为访问矩阵制,并把该矩阵称为访问矩阵(Access Matrix)。访问矩阵中的行代表域,列代表对。访问矩阵中的行代表域,列代表对象,矩阵中的每一项是由一组访问权组成的。象,矩阵中的每一项是由一组访问权组成的。因为对象已由列显式地定义,故可以只写出访因为对象已由
41、列显式地定义,故可以只写出访问权而不必写出是对哪个对象的访问权,每一问权而不必写出是对哪个对象的访问权,每一项访问权项访问权access(i,j)定义了在域定义了在域Di中执行的中执行的进程能对对象进程能对对象Qj所施加的操作集。所施加的操作集。D3D2D1R,W,EWWRR,W,ER,WWRR,W 对象对象 域域F1F2F3F4F5F6打印机打印机1绘图仪绘图仪2注:注:R读,读,W写,写,E执行执行图图 一个访问矩阵一个访问矩阵3具有域切换权的访问矩阵为了实现在进程和域之间的动态联系,应能为了实现在进程和域之间的动态联系,应能够将进程从一个保护域切换到另一个保护域。够将进程从一个保护域切换
42、到另一个保护域。为了能对进程进行控制,同样应将切换作为一为了能对进程进行控制,同样应将切换作为一种权力,仅当进程有切换权时,才能进行这种种权力,仅当进程有切换权时,才能进行这种切换。为此,在访问矩阵中又增加了几个对象,切换。为此,在访问矩阵中又增加了几个对象,分别把它们作为访问矩阵中的几个域;当且仅分别把它们作为访问矩阵中的几个域;当且仅当当switchaccess(i,j)时,才允许进程从域时,才允许进程从域i切换到域切换到域j。图 具有切换权的访问控制矩阵D3D2D1 对象对象 域域注:注:R读,读,W写,写,E执行,执行,S切换切换RF1R,WF2RF3F4R,W,E R,WF5F6R,
43、W,EWW打印打印机机1W扫描扫描仪仪2域域D1S域域D2S域域D39.4.2 访问矩阵的修改1.拷贝权(Copy Right)我们可利用拷贝权将在某个域中所拥有的访问权扩展到同我们可利用拷贝权将在某个域中所拥有的访问权扩展到同一列的其它域中如图所示。一列的其它域中如图所示。图图 具有拷贝权的访问控制矩阵具有拷贝权的访问控制矩阵D3D2D1 对象对象 域域EEEF1R*F2EW*F3(a)D3D2D1 对象对象 域域EEEF1RR*F2WEW*F3(b)1.2所有权(Owner Right)如果在如果在access(i,j)中包含所有访问权,则在域中包含所有访问权,则在域Di上运行的进程,可以
44、增加或删除其在上运行的进程,可以增加或删除其在j列上列上任何项中的访问权。任何项中的访问权。D3D2D1 对象对象 域域EO,EF1R*,OF2R*,O,WWF3(a)D3D2D1 对象对象 域域O,EF1WO,R*,W*F2WR*,O,WF3(b)图 带所有权的访问矩阵3控制权(Control Right)控制权则是用于改变矩阵内同一行中控制权则是用于改变矩阵内同一行中(域中域中)的各的各项访问权。项访问权。D3D2D1 对象对象 域域RF1R,WF2RF3F4R,W,E R,WF5F6R,WWW打印打印机机1绘图绘图仪仪2域域D1域域D2Control域域D3图 具有控制权的访问矩阵 9.
45、4.3 访问控制矩阵的实现1.1.访问控制表访问控制表(Access Control List)(Access Control List)这是指对访问矩阵按列这是指对访问矩阵按列(对象对象)划分,为每一列划分,为每一列建立一张访问控制表建立一张访问控制表ACLACL。在该表中,已把矩阵中在该表中,已把矩阵中属于该列的所有空项删除,此时的访问控制表是属于该列的所有空项删除,此时的访问控制表是由一有序对由一有序对(域,域,权集权集)所组成。所组成。使用访问控制使用访问控制表可以显著地减少所占用的存储空间,并能提高表可以显著地减少所占用的存储空间,并能提高查找速度。查找速度。访问控制表也可用于定义缺
46、省的访问权集访问控制表也可用于定义缺省的访问权集2访问权限(Capabilities)表把访问矩阵按行把访问矩阵按行(即域即域)划分,便可由每一行构划分,便可由每一行构成一张访问权限表。表中的每一项即为该域对成一张访问权限表。表中的每一项即为该域对某对象的访问权限。当域为用户某对象的访问权限。当域为用户(进程进程)、对象、对象为文件时,访问权限表便可用来描述一个用户为文件时,访问权限表便可用来描述一个用户(进程进程)对每一个文件所能执行的一组操作。对每一个文件所能执行的一组操作。类型文件文件文件打印机WRWRWER权 力 指向打印机1的指针 指向文件5的指针 指向文件4的指针 指向文件3的指针
47、对 象3210图图 访问权限表访问权限表 9.5 计 算 机 病 毒9.5.1 计算机病毒的基本概念1计算机病毒的定义计算机病毒的定义计算机病毒是一段程序,它能不断地进行计算机病毒是一段程序,它能不断地进行复制和感染其它程序,无需人为介入便能由复制和感染其它程序,无需人为介入便能由被感染的程序和系统传播出去。一般的病毒被感染的程序和系统传播出去。一般的病毒并不长。并不长。2计算机病毒的危害计算机病毒的危害可表现在如下几个方面:计算机病毒的危害可表现在如下几个方面:(1)占用系统空间。占用系统空间。(2)占用处理机时间。占用处理机时间。(3)对文件造成破坏。对文件造成破坏。(4)使机器运行异常。
48、使机器运行异常。3病毒产生的原因病毒产生的原因有很多种,下面列出几种常见的病毒产生的原因有很多种,下面列出几种常见的原因。原因。(1)显示自己的能力。显示自己的能力。(2)恶意报复。恶意报复。(3)恶意攻击。恶意攻击。(4)出错程序。出错程序。4计算机病毒的特征(1)寄生性。寄生性。(2)传染性。传染性。(3)隐蔽性。隐蔽性。(4)破坏性。破坏性。9.5.2 计算机病毒的类型1文件型病毒早期的病毒是覆盖在正常程序上的,但这样早期的病毒是覆盖在正常程序上的,但这样会使程序不能正常运行,因此病毒很快就会被会使程序不能正常运行,因此病毒很快就会被用户发现。所以现在大多数病毒都采用寄生的用户发现。所以
49、现在大多数病毒都采用寄生的方法,把自己附着在正常程序上,在病毒发作方法,把自己附着在正常程序上,在病毒发作时,原来程序仍能正常运行,以致用户不能及时,原来程序仍能正常运行,以致用户不能及时发现,这样,病毒就有可能长期潜伏下来。时发现,这样,病毒就有可能长期潜伏下来。我们把这种病毒称为文件型病毒。我们把这种病毒称为文件型病毒。文件头病毒病毒病毒病毒文件头可执行程序病毒文件头病毒可执行程序文件头可执行程序起始地址(a)(b)(c)(d)图图 病毒附加在文件中的情况病毒附加在文件中的情况文件型病毒使文件受感染的方式可分为两种:文件型病毒使文件受感染的方式可分为两种:(1)主动攻击型感染。主动攻击型感
50、染。当病毒程序在执行时,它当病毒程序在执行时,它将不断地对磁盘上的文件进行检查,当发现被将不断地对磁盘上的文件进行检查,当发现被检测文件尚未被感染时,就去感染它,使其带检测文件尚未被感染时,就去感染它,使其带有病毒。有病毒。(2)执行时感染。执行时感染。在病毒环境中,每当一个未被在病毒环境中,每当一个未被感染的程序在执行时,如果它是病毒所期待的感染的程序在执行时,如果它是病毒所期待的文件类型,且磁盘没有写保护,该程序就会被文件类型,且磁盘没有写保护,该程序就会被感染病毒。感染病毒。2内存驻留病毒内存驻留病毒通常选择占据在内存的上端或下端内存驻留病毒通常选择占据在内存的上端或下端的中断变量中。有