新书推介:《语义网技术体系》
作者:瞿裕忠,胡伟,程龚
   >>中国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安全 』 → 启用 XML 安全性(2) 查看新帖用户列表

      发表一个新主题  发表一个新投票  回复主题  (订阅本版) 您是本帖的第 13512 个阅读者浏览上一篇主题  刷新本主题   树形显示贴子 浏览下一篇主题
     * 贴子主题: 启用 XML 安全性(2) 举报  打印  推荐  IE收藏夹 
       本主题类别:     
     yuji1998 帅哥哟,离线,有人找我吗?魔羯座1981-12-22
      
      
      威望:5
      头衔:蓝色先锋
      等级:大二(研究C++)
      文章:212
      积分:1059
      门派:XML.ORG.CN
      注册:2004/4/10

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给yuji1998发送一个短消息 把yuji1998加入好友 查看yuji1998的个人资料 搜索yuji1998在『 XML安全 』的所有贴子 访问yuji1998的主页 引用回复这个贴子 回复这个贴子 查看yuji1998的博客楼主
    发贴心情 启用 XML 安全性(2)

    本人网站,希望大家支持一下
    [B][URL=http://www.lanshang.com]蓝尚WEB技术商务平台[/URL][/B]                   [URL=http://www.lanshang.com/lxwm.asp]有情况请联系我[/URL]

    [B][URL=http://www.lanshang.com/ebook/index.asp]电子书籍下载[/URL]  [URL=http://www.lanshang.com/wenzhang/]WEB技术文库[/URL]  [URL=http://www.lanshang.com/ebook/ebook.asp]在线书籍[/URL]  [URL=http://www.lanshang.com/link.asp]网站建设黄页|建站黄页[/URL]  [URL=http://www.lanshang.com/bbs]技术交流[/URL]  [URL=http://www.lanshang.com/shop/index.asp]数码超市[/URL]  [URL=http://www.lanshang.com/ymkj/index.asp]自助建站|网站开发[/URL][/B]


    <Expiration>04/02</Expiration>
            </CreditCard>
          </PaymentInfo>

    可能还有必要加密文档中的所有信息,清单 4 演示了这点。

    清单 4. 隐藏了全部内容的加密文档
    <?xml version='1.0'?>
          <EncryptedData xmlns='http://www.w3.org/2001/04/xmlenc#'
           Type='http://www.isi.edu/in-notes/iana/assignments/media-types/text/xml'>
                   <CipherData><CipherValue>A23B45C56</CipherValue></CipherData>
          </EncryptedData>


    CipherData 可以封装,也可以引用原始加密数据。在第一种情况下,CipherValue 元素的内容显示原始数据,而在第二种情况,使用 CipherReference 元素,这包括了一个指向加密数据位置的 URI。

    规范的 XML
    对应用了密码散列算法的消息进行最轻微的更改也会产生不同的值。这为消息完整性方面提供了信任,并适于通常用法,但是也引入了进一步的复杂性 — 两个 XML 文档虽然在逻辑上相等,但可能在确切文本比较中不同。象行定界符、空标记、在属性中使用十六进制而不是名称以及在特定情况下存在注释或注释变体这样的事情都可以成为文档的逻辑结构不受影响而实际彼此不同的实例。规范的 XML 规范描述了一种生成文档的物理表示(也成为范式)的方法,该范式解释允许的变体,以便如果两个文档具有同一范式,则认为两个文档在给定应用程序上下文中是逻辑相等的。

    对于加密、特别是数字签名来说,这尤为重要,因为很明显,逻辑上相同的文本变体不应该表示文档的完整性及其发送方的认证是可疑的。用不同工具(譬如,解析器)生成不同文本(并因而生成不同消息摘要)进行处理时也可能发生这样的事。因此,在生成签名和验证计算期间,应该在范式上进行消息摘要。如果摘要匹配,这将确定:即使文本形式可能不同,它们在其上计算的范式也匹配。

    XML 签名示例
    可以将 XML 签名应用到任意数据内容。那些应用到相同 XML 文档中数据的签名称为封装或被封装的签名,而那些数据在签名元素外部的签名称为分离签名。清单 5 取自签名候选推荐文档,它是一个简单分离签名的实例。

    清单 5. 一个简单分离签名的示例
             [s01] <Signature Id="MyFirstSignature"
                   xmlns="http://www.w3.org/2000/09/xmldsig#">
             [s02]   <SignedInfo>
             [s03]   <CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/
                     REC-xml-c14n-20010315"/>
             [s04]   <SignatureMethod Algorithm="http://www.w3.org/2000/09/
                     xmldsig#dsa-sha1"/>
             [s05]   <Reference URI="http://www.w3.org/TR/2000/REC-xhtml1-20000126/">
             [s06]     <Transforms>
             [s07]       <Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-
                         20010315"/>
             [s08]     </Transforms>
             [s09]     <DigestMethod Algorithm="http://www.w3.org/2000/09/
                          xmldsig#sha1"/>
             [s10]     <DigestValue>j6lwx3rvEPO0vKtMup4NbeVu8nk=</DigestValue>
             [s11]   </Reference>
             [s12] </SignedInfo>
             [s13]   <SignatureValue>MC0CFFrVLtRlk=...</SignatureValue>
             [s14]   <KeyInfo>
             [s15a]    <KeyValue>
             [s15b]      <DSAKeyValue>
             [s15c]        <p>...</p><Q>...</Q><G>...</G><Y>...</Y>
             [s15d]      </DSAKeyValue>
             [s15e]    </KeyValue>
             [s16]   </KeyInfo>
             [s17] </Signature>


    实际签名的信息是位于 s02 行和 s12 行之间,即 SignedInfo 元素。在签名的部分中包含用于计算 SignatureValue 元素的算法的引用,而那个元素本身位于签名部分之外(在 s13 行上)。s04 行上的 SignatureMethod 引用的是将规范的 SignedInfo 转换成 SignatureValue 所用的算法。它是密钥相关的算法和摘要算法(在这里是 DSA 和 SHA-1)的组合,可能还具有象填充这样的操作。KeyInfo 元素(在这里位于 s14 行和 s16 行之间 — 该元素是可选的)指出用来验证签名的密钥。

    转换
    正如前面所提到的,加密、签名、修改和可能进行的更多签名所发生的顺序有很多种可能性。用户可能需要向已经部分加密或部分签名的表单字段中输入更多数据,并且需要能够在不妨碍以后的验证和解密的前提下这样做。为解决这种情况,W3C 最近发布了一个有关 XML 签名的解密转换工作草案。(请参阅参考资料。)

    下面这个示例摘自那个文档,它演示了如何建议文档接收方采用正确的解密和签名验证顺序。第一个代码段显示了要签名的文档部分 — order 元素;其中,第 7 行到第 11 行的 cardinfo 元素是关于个人和财务方面的详细信息,它是纯文本,但也存在一些加密数据(第 12 行)。

    清单 6. XML 文档中的 order 元素
             [01] <order Id="order">
             [02]   <item>
             [03]     <title>XML and Java</title>
             [04]     <price>100.0</price>
             [05]     <quantity>1</quantity>
             [06]   </item>
             [07]   <cardinfo>
             [08]     <name>Your Name</name>
             [09]     <expiration>04/2002</expiration>
             [10]     <number>5283 8304 6232 0010</number>
             [11]   </cardinfo>
             [12]   <EncryptedData Id="enc1"xmlns="http://www.w3.org/
                    2001/04/xmlenc#">...</EncryptedData>
             [13] </order>


    清单 7. 经过签名和进一步加密、且现在显示转换信息的 order 文档
             [01] <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
             [02]   <SignedInfo>
             [03]     ...
             [04]     <Reference URI="#order">
             [05]       <Transforms>
             [06]         <Transform Algorithm="http://www.w3.org/2001/04/
    xmlenc#decryption">
             [07]           <DataReference URI="#enc1"

    [此贴子已经被作者于2005-7-25 23:19:15编辑过]

       收藏   分享  
    顶(0)
      




    ----------------------------------------------
    私人网站:蓝尚WEB商务平台http://www.lanshang.com     建站黄页:http://www.lanshang.com/link.asp WEB技术文库:http://www.lanshang.com/wenzhang/ 
    电子书籍: http://www.lanshang.com/ebook/  技术交流:http://www.lanshang.com/bbs/

    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2004/6/28 16:38:00
     
     chenkak 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(猛啃高等数学)
      文章:14
      积分:129
      门派:XML.ORG.CN
      注册:2005/4/12

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给chenkak发送一个短消息 把chenkak加入好友 查看chenkak的个人资料 搜索chenkak在『 XML安全 』的所有贴子 引用回复这个贴子 回复这个贴子 查看chenkak的博客2
    发贴心情 
    能不能说一下SQL中安全方面的
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/4/20 10:27:00
     
     chenkak 帅哥哟,离线,有人找我吗?
      
      
      等级:大一(猛啃高等数学)
      文章:14
      积分:129
      门派:XML.ORG.CN
      注册:2005/4/12

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给chenkak发送一个短消息 把chenkak加入好友 查看chenkak的个人资料 搜索chenkak在『 XML安全 』的所有贴子 引用回复这个贴子 回复这个贴子 查看chenkak的博客3
    发贴心情 
    我五一就要搞定它,麻烦你快点!!
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/4/20 10:29:00
     
     lphdx 美女呀,离线,快来找我吧!
      
      
      等级:大一(猛啃高等数学)
      文章:12
      积分:109
      门派:XML.ORG.CN
      注册:2005/4/18

    姓名:(无权查看)
    城市:(无权查看)
    院校:(无权查看)
    给lphdx发送一个短消息 把lphdx加入好友 查看lphdx的个人资料 搜索lphdx在『 XML安全 』的所有贴子 引用回复这个贴子 回复这个贴子 查看lphdx的博客4
    发贴心情 
    论坛怎么人这么少啊
    点击查看用户来源及管理<br>发贴IP:*.*.*.* 2005/8/22 17:26:00
     
     GoogleAdSense
      
      
      等级:大一新生
      文章:1
      积分:50
      门派:无门无派
      院校:未填写
      注册:2007-01-01
    给Google AdSense发送一个短消息 把Google AdSense加入好友 查看Google AdSense的个人资料 搜索Google AdSense在『 XML安全 』的所有贴子 访问Google AdSense的主页 引用回复这个贴子 回复这个贴子 查看Google AdSense的博客广告
    2024/5/4 0:23:17

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

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