PKI应用体系架构(转)

2024-02-29 11:30
文章标签 应用 架构 体系 pki

本文主要是介绍PKI应用体系架构(转),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

PKI应用体系架构(转)[@more@]

  

  由于电子商务、电子政务、网上银行、网上证券等金融业网上交易业务的飞速发展,网络安全,特别是互联网通信的安全性令人瞩目。为此,越来越多的安全协议如SSL、SET、S/MIME 等得到了广泛的应用。但是,最新发展起来的网络安全技术和安全服务规范却是公钥基础设施PKI(Public key Infrastructure)。

  

  应用架构

  

  一个标准的PKI域必须具备以下主要内容。

  

  1. 认证机构CA(Certificate Authority)

  CA是PKI的核心执行机构,是PKI的主要组成部分,业界人士通常称它为认证中心。从广义上讲,认证中心还应该包括证书申请注册机构RA(Registration Authority),它是数字证书的申请注册、证书签发和管理机构。图1是中国金融CA和RA结构图。

  CA的主要职责包括:

  验证并标识证书申请者的身份。对证书申请者的信用度、申请证书的目的、身份的真实可靠性等问题进行审查,确保证书与身份绑定的正确性。

    2003.5.17.9.49.27.01.jpg  2003.5.17.9.49.40.02.jpg

  

  确保CA用于签名证书的非对称密钥的质量和安全性。为了防止被破译,CA用于签名的私钥长度必须足够长并且私钥必须由硬件卡产生,私钥不出卡。

  管理证书信息资料。管理证书序号和CA标识,确保证书主体标识的惟一性,防止证书主体名字的重复。在证书使用中确定并检查证书的有效期,保证不使用过期或已作废的证书,确保网上交易的安全。发布和维护作废证书列表(CRL),因某种原因证书要作废,就必须将其作为“黑名单”发布在证书作废列表中,以供交易时在线查询,防止交易风险。对已签发证书的使用全过程进行监视跟踪,作全程日志记录,以备发生交易争端时,提供公正依据,参与仲裁。

  由此可见,CA是保证电子商务、电子政务、网上银行、网上证券等交易的权威性、可信任性和公正性的第三方机构。

  

  2. 证书和证书库

  证书是数字证书或电子证书的简称,它符合X.509标准,是网上实体身份的证明。证书是由具备权威性、可信任性和公正性的第三方机构签发的,因此,它是权威性的电子文档。

  证书库是CA颁发证书和撤消证书的集中存放地,它像网上的“白页”一样,是网上的公共信息库,可供公众进行开放式查询。一般来说,查询的目的有两个:其一是想得到与之通信实体的公钥;其二是要验证通信对方的证书是否已进入 “黑名单”。证书库支持分布式存放,即可以采用数据库镜像技术,将CA签发的证书中与本组织有关的证书和证书撤消列表存放到本地,以提高证书的查询效率,减少向总目录查询的瓶颈。

  

  3. 密钥备份及恢复

  密钥备份及恢复是密钥管理的主要内容,用户由于某些原因将解密数据的密钥丢失,从而使已被加密的密文无法解开。为避免这种情况的发生,PKI提供了密钥备份与密钥恢复机制:当用户证书生成时,加密密钥即被CA备份存储;当需要恢复时,用户只需向CA提出申请,CA就会为用户自动进行恢复。

  

  4. 密钥和证书的更新

  一个证书的有效期是有限的,这种规定在理论上是基于当前非对称算法和密钥长度的可破译性分析;在实际应用中是由于长期使用同一个密钥有被破译的危险,因此,为了保证安全,证书和密钥必须有一定的更换频度。为此,PKI对已发的证书必须有一个更换措施,这个过程称为“密钥更新或证书更新”。

  证书更新一般由PKI系统自动完成,不需要用户干预。即在用户使用证书的过程中,PKI也会自动到目录服务器中检查证书的有效期,当有效期结束之前,PKI/CA会自动启动更新程序,生成一个新证书来代替旧证书。

  

  5.证书历史档案

  从以上密钥更新的过程,我们不难看出,经过一段时间后,每一个用户都会形成多个旧证书和至少一个当前新证书。这一系列旧证书和相应的私钥就组成了用户密钥和证书的历史档案。

  记录整个密钥历史是非常重要的。例如,某用户几年前用自己的公钥加密的数据或者其他人用自己的公钥加密的数据无法用现在的私钥解密,那么该用户就必须从他的密钥历史档案中,查找到几年前的私钥来解密数据。

  

  6.客户端软件

  为方便客户操作,解决PKI的应用问题,在客户装有客户端软件,以实现数字签名、加密传输数据等功能。此外,客户端软件还负责在认证过程中,查询证书和相关证书的撤消信息以及进行证书路径处理、对特定文档提供时间戳请求等。

  

  7.交叉认证

  交叉认证就是多个PKI域之间实现互操作。交叉认证实现的方法有多种:一种方法是桥接CA,即用一个第三方CA作为桥,将多个CA连接起来,成为一个可信任的统一体;另一种方法是多个CA的根CA(RCA)互相签发根证书,这样当不同PKI域中的终端用户沿着不同的认证链检验认证到根时,就能达到互相信任的目的。

  

  PKI服务

  

  PKI作为安全基础设施,能为不同的用户按不同安全需求提供多种安全服务。这些服务主要包括认证、数据完整性、数据保密性、不可否认性、公正及时间戳服务。

  

  

  1. 认证

  认证服务即身份识别与鉴别,就是确认实体即为自己所声明的实体,鉴别身份的真伪。我们以甲乙双方的认证为例:甲首先要验证乙的证书的真伪,当乙在网上将证书传送给甲时,甲首先要用CA的公钥解开证书上CA的数字签名,如果签名通过验证,则证明乙持有的证书是真的;接着甲还要验证乙身份的真伪,乙可以将自己的口令用自己的私钥进行数字签名传送给甲,甲已经从乙的证书中或从证书库中查得了乙的公钥,甲就可以用乙的公钥来验证乙的数字签名。如果该签名通过验证,乙在网上的身份就确凿无疑(图2)。

   2003.5.17.9.49.50.03.jpg

  

  

  2. 数据完整性服务

  数据完整性服务就是确认数据没有被修改。实现数据完整性服务的主要方法是数字签名,它既可以提供实体认证,又可以保障被签名数据的完整性,这是由密码哈希算法和签名算法提供的保证。哈希算法的特点是输入数据的任何变化都会引起输出数据不可预测的极大变化,而签名是用自己的私钥将该哈希值进行加密,然后与数据一道传送给接受方。如果敏感数据在传输和处理过程中被篡改,接受方就不会收到完整的数据签名,验证就会失败。反之,如果签名通过了验证,就证明接收方收到的是未经修改的完整数据。

  

  3. 数据保密性服务

  PKI的保密性服务采用了“数字信封”机制,即发送方先产生一个对称密钥,并用该对称密钥加密敏感数据。同时,发送方还用接收方的公钥加密对称密钥,就像把它装入一个“数字信封”。然后,把被加密的对称密钥(“数字信封”)和被加密的敏感数据一起传送给接收方。接收方用自己的私钥拆开“数字信封”,并得到对称密钥,再用对称密钥解开被加密的敏感数据。

  

  4. 不可否认性服务

  不可否认性服务是指从技术上保证实体对其行为的认可。在这中间,人们更关注的是数据来源的不可否认性、接收的不可否认性以及接收后的不可否认性。此外还有传输的不可否认性、创建的不可否认性和同意的不可否认性。

  

  5. 公证服务

  PKI中的公证服务与一般社会公证人提供的服务有所不同,PKI中支持的公证服务是指“数据认证”,也就是说,公证人要证明的是数据的有效性和正确性,这种公证取决于数据验证的方式。例如,在PKI 中被验证的数据是基于哈希值的数字签名、公钥在数学上的正确性和签名私钥的合法性。

  

  应用模式

  

  上述PKI提供的安全服务恰好能满足电子商务、电子政务、网上银行、网上证券等金融业交易的安全需求,是确保这些活动顺利进行必备的安全措施,没有这些安全服务,电子商务、电子政务、网上银行、网上证券等都无法正常运作。

  

  模式1:电子商务应用

  电子商务的参与方一般包括买方、卖方、银行和作为中介的电子交易市场。买方通过自己的浏览器上网,登录到电子交易市场的Web服务器并寻找卖方。当买方登录服务器时,互相之间需要验证对方的证书以确认其身份,这被称为双向认证。

  在双方身份被互相确认以后,建立起安全通道,并进行讨价还价,之后向商场提交订单。订单里有两种信息:一部分是订货信息,包括商品名称和价格;另一部分是提交银行的支付信息,包括金额和支付账号。买方对这两种信息进行“双重数字签名”,分别用商场和银行的证书公钥加密上述信息。当商场收到这些交易信息后,留下订货单信息,而将支付信息转发给银行。商场只能用自己专有的私钥解开订货单信息并验证签名。同理,银行只能用自己的私钥解开加密的支付信息、验证签名并进行划账。银行在完成划账以后,通知起中介作用的电子交易市场、物流中心和买方,并进行商品配送。整个交易过程都是在PKI所提供的安全服务之下进行,实现了安全、可靠、保密和不可否认性。

  

  模式2:电子政务

  电子政务包含的主要内容有:网上信息发布、办公自动化、网上办公、信息资源共享等。按应用模式也可分为G2C、G2B、G2G,PKI在其中的应用主要是解决身份认证、数据完整性、数据保密性和不可抵赖性等问题。

  例如,一个保密文件发给谁或者哪一级公务员有权查阅某个保密文件等,这些都需要进行身份认证,与身份认证相关的还有访问控制,即权限控制。认证通过证书进行,而访问控制通过属性证书或访问控制列表(ACL)完成。有些文件在网络传输中要加密以保证数据的保密性;有些文件在网上传输时要求不能被丢失和篡改;特别是一些保密文件的收发必须要有数字签名等。只有PKI提供的安

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8403220/viewspace-935161/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 将安全进行到底--安全建设篇(转)
下一篇: Win2000的系统安全防范对策(转)
user_pic_default.png
请登录后发表评论 登录
全部评论
<%=items[i].createtime%>

<%=items[i].content%>

<%if(items[i].items.items.length) { %>
<%for(var j=0;j
<%=items[i].items.items[j].createtime%> 回复

<%=items[i].items.items[j].username%>   回复   <%=items[i].items.items[j].tousername%>: <%=items[i].items.items[j].content%>

<%}%> <%if(items[i].items.total > 5) { %>
还有<%=items[i].items.total-5%>条评论 ) data-count=1 data-flag=true>点击查看
<%}%>
<%}%> <%}%>
blogzone
  • 博文量
    834
  • 访问量
    6246437

最新文章

  • 添加/删除Windows2000/XP系统组件一法(转)
  • WindowsXPProfessional系统恢复浅谈(转)
  • 软件卸载全攻略(转)
  • “电脑万能加锁专家”让文件紧锁(转)
  • 非常关机“秀”(转)
  • Win系统目录解析(转)
  • 玩转XP“多用户”功能(上)(转)
  • 玩转XP“多用户”功能(下)(转)
  • Windows2000中蓝屏死机之停止信息分析(转)
  • 在WindowsNT退休前应考虑的问题(转)

转载于:http://blog.itpub.net/8403220/viewspace-935161/

这篇关于PKI应用体系架构(转)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/758620

相关文章

SpringShell命令行之交互式Shell应用开发方式

《SpringShell命令行之交互式Shell应用开发方式》本文将深入探讨SpringShell的核心特性、实现方式及应用场景,帮助开发者掌握这一强大工具,具有很好的参考价值,希望对大家有所帮助,如... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定

SpringBoot应用中出现的Full GC问题的场景与解决

《SpringBoot应用中出现的FullGC问题的场景与解决》这篇文章主要为大家详细介绍了SpringBoot应用中出现的FullGC问题的场景与解决方法,文中的示例代码讲解详细,感兴趣的小伙伴可... 目录Full GC的原理与触发条件原理触发条件对Spring Boot应用的影响示例代码优化建议结论F

MySQL 分区与分库分表策略应用小结

《MySQL分区与分库分表策略应用小结》在大数据量、复杂查询和高并发的应用场景下,单一数据库往往难以满足性能和扩展性的要求,本文将详细介绍这两种策略的基本概念、实现方法及优缺点,并通过实际案例展示如... 目录mysql 分区与分库分表策略1. 数据库水平拆分的背景2. MySQL 分区策略2.1 分区概念

Spring Shell 命令行实现交互式Shell应用开发

《SpringShell命令行实现交互式Shell应用开发》本文主要介绍了SpringShell命令行实现交互式Shell应用开发,能够帮助开发者快速构建功能丰富的命令行应用程序,具有一定的参考价... 目录引言一、Spring Shell概述二、创建命令类三、命令参数处理四、命令分组与帮助系统五、自定义S

C语言函数递归实际应用举例详解

《C语言函数递归实际应用举例详解》程序调用自身的编程技巧称为递归,递归做为一种算法在程序设计语言中广泛应用,:本文主要介绍C语言函数递归实际应用举例的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录前言一、递归的概念与思想二、递归的限制条件 三、递归的实际应用举例(一)求 n 的阶乘(二)顺序打印

Python中随机休眠技术原理与应用详解

《Python中随机休眠技术原理与应用详解》在编程中,让程序暂停执行特定时间是常见需求,当需要引入不确定性时,随机休眠就成为关键技巧,下面我们就来看看Python中随机休眠技术的具体实现与应用吧... 目录引言一、实现原理与基础方法1.1 核心函数解析1.2 基础实现模板1.3 整数版实现二、典型应用场景2

Java异常架构Exception(异常)详解

《Java异常架构Exception(异常)详解》:本文主要介绍Java异常架构Exception(异常),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. Exception 类的概述Exception的分类2. 受检异常(Checked Exception)

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

Android Kotlin 高阶函数详解及其在协程中的应用小结

《AndroidKotlin高阶函数详解及其在协程中的应用小结》高阶函数是Kotlin中的一个重要特性,它能够将函数作为一等公民(First-ClassCitizen),使得代码更加简洁、灵活和可... 目录1. 引言2. 什么是高阶函数?3. 高阶函数的基础用法3.1 传递函数作为参数3.2 Lambda

Java中&和&&以及|和||的区别、应用场景和代码示例

《Java中&和&&以及|和||的区别、应用场景和代码示例》:本文主要介绍Java中的逻辑运算符&、&&、|和||的区别,包括它们在布尔和整数类型上的应用,文中通过代码介绍的非常详细,需要的朋友可... 目录前言1. & 和 &&代码示例2. | 和 ||代码示例3. 为什么要使用 & 和 | 而不是总是使