动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.优化hibernate性能的几点建议.
.走向J2EE,漫长的道路.
.在应用中加入全文检索功能——基.
.Java学习路径(二)书籍篇.
.Maven起步——教你开始使用Maven.
.探索Java应用程序的安全需求.
.用Eclipse进行可视化Java界面设计.
.利用Java Swing 实现游戏开发.
.以小博大 Java性能优化技巧集锦.
.Sun向JCP提交Servlet3.0规范—JS.
.Java入门(12) 事件与错误处理.
.将 Java Web 应用从 Windows 移植.
.浅出Java Socket编程.
.Hibernate的事务和并发.
.Jdom使用指南.
.Java进阶 关于Java Socket编程的.
.struts源代码阅读(Commons-Bean.
.Spring框架下实现基于组的用户权.
.eclipse-SDK-3.1M4-win32.
.学习 是一条漫长的道路.

JDK5.0环境下配置PKCS#11

发表日期:2008-1-5 |



  这篇文章不介绍具体的编程方法,而是针对PKCS#11的初学者介绍如何在JDK5.0环境中配置PKCS#11,具体的编程方法可以关注我的下一篇文章,或者参考PKCS#11手册以及SUN MicroSystem公司关于PKCS#11的手册。


需要的环境:

JDK5.0版本已经可以支持对PKCS#11的操作,这里就介绍一下如何实现在JDK5.0环境下配置PKCS#11,并且根据不同的操作系统提供相应的解决方案。

首先介绍一下配置环境:JDK5.0,支持标准PKCS#11的设备(包括Smartcard,加密卡等等),支持PKCS#11的系统(WINDOWS/Linux/UNIX等),以及设备供给商提供的标准PKCS#11接口。(注:PKCS#11接口只是一个动态库文件,其中封装了PKCS#11标准函数,在不同的平台上其格式不同,例如在WINDOWS上其格式是*.DLL,在LINUX上其形式是*.so)

配置方法:

在JDK5.0环境中配置访问PKCS#11的方法非常简单:只用编辑一个*.CFG文件就可以了。因为JDK5.0中已经做好了对PKCS#11的桥接。具体方法是:

1、在*.CFG文件中编辑好相应的参数和对应的值。

2、在Java语言中用Provider p = new sun.security.pkcs11.SunPKCS11(*.cfg文件的绝对路径)

3、进行相应的操作,具体的操作会在我的下一片文章中介绍。

具体*.cfg的内容以及格式是:

1、name=value 其中name是指明后面的value是该PKCS#11的名称。

2、library=*.dll/*.so的绝对路径 library后面是指明标准PKSC#11接口的绝对地址

3、description=value是该PKCS#11的注释,可以通过前面的Provider p的getInfo方法得到其值

4、slotListIndex = value/slot = value 这个标示比较非凡,假如该PKCS#11的硬件提供商提供了多个可以支持该PKCS#11的设备,那么不同设备之间必须通过不同的slot来区分,那么,在使用的时候必须明确的了解具体的硬件对应的slot的值,其中slotListIndex和slot中只用一个即可。假如在配置文件中不指明的话,那么默认的是slot=0。这时假如提供商提供了多个硬件设备,则你的程序中智能调用slot=0的那个设备。所以建议在编辑该*.cfg时添加该参数。

5、其余的参数并不是很常用,欲具体了解可以访问http://java.sun.com/j2se/1.5.0/docs/guide/security/p11guide.Html

解决方案:

跨平台时JAVA语言的一大特性,那么PKCS#11也应做到跨平台操作。当然,前提是该实现了PKCS#11接口的硬件可以跨平台(专有驱动或者是无驱型)。但由于*.cfg中指定PKCS#11接口的地址是绝对地址,所以假如想要做到跨平台就要动态的产生cfg文件了。

具体的解决方案如下:

1、首先确认该硬件可以支持当前的系统。

2、确认已经安装了相应的驱动(无驱型设备的驱动是由系统提供的)

3、确认该硬件的slotListIndex或者slot值

4、使用System.getProperty(“java.home”);获得路径,做为存储*.CFG文件的目录。取名为cfgpath

5、用JFileChooser来选择PKCS#11文件,从而获得library的值,取名为LibPath

6、建立一个FileOutputStream来存储*.CFG文件,分别写入name的值,library的值(LibPath)description的值和slotListIndex的值。这样,就可以动态的创建cfg文件了。

7、然后 就可以用Provider p = new sun.security.pkcs11.SunPkcs11(cfgpath);来加载文件,从而达到通过PKCS11来访问硬件的目的。

前面的4~7步只是一个demo,具体实施时可以根据具体的情况来改变。到此JDK5.0环境下配置PKCS#11就已经介绍完了。假如希望了解JAVA语言中的PKCS#11操作,请关注下一篇文章。

请尊重作者原创,转发时请保留作者信息

作者:鲍冠辰, 软件加密工程师  就职于 飞天诚信科技有限公司

上一篇:JDK的环境配置 人气:904
下一篇:classpath详解(谨献给那些找不到北的朋友) 人气:528
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-10-12 team论坛 v2.0.4 bulid 080916 A
2008-10-12 Roclog v3.1.6
2008-10-12 SupeV v1.0.1 简体中文 GBK
2008-10-12 NetCMS v1.6.0.1010 正式版
2008-10-12 PHP考试系统PPFrame v1.2.7
2008-10-12 LPAS个人相册 v1.6.3
2008-10-12 快问仿百度知道系统 动态-静态-互
2008-10-12 方卡广告防点击系统 V1.0 GB2312
2008-10-12 泡菜内容管理系统[PCMS] v1.0 Bu
2008-10-11 联系人分组工具 v1.1 中文破解版
2008-10-11 FaceMelter变脸 v2.0 汉化破解版
2008-10-11 PathTracker道路跟踪仪 v1.2 破解
2008-10-11 Rooms手机聊天室 v0.6.7 破解版
2008-10-11 RemoteDesktop远程桌面 v1.0 破解
2008-10-11 ProRemote远程调音台 v1.0.1 破解
2008-10-11 PicShare照片共享 v1.0.0 破解版
2008-10-11 Photogene照片编辑器 v1.5 汉化破
2008-10-11 WriteRoom共享文档 v1.0 破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | 广告代码 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 健康查询 | 万年历 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成