全部科目 > 信息安全工程师 >
2022年下半年 上午试卷 综合知识
第 37 题
知识点 完整性   SSL   安全协议   记录协议   加密   握手协议  
章/节 网络信息安全基本属性  
 
 
SSL 是一种用于构建客户端和服务器端之间安全通道的安全协议,包含:握手协议、密码规格变更协议、记录协议和报警协议。其中用于传输数据的分段、压缩及解压缩、加密及解密、完整性校验的是()。
 
  A.  握手协议
 
  B.   密码规格变更协议
 
  C.  记录协议 
 
  D.  报警协议
 
 




 
 
相关试题     完整性 

  第57题    2021年下半年  
文件完整性检查的目的是发现受害系统中被篡改的文件或操作系统的内核是否被替换。对于Linux系统,网络管理员可使用()命令直接把系统中的二进制文件和原始发布介质上对应的文件进行比较。

  第14题    2020年下半年  
所有资源只能由授权方或以授权的方式进行修改,即信息未经授权不能进行改变的特性是指信息的(14)。

  第15题    2022年下半年  
SSH是基于公钥的安全应用协议,可以实现加密、认证、完整性检验等多种网络安全服务。SSH由(  )3个子协议组成.

 
知识点讲解
· 完整性
· SSL
· 安全协议
· 记录协议
· 加密
· 握手协议
 
        完整性
        完整性(Integrity)是指网络信息或系统未经授权不能进行更改的特性。例如,电子邮件在存储或传输过程中保持不被删除、修改、伪造、插入等。完整性也被称为网络信息系统CIA三性之一,其中I代表Integrity。完整性对于金融信息系统、工业控制系统非常重要,可谓“失之毫厘,差之千里”。
 
        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协议(安全套接层协议)和SET协议(安全电子交易协议)。
               SSL协议
                      SSL协议概述
                      安全套接层(Secure Sockets Layer,SSL)协议,是由美国网景(Netscape)公司研究制定的安全协议,主要用于解决TCP/IP协议难以确定用户身份的问题,为TCP/IP连接提供了数据加密、服务器端身份验证、信息完整性和可选择的客户端身份验证等功能。
                      SSL协议通过在应用程序进行数据交换前交换初始握手信息实现有关安全特性的审查。握手信息中采用了DES、MD5等加密技术实现机密性和数据完整性,并采用X.509格式数字证书实现鉴别。
                      SSL协议适用于点对点之间的信息传输,通常在浏览器和WWW服务器之间建立一条安全通道实现文件保密传输。SSL协议已成为事实上的工业标准,并被广泛应用于Internet和Intranet的服务器产品和客户端产品中。
                      SSL协议层次结构
                      SSL协议在TCP/IP网络分层结构中位于应用层和TCP层之间,由SSL记录协议(Record Protocol)和SSL握手协议(Handshake Protocol)组成,如下图所示。
                      
                      SSL协议在TCP/IP网络分层结构模型中的位置
                      SSL记录协议定义数据传送的格式,包括记录头和记录数据格式的规定等。SSL握手协议描述建立安全连接的过程,在客户机和服务器传送应用数据之前,允许服务器和客户机相互验证身份(客户机端可选),协商加密算法、确定会话密钥等。
                      SSL协议基本安全服务功能
                      (1)信息机密性。SSL协议应用对称和非对称密钥等多种加密算法,客户机和服务器在建立的安全通道中传输的所有信息都经过加密处理,防止非法窃听,实现信息的机密性。
                      (2)信息完整性。SSL协议利用公开密钥加密算法和数字摘要技术,对信息的完整性进行检验,保证信息在传输过程中不被篡改。
                      (3)认证性。SSL协议利用数字证书技术,实现对服务器和客户机的认证。为了验证数字证书持有者是合法用户,SSL要求证书持有者在握手时,双方可通过交换数字证书,验证对方身份的合法性,确保数据发往正确的客户机和服务器。
                      SSL协议的通信过程
                      (1)接通阶段。客户机呼叫服务器,服务器回应客户。
                      (2)认证阶段。服务器向客户机发送服务器证书和公钥,以便客户机认证服务器身份;如果服务器需要双方认证,还要向客户机提出认证请求,客户机向服务器发送客户端证书。
                      (3)确立会话密钥。客户机和服务器之间协商确立会话密钥。
                      (4)会话阶段。客户机与服务器使用会话密钥加密交换会话信息。
                      (5)结束阶段。客户机与服务器交换结束信息,通信结束。
                      SSL协议分析
                      SSL协议开发成本小,能够提供机密性、完整性和认证服务。目前主流浏览器及许多服务器都支持SSL协议,但在电子商务交易应用过程中,也存在一些安全问题。
                      应用SSL协议的电子交易过程如下:
                      (1)客户将购物信息发往商家。
                      (2)商家将信息转发银行。
                      (3)银行验证客户信息的合法性后,通知客户和商家付款成功。
                      (4)商家通知客户购买成功,并将商品交给客户。
                      分析以上交易过程,可以看到客户的购物信息(含支付信息,如银行资料)首先发往商家,若是商家不可靠,客户银行资料的信息安全性就得不到保证。此外,SSL协议只是提供了信息传递的安全通道,没有提供数字签名功能,存在抵赖和用户身份被冒充的可能性。这些问题在SET协议中得到了解决。
               SET协议
                      SET协议概述
                      安全电子交易(Secure Electronic Transaction,SET)协议,是由VISA、Mastercard两大国际信用卡组织会同一些计算机供应商共同开发的网上安全交易协议,是为银行卡在Internet上安全地进行交易提出的一整套完整的安全解决方案。1997年5月正式推出SET协议1.0版。
                      SET协议采用对称加密技术和非对称加密技术提供数据加密、数字签名、数字信封等功能,保证了信息在网络中传输的机密性,数据的完整性和一致性,防止交易抵赖行为的发生。SET协议采用数字证书验证交易过程中参与各方的身份,一般由第三方CA机构负责为在线的通信双方提供信用担保与认证,对参与其中的支付网关也要进行认证,以防假冒,具有多方认证性。SET协议通过双重数字签名技术实现了客户订单信息和支付信息(信用卡账号、密码等)的隔离,保证商家只能看到客户的购买信息,看不到客户的支付信息;而银行只能看到客户的支付信息,看不到客户的购买信息。SET协议规定了交易中各方进行安全交易的具体流程。参与各方在交易流程中均遵循严格的标准,体现在要求软件遵循相同的协议和消息格式,加密算法的应用协商,数字证书信息和对象格式,订货信息和对象格式,认可信息和对象格式,资金划账信息和对象格式,对话实体之间消息的传输协议等。
                      SET协议的参与对象
                      基于SET协议的网络支付过程涉及多个参与方,包括客户、商家、银行(发卡银行、收单银行)、支付网关、CA认证中心。
                      (1)客户。通常是持有信用卡的用户。SET协议机制中,持卡客户通常要到发卡银行申请并在自己的客户端安装一套SET交易专用的客户端软件(电子钱包软件),并向CA认证中心申请数字证书。
                      (2)商家。客户在网上购物,网上商家通过商家服务器软件提供服务。与客户类似,商家必须先到收单银行申请设立账户,并向CA认证中心申请商家服务器的数字证书。
                      (3)发卡银行。发卡银行是指客户的开户银行。通常持卡客户的客户端软件从发卡银行获得,持卡客户申请数字证书,必须由发卡银行审核批准,才能从CA认证中心得到,因为持卡客户是利用银行的信誉消费。
                      (4)收单银行。收单银行是指商家的开户银行。支付网关接收商家转来的持卡客户支付请求后,要将支付请求转交给收单银行,通过银行间金融专用网络,传送到持卡客户的发卡行,进行相应的授权和扣款。收单银行与发卡银行可以是同一银行。
                      (5)支付网关。支付网关是Internet与银行内部专用网之间的一个专用系统,使得银行金融专用网不直接与非安全的公开网络连接,从而保护银行内部专用网的安全。通常,商家收到客户的购物请求后,要将客户的账号等支付信息传递给收单银行,因此支付网关一般由收单银行担任。银行可委托第三方担任网上交易的支付网关。与客户和商家一样,支付网关也必须通过CA认证中心申请数字证书,才能参与SET交易活动。
                      (6)CA认证中心。SET协议规定,参与SET交易的各方(包括客户、商家、支付网关)必须申请并安装数字证书,以证实自己的真实身份。CA认证中心作为发放和管理数字证书的机构,起着非常重要的核心作用。
                      应用SET协议的交易流程
                      (1)持卡人(客户)在商家(网上商店)浏览商品;
                      (2)持卡人选择要购买的商品,并填写订单;
                      (3)持卡人选择在线支付方式。当选择支持SET协议的支付方式进行支付时,SET协议开始起作用;
                      (4)持卡人发送订单和支付指令给商家。订单和支付指令由持卡人进行数字签名,同时利用双重数字签名技术保证商家看不到持卡人的支付信息(账号等);
                      (5)商家收到订单后,向持卡人所在银行发出支付请求。支付信息通过支付网关到收单银行,再到发卡银行。支付请求获得发卡银行的授权后,返回授权指令给商家;
                      (6)商家将订单确认信息通知持卡人,为客户发货或完成订购服务。
                      至此,应用SET协议的交易流程结束。商家可以请求收单银行将此笔交易的款项从持卡人账户转到商家账户。以上流程中,SET从持卡人选择支付方式后开始介入,每一步操作,持卡人、商家和支付网关都会通过CA验证通信主体的身份,以确保通信主体的真实性。
                      SET协议中的双重数字签名技术
                      电子商务交易过程中,客户发送订购信息和对应的支付信息是相关联的,如何使信息传输过程中,商家看不到客户的支付信息,银行看不到客户的购买信息,SET协议通过双重数字签名技术加以解决。
                      发送者A将发送给接收者B和C的信息分别应用算法生成各自的数字摘要,再将两个数字摘要连在一起,应用算法生成新的数字摘要(双重数字摘要),将双重数字摘要用发送者的私钥加密,生成双重数字签名。
                      下面以客户发送信息给银行为例说明双重数字签名的生成与验证过程,如下图所示。
                      
                      客户发送信息给银行双重数字签名的生成与验证过程
                      (1)客户对购买信息和支付信息分别生成购买信息的数字摘要E1和支付信息的数字摘要E2;
                      (2)将E1和E2连接起来生成双重数字摘要E3;
                      (3)客户用自己的私钥加密E3生成双重数字签名K;
                      (4)客户把双重数字签名K,支付信息和购买信息的数字摘要E1一起发送给银行;
                      (5)银行对信息进行验证。将支付信息用对应的同样算法生成支付信息的数字摘要E2′,并将E2′同收到的购买信息的数字摘要E1连接在一起,用对应的同样算法生成双重数字摘要E3′;
                      (6)银行用客户的公钥解密收到的双重数字签名K,得到双重数字摘要E3,将E3与E3′比较,如果相同,则银行验证了支付信息是由该客户发出的,且在传输过程中没有被篡改。
                      同理,客户将双重数字签名K,购买信息和支付信息数字摘要E2发送给商家完成订货信息的传递、签名与验证。通过使用双重数字签名技术,银行和商家只能看到同一条购物信息中自己所需要的那一部分信息,更好地保护了客户的隐私权和电子商务交易活动的安全性。
               SSL协议与SET协议比较
               在支持技术上,SSL协议与SET协议可以说是一致的,都采用了对称密钥加密、非对称密钥加密、数字摘要与数字证书等加密和认证技术;对信息传输的机密性来说,两者的功能是相同的,且都能保证信息在传输过程中的保密性及完整性,但两者在实现目标、实现机制、安全性等方面有所不同。
               SSL协议提供在Internet上的安全通信服务,是在客户机和服务器之间建立一个安全通道,保证数据传输机密性;SET协议是为保证银行卡在Internet上进行安全交易提出的一套完整的安全解决方案。SSL协议面向连接,SET协议则允许各方之间非实时交换报文。
               SSL协议只是简单地在双方之间建立安全连接,SET协议则是一个多方报文协议,它定义了银行、商家、持卡人之间必须遵循的报文规范;建立在SSL协议之上的卡支付系统只能与Web浏览器捆绑在一起,SET报文则能够在银行内部网或其他网络上传输。
               SSL协议与SET协议在网络中的层次也不一样。SSL协议是基于传输层的协议,SET协议是基于应用层的协议。SSL协议在建立双方安全通信通道后,所有的传输信息都被加密,SET协议则会有选择地加密一部分敏感信息。
               从安全性来讲,SSL协议中,信息首先发往商家,商家能看到客户的信用卡账户等支付信息。SET协议则通过双重数字签名技术,保证商家看不到客户的支付信息,银行也看不到客户的购买信息,更好地保护了客户的安全和隐私。
 
        记录协议
        SSL记录协议是一个可相对独立工作的协议。记录协议定义了传输的格式,其报文包含长度、描述符和用户数据等内容。记录协议完成的工作包括信息传输、数据分段、可选择的数据压缩、提供信息鉴别码和加密。
        SSL记录层从上层接收任意长的用户数据,然后进行合适的分段,之后再使用压缩状态信息来压缩和解压缩记录。记录的另一个功能是负载保护,就是加密和完整性保护。
 
        加密
               保密与加密
               保密就是保证敏感信息不被非授权的人知道。加密是指通过将信息进行编码而使得侵入者不能够阅读或理解的方法,目的是保护数据和信息。解密是将加密的过程反过来,即将编码信息转化为原来的形式。古时候的人就已经发明了密码技术,而现今的密码技术已经从外交和军事领域走向了公开,并结合了数学、计算机科学、电子与通信等诸多学科而成为了一门交叉学科。现今的密码技术不仅具有保证信息机密性的信息加密功能,而且还具有数字签名、身份验证、秘密分存、系统安全等功能,来鉴别信息的来源以防止信息被篡改、伪造和假冒,保证信息的完整性和确定性。
               加密与解密机制
               加密的基本过程包括对原来的可读信息(称为明文或平文)进行翻译,译成的代码称为密码或密文,加密算法中使用的参数称为加密密钥。密文经解密算法作用后形成明文,解密算法也有一个密钥,这两个密钥可以相同也可以不相同。信息编码的和解码方法可以很简单也可以很复杂,需要一些加密算法和解密算法来完成。
               从破译者的角度来看,密码分析所面对的问题有三种主要的变型:①“只有密文”问题(仅有密文而无明文);②“已知明文”问题(已有了一批相匹配的明文与密文);③“选择明文”(能够加密自己所选的明文)。如果密码系统仅能经得起第一种类型的攻击,那么它还不能算是真正的安全,因为破译者完全可能从统计学的角度与一般的通信规律中猜测出一部分的明文,而得到一些相匹配的明文与密文,进而全部解密。因此,真正安全的密码机制应使破译者即使拥有了一些匹配的明文与密文也无法破译其他的密文。
               如果加密算法是可能公开的,那么真正的秘密就在于密钥了,密钥长度越长,密钥空间就越大,破译密钥所花的时间就越长,破译的可能性就越小。所以应该采用尽量长的密钥,并对密钥进行保密和实施密钥管理。
               国家明确规定严格禁止直接使用国外的密码算法和安全产品,原因主要有两点:①国外禁止出口密码算法和产品,目前所出口的密码算法都有破译手段,②国外的算法和产品中可能存在“后门”,要防止其在关键时刻危害我国安全。
               密码算法
               密码技术用来进行鉴别和保密,选择一个强壮的加密算法是至关重要的。密码算法一般分为传统密码算法(又称为对称密码算法)和公开密钥密码算法(又称为非对称密码算法)两类,对称密钥密码技术要求加密解密双方拥有相同的密钥。而非对称密钥密码技术是加密解密双方拥有不相同的密钥。
               对称密钥密码体制从加密模式上可分为序列密码和分组密码两大类(这两种体制之间还有许多中间类型)。
               序列密码是军事和外交场合中主要使用的一种密码技术。其主要原理是:通过有限状态机产生性能优良的伪随机序列,使用该序列将信息流逐比特加密从而得到密文序列。可以看出,序列密码算法的安全强度由它产生的伪随机序列的好坏而决定。分组密码的工作方式是将明文分成固定长度的组(如64比特一组),对每一组明文用同一个密钥和同一种算法来加密,输出的密文也是固定长度的。在序列密码体制中,密文不仅与最初给定的密码算法和密钥有关,同时也是被处理的数据段在明文中所处的位置的函数;而在分组密码体制中,经过加密所得到的密文仅与给定的密码算法和密钥有关,而与被处理的明数据段在整个明文中所处的位置无关。
               不同于传统的对称密钥密码体制,非对称密码算法要求密钥成对出现,一个为加密密钥(可以公开),另一个为解密密钥(用户要保护好),并且不可能从其中一个推导出另一个。公共密钥与专用密钥是有紧密关系的,用公共密钥加密的信息只能用专用密钥解密,反之亦然。另外,公钥加密也用来对专用密钥进行加密。
               公钥算法不需要联机密钥服务器,只在通信双方之间传送专用密钥,而用专用密钥来对实际传输的数据加密解密。密钥分配协议简单,所以极大简化了密钥管理,但公共密钥方案较保密密钥方案处理速度慢,因此,通常把公共密钥与专用密钥技术结合起来实现最佳性能。
               密钥及密钥管理
               密钥是密码算法中的可变参数。有时候密码算法是公开的,而密钥是保密的,而密码分析者通常通过获得密钥来破译密码体制。也就是说,密码体制的安全性建立在对密钥的依赖上。所以,保守密钥秘密是非常重要的。
               密钥管理一般包括以下8个内容。
               (1)产生密钥:密钥由随机数生成器产生,并且应该有专门的密钥管理部门或授权人员负责密钥的产生和检验。
               (2)分发密钥:密钥的分发可以采取人工、自动或者人工与自动相结合的方式。加密设备应当使用经过认证的密钥分发技术。
               (3)输入和输出密钥:密钥的输入和输出应当经由合法的密钥管理设备进行。人工分发的密钥可以用明文形式输入和输出,并将密钥分段处理;电子形式分发的密钥应以加密的形式输入和输出。输入密钥时不应显示明文密钥。
               (4)更换密钥:密钥的更换可以由人工或自动方式按照密钥输入和密钥输出的要求来实现。
               (5)存储密钥:密钥在加密设备内采用明文形式存储,但是不能被任何外部设备访问。
               (6)保存和备份密钥:密钥应当尽量分段保存,可以分成两部分并且保存在不同的地方,例如一部分存储在保密设备中,另一部分存储在IC卡上。密钥的备份也应当注意安全并且要加密保存。
               (7)密钥的寿命:密钥不可以无限期使用,密钥使用得越久风险也就越大。密钥应当定期更换。
               (8)销毁密钥:加密设备应能对设备内的所有明文密钥和其他没受到保护的重要保护参数清零。
 
        握手协议
        握手协议是SSL的客户端,也是TCP的客户端,在TCP连接建立之后,发出一个Clienthello来发起握手,这个消息中包含了客户端自己可实现的算法列表和其他一些需要的消息;SSL的服务器端会回应一个Serverhello,其中确定了通信所需要的算法,然后发过去自己的证书,里面包含了身份和自己的公钥。客户端在收到这个消息后会生成一个秘密消息,用SSL服务器的公钥加密后传过去,SSL服务器端用自己的私钥解密后,会话密钥协商成功,双方可以用同一份会话密钥进行通信。
        例如,一个用户通过浏览器访问SSL的Web服务器的过程如下。
        (1)浏览器和Web服务器开始建立一次SSL握手:双方协商使用的加密算法;浏览器端验证Web服务器提交的证书;双方协商生成会话密钥。
        (2)Web服务器向浏览器发送所请求的数据:Web服务器计算原始数据的散列值;用会话密钥加密散列值;将密文发送给浏览器。
        (3)浏览器接收处理并显示数据:用会话密钥解密得到原始数据和散列值;使用相同的散列函数计算散列值;比较收到的散列值和计算出的散列值,如果相同则显示数据。



更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2023 All Rights Reserved
软考在线版权所有