Java Applet 数字签名

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

 

在数字签名之前将我们编写的Applet应用导出jar包,而后主要利用java se中提供的keytool.exejarsigner.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

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值