免费智能真题库 > 历年试卷 > 系统集成项目管理工程师 > 2016年上半年 系统集成项目管理工程师 上午试卷 综合知识
  第23题      
  知识点:   OSI七层协议   SSL   安全套接层   加密   加密技术   数据加密
  关键词:   SSL   安全套接层   传输   窃听   数据加密   网络   协议   安全   加密   数据        章/节:   基本信息系统集成技术       

 
SSL(Secure Sockets Layer安全套接层)主要利用数据加密技术,以确保数据在网络传输过程中不会被截取及窃听。该协议运行在网络的(23)。
 
 
  A.  数据链路层
 
  B.  传输层与应用层之间
 
  C.  传输层
 
  D.  应用层与会话层之间
 
 
 

 
  第18题    2018年上半年  
   61%
在OSI七层协议中,HTTP是( )协议。
  第18题    2016年上半年  
   77%
快速以太网和传统以太网在(18)上的标准不同。
  第17题    2020年下半年  
   61%
在ISO七层协议中( )的主要功能是路由选择。
   知识点讲解    
   · OSI七层协议    · SSL    · 安全套接层    · 加密    · 加密技术    · 数据加密
 
       OSI七层协议
        OSI(Open System Interconnect)七层协议是国际标准化组织(ISO)和国际电报电话咨询委员会(CCITT)联合制定的开放系统互联参考模型。OSI采用了分层的结构化技术,从下到上共分七层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。七层模型分别概括如下:
        .物理层:包括物理联网媒介,如电缆连线连接器。该层的协议产生并检测电压以便发送和接收携带数据的信号。具体标准有RS232、V.35、RJ-45、FDDI。
        .数据链路层:它控制网络层和物理层之间的通信,主要功能是将从网络层接收到的数据分割成特定的可被物理层传输的帧。常见的协议有IEEE 802.3/.2、HDLC、PPP、ATM。
        .网络层:主要功能是将网络地址(如IP)翻译成对应的物理地址,并决定如何将数据从发送方路由到接收方。在TCP/IP协议中,网络层具体协议有IP、ICMP、IGMP、IPX、ARP等。
        .传输层:定义了传输数据的协议和端口号,如TCP(传输控制协议,传输效率低,可靠性强,用于传输可靠性要求高,数据量大的数据),UDP(用户数据报协议,与TCP特性恰恰相反,用于传输可靠性要求不高,数据量小的数据,如QQ聊天数据就是通过这种方式传输的)。主要将从下层接收的数据进行分段传输,到达目的地址后再进行重组。常常把这一层数据叫作段。
        .会话层:负责在网络中的两节点之间建立和维持通信,以及提供交互会话的管理功能,如三种数据流方向的控制,即一路交互、两路交替和两路同时会话模式。常见的协议有RPC、SQL和NFS。
        .表示层:在表示层,数据按照网络能理解的方式进行格式化,这种格式化也因所使用网络的类型不同而不同。表示层管理数据的加密解密、数据转换、格式化和文本压缩。常见的协议有JPEG、ASCII、GIF、DES、MPEG。
        .应用层:负责对软件提供接口以使程序能使用网络服务,如事务处理程序、文件传输协议和网络管理等。在TCP/IP协议中,常见的协议有HTTP、Telnet、FTP、SMTP等等。
 
       SSL
        SSL是一个传输层安全协议,用于在Internet上传送机密文件。SSL协议由SSL记录协议、SSL握手协议和SSL警报协议组成。
        SSL握手协议被用来在客户与服务器真正传输应用层数据之前建立安全机制,当客户与服务器第一次通信时,双方通过握手协议在版本号、密钥交换算法、数据加密算法和Hash算法上达成一致,然后互相验证对方身份,最后使用协商好的密钥交换算法产生一个只有双方知道的秘密信息,客户和服务器各自根据该秘密信息产生数据加密算法和Hash算法参数。
        SSL记录协议根据SSL握手协议协商的参数,对应用层送来的数据进行加密、压缩、计算消息鉴别码,然后经网络传输层发送给对方。
        SSL警报协议用来在客户和服务器之间传递SSL出错信息。
        SSL协议主要提供3方面的服务:
        (1)用户和服务器的合法性认证。认证用户和服务器的合法性,使得它们能够确信数据将被发送到正确的客户机和服务器上。客户机和服务器都是有各自的识别号,这些识别号由公开密钥进行编号,为了验证用户是否合法,SSL协议要求在握手交换数据时进行数字认证,以此来确保用户的合法性。
        (2)加密数据以隐藏被传送的数据。SSL协议所采用的加密技术既有对称密钥技术,也有公开密钥技术。在客户机与服务器进行数据交换之前,交换SSL初始握手信息,在SSL握手信息中采用了各种加密技术对其加密,以保证其机密性和数据的完整性,并且用数字证书进行鉴别,这样就可以防止非法用户进行破译。
        (3)保护数据的完整性。SSL协议采用Hash函数和机密共享的方法来提供信息的完整性服务,建立客户机与服务器之间的安全通道,使所有经过SSL协议处理的业务在传输过程中能全部完整准确无误地到达目的地。
        SSL协议是一个保证计算机通信安全的协议,对通信对话过程进行安全保护,其实现过程主要经过如下几个阶段:
        (1)接通阶段:客户机通过网络向服务器打招呼,服务器回应。
        (2)密码交换阶段:客户机与服务器之间交换双方认可的密码,一般选用RSA密码算法,也有的选用Diffie-Hellmanf和Fortezza-KEA密码算法。
        (3)会谈密码阶段:客户机器与服务器间产生彼此交谈的会谈密码。
        (4)检验阶段:客户机检验服务器取得的密码。
        (5)客户认证阶段:服务器验证客户机的可信度。
        (6)结束阶段:客户机与服务器之间相互交换结束的信息。
        发送时信息用对称密钥加密,对称密钥用不对称算法加密,再把两个包绑在一起传送过去。接收过程与发送过程正好相反,先打开有对称密钥的加密包,再用对称密钥解密。因此,SSL协议也可用于安全电子邮件。
 
       安全套接层
        安全套接层(SSL)提供两台计算机之间的安全连接,对整个会话进行加密,从而可保证安全传输,工作在应用层和传输层之间。
        SSL具有以下3个基本功能,即验证身份、数据的机密性、报文的完整性。
        具体工作过程如下。
        (1)SSL客户机连接至SSL服务器,并要求服务器验证它自身的身份。
        (2)服务器通过发送它的数字证书证明其身份。这个交换还可以包括整个证书链,直到某个根证书颁发机构(CA)。通过检查有效日期并确认证书包含可信任CA的数字签名来验证证书的有效性。
        (3)服务器发出一个请求,对客户端的证书进行验证,但是由于缺乏公钥体系结构,当今的大多数服务器不进行客户端认证。
        协商用于加密的消息加密算法(如IDEA、RC4、DES、3DES、RSA等)和用于完整性检查的哈希函数(如MD5、SHA等),通常由客户端提供它支持的所有算法列表,然后由服务器选择最强大的加密算法。
 
       加密
               保密与加密
               保密就是保证敏感信息不被非授权的人知道。加密是指通过将信息进行编码而使得侵入者不能够阅读或理解的方法,目的是保护数据和信息。解密是将加密的过程反过来,即将编码信息转化为原来的形式。古时候的人就已经发明了密码技术,而现今的密码技术已经从外交和军事领域走向了公开,并结合了数学、计算机科学、电子与通信等诸多学科而成为了一门交叉学科。现今的密码技术不仅具有保证信息机密性的信息加密功能,而且还具有数字签名、身份验证、秘密分存、系统安全等功能,来鉴别信息的来源以防止信息被篡改、伪造和假冒,保证信息的完整性和确定性。
               加密与解密机制
               加密的基本过程包括对原来的可读信息(称为明文或平文)进行翻译,译成的代码称为密码或密文,加密算法中使用的参数称为加密密钥。密文经解密算法作用后形成明文,解密算法也有一个密钥,这两个密钥可以相同也可以不相同。信息编码的和解码方法可以很简单也可以很复杂,需要一些加密算法和解密算法来完成。
               从破译者的角度来看,密码分析所面对的问题有三种主要的变型:①“只有密文”问题(仅有密文而无明文);②“已知明文”问题(已有了一批相匹配的明文与密文);③“选择明文”(能够加密自己所选的明文)。如果密码系统仅能经得起第一种类型的攻击,那么它还不能算是真正的安全,因为破译者完全可能从统计学的角度与一般的通信规律中猜测出一部分的明文,而得到一些相匹配的明文与密文,进而全部解密。因此,真正安全的密码机制应使破译者即使拥有了一些匹配的明文与密文也无法破译其他的密文。
               如果加密算法是可能公开的,那么真正的秘密就在于密钥了,密钥长度越长,密钥空间就越大,破译密钥所花的时间就越长,破译的可能性就越小。所以应该采用尽量长的密钥,并对密钥进行保密和实施密钥管理。
               国家明确规定严格禁止直接使用国外的密码算法和安全产品,原因主要有两点:①国外禁止出口密码算法和产品,目前所出口的密码算法都有破译手段,②国外的算法和产品中可能存在“后门”,要防止其在关键时刻危害我国安全。
               密码算法
               密码技术用来进行鉴别和保密,选择一个强壮的加密算法是至关重要的。密码算法一般分为传统密码算法(又称为对称密码算法)和公开密钥密码算法(又称为非对称密码算法)两类,对称密钥密码技术要求加密解密双方拥有相同的密钥。而非对称密钥密码技术是加密解密双方拥有不相同的密钥。
               对称密钥密码体制从加密模式上可分为序列密码和分组密码两大类(这两种体制之间还有许多中间类型)。
               序列密码是军事和外交场合中主要使用的一种密码技术。其主要原理是:通过有限状态机产生性能优良的伪随机序列,使用该序列将信息流逐比特加密从而得到密文序列。可以看出,序列密码算法的安全强度由它产生的伪随机序列的好坏而决定。分组密码的工作方式是将明文分成固定长度的组(如64比特一组),对每一组明文用同一个密钥和同一种算法来加密,输出的密文也是固定长度的。在序列密码体制中,密文不仅与最初给定的密码算法和密钥有关,同时也是被处理的数据段在明文中所处的位置的函数;而在分组密码体制中,经过加密所得到的密文仅与给定的密码算法和密钥有关,而与被处理的明数据段在整个明文中所处的位置无关。
               不同于传统的对称密钥密码体制,非对称密码算法要求密钥成对出现,一个为加密密钥(可以公开),另一个为解密密钥(用户要保护好),并且不可能从其中一个推导出另一个。公共密钥与专用密钥是有紧密关系的,用公共密钥加密的信息只能用专用密钥解密,反之亦然。另外,公钥加密也用来对专用密钥进行加密。
               公钥算法不需要联机密钥服务器,只在通信双方之间传送专用密钥,而用专用密钥来对实际传输的数据加密解密。密钥分配协议简单,所以极大简化了密钥管理,但公共密钥方案较保密密钥方案处理速度慢,因此,通常把公共密钥与专用密钥技术结合起来实现最佳性能。
               密钥及密钥管理
               密钥是密码算法中的可变参数。有时候密码算法是公开的,而密钥是保密的,而密码分析者通常通过获得密钥来破译密码体制。也就是说,密码体制的安全性建立在对密钥的依赖上。所以,保守密钥秘密是非常重要的。
               密钥管理一般包括以下8个内容。
               (1)产生密钥:密钥由随机数生成器产生,并且应该有专门的密钥管理部门或授权人员负责密钥的产生和检验。
               (2)分发密钥:密钥的分发可以采取人工、自动或者人工与自动相结合的方式。加密设备应当使用经过认证的密钥分发技术。
               (3)输入和输出密钥:密钥的输入和输出应当经由合法的密钥管理设备进行。人工分发的密钥可以用明文形式输入和输出,并将密钥分段处理;电子形式分发的密钥应以加密的形式输入和输出。输入密钥时不应显示明文密钥。
               (4)更换密钥:密钥的更换可以由人工或自动方式按照密钥输入和密钥输出的要求来实现。
               (5)存储密钥:密钥在加密设备内采用明文形式存储,但是不能被任何外部设备访问。
               (6)保存和备份密钥:密钥应当尽量分段保存,可以分成两部分并且保存在不同的地方,例如一部分存储在保密设备中,另一部分存储在IC卡上。密钥的备份也应当注意安全并且要加密保存。
               (7)密钥的寿命:密钥不可以无限期使用,密钥使用得越久风险也就越大。密钥应当定期更换。
               (8)销毁密钥:加密设备应能对设备内的所有明文密钥和其他没受到保护的重要保护参数清零。
 
       加密技术
        加密技术是最常用的安全保密手段,数据加密技术的关键在于加密/解密算法和密钥管理。数据加密的基本过程就是对原来为明文的文件或数据按某种加密算法进行处理,使其成为不可读的一段编码,通常称为“密文”。“密文”只能在输入相应的密钥之后才能显示出原来的内容,通过这样的途径使数据不被窃取。
        数据加密和数据解密是一对逆过程。数据加密是用加密算法E和加密密钥K1将明文P变换成密文C,记为:
        
        数据解密是数据加密的逆过程,用解密算法D和解密密钥K2将密文C变换成明文P,记为:
        
        在安全保密中,可通过适当的密钥加密技术和管理机制来保证网络信息的通信安全。密钥加密技术的密码体制分为对称密钥体制和非对称密钥体制两种。相应地,对数据加密的技术分为两类,即对称加密(私有密钥加密)和非对称加密(公开密钥加密)。
               对称加密技术
               对称加密采用了对称密码编码技术,其特点是文件加密和解密使用相同的密钥,这种方法在密码学中叫作对称加密算法。
               常用的对称加密算法有如下几种:
               (1)数据加密标准(Data Encryption Standard,DES)算法。DES主要采用替换和移位的方法加密。它用56位密钥对64位二进制数据块进行加密,每次加密可对64位的输入数据进行16轮编码,经一系列替换和移位后,输入的64位原始数据转换成完全不同的64位输出数据。DES算法运算速度快,密钥生产容易,适合于在当前大多数计算机上用软件方法实现,同时也适合于在专用芯片上实现。
               (2)三重DES(3DES,或称TDEA)。在DES的基础上采用三重DES,即用两个56位的密钥K1K2,发送方用K1加密,K2解密,再使用K1加密。接收方则使用K1解密,K2加密,再使用K1解密,其效果相当于将密钥长度加倍。
               (3)RC-5(Rivest Cipher 5)。RC-5是由Ron Rivest(公钥算法的创始人之一)在1994年开发出来的。RC-5是在RCF2040中定义的,RSA数据安全公司的很多产品都使用了RC-5。
               (4)国际数据加密算法(International Data Encryption Algorithm,IDEA)。IDEA是在DES算法的基础上发展起来的,类似于三重DES。IDEA的密钥为128位,这么长的密钥在今后若干年内应该是安全的。类似于DES,IDEA算法也是一种数据块加密算法,它设计了一系列加密轮次,每轮加密都使用从完整的加密密钥中生成的一个子密钥。IDEA加密标准由PGP(Pretty Good Privacy)系统使用。
               (5)高级加密标准(Advanced Encryption Standard,AES)算法。AES算法基于排列和置换运算。排列是对数据重新进行安排,置换是将一个数据单元替换为另一个。AES使用几种不同的方法来执行排列和置换运算。
               AES是一个迭代的、对称密钥分组的密码,它可以使用128、192和256位密钥,并且用128位(16字节)分组加密和解密数据。
               非对称加密技术
               与对称加密算法不同,非对称加密算法需要两个密钥:公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法称为非对称加密算法。非对称加密有两个不同的体制,如下图所示。
               
               非对称加密体制模型
               非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其他方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。
               非对称加密算法的保密性比较好,它消除了最终用户交换密钥的需要,但加密和解密花费时间长、速度慢,不适合于对文件加密,而只适用于对少量数据进行加密。
               RSA(Rivest,Shamir and Adleman)算法是一种公钥加密算法,它按照下面的要求选择公钥和密钥:
               (1)选择两个大素数pq(大于10100)。
               (2)令n=p×qz=(p-l)×(q-1)。
               (3)选择dz互质。
               (4)选择e,使e×d=1(modz)。
               加密时对明文P进行以下计算得到密文C:
               C=Pe(modn
               这样公钥为(en)。解密时计算:
               P=Cd(modn
               即私钥为(dn)。
               例如,设p=3,q=11,n=33,z=20,d=7,e=3,C=P3(mod 33),P=C7(mod 33),则有:
               C=23(mod 33)=8(mod 33)=8
               P=87(mod 33)=2097152(mod 33)=2
               RSA算法的安全性是基于大素数分解的困难性。攻击者可以分解已知的n,得到pq,然后可得到z,最后用Euclid算法,由ez得到d。但是要分解200位的数,需要40亿年;分解500位的数,则需要1025年。
               密钥管理
               密钥是有生命周期的,它包括密钥和证书的有效时间,以及已撤销密钥和证书的维护时间等。密钥既然要求保密,这就涉及密钥的管理问题,任何保密也只是相对的,是有时效的。密钥管理主要是指密钥对的安全管理,包括密钥产生、密钥备份、密钥恢复和密钥更新等。
               (1)密钥产生。密钥对的产生是证书申请过程中重要的一步,其中产生的私钥由用户保留,公钥和其他信息则交于CA(Certificate Authority)中心进行签名,从而产生证书。根据证书类型和应用的不同,密钥对的产生也有不同的形式和方法。对普通证书和测试证书,一般由浏览器或固定的终端应用来产生,这样产生的密钥强度较小,不适合应用于比较重要的安全网络交易。而对于比较重要的证书,如商家证书和服务器证书等,密钥对一般由专用应用程序或CA中心直接产生,这样产生的密钥强度大,适合于重要的应用场合。
               另外,根据密钥的应用不同,也可能会有不同的产生方式。例如,签名密钥可能在客户端或RA(Register Authority)中心产生,而加密密钥则需要在CA中心直接产生。
               (2)密钥备份和恢复。在一个PKI(Public Key Infrastructure,公开密钥体系)系统中,维护密钥对的备份至关重要,如果没有这种措施,当密钥丢失后,将意味着加密数据的完全丢失,对于一些重要数据,这将是灾难性的。所以,密钥的备份和恢复也是PKI密钥管理中的重要一环。换句话说,即使密钥丢失,使用PKI的企业和组织必须仍能够得到确认,受密钥加密保护的重要信息也必须能够恢复。当然,不能让一个独立的个人完全控制最重要的主密钥,否则可能引起严重后果。
               企业级的PKI产品至少应该支持用于加密的安全密钥的存储、备份和恢复。密钥一般用口令进行保护,而口令丢失则是管理员最常见的安全疏漏之一。所以,PKI产品应该能够备份密钥,即使口令丢失,它也能够让用户在一定条件下恢复该密钥,并设置新的口令。
               (3)密钥更新。如果用户可以一次又一次地使用同样密钥与别人交换信息,那么密钥也同其他任何密码一样存在着一定的安全性问题,虽然说用户的私钥是不对外公开的,但是也很难保证私钥长期的保密性,很难保证不被泄露。如果某人偶然地知道了用户的密钥,那么用户曾经和另一个人交换的每一条消息都不再是保密的了。另外,使用一个特定密钥加密的信息越多,提供给窃听者的材料也就越多,从某种意义上来讲也就越不安全了。
               每一个由CA颁发的证书都会有有效期,密钥对生命周期的长短由签发证书的CA中心来确定,各CA系统的证书有效期限有所不同,一般为2~3年。当用户的私钥被泄露或证书的有效期快到时,用户应该更新私钥。这时用户可以废除证书,产生新的密钥对,申请新的证书。
               (4)多密钥的管理。假设在某机构中有100个人,如果他们任意两人之间可以进行秘密对话,那么总共需要多少密钥呢?每个人需要知道多少密钥呢?也许很容易得出答案,如果任何两个人之间要不同的密钥,则总共需要4950个密钥,而且每个人应记住99个密钥。如果机构的人数是1000、10 000或更多,这种办法显然就过于愚蠢了,管理密钥将是一件非常困难的事情。为此需要研究并开发用于创建和分发密钥的加密安全的方法。
               Kerberos提供了一种解决这个问题的较好方案,它是由MIT发明的,使保密密钥的管理和分发变得十分容易,但这种方法本身还存在一定的缺点。为能在因特网上提供一个实用的解决方案,Kerberos建立了一个安全的、可信任的密钥分发中心(Key Distribution Center,KDC),每个用户只要知道一个和KDC进行会话的密钥就可以了,而不需要知道成百上千个不同的密钥。
 
       数据加密
        数据加密是防止未经授权的用户访问敏感信息的手段,这就是人们通常理解的安全措施,也是其他安全方法的基础。研究数据加密的科学叫作密码学(Cryptography),它又分为设计密码体制的密码编码学和破译密码的密码分析学。密码学有着悠久而光辉的历史,古代的军事家已经用密码传递军事情报了,而现代计算机的应用和计算机科学的发展又为这一古老的科学注入了新的活力。现代密码学是经典密码学的进一步发展和完善。由于加密和解密此消彼长的斗争永远不会停止,这门科学还在迅速发展之中。
        一般的保密通信模型如下图所示。
        
        保密通信模型
        从图中可以看出,发送端把明文P用加密算法E和密钥K加密,变换成密文C,即C=E(K,P);接收端利用解密算法D和密钥K对C解密得到明文P,即P=D(K,C)。
        这里加/解密函数E和D是公开的,而密钥K(加/解密函数的参数)是秘密的。在传送过程中偷听者得到的是无法理解的密文,而他又得不到密钥,这就达到了对第三者保密的目的。需要说明的是,不论偷听者获取了多少密文,但是密文中没有足够的信息,使得可以确定出对应的明文,则这种密码体制叫作是无条件安全的,或称为是理论上不可破解的。在无任何限制的条件下,几乎目前所有的密码体制都不是理论上不可破解的。能否破解给定的密码,取决于使用的计算资源。所以密码专家们研究的核心问题就是要设计出在给定计算费用的条件下,计算上(而不是理论上)安全的密码体制。
   题号导航      2016年上半年 系统集成项目管理工程师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第23题    在手机中做本题