下载此文档

通过XML签名和加密更安全地交换数据.doc


文档分类:IT计算机 | 页数:约25页 举报非法文档有奖
1/25
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/25 下载此文档
文档列表 文档介绍
[摘要]XML签名和XML加密标准目前被广泛地用作构建快(building-block)技术。本文解释了XML签名和XML加密标准,使用它们。
    注: Framework 的预发布版本。与这些部分有关的所有信息都有可能更改。
    XML签名和XML加密标准目前被广泛地用作积木(building-block)技术。Microsoft Office InfoPath使用XML签名对部分或整个表单进行签名。Web服务使用XML签名对SOAP消息进行签名,并且使用XML加密技术对它们进行加密。基于ClickOnce的应用程序的XML清单(Visual Studio 2005中的新增功能)也使用XML签名。.NET Framework , Framework ,同时还添加了XML加密的对象模型。本文解释了XML签名和XML加密标准,使用它们。有关实际的XML签名规范,请参阅位于/xmldsig-core的W3C标准。
数字签名
    在深入探讨XML签名标准之前,让我们回顾一下数字签名的基础知识。因为防止恶意用户在传输期间改变消息很重要,所以数字签名保护数据的完整性,并且可以检测数据在到达接收地的途中受到的任何更改。因为能够标识发送方也很重要,所以消息通常使用发送方的私有(秘密)密钥进行签名,并且用相应的公钥进行验证,从而使接收者在知道发送方的公钥时可以确认发送方的标识。这可以防止恶意用户通过尝试作为已知的发送方发送消息,或者通过截获来自已知发送方的消息并将其替换为他们自己的消息(一种中间人形式的攻击),冒充已知的发送方。
    要创建数字签名,首先需要使用加密哈希函数来对需签名的消息进行哈希运算。对于任何长度的输入,加密哈希函数都会返回固定长度的位组,称为哈希值。该哈希值无法容易地重新转换为原来的输入。即使输入中只有一个位发生更改,哈希值也会以不可预知的方式更改,因此无法仅仅通过查找类似的哈希值来找到与原始输入类似的输入。一个常用的哈希函数是SHA-1,它可以产生160位的哈希值。下一个步骤是使用签名算法和您的私钥对该哈希值进行签名,以产生签名值。您用您的私钥创建该签名,以便具有您的公钥的其他人可以对其进行验证(本文稍后将对此进行详细讨论)。RSA是一种流行的用于签名的加密算法。在您将消息和该签名发送给接收者之后,验证过程开始。收到的消息被在签名时使用的相同哈希函数用来进行哈希运算;然后,通过将签名值以及公钥和计算得到的哈希一起传递给签名算法,对签名值进行验证。如果计算得到的哈希与签名哈希相匹配,则签名有效。如果这两个哈希不匹配,则表明数据或签名已经更改,因此不能确保数据的完整性。还可以使用密钥哈希算法签名和验证数据,但是这超出了本文讨论的范围。.NET Framework已经为所有种类的哈希、加密/解密和签名/验证算法包含了一组丰富的类。有关这些类的详细信息, Framework SDK文档以及由Brian Framework Security 》(Addison-Wesley, 2002)。
XML签名基础知识
    您可以使用XML签名对任何种类的数据进行签名,这些数据包括XML文档的某个部分、其他XML文档或任何格式的其他数据。但是,实际上,XML签名最常用于对以XML表示的其他数据进行签名。XML签名标准还非常灵活,它允许您在签名之前对数据进行筛选和转换,并且使您可以精确地选择要签名的内容以及签名方式。
    一个简单的文档:
<docRoot>
    <a>Hello</a>
    <b>World</b>
</docRoot>
    经过签名的文档:
<docRoot>
    <a>Hello</a>
    <b>World</b>
    <Signature xmlns="0/09/xmldsig#">
        <SignedInfo>
            <CanonicalizationMethod
                Algorithm="/2001/REC-xml-c14n-20010315"/>
            <SignatureMethod
                Algorithm="0/09/xmldsig#rsa-sha1"/>
            <Reference URI="">
                <Transforms>
                    <Transform
                        Algorithm=
     

通过XML签名和加密更安全地交换数据 来自淘豆网m.daumloan.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数25
  • 收藏数0 收藏
  • 顶次数0
  • 上传人63229029
  • 文件大小171 KB
  • 时间2017-09-08
最近更新