文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络程序开发JavaJava SE 6中XML数字签名标准Java接口
精品推荐
特别推荐
·实例讲解:Java中的SOAP技术
·Java语言出现的背景 影响及前景
·Java精华积累:初学者都应该搞懂的问题
·Java多媒体框架设计自动播放机实例详解
·如何有效防止Java程序源码被人偷窥?
·Cell插件在J2EE系统中的应用
·初学者想学Hibernate,初级基础教程
·Java语言实现支持视频点播的WEB服务器
·关于Java编程的中文问题的几条分析原则
·确保J2ME无线移动商业应用程序的安全性
热点TOP10
·JasperReport经验谈
·Java Reflection (JAVA反射)
·让数据更安全 保护SQL Server的十个步骤
·“老虎”来了 J2SE1.5新功能一览
·Visual Basic串口通讯调试方法
·一个经典的JAVA APPLET程序(二)
·Java学习从入门到精通(附FAQ)
·用Eclipse Visual Editor 开发SWT GUI
·一个初学者初识 Java 内部类
·中国农历二百年算法及年历程序分析一

Java SE 6中XML数字签名标准Java接口

日期:2008年3月26日 作者: 查看:[大字体 中字体 小字体]


 4.     <SignedData>
 5.         ..............
 6.     </SignedData>
 7. </Signature>
 8.  ..............
 

 

在 Enveloping 格式的数字签名中,待签名的 XML 内容需要通过 URI 或者 Transform 进行引用。

3.2.1 生成签名


 1. // Create XMLObject refering to Simon's payment info 
 2. DocumentBuilderFactory dbf =
 3.     DocumentBuilderFactory.newInstance();
 4. dbf.setNamespaceAware(true);
 5. Document origDoc =
 6. dbf.newDocumentBuilder().parse(new FileInputStream(inputFile));
 7. Element docEle = origDoc.getDocumentElement();
 8. Node simonPayment =
 9.     docEle.getElementsByTagName("PaymentInfo").item(0);
10. XMLStructure content = new DOMStructure(simonPayment);
11. XMLObject xmlObj =
12.     fac.newXMLObject(Collections.singletonList(content),    
13.                         "SimonPayment", null, null);
14. 
15. // Create the reference to element to be signed
16. Reference ref = fac.newReference("#SimonPayment",
fac.newDigestMethod(DigestMethod.SHA1, null));

...... ......

17. XMLSignature signature = fac.newXMLSignature(si, ki,
      Collections.singletonList(xmlObj), null, null);
 

 

    为了引用待签名的内容,首先查找到 Simon 的支付记录对应的 DOM 元素,使用 XMLStructure 对其进行包装,然后生成 XMLObject ,并为其指定 id 为 "SimonPayment"。随后在创建 Referenc 的时候,同样指定引用 id 为 "SimonPayment"。在创建 XMLSignature 对象的时候将待签名的 XMLObject 作为参数,这些 XMLObject 包含的 XML 内容将会成为 <Signature> 元素的子元素,从而创建出 Enveloping 格式的签名。程序的其他部分与生成 Enveloped 格式的数字签名相同。

签名之后生成的 <Signature> 元素如下:


 1. <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
 2.  <SignedInfo>
 3.    <CanonicalizationMethod
 4. Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments"/>
 5.    <SignatureMethod

上一页 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] 下一页 




上一篇:监控Proxool连接池的活动连接变化情况

下一篇:探索Java应用程序的安全需求

相关文章:
·Windows vista 标准1024X768精美壁纸
·关于三级片和A片的区分标准
·全面图解路由器接口及连接(图)(4)
·全面图解路由器接口及连接(图)
·RJ-45插头的打线标准与制作
·全面图解路由器接口及连接(图)(2)
·纯光纤接口以太网交换机参考介绍(组图)
·女性性发育自检标准
·主板 : 硬盘接口类型
·全面图解路由器接口及连接(图)(3)
相关软件:

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot