Java Applet 数字签名

在Web应用使用Applet有时是一种不错的选择,例如在flex中加入特色上传功能等就可将Applet做为备选方案之一。而Applet需要访问本地资源时需要得到客户机器的认可,很自然我们会想到网络知识中的数字签名(digital signature)。而对java Applet的数字签名较为方便。

在数字签名之前将我们编写的Applet应用导出jar包,而后主要利用java se中提供的keytool.exe和jarsigner.exe工具,前者用于生成密钥库和导出证书,后者用于对Applet jar进行数字签名。

进行签名时,我们可以随意找个目录,将jar放入其中,而后从命令窗口进入该文件夹,依次如下图所示执行相关命令,填入密码信息。执行过程中,我们会发现对应目录下面会产生一个密钥库文件(store尾缀)和一个证书文件(cert尾缀)。

上图中,红色阴影部分为密钥库的名字,尾缀为store;橙色阴影部分为密钥库的别名;绿色阴影部分为导出的证书,尾缀为cert;蓝色部分是我们手动导出并放入相应文件夹下的jar包。阴影部分读者可自行命名。

第一次输入的密钥密码,在后续导出证书和签名jar包时都需要使用。第一步份生成密钥时要求填写的名字、单位等信息可以自由写。

签名完成后,则可以直接将数字签名后的jar考入项目中使用。第一次加载applet时浏览器会要客户确认该证书(如下图所示)。客户机用户信任后即可访问本地资源。

本文简单引入Java数字签名的工具及使用方式,读者只需利用第一幅图的内容即可完成对相应jar包的数字签名,而后将jar文件考入项目即可直接应用。更多信息请参考下文连接。

参考:

数字签名

http://baike.baidu.com/view/7626.htm

http://en.wikipedia.org/wiki/Digital_signature

Java Applet digital signature

http://www.cnblogs.com/tqsummer/archive/2011/01/19/1939013.html

http://blog.csdn.net/shangdyu/article/details/6992568

http://blog.csdn.net/border1985/article/details/666710

https://www.owasp.org/index.php/Digital_Signature_Implementation_in_Java

人爱美,不仅需要服饰居室之美,还需要心灵品德之美。

Java Applet 数字签名

相关文章:

你感兴趣的文章:

标签云: