免费智能真题库 > 历年试卷 > 信息系统监理师 > 2012年下半年 信息系统监理师 上午试卷 综合知识
  第11题      
  知识点:   数据加密   公钥加密算法   加密   数字签名
  关键词:   公钥加密   公钥密码   加密算法   数字签名   公钥   加密   算法        章/节:   安全管理       

 
公钥密码是(11)。常用的公钥加密算法有(12),它可以实现加密数字签名
 
 
  A.  对称密钥技术,有1个密钥
 
  B.  不对称密钥技术,有2个密钥
 
  C.  对称密钥技术,有2个密钥
 
  D.  不对称密钥技术,有1个密钥
 
 
 

 
  第22题    2016年上半年  
   53%
(22)不属于针对防火墙实施验收的要点。
  第48题    2013年上半年  
   48%
监理工程师在审核信息系统设计时,重点审查系统的(48)设计,防止对信息的篡改、越权获取和蓄意破坏以及预防自然灾害。
  第21题    2013年上半年  
   50%
基于网络的入侵检测系统的输入信息源是(21)。
   知识点讲解    
   · 数据加密    · 公钥加密算法    · 加密    · 数字签名
 
       数据加密
        数据加密是指对明文(未经加密的数据)按照某种加密算法(数据的变换算法)进行处理而形成难以理解的密文(经加密后的数据)。即使是密文被截获,截获方也无法或难以解码,从而防止泄露信息。
        数据加密和数据解密是一对可逆的过程,数据加密是用加密算法E和加密密钥K1将明文P变换成密文C。数据解密是数据加密的逆过程,用解密算法D和解密密钥K2,将密文C转换为明文P。
                      数据传输加密
                      数据传输加密技术的目的是对传输中的数据流加密,以防止通信线路上的窃听、泄露、篡改和破坏。如果以加密实现的通信层次来区分,加密可以在通信的三个不同层次来实现,即链路加密(位于网络层以下的加密)、节点加密和端到端加密(传输前对文件加密,位于网络层以上的加密)。一般常用的是链路加密和端到端加密这两种方式。
                      链路加密侧重于在通信链路上而不考虑信源和信宿,是对保密信息通过各链路采用不同的加密密钥提供安全保护。链路加密是面向节点的,对于网络高层主体是透明的,它对高层的协议信息(地址、检错、帧头帧尾)都加密,因此数据在传输中是密文的,但在中央节点必须解密得到路由信息。
                      节点加密的加解密都在节点中进行,即每个节点中装有加解密保护装置,用于完成一个密钥向另一个密钥的转换。节点中虽然不会出现明文,但是需要在经过的每个节点加装保护装置,这不仅不方便使用,而且会增加开支。
                      端到端加密则是指信息由发送端自动加密,并进入TCP/IP数据包回封,然后作为不可阅读和不可识别的数据穿过因特网,当这些信息一旦到达目的地,将自动重组、解密,成为可读数据。端到端加密是面向网络高层主体的,它不对下层协议进行信息加密,协议信息以明文形式传输,用户数据在中央节点不需解密。
                      密钥体制
                      按照加密密钥K1和解密密钥K2的异同,有以下两种密钥体制。
                      (1)秘密密钥加密体制(K1=K2)。加密和解密采用相同的密钥,因而又称为对称密码体制。因为其加密速度快,通常用来加密大批量的数据。典型的方法有DES、IDEA、MD5和RC-5等。
                      DES(数据加密标准)是国际标准化组织核准的一种加密算法,一般DES算法的密钥长度为56位。为了加速DES算法和RSA算法的执行过程,可以用硬件电路来实现加密和解密。针对DES密钥短的问题,科学家又研制了80位的密钥,以及在DES的基础上采用三重DES和双密钥加密的方法。即用两个56位的密钥K1、K2,发送方用K1加密,K2解密,再使用K1加密。接收方则使用K1解密,K2加密,再使用K1解密,其效果相当于将密钥长度加倍。
                      IDEA(国际数据加密算法)算法是在DES算法的基础上发展起来的,类似于三重DES。发展IDEA也是因为感到DES具有密钥太短等缺点,IDEA的密钥为128位。
                      MD5(Message Digest ver5)是可产生一个128位散列值的散列算法,可以用于生成数字摘要。采用单向HASH算法将需要加密的明文进行摘要,而产生具有固定长度的单向散列值。其中,散列函数是将一个不同长度的报文转换成一个数字串(即报文摘要)的公式,该函数不需要密钥,公式决定了报文摘要的长度。报文摘要与非对称加密一起提供数字签名的方法。目前,MD5算法已被破解。
                      RC-5也是对称密码,使用可变参数的分组迭代密码体制,它面向字结构,便于软件和硬件的快速实现,适用于不同字长的微处理器。RC-5加密效率高,适合于加密大量的数据。RC-5还引入了一种新的密码基本变换——数据相依旋转(Data-Dependent Rotations)方法,即一个中间的字是另一个中间的低位所决定的循环移位结果,以提高密码强度,这也是RC-5的新颖之处。
                      (2)公开密钥加密体制(K1≠K2)。又称非对称密码体制,其加密和解密使用不同的密钥,其中一个密钥是公开的,另一个密钥是保密的。典型的公开密钥是保密的。发送者利用不对称加密算法向接收者传送信息时,发送者要用接收者的公钥加密,接收者收到信息后,用自己的私钥解密读出信息。由于加密速度较慢,因此往往用在少量数据的通信中。典型的公开密钥加密方法有RSA和ECC。
                      RSA(Rivest-Shamir-Adleman)算法密钥长度为512位,其保密性取决于数学上将一个大数分解为两个素数的问题的难度,根据已有的数学方法,其计算量极大,破解很难。但是加密/解密时要进行大指数模运算,因此加密/解密速度很慢,影响了推广使用。该算法适合于加密非常少量的数据,例如加密会话密钥,一般用在数字签名和密钥交换中。
                      ECC(Elliptic Curve Cryptography,椭圆曲线密码)也是非对称密码,加解密使用不同的密钥(公钥和私钥),它们对计算资源的消耗较大,适合于加密非常少量的数据,例如加密会话密钥。它是被美国国家安全局选为保护机密的美国政府资讯的下一代安全标准。这种密码体制的诱人之处在于安全性相当的前提下,可使用较短的密钥。它是建立在一个不同于大整数分解及素域乘法群而广泛为人们所接受的离散对数问题的数学难题之上。
                      总的来说,对称密码加密的效率高,适合加密大量的数据;非对称密码速度很慢,适合于加密非常少量的数据。
 
       公钥加密算法
        (1)RSA算法。1978年出现了著名的RSA(Rivest-Shamir-Adleman)算法。这是一种公钥加密算法,这种算法为公用网络上信息的加密和鉴别提供了一种基本的方法。它通常是由密钥管理中心先生成一对RSA密钥,其中之一为私钥,由用户保存;另一个称为公钥,可对外公开,甚至可在网络服务器中注册。在传送信息时,常采用私钥加密方法与公钥加密方法相结合的方式,即信息采用改进的DES或IDEA对话密钥加密,然后使用RSA密钥加密对话密钥和信息摘要。对方收到信息后,用不同的密钥解密并可核对信息摘要。
        密钥管理中心产生一对公钥和私钥的方法如下:在离线方式下,先产生两个足够大的质数pq,计算n=p×qz=(p-1)×(q-1),再选取一个与z互素的奇数e,称e为公开指数;从这个e值可以找出另一个值d,并能满足e×d=1 mod(z)条件。由此而得到的两组数(ne)和(nd)分别被称为公开密钥和保密密钥,或简称公钥和私钥。
        RSA算法之所以具有安全性,是基于数论中的一个特性事实:即将两个大的质数合成一个大数很容易,而相反的过程则非常困难。在当今技术条件下,当n足够大时,为了找到d,欲从n中通过质因子分解试图找到与d对应的pq是极其困难甚至是不可能的。由此可见,RSA的安全性是依赖于作为公钥的大数n的位数长度的。为保证足够的安全性,一般认为现在的个人应用需要用384或512位的n,公司需要用1024位的n,极其重要的场合应该用2 048位的n
        RSA算法的加密密钥和加密算法分开,使得密钥分配更为方便。它特别符合计算机网络环境。对于网上的大量用户,可以将加密密钥用电话簿的方式印出。如果某用户想与另一用户进行保密通信,只需从公钥簿上查出对方的加密密钥,用它对所传送的信息加密后发出即可。对方收到信息后,用仅为自己所知的解密密钥将信息解密,从而获知报文的内容。由此可看出,RSA算法解决了大量网络用户密钥管理的难题。不过RSA并不能替代DES,它们的优缺点正好互补。RSA的密钥很长,加密速度慢;DES正好弥补了RSA的缺点。即DES用于明文加密,RSA用于DES密钥的加密。因为DES加密速度快,适合加密较长的报文;而RSA可解决DES密钥分配的问题。美国的保密增强邮件(PEM)就是采用了RSA和DES结合的方法,目前已成为E-mail保密通信标准。
        (2)Elgamal算法。Taher Elgamal开发了Elgamal算法,这种算法既能用于数据加密也能用于数字签名,其安全性依赖于计算有限域上离散对数的难度。
        (3)数字签名算法。数字签名算法(DSA)由美国政府开发,作为数字签名的标准算法。这种算法基于Elgamal算法,但是只允许认证,不能提供机密性。
        (4)椭圆曲线加密。将椭圆曲线作为加密算法提出于1985年,相比于RSA算法,这种算法最大的好处是密钥更小,因而同样安全级别的计算速度更快。
        PKI提供的安全服务恰好能满足电子商务、电子政务、网上银行、网上证券等金融业交易的安全需求,是确保这些活动顺利进行必备的安全措施,没有这些安全服务,电子商务、电子政务、网上银行、网上证券等都无法正常运作。PKI可以应用到电子商务、电子政务、网上银行、网上证券等各个领域。
 
       加密
               保密与加密
               保密就是保证敏感信息不被非授权的人知道。加密是指通过将信息进行编码而使得侵入者不能够阅读或理解的方法,目的是保护数据和信息。解密是将加密的过程反过来,即将编码信息转化为原来的形式。古时候的人就已经发明了密码技术,而现今的密码技术已经从外交和军事领域走向了公开,并结合了数学、计算机科学、电子与通信等诸多学科而成为了一门交叉学科。现今的密码技术不仅具有保证信息机密性的信息加密功能,而且还具有数字签名、身份验证、秘密分存、系统安全等功能,来鉴别信息的来源以防止信息被篡改、伪造和假冒,保证信息的完整性和确定性。
               加密与解密机制
               加密的基本过程包括对原来的可读信息(称为明文或平文)进行翻译,译成的代码称为密码或密文,加密算法中使用的参数称为加密密钥。密文经解密算法作用后形成明文,解密算法也有一个密钥,这两个密钥可以相同也可以不相同。信息编码的和解码方法可以很简单也可以很复杂,需要一些加密算法和解密算法来完成。
               从破译者的角度来看,密码分析所面对的问题有三种主要的变型:①“只有密文”问题(仅有密文而无明文);②“已知明文”问题(已有了一批相匹配的明文与密文);③“选择明文”(能够加密自己所选的明文)。如果密码系统仅能经得起第一种类型的攻击,那么它还不能算是真正的安全,因为破译者完全可能从统计学的角度与一般的通信规律中猜测出一部分的明文,而得到一些相匹配的明文与密文,进而全部解密。因此,真正安全的密码机制应使破译者即使拥有了一些匹配的明文与密文也无法破译其他的密文。
               如果加密算法是可能公开的,那么真正的秘密就在于密钥了,密钥长度越长,密钥空间就越大,破译密钥所花的时间就越长,破译的可能性就越小。所以应该采用尽量长的密钥,并对密钥进行保密和实施密钥管理。
               国家明确规定严格禁止直接使用国外的密码算法和安全产品,原因主要有两点:①国外禁止出口密码算法和产品,目前所出口的密码算法都有破译手段,②国外的算法和产品中可能存在“后门”,要防止其在关键时刻危害我国安全。
               密码算法
               密码技术用来进行鉴别和保密,选择一个强壮的加密算法是至关重要的。密码算法一般分为传统密码算法(又称为对称密码算法)和公开密钥密码算法(又称为非对称密码算法)两类,对称密钥密码技术要求加密解密双方拥有相同的密钥。而非对称密钥密码技术是加密解密双方拥有不相同的密钥。
               对称密钥密码体制从加密模式上可分为序列密码和分组密码两大类(这两种体制之间还有许多中间类型)。
               序列密码是军事和外交场合中主要使用的一种密码技术。其主要原理是:通过有限状态机产生性能优良的伪随机序列,使用该序列将信息流逐比特加密从而得到密文序列。可以看出,序列密码算法的安全强度由它产生的伪随机序列的好坏而决定。分组密码的工作方式是将明文分成固定长度的组(如64比特一组),对每一组明文用同一个密钥和同一种算法来加密,输出的密文也是固定长度的。在序列密码体制中,密文不仅与最初给定的密码算法和密钥有关,同时也是被处理的数据段在明文中所处的位置的函数;而在分组密码体制中,经过加密所得到的密文仅与给定的密码算法和密钥有关,而与被处理的明数据段在整个明文中所处的位置无关。
               不同于传统的对称密钥密码体制,非对称密码算法要求密钥成对出现,一个为加密密钥(可以公开),另一个为解密密钥(用户要保护好),并且不可能从其中一个推导出另一个。公共密钥与专用密钥是有紧密关系的,用公共密钥加密的信息只能用专用密钥解密,反之亦然。另外,公钥加密也用来对专用密钥进行加密。
               公钥算法不需要联机密钥服务器,只在通信双方之间传送专用密钥,而用专用密钥来对实际传输的数据加密解密。密钥分配协议简单,所以极大简化了密钥管理,但公共密钥方案较保密密钥方案处理速度慢,因此,通常把公共密钥与专用密钥技术结合起来实现最佳性能。
               密钥及密钥管理
               密钥是密码算法中的可变参数。有时候密码算法是公开的,而密钥是保密的,而密码分析者通常通过获得密钥来破译密码体制。也就是说,密码体制的安全性建立在对密钥的依赖上。所以,保守密钥秘密是非常重要的。
               密钥管理一般包括以下8个内容。
               (1)产生密钥:密钥由随机数生成器产生,并且应该有专门的密钥管理部门或授权人员负责密钥的产生和检验。
               (2)分发密钥:密钥的分发可以采取人工、自动或者人工与自动相结合的方式。加密设备应当使用经过认证的密钥分发技术。
               (3)输入和输出密钥:密钥的输入和输出应当经由合法的密钥管理设备进行。人工分发的密钥可以用明文形式输入和输出,并将密钥分段处理;电子形式分发的密钥应以加密的形式输入和输出。输入密钥时不应显示明文密钥。
               (4)更换密钥:密钥的更换可以由人工或自动方式按照密钥输入和密钥输出的要求来实现。
               (5)存储密钥:密钥在加密设备内采用明文形式存储,但是不能被任何外部设备访问。
               (6)保存和备份密钥:密钥应当尽量分段保存,可以分成两部分并且保存在不同的地方,例如一部分存储在保密设备中,另一部分存储在IC卡上。密钥的备份也应当注意安全并且要加密保存。
               (7)密钥的寿命:密钥不可以无限期使用,密钥使用得越久风险也就越大。密钥应当定期更换。
               (8)销毁密钥:加密设备应能对设备内的所有明文密钥和其他没受到保护的重要保护参数清零。
 
       数字签名
        传统商务活动中,我们通过手写签名达到确认信息的目的。电子商务活动中,交易双方互不见面,可以通过数字签名确认信息。数字签名技术有效解决了电子商务交易活动中信息的完整性和不可抵赖性问题。
               数字摘要
                      数字摘要的基本概念
                      数字摘要是利用哈希函数对原文信息进行运算后生成的一段固定长度的信息串,该信息串被称为数字摘要。产生数字摘要的哈希算法具有单向性和唯一性的特点。所谓单向性,也称为不可逆性,是指利用哈希算法生成的数字摘要,无法再恢复出原文;唯一性是指相同信息生成的数字摘要一定相同,不同信息生成的数字摘要一定不同。这一特征类似于人类的指纹特征,因此数字摘要也被称为数字指纹。
                      数字摘要的使用过程
                      数字摘要具有指纹特征,因此可以通过对比两个信息的数字摘要是否相同来判断信息是否被篡改过,从而验证信息的完整性。
                      数字摘要的使用过程如下图所示。
                      
                      数字摘要的使用过程
                      (1)发送方将原文用哈希(Hash)算法生成数字摘要1;
                      (2)发送方将原文同数字摘要1一起发送给接收方;
                      (3)接收方收到原文后用同样的哈希(Hash)算法对原文进行运算,生成新的数字摘要2;
                      (4)接收方将收到的数字摘要1与新生成的数字摘要2进行对比,若相同,说明原文在传输的过程中没有被篡改,否则说明原文信息发生了变化。
                      数字摘要算法
                      哈希(Hash)算法是实现数字摘要的核心技术。数字摘要所产生的信息串的长度和所采用的哈希算法有直接关系。目前广泛应用的哈希算法有MD5算法和SHA-1算法。
                      MD5算法的全称是“Message-Digest Alogrithm 5”,诞生于1991年,由国际著名密码学家、RSA算法的创始人Ron Rivest设计发明,经MD2、MD3和MD4发展而来。MD5算法生成的信息摘要的长度为128位。
                      SHA算法的全称是“Secure Hash Alogrithm”,诞生于1993年,由美国国家标准技术研究院(NIST)与美国国家安全局(NSA)设计。SHA(后来被称作SHA-0)于1995年被SHA-1替代,之后又出现了SHA-224、SHA-256、SHA-384和SHA-512等,这些被统称为SHA-2系列算法。SHA-1算法生成的信息摘要的长度为160位,而SHA-2系列算法生成的信息摘要的长度则有256位(SHA-256)、384位(SHA-384)、512位(SHA-512)等。与MD5算法相比,SHA算法具有更高的安全性。
                      MD5算法和SHA算法在实际中有着广泛的应用。与公钥技术结合,生成数字签名。目前几乎主要的信息安全协议中都使用了SHA-1或MD5算法,包括SSL、TLS、PGP、SSH、S/MIME和IPSec等。UNIX系统及不少论坛/社区系统的口令都通过MD5算法处理后保存,确保口令的安全性。
                      需要说明的是,2004年8月,在美国加州圣芭芭拉召开的国际密码学会议上,我国山东大学王小云教授宣布了她及她的研究小组对MD5、HAVAL-128、MD4和RIPEMD等四个著名密码算法的破译结果。2005年2月,王小云教授又破解了另一国际密码算法SHA-1。这为国际密码学研究提出了新的课题。
               数字签名
                      数字签名的基本概念
                      在ISO 7498-2标准中,数字签名被定义为:“附加在数据单元上的一些数据,或是对数据单元所做的密码变换,这种数据和变换允许数据单元的接收者用以确认数据单元来源和数据单元的完整性,并保护数据,防止被人(例如接收者)进行伪造”。实际上,简单地讲,数字签名就是在网络中传送信息报文时,附加一个特殊的唯一代表发送者个人身份的标记,以起到传统上手写签名或印章确认的作用。
                      数字签名建立在数字摘要的基础上,结合公钥加密技术实现。发送者应用自己的私钥对数字摘要进行加密,即生成数字签名。由于发送者的私钥仅为发送者本人所有,所以附加了数字签名的信息能够确认消息发送者的身份,也防止了发送者对本人所发送信息的抵赖行为。同时通过数字摘要技术,接收者可以验证信息是否发生了改变,从而确定信息的完整性。
                      数字签名的使用过程
                      数字签名的使用过程包括签名和验证两部分,如下图所示。
                      
                      数字签名的使用过程
                      (1)发送方将原文用哈希(Hash)算法生成数字摘要Z;
                      (2)发送方将数字摘要Z用自己的私钥加密;
                      (3)发送方将加密后的数字摘要Z(即数字签名)同原文一起发送给接收方;
                      (4)接收方用发送方的公钥解密数字签名,得到数字摘要Z;
                      (5)接收方对接收到的原文用同样的哈希(Hash)算法生成数字摘要Z′;
                      (6)比较Z和Z′,若二者相同,说明信息完整且发送者身份是真实的。
                      由以上过程可以看到,数字签名具有以下两个作用:
                      (1)确认信息的完整性。接收方将原文生成的数字摘要与用接收到的原文生成的新的数字摘要进行对比,相同则说明信息没有改变,不同则说明信息内容发生了变化。因此数字签名能够验证信息是否被修改,从而确定信息的完整性。
                      (2)确认信息发送者的身份,保证发送信息的不可抵赖性。发送者用自己的私钥对数字摘要进行加密,接收者如果能用对应的公钥进行解密,则说明信息一定是由该发送者发送的,从而确认了发送者的身份。此外,由于发送者的私钥是发送者本人拥有(除非丢失、泄露或被窃取),所以发送者不能否认自己曾经发送过的信息。
                      数字签名的种类
                      实现数字签名的基本方法有以下几种。
                      (1)RSA签名。RSA签名是基于RSA算法实现数字签名的方案,ISO/IEC 9796和ANSI X9.30-199X已将RSA作为建议数字签名的标准算法。
                      (2)ElGamal签名。ElGamal签名是专门为签名目的而设计。该机制由T.ElGamal于1985年提出,经修正后,被美国国家标准与技术学会(NIST)作为数字签名标准(Digital Signature Standard,DSS)。
                      RSA签名基于大整数素数分解的困难性,ElGamal签名基于求离散对数的困难性。在RSA签名机制中,明文与密文一一对应,对特定信息报文的数字签名不变化,是一种确定性数字签名。ElGamal签名机制采用非确定性的双钥体制,对同一消息的签名,根据签名算法中随机参数选择的不同而不同,是一种随机式数字签名。
   题号导航      2012年下半年 信息系统监理师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第11题    在手机中做本题