Applet 数字签名技术完全攻略

本文详细介绍了Applet数字签名的全过程,包括使用JDK工具进行签名,强调了所有相关jar包必须签名的重要性。通过Tomcat作为中间件,展示了设置环境变量、创建HTML页面、转换HTML、签名jar包的步骤,并提供了签名脚本示例。同时,分享了将配置文件下载到本地以解决Applet读取文件问题的技巧,以及如何查看和调试Applet签名错误的方法。
摘要由CSDN通过智能技术生成
 

     在这里先对大家说声对不起,毕竟2年前就想写这篇文章,但因为自己太懒惰一直没有写,也是为了给自己留点东西好了,前些日子我老大让我又搞这个东西发现我以前的资料没留,又凭着自己印象从新来过,但发现网上写的东西真的有些肤浅,实在说不过去,毕竟我们是程序员,不是学生了,怎么也点多想些东西哦,于是将自己总结的东西写下来,留给初学者一些启示好了,通过学习一下内容您将具备通过服务器完全访问本地客户端的能力,不在受任何权限的困扰,(很多文章都写需要改 客户端本地的策略文件,其实根本没必要,只要客户端点了俺们的数字签名,俺们可就什么都能干了) ~oo~    

     简单说下 Applet 数字签名是怎么回事: 就是applet 利用 jdk 里的 工具   $JAVA_HOME/bin 下面的 一堆 exe 文件进行 服务器访问本地客户端的安全签名。如果想让客户真的信任你的applet签名,可以花几百大元去 CA 旗下的 versign 公司购买可信任的 签名证书。

     本文主要以Tomcat为中间件,讲述具体签名步骤,其中 $JAVA_HOME 为 jdk 的安装目录、$TOMCAT_HOME为 Tomcat 的安装目录

      实现Applet的签名步骤如下:

      1. 设定环境变量   $JAVA_HOME (方便在windows 系统下的任何一个目录都可以直接 使用     $JAVA_HOME/bin 下的 exe 命令,其中的exe 包括 keytool.exe,jarsigner.exe和HtmlConverter.exe )。

     2. 将 $TOMCAT_HOME 下 webapps 目录的ROOT目录拷贝一份,删除没有用的垃圾东西改成自己的web应用名字。例如 : webapplet  将需要签名的jar 拷贝到 $TOMCAT_HOME/webapps/webapplet  下,在这里需要 注意一点:签名jar 包 就要对 整个 工程 引用涉及到的 jar 包都进行签名,否则少签一个你都运行不起来的!

    3. 建立一个测试的html页面 applet.html

      <APPLET
CODEBASE = "."
CODE = "com.aspire.reportPlatform.webagent.WebAgentApplet.class"
ARCHIVE ="applet.jar"
NAME = "TestApplet"
WIDTH = 400
HEIGHT = 300
HSPACE = 0
VSPACE = 0
ALIGN = middle

</APPLET>

    4.  打开 cmd 命令提示符,在$TOMCAT_HOME/webapps/webapplet  下运行 HtmlConverter

      例如:  F:/appletTomcat/webapps/webapplet>HtmlConverter 

    弹出个窗口,在窗口中输入需要转换的 html文件 例如我刚才写的applet.html,转换完的东西 写jsp 也同样适用的。

    转换完如下所示 :

     <!--"CONVERTED_APPLET"-->
<!-- HTML CONVERTER -->
<object
    classid = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
    codebase = "http://java.sun.com/update/1.5.0/jinstall-1_5-windows-i586.cab#Version=5,0,0,1"
    WIDTH = 400 HEIGHT = 300 NAME = "TestApplet" ALIGN = middle VSPACE = 0 HSPACE = 0 >
    <PARAM NAME = CODE VALUE = "com.aspire.reportPlatform.webagent.WebAgentApplet.class" >
    <PARAM NAME = CODEBASE VALUE = "." >
    <PARAM NAME = ARCHIVE VALUE = "applet.jar,commons-codec-1.3.jar,commons-httpclient-3.1.jar,commons-logging.jar,dom4j.jar,FlowMetaData.jar,ibatis-2.3.2.715.jar,jgraph.jar,log4j-1.2.9.jar,MetaDataManage.jar,ojdbc14.jar,RDPCommon.jar,swing-layout-1.0.jar,ws-commons-util-1.0.1.jar,xmlrpc-client-3.1.jar,xmlrpc-common-3.1.jar" >
    <PARAM NAME = NAME VALUE = "TestApplet" >
    <param name = "type" value = "application/x-java-applet;version=1.5">
    <param name = "scriptable" value = "false">

    <comment>
 <embed
            type = "application/x-java-applet;version=1.5" /
            CODE = "com.aspire.reportPlatform.webagent.WebAgentApplet.class" /
            JAVA_CODEBASE = "." /
            ARCHIVE = "applet.jar" /
            NAME = "TestApplet" /
            WIDTH = 400 /
            HEIGHT = 300 /
            ALIGN = middle /
            VSPACE = 0 /
            HSPACE = 0
     scriptable = false
     pluginspage = "http://java.sun.com/products/plugin/index.html#download">
     <noembed>
           
           

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值