信息安全原理与技术第2版郭亚军宋建华李莉董慧慧清华大学出版社2020/1/23Ch8-公钥基础设施2第8章公钥基础设施•主要知识点:–公钥基础设施PKI(PublicKeyInfrasturcture)–认证中心CA(CertificateAuthority)–数字证书(DigitalCertificate)–证书撤销链表CRL(CertificateRevocationLists)–在线证书状态协议OCSP(OnlineCertificatestatusProtocol)–交叉认证(Cross-Certification)–证书用户(CertificateUser)–简单认证(SimpleAuthentication)–强认证(StrongAuthentication)–X.5092020/1/23Ch8-公钥基础设施3PKI概念•PKI是利用公钥密码理论和技术为网络安全应用提供安全服务的基础设施,不针对任何一种具体的网络应用,但它提供了一个基础平台,并提供友好的接口。•PKI采用数字证书对公钥进行管理,通过第三方的可信任机构(认证中心,即CA),把用户的公钥和用户的其他标识信息捆绑在一起。•PKI的主要目的是通过自动管理密钥和证书,为用户建立起一个安全的网络运行环境,使用户可以在多种应用环境下方便的使用加密、数字签名技术等多种密码技术,从而保证网上数据的安全性。2020/1/23Ch8-公钥基础设施4PKI提供的安全服务•认证性:认证服务与保证通信的真实性有关。认证服务向接收方保证消息来自于所声称的发送方。认证性包括实体认证和数据源认证。•数据保密性:防止传输的信息收到被动攻击。•数据完整性:保证消息在通信中没有被攻击者篡改。•不可否认性:防止信息发送方或接收方否认传输或接受过某条消息。•访问控制:限制和控制通过通信连接对主机和应用进行存取的能力。2020/1/23Ch8-公钥基础设施5PKI涉及的密码技术(1)对称和非对称加/解密消息验证码与散列函数数字签名2020/1/23Ch8-公钥基础设施6PKI涉及的密码技术(2)•对称和非对称加/解密–对称加密机制也称单钥密码技术,即加密密钥和解密密钥是相同的。对称密码加密机制的特点是:保密性好,计算效率高,处理速度快,适合于大数据量的加/解密。但是缺点是:对于密钥的分发管理困难。–非对称密码体制也称为公钥密码体制后双钥密码体制,它不仅可以提供加/解密功能,还可以实现数字签名。非对称密码机制的特点是:便于密钥的分发管理、可以实现数字签名。缺点是:计算上效率低,不适合大数据量的处理。2020/1/23Ch8-公钥基础设施7PKI涉及的密码技术(3)•消息验证码与散列函数–消息认证码是保证数据完整性的加密技术,它使用密钥对消息进行加密处理,生成一段短数据块,作为消息的认证码。提供数据的完整性服务。–散列函数和消息认证码函数功能类似,也是对消息产生一段短的数据块,作为和原始消息相关的认证信息,但是不同的是散列函数不使用密钥信息。散列函数通常和非对称密码机制结合使用,用来实现数字签名2020/1/23Ch8-公钥基础设施8PKI涉及的密码技术(4)•数字签名–直接使用签名私钥进行数字签名:这种方式适合于对数据量小的信息进行签名。–结合散列函数实现数字签名:这种方式适合对数据量大的信息进行签名。首先对被签名的消息计算散列值,然后使用私钥对消息散列值而不是直接对消息进行签名。验证者收到消息及签名后,首先是使用散列函数计算出所收到的消息的散列值,然后使用公钥对该散列值以及收到的数字签名进行验证。2020/1/23Ch8-公钥基础设施9PKI涉及的密码技术(5)•数字信封M||EKsDKsM接收者BHHPRAEPPUB||DCPRBPUA验证结果发送者A2020/1/23Ch8-公钥基础设施10PKI涉及的密码技术(6)•双重数字签名–所谓双重签名,是指发送者需要发送两组相关的信息给接收者,对这两组相关信息,接收者只能解读其中的一组,而另一组只能直接转发给第三方接收者。这种应用中使用的两组数字签名称为双重数字签名。2020/1/23Ch8-公钥基础设施11PKI组成PKI应用接口PKI策略软硬件系统证书机构注册机构证书发布系统2020/1/23Ch8-公钥基础设施12最终用户RA管理员RA硬件加密机目录服务、CRL、OCSP、时戳服务…证书管理服务器数据库服务器签名服务器密钥管理系统管理服务器CA管理员CA密钥管理员PKI系统的构建必须包括认证机构、证书库、密钥备份及恢复系统、证书撤销系统、PKI应用接口等基本成分。2020/1/23Ch8-公钥基础设施13认证机构•认证机构CA是PKI的核心组成部分,是证书的颁发机构。•认证中心的任务就是负责产生、分配并管理数字证书。每一份数字证书都与上一级的数字签名证书相关联,最终通过安全链追溯到一个已知的并被广泛认为是安全、权威、足以信赖的机构-根认证中心(根CA)2020/1/23Ch8-公钥基础设施14认证机构的职责•验证并标识证书申请者的身份;•确保CA用于签名证书的非对称密钥的质量;•确保整个认证过程的安全性,确保签名私钥的安全性;•证书资料信息(包括公钥证书序列号、CA标识等)的管理;•确定并检查证书的有效期;•确保证书主题标识的唯一性,防止重名;•发布并维护作废证书列表;•对整个证书签发过程做日志记录;•向申请人发出通知。2020/1/23Ch8-公钥基础设施15密钥对的生成•主体的公钥可以由如下方式产生,然后由CA对其进行数字签名:–用户自己生成密钥对,然后将公钥以安全的方式传送给CA,这种方法的优点是用户私钥不会传播给其他实体,但该过程必须保证用户公钥的可验证性和完整性。–密钥对由CA产生,然后将其以安全的方式传送给用户。认证机构是用户信任的实体,并且具有必要的、安全的安全手段,这是一种比较合适的选择。该过程必须确保密钥对待机密性、完整性和可验证性,这种方式对CA待可信性要求更高。2020/1/23Ch8-公钥基础设施16数字证书•数字证书也成为公钥证书、电子证书,是公钥体制中使用的公钥的一个密钥管理载体,它是一种权威性的电子文档,形同网络环境中的一种身份证,用以证明某个主题(如用户、服务器等)的身份以及其所持有的公开密钥的真实性和合法性。•证书是PKI的管理核心,PKI适用于异构环境中,所以证书的格式在所使用的范围内必须统一。证书的格式遵循ITUTX.509国际标准。2020/1/23Ch8-公钥基础设施17版本Version证书序列号CertificateSerialNumber签发者名字IssuerName生效日期notbefore失效日期notafter证书持有者SubjectName算法algorithms参数parameters密钥信息key签发者唯一标识符IssueruniqueIdentifier扩展Extension算法algorithms参数parameters签名内容encryptedV1V2V3V1,V2,V3算法algorithms参数parameters签名算法标识有效期证书持有者的公钥信息签名x.509v3证书格式2020/1/23Ch8-公钥基础设施18证书库•证书库是CA颁发证书和撤销证书的集中存放地,是网上一种公共信息库,可供用户进行开放式查询。•证书库的通常构造方法是采用支持LDAP协议的目录系统。证书及证书撤销信息在目录系统上发布,其标准格式采用X.500系列。用户或相关应用可以通过LDAP来访问证书库,实时查询证书和证书撤销信息。系统必须保证证书库的完整性,防止伪造、篡改证书。2020/1/23Ch8-公钥基础设施19证书撤销•数字证书在有效期内可能因为一些原因需要撤销用户信息和公钥的捆绑关系。这就需要终止证书的生命期,并警告其他用户不再使用这个证书。•PKI为此提供了证书撤销的管理机制,撤销证书有以下几种机制:–撤销一个或多个主体的证书;–撤销由某一对密钥签发的所有证书;–撤销由CA签发的所有证书。2020/1/23Ch8-公钥基础设施20证书撤销-CRL•一般CA通过发布证书撤销列表CRL来发布撤销信息–CRL是由CA签名的一组电子文档,包括了被撤销证书的唯一标识(证书序列号)–CRL为应用程序和其它系统提供了一种检验证书有效性的方式–任何一个证书被撤销后,CA会通过发布CRL的方式来通知各方2020/1/23Ch8-公钥基础设施21证书撤销-OCSP•对证书撤销信息的查询,也可以使用在线查询方式。在线证书状态协议(OnlineCertificatestatusProtocol,简称OCSP)是IETF颁布的用于检查数字证书在某一交易时间是否有效的标准,可以实时进行这类检查,比下载和处理CRL的传统方式更快、更方便和更具独立性。2020/1/23Ch8-公钥基础设施22密钥备份与恢复•可能很多原因造成丢失解密数据的密钥,那么被加密的密文将无法解开,造成数据丢失。为了避免这种情况的发生,PKI提供了密钥备份与解密密钥的恢复机制,即密钥备份与恢复系统。•在PKI中密钥的备份和恢复分为CA自身根密钥和用户密钥两种情况•值得注意的是,密钥备份和恢复一般只针对解密密钥,签名私钥是不做备份的。2020/1/23Ch8-公钥基础设施23PKI应用接口•完成证书的验证,为所有应用提供一致、可信的方式使用公钥证书;•以安全、一致的方式与PKI的密钥备份与恢复系统交互,为应用提供统一的密钥备份与恢复支持;•在所有应用系统中,确保用户的签名私钥始终在用户本人的控制下;•根据案情策略自动为用户更换密钥,实现密钥更换的自动、透明与一致;•为方便用户访问加密的历史数据,向应用提供历史密钥的安全管理服务;•为所有应用访问统一的公钥证书库提供支持;•以可信、一致的方式与证书撤销系统交互,向所有应用提供统一的证书撤销处理服务;•完成交叉证书的验证工作,为所有应用提供统一模式的交叉验证支持;•支持多种密钥存储介质;•提供跨平台服务。2020/1/23Ch8-公钥基础设施24PKI的功能•证书的管理•密钥的管理•交叉认证•安全服务2020/1/23Ch8-公钥基础设施25PKI的功能-证书的管理•证书的申请和审批–用户从RA处获得申请表,填写相关内容,提交给RA,由RA对相关内容进行审核并决定是否审批通过该证书申请的请求。通过后RA将申请请求及审批通过的信息提交给相应的认证中心CA。–证书的申请和审批方式有离线和在线两种2020/1/23Ch8-公钥基础设施26PKI的功能-证书的签发•证书的签发–RA完成了证书的申请和审批后,将证书请求提交给CA,由CA颁发所申请的证书,其中由CA所生成的证书格式符合X.509V3标准,CA对证书进行数字签名。–证书的发放分为离线方式和在线方式两种2020/1/23Ch8-公钥基础设施27PKI的功能-证书的查询和管理•证书的查询和获取–当用户收到发送者进行数字签名的信息时,需要验证该数字签名,或希望加密信息发送给其他用户,需要获取其他用户的公钥证书并验证有效性。•PKI体系中提供了获取证书的多种方式–发送者发送签名信息时,附加发送自己的证书;–单独发送证书信息的通道;–可从访问发布证书的目录服务器获得;–或者从证书的相关实体处获得。2020/1/23Ch8-公钥基础设施28PKI的功能-证书的撤销•证书撤销–证书在使用过程中可能会因为各种原因而被废止,例如:密钥泄密,相关从属信息变更,密钥有效期中止或者CA本身的安全隐患引起废止等。–CRL和OCSP2020/1/23Ch8-公钥基础设施29PKI的功能-密钥的管理•密钥的产生和分发–用户公/私钥对的产生、验证及分发有两种方式:用户自己产生或由代理产生•密钥的备份和恢复–CA自身根密钥和用户密钥两种情况•密钥的自动更新•密钥历史档案管理2020/1/23Ch8-公钥基础设施30PKI的功能-交叉认证•每个CA只能覆盖一定的作用范围,这个范围成为CA的域,当属于不同CA域的用户需要进行安全通信时,则需要提供一种互相认可对方