免费智能真题库 > 历年试卷 > 网络工程师 > 2009年下半年 网络工程师 上午试卷 综合知识
  第44题      
  知识点:   数字证书   安全通信   加密   数字证书
  关键词:   安全   加密   解密   数字证书   通信   网站        章/节:   网络安全       

 
某网站向CA申请了数字证书,用户通过(44)来验证网站的真伪。在用户与网站进行安全通信时,用户可以通过(45)进行加密和验证,该网站通过(46)进行解密和签名。
 
 
  A.  CA的签名
 
  B.  证书中的公钥
 
  C.  网站的私钥
 
  D.  用户的公钥
 
 
 

 
  第45题    2012年上半年  
   17%
下列算法中,(45)属于摘要算法。
  第45题    2022年上半年  
   71%
SQL注入是常见的Web攻击,以下不能够有效防御SQL注入的手段是()。
  第41题    2012年下半年  
   26%
下列安全协议中,与TLS功能相似的协议是(41)。
   知识点讲解    
   · 数字证书    · 安全通信    · 加密    · 数字证书
 
       数字证书
               数字证书的概念
               数字证书解决了公开密钥密码体制下密钥的发布和管理问题。用户可以公开其公钥,而保留其私钥。一般包含用户身份信息、用户公钥信息以及身份验证机构数字签名的数据。
               数字证书是一个经证书认证中心(CA)数字签名的包含公开密钥拥有者信息以及公开密钥的文件。认证中心(CA)作为权威的、可信赖的、公正的第三方机构,专门负责为各种认证需求提供数字证书服务。目前得以广泛使用的证书标准是X.509。下表所示为X.509数字证书中的各个数字域的含义。
               
               X.509数字证书中的各个数字域的含义
               证书的获取
               任何一个用户要得到CA的公钥,就能得到该CA为该用户签署的公钥。由于证书是不可伪造的,因此对于存放证书的目录无须施加特别的保护。
               由于一个公钥用户拥有的可信任管理中心数量有限,要与大量不同管理域的用户建立安全通信需要CA间建立信任关系。一个证书链是从一个自签名的根证书开始,前一个证书主体是后一个证书的发放者。也就是说,该主体对后一个证书进行签名。一般来说,对证书链的处理需要考虑每个证书相关的信任关系。
               证书的吊销
               用户的数字到了有效期的终止时间、用户私钥已被泄露、用户放弃使用原CA的服务、CA私钥泄露都需要吊销用户的数字证书。为此,CA维护有一个证书吊销列表(CRL),以供用户查询。
 
       安全通信
        网络设备和管理工作站之间的安全通信有两种方式:一是使用SSH;二是使用VPN。
               SSH
               为了远程访问安全,网络设备提供SSH服务以替换非安全的Telnet,其配置步骤如下:
               (1)使用hostname指定设备名称。
               (2)使用ip domain-name配置设备域。
               (3)使用crypto key generate rsa生成RSA加密密钥。建议最小密钥大小为1024位。
               (4)使用ip ssh设置SSH访问。
               (5)使用transport input命令配置使用SSH。
               如下所示,是在路由器RouterOne上设置SSH访问,VTY配置成只允许SSH访问。
               
               IPSec VPN
               网络设备若支持IPSec,则可以保证管理工作站和网络设备的网络通信内容是加密传输的,其主要配置步骤如下:
               (1)设置ISAKMP预共享密钥;
               (2)创建可扩展的ACL;
               (3)创建IPSec transforms;
               (4)创建crypto map;
               (5)应用crypto map到路由接口。
               假设管理工作站的IP地址是X.Y.Z.10,网络设备是路由器RouterOne,则路由器的IPsec配置过程如下表所示。
               
               IPsec配置过程示意表
 
       加密
               保密与加密
               保密就是保证敏感信息不被非授权的人知道。加密是指通过将信息进行编码而使得侵入者不能够阅读或理解的方法,目的是保护数据和信息。解密是将加密的过程反过来,即将编码信息转化为原来的形式。古时候的人就已经发明了密码技术,而现今的密码技术已经从外交和军事领域走向了公开,并结合了数学、计算机科学、电子与通信等诸多学科而成为了一门交叉学科。现今的密码技术不仅具有保证信息机密性的信息加密功能,而且还具有数字签名、身份验证、秘密分存、系统安全等功能,来鉴别信息的来源以防止信息被篡改、伪造和假冒,保证信息的完整性和确定性。
               加密与解密机制
               加密的基本过程包括对原来的可读信息(称为明文或平文)进行翻译,译成的代码称为密码或密文,加密算法中使用的参数称为加密密钥。密文经解密算法作用后形成明文,解密算法也有一个密钥,这两个密钥可以相同也可以不相同。信息编码的和解码方法可以很简单也可以很复杂,需要一些加密算法和解密算法来完成。
               从破译者的角度来看,密码分析所面对的问题有三种主要的变型:①“只有密文”问题(仅有密文而无明文);②“已知明文”问题(已有了一批相匹配的明文与密文);③“选择明文”(能够加密自己所选的明文)。如果密码系统仅能经得起第一种类型的攻击,那么它还不能算是真正的安全,因为破译者完全可能从统计学的角度与一般的通信规律中猜测出一部分的明文,而得到一些相匹配的明文与密文,进而全部解密。因此,真正安全的密码机制应使破译者即使拥有了一些匹配的明文与密文也无法破译其他的密文。
               如果加密算法是可能公开的,那么真正的秘密就在于密钥了,密钥长度越长,密钥空间就越大,破译密钥所花的时间就越长,破译的可能性就越小。所以应该采用尽量长的密钥,并对密钥进行保密和实施密钥管理。
               国家明确规定严格禁止直接使用国外的密码算法和安全产品,原因主要有两点:①国外禁止出口密码算法和产品,目前所出口的密码算法都有破译手段,②国外的算法和产品中可能存在“后门”,要防止其在关键时刻危害我国安全。
               密码算法
               密码技术用来进行鉴别和保密,选择一个强壮的加密算法是至关重要的。密码算法一般分为传统密码算法(又称为对称密码算法)和公开密钥密码算法(又称为非对称密码算法)两类,对称密钥密码技术要求加密解密双方拥有相同的密钥。而非对称密钥密码技术是加密解密双方拥有不相同的密钥。
               对称密钥密码体制从加密模式上可分为序列密码和分组密码两大类(这两种体制之间还有许多中间类型)。
               序列密码是军事和外交场合中主要使用的一种密码技术。其主要原理是:通过有限状态机产生性能优良的伪随机序列,使用该序列将信息流逐比特加密从而得到密文序列。可以看出,序列密码算法的安全强度由它产生的伪随机序列的好坏而决定。分组密码的工作方式是将明文分成固定长度的组(如64比特一组),对每一组明文用同一个密钥和同一种算法来加密,输出的密文也是固定长度的。在序列密码体制中,密文不仅与最初给定的密码算法和密钥有关,同时也是被处理的数据段在明文中所处的位置的函数;而在分组密码体制中,经过加密所得到的密文仅与给定的密码算法和密钥有关,而与被处理的明数据段在整个明文中所处的位置无关。
               不同于传统的对称密钥密码体制,非对称密码算法要求密钥成对出现,一个为加密密钥(可以公开),另一个为解密密钥(用户要保护好),并且不可能从其中一个推导出另一个。公共密钥与专用密钥是有紧密关系的,用公共密钥加密的信息只能用专用密钥解密,反之亦然。另外,公钥加密也用来对专用密钥进行加密。
               公钥算法不需要联机密钥服务器,只在通信双方之间传送专用密钥,而用专用密钥来对实际传输的数据加密解密。密钥分配协议简单,所以极大简化了密钥管理,但公共密钥方案较保密密钥方案处理速度慢,因此,通常把公共密钥与专用密钥技术结合起来实现最佳性能。
               密钥及密钥管理
               密钥是密码算法中的可变参数。有时候密码算法是公开的,而密钥是保密的,而密码分析者通常通过获得密钥来破译密码体制。也就是说,密码体制的安全性建立在对密钥的依赖上。所以,保守密钥秘密是非常重要的。
               密钥管理一般包括以下8个内容。
               (1)产生密钥:密钥由随机数生成器产生,并且应该有专门的密钥管理部门或授权人员负责密钥的产生和检验。
               (2)分发密钥:密钥的分发可以采取人工、自动或者人工与自动相结合的方式。加密设备应当使用经过认证的密钥分发技术。
               (3)输入和输出密钥:密钥的输入和输出应当经由合法的密钥管理设备进行。人工分发的密钥可以用明文形式输入和输出,并将密钥分段处理;电子形式分发的密钥应以加密的形式输入和输出。输入密钥时不应显示明文密钥。
               (4)更换密钥:密钥的更换可以由人工或自动方式按照密钥输入和密钥输出的要求来实现。
               (5)存储密钥:密钥在加密设备内采用明文形式存储,但是不能被任何外部设备访问。
               (6)保存和备份密钥:密钥应当尽量分段保存,可以分成两部分并且保存在不同的地方,例如一部分存储在保密设备中,另一部分存储在IC卡上。密钥的备份也应当注意安全并且要加密保存。
               (7)密钥的寿命:密钥不可以无限期使用,密钥使用得越久风险也就越大。密钥应当定期更换。
               (8)销毁密钥:加密设备应能对设备内的所有明文密钥和其他没受到保护的重要保护参数清零。
 
       数字证书
        数字证书是各类终端实体和最终用户在网上进行信息交流及商务活动的身份证明,在电子交易的各个环节,交易的各方都需验证对方数字证书的有效性,从而解决相互间的信任问题。
        数字证书采用公钥体制,即利用一对互相匹配的密钥进行加密和解密。每个用户自己设定一个特定的仅为本人所知的私有密钥(私钥),用它进行解密和签名,同时设定一个公共密钥(公钥),并由本人公开,为一组用户所共享,用于加密和验证。公开密钥技术解决了密钥发布的管理问题。一般情况下,证书中还包括密钥的有效时间、发证机构(证书授权中心)的名称及该证书的序列号等信息。数字证书的格式遵循ITUT X.509国际标准。
        用户的数字证书由某个可信的证书发放机构(Certification Authority,CA)建立,并由CA或用户将其放入公共目录中,以供其他用户访问。目录服务器本身并不负责为用户创建数字证书,其作用仅仅是为用户访问数字证书提供方便。
        在X.509标准中,数字证书的一般格式包含的数据域如下。
        (1)版本号:用于区分X.509的不同版本。
        (2)序列号:由同一发行者(CA)发放的每个证书的序列号是唯一的。
        (3)签名算法:签署证书所用的算法及参数。
        (4)发行者:指建立和签署证书的CA的X.509名字。
        (5)有效期:包括证书有效期的起始时间和终止时间。
        (6)主体名:指证书持有者的名称及有关信息。
        (7)公钥:有效的公钥以及其使用方法。
        (8)发行者ID:任选的名字唯一地标识证书的发行者。
        (9)主体ID:任选的名字唯一地标识证书的持有者。
        (10)扩展域:添加的扩充信息。
        (11)认证机构的签名:用CA私钥对证书的签名。
               证书的获取
               CA为用户产生的证书应具有以下特性:
               (1)只要得到CA的公钥,就能由此得到CA为用户签署的公钥。
               (2)除CA外,其他任何人员都不能以不被察觉的方式修改证书的内容。
               因为证书是不可伪造的,因此无须对存放证书的目录施加特别的保护。
               如果所有用户都由同一CA签署证书,则这一CA必须取得所有用户的信任。用户证书除了能放在公共目录中供他人访问外,还可以由用户直接把证书转发给其他用户。用户B得到A的证书后,可相信用A的公钥加密的消息不会被他人获悉,还可信任用A的私钥签署的消息不是伪造的。
               如果用户数量很多,仅一个CA负责为所有用户签署证书可能不现实。通常应有多个CA,每个CA为一部分用户发行和签署证书。
               设用户A已从证书发放机构X1处获取了证书,用户B已从X2处获取了证书。如果A不知X2的公钥,他虽然能读取B的证书,但却无法验证用户B证书中X2的签名,因此B的证书对A来说是没有用处的。然而,如果两个证书发放机构X1和X2彼此间已经安全地交换了公开密钥,则A可通过以下过程获取B的公开密钥:
               (1)A从目录中获取由X1签署的X2的证书X1《X2》,因为A知道X1的公开密钥,所以能验证X2的证书,并从中得到X2的公开密钥。
               (2)A再从目录中获取由X2签署的B的证书X2《B》,并由X2的公开密钥对此加以验证,然后从中得到B的公开密钥。
               在以上过程中,A是通过一个证书链来获取B的公开密钥的,证书链可表示为
               X1《X2》X2《B》
               类似地,B能通过相反的证书链获取A的公开密钥,表示为
               X2《X1》X1《A》
               以上证书链中只涉及两个证书。同样,有N个证书的证书链可表示为
               X1《X2X2《X3》…XN《B》
               此时,任意两个相邻的CAXi和CAXi+1已彼此间为对方建立了证书,对每一个CA来说,由其他CA为这一CA建立的所有证书都应存放于目录中,并使得用户知道所有证书相互之间的连接关系,从而可获取另一用户的公钥证书。X.509建议将所有的CA以层次结构组织起来,用户A可从目录中得到相应的证书以建立到B的以下证书链:
               X《W》W《V》V《U》U《Y》Y《Z》Z《B》
               并通过该证书链获取B的公开密钥。
               类似地,B可建立以下证书链以获取A的公开密钥:
               X《W》W《V》V《U》U《Y》Y《Z》Z《A》
               证书的吊销
               从证书的格式上可以看到,每个证书都有一个有效期,然而有些证书还未到截止日期就会被发放该证书的CA吊销,这可能是由于用户的私钥已被泄漏,或者该用户不再由该CA来认证,或者CA为该用户签署证书的私钥已经泄漏。为此,每个CA还必须维护一个证书吊销列表(Certificate Revocation List,CRL),其中存放所有未到期而被提前吊销的证书,包括该CA发放给用户和发放给其他CA的证书。CRL还必须由该CA签字,然后存放于目录中以供他人查询。
               CRL中的数据域包括发行者CA的名称、建立CRL的日期、计划公布下一CRL的日期以及每个被吊销的证书数据域。被吊销的证书数据域包括该证书的序列号和被吊销的日期。对一个CA来说,它发放的每个证书的序列号是唯一的,所以可用序列号来识别每个证书。
               因此,每个用户收到他人消息中的证书时都必须通过目录检查这一证书是否已经被吊销,为避免搜索目录引起的延迟以及因此而增加的费用,用户自己也可维护一个有效证书和被吊销证书的局部缓存区。
   题号导航      2009年下半年 网络工程师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第44题    在手机中做本题