jdk1.4_01实现Applet的数字签名认证

王朝java/jsp·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

Applet的数字签名认证实现的具体方法、步骤

结合我自己开发的基于Java2的Applet :

由于涉及到了本地资源,对APPLET一定要进行数字签名和认证。我使用的环境是WINDOWS2000,用JRE1.4.0_01(JAVA运行环境1.4.0.1版本)以取代IE的JVM(JAVA虚拟机),可以到WWW.JAVA.SUN.COM网站上去下载,下载好了先在客户端安装好,安装过程非常简单。

在服务器端的调用APPLET的Html文件中也需要将它包含进来,以便没有事先安装JRE的客户端下载,具体的写法,请接着往下看;

具体步骤如下:

服务器端:

1.使用JDK的打包命令将编译好的程序.class打包到一个包中。

命令如下:

jar cvf tView.jar *.class

此命令生成一个名为tView.jar的包

2.为刚才创建的包文件(tView.jar)创建keystore和keys。其中

keystore将用来存放密匙(private keys)和公共钥匙的认证,alias别名这儿取为tView。

命令如下:

keytool -genkey -keystore tView.keystore ?alias tView

此命令生成了一个名为tView.keystore的keystore文件,

接着这条命令,系统会问你好多问题,比如你的公司名称,你

的地址,你要设定的密码等等,都由自己的随便写。

3.使用刚才生成的钥匙来对jar文件进行签名

命令如下:

jarsigner -keystore tView.keystore tView.jar tView

这个命令将对monitor.jar文件进行签名,不会生成新文件。

4.将公共钥匙导入到一个cer文件中,这个cer文件就是要拷贝到客户端的唯一文件 。

命令如下:

keytool -eXPort -keystore tView.keystore -alias tView -file tView.cer

此条命令将生成tView.cer认证文件,当然这几步都有可能问你刚

才设置的密码。

5.将程序所用到的资源和上述所有生成文件放入到刚才生成的包文件中(tView.jar)

6.调用applet的html文件

<html>

<head>

<title>tView test</title>

</head>

<body>

<h1>Test tView</h1>

<applet code=tView

codebase="."

archive="tView.jar"

width=695 height=525>

</applet>

</body>

</html>

其中我要强调一点,因为applet每一次的改动都需要重新打包签名,手续非常繁琐,所以在具体的实现中要将一些会变化参数放到html文件中来,传到applet中去,这一点网上文章好多,自己去看吧。

另外还有一点优化,就是在打包的时候,我这儿只讲了把所有要用的涉及到安全性的包和源程序到要打到一个包中。这样假如包非常大的话,会非常影响下载的速度,假如可以使用本地计算机的包就好了,这一点jre也做到了,具体的要到控制面板的jre控制台上去设置。这个就留着读者自己去摸索吧。

结束语

我发现网上java相关的资料非常少,中文的更少,所以希望自己能将一些小知识和大家共享,省掉许多重复的无用功。这篇文章也采纳了一些别的文章的优点,希望大家共同进步!

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航