“安全协议自动验证技术服务与工具开发”之PKI

PKI是Public Key Infrastructure的首字母缩写,翻译过来就是公钥基础设施;PKI是一种遵循标准的利用公钥加密技术为电子商务的开展提供一套安全基础平台的技术和规范。
X.509标准中,为了区别于权限管理基础设施(Privilege Management Infrastructure,简称PMI),将PKI定义为支持公开密钥管理并能支持认证、加密、完整性和可追究性服务的基础设施]。这个概念与第一个概念相比,不仅仅叙述PKI能提供的安全服务,更强调PKI必须支持公开密钥的管理。也就是说,仅仅使用公钥技术还不能叫做PKI,还应该提供公开密钥的管理。因为PMI仅仅使用公钥技术但并不管理公开密钥,所以,PMI就可以单独进行描述了而不至于跟公钥证书等概念混淆。X.509中从概念上分清PKI和PMI有利于标准的叙述。然而,由于PMI使用了公钥技术,PMI的使用和建立必须先有PKI的密钥管理支持。也就是说,PMI不得不把自己与PKI绑定在一起。当我们把两者合二为一时,PMI+PKI就完全落在X.509标准定义的PKI范畴内。根据X.509的定义,PMI+PKI仍旧可以叫做PKI,而PMI完全可以看成PKI的一个部分。
基本组成
PKI(Public Key Infrastructure)公钥基础设施是提供公钥加密和数字签名服务的系统或平台,目的是为了管理密钥和证书。一个机构通过采用PKI 框架管理密钥和证书可以建立一个安全的网络环境。PKI 主要包括四个部分:X.509 格式的证书(X.509 V3)和证书废止列表CRL(X.509 V2);CA 操作协议;CA 管理协议;CA 政策制定。一个典型、完整、有效的PKI 应用系统至少应具有以下五个部分;
1) 认证中心CA CA 是PKI 的核心,CA 负责管理PKI 结构下的所有用户(包括各种应用程序)的证书,把用户的公钥和用户的其他信息捆绑在一起,在网上验证用户的身份,CA 还要负责用户证书的黑名单登记和黑名单发布,后面有CA 的详细描述。
2) X.500 目录服务器 X.500 目录服务器用于发布用户的证书和黑名单信息,用户可通过标准的LDAP 协议查询自己或其他人的证书和下载黑名单信息。
3) 具有高强度密码算法(SSL)的安全WWW服务器 Secure socket layer(SSL)协议最初由Netscape 企业发展,现已成为网络用来鉴别网站和网页浏览者身份,以及在浏览器使用者及网页服务器之间进行加密通讯的全球化标准。
4) Web(安全通信平台) Web 有Web Client 端和Web Server 端两部分,分别安装在客户端和服务器端,通过具有高强度密码算法的SSL 协议保证客户端和服务器端数据的机密性、完整性、身份验证。
5) 自开发安全应用系统 自开发安全应用系统是指各行业自开发的各种具体应用系统,例如银行、证券的应用系统等。完整的PKI 包括认证政策的制定(包括遵循的技术标准、各CA 之间的上下级或同级关系、安全策略、安全程度、服务对象、管理原则和框架等)、认证规则、运作制度的制定、所涉及的各方法律关系内容以及技术的实现等。
完整的PKI系统必须具有权威认证机构(CA)、数字证书库、密钥备份及恢复系统、证书作废系统、应用接口(API)等基本构成部分,构建PKI也将围绕着这五大系统来着手构建。
PKI的基础技术包括加密、数字签名、数据完整性机制、数字信封、双重数字签名等。一个典型、完整、有效的PKI应用系统至少应具有以下部分:
· 公钥密码证书管理。
· 黑名单的发布和管理。
· 密钥的备份和恢复。
· 自动更新密钥。
· 自动管理历史密钥。
· 支持交叉认证。
认证机构(CA):即数字证书的申请及签发机关,CA必须具备权威性的特征;
数字证书库:用于存储已签发的数字证书及公钥,用户可由此获得所需的其他用户的证书及公钥;
密钥备份及恢复系统:如果用户丢失了用于解密数据的密钥,则数据将无法被解密,这将造成合法数据丢失。为避免这种情况,PKI提供备份与恢复密钥的机制。但须注意,密钥的备份与恢复必须由可信的机构来完成。并且,密钥备份与恢复只能针对解密密钥,签名私钥为确保其唯一性而不能够作备份。
证书作废系统:证书作废处理系统是PKI的一个必备的组件。与日常生活中的各种身份证件一样,证书有效期以内也可能需要作废,原因可能是密钥介质丢失或用户身份变更等。为实现这一点,PKI必须提供作废证书的一系列机制。
应用接口(API):PKI的价值在于使用户能够方便地使用加密、数字签名等安全服务,因此一个完整的PKI必须提供良好的应用接口系统,使得各种各样的应用能够以安全、一致、可信的方式与PKI交互,确保安全网络环境的完整性和易用性。
通常来说,CA是证书的签发机构,它是PKI的核心。众所周知,构建密码服务系统的核心内容是如何实现密钥管理。公钥体制涉及到一对密钥(即私钥和公钥),私钥只由用户独立掌握,无须在网上传输,而公钥则是公开的,需要在网上传送,故公钥体制的密钥管理主要是针对公钥的管理问题,时下较好的解决方案是数字证书机制。
原理
公钥基础设施PKI 的原理,顾名思义PKI 是基于公钥密码技术的。要想深刻理解PKI的原理,就一定要对PKI 涉及到的密码学知识有比较透彻的理解。下面简单介绍一下密码学知识。对于普通的对称密码学,加密运算与解密运算使用同样的密钥。
  通常,使用的加密算法比较简便高效,密钥简短,破译极其困难,由于系统的保密性主要取决于密钥的安全性,所以,在公开的计算机网络上安全地传送和保管密钥是一个严峻的问题。正是由于对称密码学中双方都使用相同的密钥,因此无法实现数据签名和不可否认性等功能。而与此不同的非对称密码学,具有两个密钥,一个是公钥一个是私钥,它们具有这种性质:用公钥加密的文件只能用私钥解密,而私钥加密的文件只能用公钥解密。公钥顾名思义是公开的,所有的人都可以得到它;私钥也顾名思义是私有的,不应被其他人得到,具有唯一性。这样就可以满足电子商务中需要的一些安全要求。比如说要证明某个文件是特定人的,该人就可以用他的私钥对文件加密,别人如果能用他的公钥解密此文件,说明此文件就是这个人的,这就可以说是一种认证的实现。还有如果只想让某个人看到一个文件,就可以用此人的公钥加密文件然后传给他,这时只有他自己可以用私钥解密,这可以说是保密性的实现。基于这种原理还可以实现完整性。这就是PKI 所依赖的核心思想,这部分对于深刻把握PKI 是很重要的,而恰恰这部分是最有意思的。
  比如在现实生活中,我们想给某个人在网上传送一个机密文件,该文件我们只想让那个人看到,我们设想了很多方法,首先我们想到了用对称密码将文件加密,而在我们把加密后的文件传送给他后,我们又必须得让他知道解密用的密钥,这样就又出现了一个新的问题,就是我们如何保密的传输该密钥,此时我们发现传输对称密钥也不可靠。
  后来我们可以改用非对称密码的技术加密,此时发现问题逐渐解决了。然而又有了一个新的问题产生,那就是如何才能确定这个公钥就是某个人的,假如我们得到了一个虚假的公钥,比如说我们想传给A 一个文件,于是开始查找A 的公钥,但是这时B 从中捣乱,他把自己的公钥替换了A 的公钥,让我们错误的认为B 的公钥就是A 的公钥,导致我们最终使用B 的公钥加密文件,结果A 无法打开文件,而B 可以打开文件,这样B 实现了对保密信息的窃取行为。因此就算是采用非对称密码技术,我们仍旧无法保证保密性的实现,那我们如何才能确切的得到我们想要的人的公钥呢?这时我们很自然的想到需要一个仲裁机构,或者说是一个权威的机构,它能为我准确无误的提供我们需要的人的公钥,这就是CA。
  这实际上也是应用公钥技术的关键,即如何确认某个人真正拥有公钥(及对应的私钥)。在PKI 中,为了确保用户的身份及他所持有密钥的正确匹配,公开密钥系统需要一个值得信赖而且独立的第三方机构充当认证中心(Certification Authority,CA),来确认公钥拥有人的真正身份。就象公安局发放的身份证一样,认证中心发放一个叫”数字证书”的身份证明。
  这个数字证书包含了用户身份的部分信息及用户所持有的公钥。象公安局对身份证盖章一样,认证中心利用本身的私钥为数字证书加上数字签名。任何想发放自己公钥的用户,可以去认证中心申请自己的证书。认证中心在鉴定该人的真实身份后,颁发包含用户公钥的数字证书。其他用户只要能验证证书是真实的,并且信任颁发证书的认证中心,就可以确认用户的公钥。认证中心是公钥基础设施的核心,有了大家信任的认证中心,用户才能放心方便的使用公钥技术带来的安全服务。
核心
认证中心CA 作为PKI 的核心部分,CA 实现了PKI 中一些很重要的功能,概括地说,认证中心(CA)的功能有:证书发放、证书更新、证书撤销和证书验证。CA 的核心功能就是发放和管理数字证书,具体描述如下:
  (1)接收验证最终用户数字证书的申请。
  (2)确定是否接受最终用户数字证书的申请-证书的审批。
  (3)向申请者颁发、拒绝颁发数字证书-证书的发放。
  (4)接收、处理最终用户的数字证书更新请求-证书的更新。
  (5)接收最终用户数字证书的查询、撤销。
  (6)产生和发布证书废止列表(CRL)。
  (7)数字证书的归档。
  (8)密钥归档。
  (9)历史数据归档。
  认证中心CA 为了实现其功能,主要由以下三部分组成:
  注册服务器:通过 Web Server 建立的站点,可为客户提供24×7 不间断的服务。客户在网上提出证书申请和填写相应的证书申请表。
  证书申请受理和审核机构:负责证书的申请和审核。它的主要功能是接受客户证书申请并进行审核。
  认证中心服务器:是数字证书生成、发放的运行实体,同时提供发放证书的管理、证书废止列表(CRL)的生成和处理等服务。
  在具体实施时,CA 的必须做到以下几点:
  1) 验证并标识证书申请者的身份。
  2) 确保CA 用于签名证书的非对称密钥的质量。
  3) 确保整个签证过程的安全性,确保签名私钥的安全性。
  4) 证书资料信息(包括公钥证书序列号,CA 标识等)的管理。
  5) 确定并检查证书的有效期限。
  6) 确保证书主体标识的唯一性,防止重名。
  7) 发布并维护作废证书列表。
  8) 对整个证书签发过程做日志记录。
  9) 向申请人发出通知。
  在这其中最重要的是CA 自己的一对密钥的管理,它必须确保其高度的机密性,防止他方伪造证书。CA 的公钥在网上公开,因此整个网络系统必须保证完整性。CA 的数字签名保证了证书(实质是持有者的公钥)的合法性和权威性。
  用户的公钥有两种产生的方式:
  (1)用户自己生成密钥队,然后将公钥以安全的方式传送给CA,该过程必须保证用户公钥的验证性和完整性。
  (2)CA 替用户生成密钥队,然后将其以安全的方式传送给用户,该过程必须确保密钥对的机密性,完整性和可验证性。该方式下由于用户的私钥为CA 所产生,所以对CA 的可信性有更高的要求。CA 必须在事后销毁用户的私钥。
  一般而言公钥有两大类用途,就像本文前面所述,一个是用于验证数字签名,一个是用于加密信息。相应的在CA 系统中也需要配置用于数字签名/验证签名的密钥对和用于数据加密/脱密的密钥对,分别称为签名密钥对和加密密钥对。由于两种密钥对的功能不同,管理起来也不大相同,所以在CA 中为一个用户配置两对密钥,两张证书。
  CA 中比较重要的几个概念点有:证书库。证书库是CA 颁发证书和撤销证书的集中存放地,它像网上的“白页“一样,是网上的一种公共信息库,供广大公众进行开放式查询。这是非常关键的一点,因为我们构建CA 的最根本目的就是获得他人的公钥。时下通常的做法是将证书和证书撤消信息发布到一个数据库中,成为目录服务器,它采用LDAP 目录访问协议,其标准格式采用X.500 系列。随着该数据库的增大,可以采用分布式存放,即采用数据库镜像技术,将其中一部分与本组织有关的证书和证书撤消列表存放到本地,以提高证书的查询效率。这一点是任何一个大规模的PKI 系统成功实施的基本需求,也是创建一个有效的认证机构CA 的关键技术之一。
  另一个重要的概念是证书的撤消。由于现实生活中的一些原因,比如说私钥的泄漏,当事人的失踪死亡等情况的发生,应当对其证书进行撤消。这种撤消应该是及时的,因为如果撤消延迟的话,会使得不再有效的证书仍被使用,将造成一定的损失。在CA 中,证书的撤消使用的手段是证书撤消列表或称为CRL。即将作废的证书放入CRL 中,并及时的公布于众,根据实际情况不同可以采取周期性发布机制和在线查询机制两种方式。
  密钥的备份和恢复也是很重要的一个环节。如果用户由于某种原因丢失了解密数据的密钥,那么被加密的密文将无法解开,这将造成数据丢失。为了避免这种情况的发生,PKI提供了密钥备份于解密密钥的恢复机制。这一工作也是应该由可信的机构CA 来完成的,而且,密钥的备份与恢复只能针对解密密钥,而签名密钥不能做备份,因为签名密钥匙用于不不可否认性的证明的,如果存有备份的话,将会不利于保证不可否认性。
  还有,一个证书的有效期是有限的,这样规定既有理论上的原因,又有实际操作的因素。在理论上诸如关于当前非对称算法和密钥长度的可破译性分析,同时在实际应用中,证明密钥必须有一定的更换频度,才能得到密钥使用的安全性。因此一个已颁发的证书需要有过期的措施,以便更换新的证书。为了解决密钥更新的复杂性和人工干预的麻烦,应由PKI本身自动完成密钥或证书的更新,完全不需要用户的干预。它的指导思想是:无论用户的证书用于何种目的,在认证时,都会在线自动检查有效期,当失效日期到来之前的某时间间隔内,自动启动更新程序,生成一个新的证书来替代旧证书。
目标
PKI就是一种基础设施,其目标就是要充分利用公钥密码学的理论基础,建立起一种普遍适用的基础设施,为各种网络应用提供全面的安全服务。公开密钥密码为我们提供了一种非对称性质,使得安全的数字签名和开放的签名验证成为可能。而这种优秀技术的使用却面临着理解困难、实施难度大等问题。正如让电视机的开发者理解和维护发电厂有一定的难度一样,要让每一个应用程序的开发者完全正确地理解和实施基于公开密钥密码的安全有一定的难度。PKI希望通过一种专业的基础设施的开发,让网络应用系统的开发人员从繁琐的密码技术中解脱出来而同时享有完善的安全服务。
将PKI在网络信息空间的地位与电力基础设施在工业生活中的地位进行类比可以更好地理解PKI。电力基础设施,通过伸到用户的标准插座为用户提供能源,而PKI通过延伸到用户本地的接口,为各种应用提供安全的服务。有了PKI,安全应用程序的开发者可以不用再关心那些复杂的数学运算和模型,而直接按照标准使用一种插座(接口)。正如电冰箱的开发者不用关心发电机的原理和构造一样,只要开发出符合电力基础设施接口标准的应用设备,就可以享受基础设施提供的能源。
PKI与应用的分离也是PKI作为基础设施的重要标志。正如电力基础设施与电器的分离一样。网络应用与安全基础实现了分离,有利于网络应用更快地发展,也有利于安全基础设施更好地建设。正是由于PKI与其他应用能够很好地分离,才使得我们能够将之称为基础设施,PKI也才能从千差万别的安全应用中独立出来,才能有效地独立地发展壮大。PKI与网络应用的分离实际上就是网络社会的一次“社会分工”,这种分工可能会成为网络应用发展史上的重要里程碑。
增加
PKI(公钥基础设施)技术采用证书管理公钥,通过第三方的可信任机构–认证中 心CA(Certificate Authority),把用户的公钥和用户的其他标识信息(如名称、e-mail、身份 证号等)捆绑在一起,在Internet 网上验证用户的身份。通用的办法是采用基于PKI 结构结合数字证书,通过把要传输的数字信息进行加密,保证信息传输的保密性、完整性,签名保证身份的真实性和抗抵赖。

转自:https://baike.baidu.com/item/PKI

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值