免费智能真题库 > 历年试卷 > 软件设计师 > 2013年下半年 软件设计师 上午试卷 综合知识
  第8题      
  知识点:   加密技术和认证技术   PKI   数字证书
  关键词:   篡改   数字证书        章/节:   网络与信息安全知识       

 
PKI体制中,保证数字证书不被篡改的方法是(8)。
 
 
  A.  用CA的私钥对数字证书签名
 
  B.  用CA的公钥对数字证书签名
 
  C.  用证书主人的私钥对数字证书签名
 
  D.  用证书主人的公钥对数字证书签名
 
 
 

 
  第66题    2014年下半年  
   55%
PPP中的安全认证协议是(),它使用三次握手的会话过程传送密文。
  第7题    2011年上半年  
   36%
用户A从CA获得用户B的数字证书,并利用(7)验证数字证书的真实性。
  第9题    2018年下半年  
   37%
MD5是(  )算法,对任意长度的输入计算得到的结果长度为(  )位。
   知识点讲解    
   · 加密技术和认证技术    · PKI    · 数字证书
 
       加密技术和认证技术
               加密技术
               1)加密技术概述
               加密技术是最常用的安全保密手段,数据加密技术的关键在于加密/解密算法和密钥管理。加密技术包括两个元素,即算法和密钥。数据加密的基本过程就是对原来为明文的文件或数据按某种加密算法进行处理,使其成为不可读的一段代码,通常称为"密文"。"密文"只能在输入相应的密钥之后才能显示出原来的内容,通过这样的途径达到保护数据不被窃取。
               数据加密和解密是一对逆过程。数据加密是用加密算法E和加密密钥K1,将明文P变换成密文C,记为
               C=EK1(P)
               数据解密是数据加密的逆过程,是用解密算法D和解密密钥K2将密文C变换成明文P,记为
               P=DK2(C)
               数据加密技术可分成3类,即对称加密、非对称加密和不可逆加密。
               (1)对称加密技术。对称加密的体制模型如下图所示。
               
               对称加密的体制模型
               常用的对称加密算法有以下几个。
               .数据加密标准(Digital Encryption Standard,DES)算法。
               .三重DES(3DES或称TDES)。
               .RC-5(Rivest Cipher 5)。
               .国际数据加密算法(International Data Encryption Algorithm,IDEA)。
               (2)非对称加密技术。与对称加密算法不同,非对称加密算法需要两个密钥,即公开密钥(即公钥)和私有密钥(即私钥)。这里的"公钥"是指可以对外公布的,"私钥"只能由持有人知道。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,则只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法称为非对称加密算法。
               非对称加密有两个不同的体制,如下图所示。
               
               非对称加密的体制模型
               非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其他方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。甲方只能用其专用密钥解密由其公用密钥加密后的任何信息。
               非对称加密算法的保密性能好,它消除了最终用户交换密钥的需要,但加密和解密花费时间长、速度慢,不适合对文件加密,而只适用于对少量数据进行加密。
               2)密钥管理
               密钥管理主要是指密钥对的安全管理,包括密钥产生、密钥备份和恢复、密钥更新以及多密钥管理。
               认证技术
               1)认证技术概述
               认证技术主要解决网络通信过程中通信双方的身份认证。认证的过程涉及加密和密钥交换。通常,加密可使用对称加密、不对称加密及两种加密方法的混合方法。认证一般有账户名/口令认证、使用摘要算法认证、基于PKI(Public Key Infrastructure,公开密钥体系)的认证等几种方法。一个有效的PKI系统必须是安全的和透明的,用户在获得加密和数字签名服务时,不需要详细了解PKI的内部运行机制。
               PKI是一种遵循既定标准的密钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务及必需的密钥和证书管理体系。简单地说,PKI是通过使用公开密钥技术和数字证书来确保系统信息安全并负责验证数字证书持有者身份的一种体系。PKI技术是安全信息技术的核心,也是电子商务的关键和基础技术。PKI的基础技术包括加密、数字签名、数据完整性机制、数字信封、双重数字签名等。完整的PKI系统必须具有权威认证机构(CA)、数字证书库、密钥备份及恢复系统、证书作废系统、应用接口(API)等基本构成部分。
               2)哈希函数与信息摘要
               Hash(哈希)函数(又称散列函数)提供了这样一种计算过程:输入一个长度不固定的字符串,返回一串定长度的字符串(又称Hash值)。单向Hash函数用于产生信息摘要。
               信息摘要简要地描述了一份较长的信息或文件,它可以被看作一份长文件的"数字指纹"。信息摘要用于创建数字签名。
               3)数字签名
               数字签名是通过一个单向散列函数对要传送的报文进行处理得到的,用以认证报文来源并核实报文是否发生变化的一个字母数字串。数字签名可以解决否认、伪造、篡改及冒充等问题,应用范围十分广泛,如加密信件、商务信函、订货购买系统、远程金融交易、自动模式处理等。
               数字签名和数字加密的过程虽然都使用公开密钥体系,但实现的过程正好相反,使用的密钥对也不同。数字签名使用的是发送方的密钥对,发送方用自己的私有密钥进行加密,接收方用发送方的公开密钥进行解密,这是一个一对多的关系,任何拥有发送方公开密钥的人都可以验证数字签名的正确性。数字加密则使用的是接收方的密钥对,这是多对一的关系,任何知道接收方公开密钥的人都可以向接收方发送加密信息,只有唯一拥有接收方私有密钥的人才能对信息解密。另外,数字签名只采用了非对称密钥加密算法,它能保证发送信息的完整性、身份认证和不可否认性,而数字加密则采用了对称密钥加密算法和非对称密钥加密算法相结合的方法,它能保证发送信息的保密性。
               4)SSL协议
               SSL(Secure Sockets Layer)是网景(Netscape)公司提出的基于Web应用的安全协议,又叫安全套接层协议。
               SSL协议主要提供三方面的服务:用户和服务器的合法性认证;加密数据以隐藏被传送的数据;保护数据的完整性,目的是在两个通信应用程序之间提供私密性和可靠性。对于电子商务应用来说,使用SSL可保证信息的真实性、完整性和保密性。
               5)数字时间戳技术
               数字时间戳技术是数字签名技术的一种变种。数字时间戳服务(Digital Time-stamp Service,DTS)是网上电子商务提供的安全服务项目之一,能提供电子文件的日期和时间信息的安全保护。
               时间戳(Time-stamp)是一个经加密后形成的凭证文档,它包括以下3个部分。
               .需加时间戳的文件的摘要。
               .DTS收到文件的日期和时间。
               .DTS的数字签名。
               一般来说,时间戳产生的过程为:用户首先将需要时间戳的文件用Hash编码加密形成摘要,然后将该摘要发送到DTS,DTS在加入收到文件摘要的日期和时间信息后再对该文件加密(数字签名),然后送回用户。
 
       PKI
        PKI的基本概念
        1.PKI的总体架构
        PKI(Public Key Infrastructure,公开密钥基础设施)是以不对称密钥加密技术为基础,以数据机密性、完整性、身份认证和行为不可抵赖性为安全目的,来实施和提供安全服务的具有普适性的安全基础设施。其内容包括数字证书、不对称密钥密码技术、认证中心、证书和密钥的管理、安全代理软件、不可否认性服务、时间戳服务、相关信息标准、操作规范等。它是支持安全五要素的技术基础设施。
        一个网络的PKI包括以下几个基本构件:
        .数字证书:由认证机构经过数字签名后发给网上信息交易主体(企业或个人、设备或程序)的一段电子文档。文档中包括主体名称、证书序号、发证机构名称、证书有效期、密码算法标识、公钥和私钥信息及其他属性信息等。数字证书提供了PKI的基础。
        .认证中心:即CA,是PKI的核心。它是公正、权威、可信的第三方网上认证机构,负责数字证书的签发、撤销和生命周期的管理,还提供密钥管理和证书在线查询等服务。
        .数字证书注册审批机构:即RA,是CA的数字证书发放、管理的延伸。它负责数字证书申请者信息的录入、审核以及数字证书发放等工作。RA系统是整个CA中心得以正常运营不可缺少的一部分。
        .数字签名:利用发信者的私钥和可靠的密码算法对待发信息或其电子摘要进行加密处理,这个过程和结果就是数字签名。
        .密钥和证书管理工具:管理和审计数字证书的工具,认证中心使用它来管理一个在CA上的证书。
        .双证书体系:PKI采用双证书体系,非对称算法支持RSA和ECC算法,对称密码算法支持国家密码管理委员会指定的算法。
        从宏观来看,PKI的体系架构概括为两大部分:
        .PKI信任服务体系:是为整个业务应用系统提供基于PKI数字证书认证机制的实体身份鉴别服务,包括了认证机构、注册机构、证书库、证书撤销和交叉认证等。
        .PKI密钥管理中心:即KMC,提供密钥管理服务,向授权管理部门提供应急情况下的特殊密钥回复功能。包括密钥管理机构、密钥备份和恢复、密钥更新和密钥历史档案等。
        2.双证书、双密钥机制
        一对密钥(一张证书)的弊端:
        .如果密钥不备份,当密钥损坏时,以前加密的信息不可解密。
        .如果密钥不备份,很难实现信息审计。
        .如果密钥不备份,数字签名的不可否认性很难保证。
        两对密钥(两张证书)的优点:
        .一对密钥用于签名,一对密钥用于加密。
        .加密密钥在密钥管理中心生成及备份,签名密钥由用户自行生成并保存。
        3.数字证书的主要内容
        数字证书是公开密钥体制的一种密钥管理媒介。主要内容有:
        .主体名称:唯一标识证书所有者的标识符。
        .签证机关名称(CA):唯一标识证书签发者的标识符。
        .主体的公开密钥:证书所有者的公开密钥。
        .CA的数字签名:CA对证书的数字签名,保证证书的权威性。
        .有效期:证书在该期间内有效。
        .序列号:CA产生的唯一性数字,用户证书管理。
        .用途:主体公钥的用途。
        数字证书生命周期
        PKI/CA对数字证书的管理是按照数字证书的生命周期实施的。数字证书的生命周期包括:
        .安全需求确定:安全需求的确定必须完成的工作包括标识需要证书的应用程序、确定所需要的安全级别、标识需要证书的用户、确定如何保护私有密钥。
        .证书登记:从CA申请和接收一个证书的过程称为登记。这个过程可分为几个步骤,包括生成一个密钥对、收集登记信息、申请证书、用CA的公开密钥对申请进行加密、验证信息、创建证书、发送或邮寄证书。
        .证书分发:企业CA向用户颁发证书。
        .证书撤回:CRL(证书撤销列表)不会撤回客户端上的所有证书,仅仅撤回CRL中指定的证书。
        .证书更新:当证书达到它的截止有效日期时会自动变得无效,需要更新一个新证书。
        .证书审计:使用审计来监控与证书服务器上证书的颁发有关的活动。
        证书映射为使用者使用数字证书进行实际的应用操作提供了安全的、实际的“交接认证”工作。证书到用户账户的映射可以分为:
        .一对一映射:创建从个人证书到相应的应用里用户账户的关系。当客户数目相对很小时,使用一对一映射。
        .多对一映射:为所有证书创建从一个特定CA到一个应用的用户账户的关系。能够把多个证书映射到一个用户的账户中。
        X.509的信任模型
        X.509中信任的定义为:如果实体A认为实体B严格按A所期望的那样行动,则A信任B。
        PKI/CA的信任结构类型包括:
        .层次信任结构:所有实体都信任唯一的根CA。
        .分布式信任结构:把信任分散到两个或更多个(或许是很多个)CA上。
        .Web模型的信任结构:与严格层次结构模型相似。在该模型中,许多CA的公钥被预装在正在使用的标准浏览器上,浏览器用户最初信任这些CA并把它们作为证书检验的根。
        .以用户为中心的信任模型:每个用户都对决定依赖哪个证书和拒绝哪个证书直接完全地负责。
        .交叉认证的信任关系:交叉认证是一种把以前无关的CA连接在一起的有用机制,从而使得在它们各自主体群之间的信任关系得到有效扩展,使彼此的终端实体之间的安全通信成为可能。
        认证机构职责
        认证中心(CA)是PKI/CA提供核心服务的执行机构,广义上还应包含证书的申请注册机构(RA)。
        CA的主要职责包括:
        .数字证书管理。
        .证书和证书库。
        .密钥备份以及恢复。
        .密钥和证书的更新。
        .证书历史档案。
        .客户端软件。
        .交叉认证。
        认证中心提供的服务主要包括:
        .认证:身份识别和鉴别,确认实体即为自己所声明的实体,鉴别身份的真伪。
        .数据完整性服务:确认数据没有被修改。
        .数据保密性服务:采用“数字信封”机制。
        .不可否认性服务:从技术上保证实体对其行为的认可。
        .公证服务:即数据认证,证明数据的有效性和正确性。
        PKI/CA应用模式
        PKI/CA是S-MIS和S2-MIS的安全基础平台。
        PKI/CA的应用范围包括:
        .电子商务应用。
        .电子政务。
        .网上银行。
        .网上证券。
        .其他应用。
 
       数字证书
        数字证书是各类终端实体和最终用户在网上进行信息交流及商务活动的身份证明,在电子交易的各个环节,交易的各方都需验证对方数字证书的有效性,从而解决相互间的信任问题。
        数字证书采用公钥体制,即利用一对互相匹配的密钥进行加密和解密。每个用户自己设定一个特定的仅为本人所知的私有密钥(私钥),用它进行解密和签名,同时设定一个公共密钥(公钥),并由本人公开,为一组用户所共享,用于加密和验证。公开密钥技术解决了密钥发布的管理问题。一般情况下,证书中还包括密钥的有效时间、发证机构(证书授权中心)的名称及该证书的序列号等信息。数字证书的格式遵循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来说,它发放的每个证书的序列号是唯一的,所以可用序列号来识别每个证书。
               因此,每个用户收到他人消息中的证书时都必须通过目录检查这一证书是否已经被吊销,为避免搜索目录引起的延迟以及因此而增加的费用,用户自己也可维护一个有效证书和被吊销证书的局部缓存区。
   题号导航      2013年下半年 软件设计师 上午试卷 综合知识   本试卷我的完整做题情况  
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 /
 
第8题    在手机中做本题