新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   XML论坛     W3CHINA.ORG讨论区     计算机科学论坛     SOAChina论坛     Blog     开放翻译计划     新浪微博  
 
  • 首页
  • 登录
  • 注册
  • 软件下载
  • 资料下载
  • 核心成员
  • 帮助
  •   Add to Google

    >> XML与数字内容安全(DRM,XrML,RDD, MPEG-21, XACML), XML传输的安全, 基于XML的签名,基于XML的加密
    [返回] 中文XML论坛 - 专业的XML技术讨论区XML.ORG.CN讨论区 - 高级XML应用『 XML安全 』 → [转帖]PKI:入门 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 12943 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: [转帖]PKI:入门 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     admin 帅哥哟,离线,有人找我吗?
      
      
      
      威望:9
      头衔:W3China站长
      等级:计算机硕士学位(管理员)
      文章:5255
      积分:18406
      门派:W3CHINA.ORG
      注册:2003/10/5

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给admin发送一个短消息 把admin加入好友 查看admin的个人资料 搜索admin在『 XML安全 』的所有贴子 点击这里发送电邮给admin  访问admin的主页 引用回复这个贴子 回复这个贴子 查看admin的博客楼主
    发贴心情 [转帖]PKI:入门


    获取这种可靠且常用的加密技术的基础知识

    Joe Rudich
    网络管理员, St. Paul Companies
    2000 年 12 月

    由于因特网的不断使用,从前那种松懈的面向网络的安全性实践已经不足以保证数据的安全。其结果是,“公钥基础结构”或 PKI 被证实是加密数据的可靠系统,而且商业 社会也已经注意到了这一点。在本文中,Joe 叙述了 PKI 的基本知识 ― 涉及的内容以及如何使用它。
    因特网已经同时成为一般商业和公司业务的载体,日益被视为是与之连接的专用通信网的远程扩展来使用。当通过公共因特网发送敏感数据时安全性得不到足够的强调;而以在线商业为例,确保安全性是维护用户信心的必要条件。PKI 就是一个提供强大的开放数据加密和支持加密的服务的杰出方法。

    自第一个计算机网络建立以来加密已经在数据通信中扮演了至关重要的角色,但它对于通过公共网络进行运行的企业尤为关键。当然,对信息进行编码以及维持其私有并不是新近的需求。据罗马历史学家希罗多德的研究,使希腊免受公元前 480 年波斯暴君 Xerxes 魔掌的占领的"密写",在许多战争中起了极大的作用,更不用说在自那以后的极少暴力的国事了。在第二次世界大战期间,Enigma 可 能是最有名的战时代码,它给予了德国海军几乎赢得“大西洋战役”的作战优势。

    内部与外部安全性
    每位网络管理员或应用程序开发人员都非常重视数据安全性的重要性,但是在较友好的专用 LAN 领域内,安全性通常有 较为宽松的含义。一个物理上只能由员工访问的网络等同于国内和平时期的数据通信 ― 就象朋友间的聊天一样。 内部实践可能仅实施加密认证(登录)消息,而不是加密发送的大量数据 ― 或者,其加密方法可能只是名义上的,而非特别强大。

    因特网的开放使用使得其数据通信如同正在进行战争。由于私营公司考虑将它们的信息系统向因特网开放, 所以应用程序构建商就可能需要尝试把旧有的安全性实践扩展到这个不熟悉的环境中。用于验证用户的现有系统 是根据内部用户的概念进行设计的,它可能足以保护那些提供已经在公共域内的信息或具有最小价值的信息的应用 程序的要求。

    但是,内部安全性系统通常被证明不适合保护跨越因特网的通信安全,因为它们要么是专用的(一家公司或特定供应商所有),要么没有利用足够强大的数据加密 ― 或是两者兼而有之。专用系统经常需要用户在其 PC 上安装特定的软件组件,但这对于公共用户环境而言是不切实际的。当然,在在线零售或任何其它因特网商务 中发送不加密的数据等于是自取灭亡。

    PKI 是软件、加密技术和基于服务器的服务的结合,其设计填补了上述空白。它正是用大多数内部系统 最缺乏的特性来保护通信安全:它使用了开放、公认的标准,并且同时加密了认证过程和数据。PKI 还 包含了其它一些离散的安全性技术(如数字证书),但它尤以其系统性方法著称。一个完整的 PKI 系统管理着认证中心(或从认证中心获取服务),而不仅仅是假设其可用性和在应用程序内利用它们。

    公钥加密
    就功能简单而言,PKI 的目的 就是加密数据传输。当然,有很多的加密方法可用,但是它们中的大多数都会有一两个限制,这使得它们不适合于跨越因特网的交易。提到的最常见的问题之一就是,使用不得不为客户机手工 配置的组件的专用技术。因此,大多数虚拟专用网(VPN)解决方案将由于 为每个用户配置的成本问题以及用户将等不及访问等原因而无法正常工作。PKI 则可以让几乎任何 因特网用户使用,因为客户机端兼容性已经结合到了访问因特网时最常用的一些浏览器软件(如 Microsoft Internet Explorer 和 Netscape Navigator)中。

    另有一个不考虑诸多加密系统的问题对于其设计也极其重要:即它们利用一个秘密的加密密钥(一个 用来编码文本的数学值),这个密钥必须让任何交易中的双方(客户机和服务器)都 知道。这是密码术的经典原则;第二次世界大战中德国 U 型潜水艇都拥有一个密钥或密钥序列用于读 写 Enigma 密码。如果存在安全的分发密钥的方法,那么使用共享密钥的密码术就不存在任何缺陷。对于德国 海军,密钥的分发方法是定期把船开到港口并亲手传递密码本。

    而您站点上的因特网用户不太可能到您的港口来取密码本。这就形成一个问题:如果是在设置加密前通过因特网发送代码密钥,它是以明文方式发送的,那么任何企图窃听交易的人都可以轻易地截获该密钥。加密密钥本身就是任何密文中最脆弱的部分;Enigma 使那些即使是欧洲和美国最优秀的密码破译人员的工作也遇到极大障碍,包括 AlanTuring,并且永远不会被真正破译。协约国只有在潜水艇被击毁从而窃取 密钥后才能够读取它。(顺便提一下,这个主意是由 Ian Fleming 构想出来的, 他就是以后将造就 James Bond 的英国情报局成员之一。)

    公钥加密的“主要特性”是它利用了一个包含两部分的密钥,其中一半由发送方持有,另一半则由 接收方持有。想象一下,少男少女有时使用的一对分成两半的连心锁片中的一个: 它上面印着的消息只有在两人都在时才能完整地读取。简而言之,它就象一个公钥 对,但实际上在客户机-服务器通信中使用了四个密钥:通信双方各自有一个共同 知晓的密钥和一个私人拥有的密钥。 密钥算法被构造成使用它们的特定组合来起作用。在发送数据时,发送方使用接收方的公钥;这个加 密的作用是数据只能使用接收方私钥译出。

    因为使用了这种双密钥过程的数学逻辑,这样通信双方就都不必知道完整的密钥组合,并且每个密钥都是唯一的。如果德国海军设计了使用 PKI 的 Enigma,那么就算捕获任何船只或潜水艇的私钥都不会造成惨重的损失,因为协约国只能获得读取特定船只的消息而不是整个海军的消息的能力。而且,他们不必担心密钥的分发,因为公钥可以通过公开的通信通道发送。公钥加密的关键操作是验证消息接收方的身份,以便用正确的公钥进行加密。

    PKI 组件
    这个标识过程,以及公钥的存储是 PKI 系统的组成部分。其要害是:PKI 在其中心位置管理着 数字证书,每个证书都由一个公钥和一个私钥组成,用以认证用 户和加密数据。随着证书受到正确的管理,网络安全性甚至可以被配置为使用 其它开放的标准加密技术(如 IPSec)进行数据传输。

    证书形成了公钥加密的标识和密码操纵部分,但 PKI 系统的中心是认证中心(CA),它将颁发和管理那些证书。CA 可能是由某个组织本地运作的,在这种情况下,它采用一台或多台服务器运行一种服务的形式,如 Microsoft 的 Certificate Services for Windows 2000。但 CA 通常是外购的。在因特网上有很多公认的公共 CA,如 VeriSign 或 Entrust,它们的身份已经被编写到大多数浏览器应用程序中。

    本地运作的 CA 通常控制着公钥基础结构的其它大多数 方面。在建立将使用 PKI 的应用程序时必须考虑的功能部分包括:

    认证中心
    数字证书
    证书发布地点,这是存储和发布证书的地方。它是发布地点,可能是作为 CA 运作
    的机器上的一个磁盘目录,或一个安全性目录,如 Netscape 或 Microsoft 的 Active Directory
    证书撤销列表(CRL),它是证书的一个参考列表,列表中的证书已标记为 在它们原始到期日前被撤销。
    管理工具
    支持 PKI 的应用程序
    证书的有效期
    任何私营公司或其它组织在利用证书时都可能会考虑到外购部分的管理过程。即使 CA 角色受外部实体代理,安全性的级别还是将通过证书以有效期设置的策略来驱动,它由五个不同的阶段构成:

    1. 证书登记:从用户向 CA 请求证书开始利用 PKI。(当然, 对于最终用户来说,这应该是一个透明过程。)这是用户(实际是指用户的 支持 PKI 的应用程序,如 Web 浏览器)和 CA 之间的合作过程,该过程从用户生成密钥对(公钥和私钥)时开始。

    登记还可能涉及登记信息的收集和显示,其中隐含了大量的策 略。有些 CA 被设计成在授予证书前需要得到人许可,并且可能要求 个人形成的证明,如直接对话或出示已公证的身份文档。当用户是大众商业 实体(如在线零售商)时,这就很合理,因为客户需要得到可靠的证明, 用以保证他们正是在与期望的公司进行通信。

    完整的用户请求由公钥(自己生成的)和这一登记信息 构成。一旦用户请求了证书,CA 就根据其建立的策略规则验证 信息。如果确定信息有效,则 CA 创建该证书。然后,CA 把 用户的公钥发送到指定的任何资源库(内部的目录或公用服务器),并 使用该公钥把识别证书发送给用户。使用 PKI 加密, 证书只能由生成匹配私钥的用户译码。

    2. 证书分发:登记过程的另一半,分发被视为单独的过程只是因为它可能涉及到在 CA 层次上的管理层的干预。这个阶段还包括对影响证书使用的策略的设置。

    3. 证书撤销:当发出证书时,将根据分发策略为它们配置特定的到期日。如果需要在该日期之前取消证书,则可以指示 CA 将这一事实发布和分发到证书撤销列表(CRL)中。 浏览器和其它支持 PKI 的应用程序则配置成需要对当前 CRL 检查 CA,并且 如果他们无法验证某一证书还没有被添加到该列表,将不进行任何操 作。证书可能会因各种原因而被撤销,包括证书接收方被泄露,或者 CA 本身被“黑”掉。

    4. 证书延期:当证书到达为它设置的到期日时,其用户可能需要(自动地,根据 应用程序的配置)延期该证书。显然,这取决于最初设置的到期日,而且取决于 CA 持有 的证书的到期日,因为 CA 不能颁发在其自己的到期日后又将到期的证书。

    5. 证书审计:证书审计的过程取决于 CA 的类型及其管理工具,但它是一项必要的任务。这主要涉及跟踪证书的创建和到期(以及可能的撤销),但在某些情况下还可以记录证书的每次成功使用。

    外购 PKI
    事实上 PKI 的每个组件都可以是外购的,以这样或那样的形式。运作其自己 CA 的组织通常会购买服务与管理软件,而不是随便从头创 建 CA 功能。还有一些厂商则提供咨询服务,特别是出于内部设计、创建或管理 PKI 的目的。

    但是,涉及第三方公司的最常见选择,是将 CA 外包给一个商业团体。在某些方面这实际上是必需的;在管理大众商业时就期望使用它。如果 在线零售商颁发其自己的数字证书,并且把浏览器配置 成警告或拒绝他人的访问,那么用户很可能会 对该零售商产生几分怀疑。

    另一方面,商业性 CA 已经建立起来,并且应用程序期望它们成为大多数因特网证书的源泉。即使象 Microsoft 这样的公司,这些公司有强大的因特网存在,并且有能力颁发自己的证书, 仍然会为了它们自己的可信度而从其它公共 CA 处获取一些证书。(有关提供 PKI 服务的公司列表,请参阅 参考资料。)

    PKI 的未来
    公钥加密的使用 确实是伴随因特网的不断流行而成长起来的:其有效的加密以及和开放可用的标准客户机软件使它成为实现安全通信的绝佳选择,并且它在需求增长时又具有改进加密强度的灵活性。虽然组织通常会外购 PKI 的某些方面,但在准备基于 Web 的应用程序或管理服务器时, 全面了解整个系统的运作是无价的。

    参考资料

    您可以参阅本文在 developerWorks 全球站点上的 英文原文.


    VeriSign是最大的公共 CA,也是最早广泛推广 PKI 并建立 公共 CA 的公司之一。VeriSign 除了是公认的最可信公共 CA 之一,还提供专用 PKI 工具, 包括称为 OnSite 的证书颁发服务,这项服务充当了本地 CA,而且连接到了 VeriSign 的公 共 CA。


    Baltimore Technologies提供了名为 UniCERT 的 PKI 产品系列,这些产品在管理多个 CA 之间的交互操作方面建立了良好的声誉。这使得它们特别适合于公共 CA 和 非常大型的组织。


    Microsoft已经提供了一个证书管理服务作 为 Windows NT 的一个附加件,并且现在已经把完整的 CA 功能都合并到了 Windows 2000 中。低 成本(特别是对于那些拥有 Windows 2000 服务器的用户)使得它们的工具对于严格意义上的内部使用极具吸引力。


    Entrust Technologies的 Entrust/Authority 产品系列以其 自动密钥管理的工具而著称。这对于内部的 CA 操作非常有意义,并且可以通过减少与 CA 的手工交互操 作来降低 PKI 的某些实际成本。


    Thawte是紧跟在 VeriSign 后的第二大公共 CA,并且它为 内部的 PKI 管理提供了一个“入门级 PKI 程序(Starter PKI Program )”。


    关于作者
    Joe Rudich 是位于 Minnesota 州 St. Paul 的 St. Paul Companies 的网络管理员。您可以通过电子邮 件 joe@rudich.com与他联系。


       收藏   分享  
    顶(0)
      




    ----------------------------------------------

    -----------------------------------------------

    第十二章第一节《用ROR创建面向资源的服务》
    第十二章第二节《用Restlet创建面向资源的服务》
    第三章《REST式服务有什么不同》
    InfoQ SOA首席编辑胡键评《RESTful Web Services中文版》
    [InfoQ文章]解答有关REST的十点疑惑

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/10/7 14:31:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML安全 』的所有贴子 点击这里发送电邮给Google AdSense  访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/4/27 15:46:26

    本主题贴数1,分页: [1]

    管理选项修改tag | 锁定 | 解锁 | 提升 | 删除 | 移动 | 固顶 | 总固顶 | 奖励 | 惩罚 | 发布公告
    W3C Contributing Supporter! W 3 C h i n a ( since 2003 ) 旗 下 站 点
    苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
    62.500ms