基于JSR-105的XML数字签名及其应用.doc

  1. 1、本文档共3页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于JSR-105的XML数字签名及其应用

腿膃薅蚆肅膂蚇袁羁膁莇蚄袇芀葿袀螃芀薂蚃肁艿芁袈肇芈蒄螁羃芇薆羆衿芆蚈蝿膈芅莈薂肄芄蒀螇羀莄薃薀袆 基于JSR-105的XML数字签名及其应用 刘军军,梁建武 (中南大学 信息科学与学院,XML Signature and its applications based on JSR-105 LIU Jun-jun LIANG Jian-wu (School of Information Science Technology, Central South University,Changsha 410075,China) Abstract: With the deepgoing of the XML application, more and more information is exchanged with the form of XML documents. XML Signature is an example of this situation. JSR-105 implements the standards of XML Signature, which brings it near to practice of engineering. This paper introduces some details on XML Signature which includes the target of signing, the type of signature and the courses of validate, and also, there is an introduction on ways appealing to JSR-105 API in XML Signature. At the end, two practical examples are presented, in which one is illustration to the concepts of XML Signature, another realizes the basic blind signature. Key Words: JSR-105, XML Signature, blind Signature 1 引言? 可扩展标记语言(XML)是由 W3C 设计并推荐的新一代标记语言。针对XML 数据传输存储的安全需求, IETF 和W3C 联合发布了XML 数字签名规范。现在这一规范已成为W3C 的推荐标准[1] 。JSR-105[2]是对这一标准的具体实现,并使其成为了JDK 1.6安全体系的一部分。JSR(Java Specification Request)是由Java Community成员提交给JCP(Java Community Process)这个国际开放组织的Java API开发草案,105是这一草案的编号。如今这一草案已经成为现实,而留给我们的是一组更加容易使用的进行XML数字签名的标准API。 本文首先介绍了W3C关于XML数字签名标准中数字签名的实现及其校验的过程。然后介绍JSR-105的实现。最后,介绍几种利用JSR-105 API 来实现数字签名、盲签名的方案及具体软件实现。 XML数字签名标准 XML 数字签名规范的语法定义中定义了一些元素,关于其语法,可以参看W3C 推荐的原文,从中也可得到很多XML数字签名的细节。值得一提的是XML数字签名的签名对象、三种签名形式、校验的过程以及XML数字签名所涉及的算法(包括摘要算法、签名算法、转换算法)。 XML数字签名可以针对XML文档、一个文档中的XML元素、XML元素包含的内容。具体的包括:封装式签名(Enveloping)、嵌入式签名(Enveloped)和分离式签名(Detached)。 对于不同情况的XML数字签名,校验[3]的具体过程是不同的,但它们都包含引用校验(Reference Validation)和签名校验(Signature Validation)两个过程。 这里重点介绍一下XML数字签名所用到的一些算法,因为他们的很多细节信息对于编程实现复杂功能是很有用的。 摘要算法 以SHA-1为例,计算摘要得到了160bit的摘要信息,那么在签名生成的XML文件里面会包含有摘要的值(在DigestValue元素中),这些输出的摘要是经过base64[4]编码处理过的,因此处理签名XML文件时候要注意这点。 签名算法 以RSA算法为例,这里的称呼为PKCS1(RSA-SHA1),而在RFC中的正式称呼为RSASSA-PKCS1-v1_5[5]。RSA算法签字的模式为: CRYPT (PAD (ASN.1 (OID, DIGES

文档评论(0)

zhuliyan1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档