老尸 发表于 2015-1-18 11:41:37

JAVA网页编程之Java2下Applet数字署名详细完成办法

微软什么都提供了。你可以试想一下,如果你是新手,你是希望你点一下按钮程序就能运行那,还是想自己一点一点的组织结构,然后打包发部,调错再打包......Java2下Applet数字署名详细完成办法
北京阿费

转自阿须数码
--------------------------------------------------------------------------


3 Applet的数字署名认证明现的详细办法、步骤
3.1分离我本人开辟的基于JAVA2的Applet

我的项目是利用APPLET制造一个及时动静行列监控程序,因为触及到了当地资本,对APPLET必定要举行数字署名和认证。我利用的情况是WINDOWS2000,使用服务器是WEBLOGIC6.0,开辟情况是JBUILDER4.0。之前我提示人人必定要注重服务器端和客户真个观点。那些文件应当在服务器端,那些文件应当在客户端。
起首在客户端利用JRE1.3.0_01(JAVA运转情况1.3.0.1版本)以代替IE的JVM(JAVA假造机),能够到WWW.JAVA.SUN.COM网站上往下载,下载好了先在客户端安装好,安装历程十分复杂。
在服务器真个挪用APPLET的HTML文件中也必要将它包括出去,以便没有事前安装JRE的客户端下载,详细的写法,请接着往下看;

详细步骤以下:

服务器端:
1.将程序必要用到的各类包文件全体解压(我这儿要用到WEBLOGIC的JMS包利用命令jarxfweblogicc.jar),然后利用JDK的打包命令将编译好的监控程序.class和方才解压的包一同打包到一个包中。(条件我已将监控程序息争开的包都放在统一个目次下了),都是dos形态下的命令,详细命令见jdk1.3(1.2)的bin目次下,
命令以下:
jarcvfmonitor.jar*.class
此命令天生一个名为monitor.jar的包
2.为方才创立的包文件(monitor.jar)创立keystore和keys。个中
keystore将用来寄存密匙(privatekeys)和大众钥匙的认证,alias别号这儿取为monitor。
命令以下:
keytool-genkey-keystoremonitor.keystoreCaliasmonitor
此命令天生了一个名为monitor.keystore的keystore文件,
接着这条命令,体系会问你很多多少成绩,好比你的公司称号,你
的地点,你要设定的暗码等等,都由本人的任意写。
3.利用方才天生的钥匙来对jar文件举行署名
命令以下:
jarsigner-keystoremonitor.keystoremonitor.jarmonitor
这个命令将对monitor.jar文件举行署名,不会天生新文件。
4.将大众钥匙导进到一个cer文件中,这个cer文件就是要拷贝到客户真个独一文件。
命令以下:
keytool-export-keystoremonitor.keystore-aliasmonitor-filemonitor.cer
此条命令将天生monitor.cer认证文件,固然这几步都有大概问你刚
才设置的暗码。
如许就完成了服务器真个设置。这时候你就能够将jar文件和keystore文件和cer文件(我这儿是monitor.jar,monitor.keystore,monitor.cer)拷贝到服务器的目次下了,我用的是weblogic6.0,以是就拷贝到C:eawlserver6.0configmydomainapplicationsDefaultWebApp_myserver下的本人建的一个目次下了。

客户端:
1.起首应当安装jre1.3.0_01,然后将服务器端天生的monitor.cer
文件拷贝到jre的特定目次下,我这儿是:
c:programfilesjavasoftjre1.3.0_01libsecurity目次下。
2.将大众钥匙倒进到jre的cacerts(这是jre的默许keystore)
命令以下:
keytool-import-aliasmonitor-filemonitor.cer
-keystorecacerts
注重这儿要你输出的是cacerts的暗码,应当是changeit,而不
是你本人设定的keystore的暗码。
3.修正policy战略文件,在dos形态下利用命令policytool
体系会主动弹出一个policytool的对话框,如所示,在这内里起首选择file菜单的open项,
翻开c:programfilesjavasoftjre1.3.0_01libsecurity目次下的java.poliy文件,然后在edit菜单当选择Changekeystore,在对话框中newkeystoreurl:中输出
file:/c:/programfiles/javasoft/jre/1.3.0_01/lib/security/cacerts,
这儿要注重反斜杠,在newkeystoretype中输出JKS,这是cacerts的流动格局,然后单击AddPolicyEntry,在呈现的对话框中CodeBase中输出:
http://URL:7001/*
个中的URL是服务器的IP地点,7001是我的weblogic的端口,假如你是在其余使用服务器上好比说是apache,那端标语就能够省略失落。
在SignedBy中输出(别号alias):这儿是Monitor
然后单击addpeimission按钮,在呈现的对话框中permission当选择你想给这个applet的权限,这儿详细有很多权限,读者能够本人找材料看看。我这儿就选用allpeimission,右侧的signedBy中输出别号:monitor
最初保留,在file菜单的save项。
固然你能够瞥见我已对多个包完成了署名认证。




如许客户真个设置就完成了。在客户端用ie运转该applet程序时,会扣问你是否是对该署名受权,选择受权后,包会主动从服务器下载到当地盘算机,并且ie会主动启动jre,在右下栏中能够瞥见,相称于ie的java把持台。

4.挪用applet的html文件
人人都晓得因为java2的平安性,对applet的一般挪用的html文件已不克不及再利用了,而改成ActiveX范例的挪用。详细的又分ie和nescape的分歧写法,这一些在sun网上都能找到现成的教程。我就未几说了,只是将我的这个小程序为ie写的的html给人人看看。
<html>
<METAHTTP-EQUIV="Content-Type"CONTENT="text/html;CHARSET=gb2312">
<center>
<h3>动静中央及时监控平台</h3>
<hr>
<OBJECTclassid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
width="900"height="520"align="baseline"codebase="http://192.168.2.217:7001/j2re-1_3_0_01-win-i.exe#Version=1,3,0,0">
<PARAMNAME="java_code"VALUE="wise.monitor.applet.monitorApplet">
<PARAMNAME="java_codebase"VALUE="monitor/classes">
<PARAMNAME="java_type"VALUE="application/x-java-applet;version=1.3">
<PARAMNAME="ARCHIVE"VALUE="monitor.jar">
<PARAMNAME="scriptable"VALUE="true">
</OBJECT>
</center>
</html>

个中我要夸大一点,由于applet每次的修改都必要从头打包署名,手续十分烦琐,以是在详细的完成中要将一些会变更参数放到html文件中来,传到applet中往,这一点网上文章很多多少,本人往看吧。
别的一个就是有伴侣问我,那如许不是太贫苦了,每个客户端都要举行庞大的dos命令操纵,我只能说一今朝我的程度只能将一个已做好的客户端文件cer文件和java.policy和cacerts文件间接拷贝到客户端,固然这也出缺陷,假如他人的盘算机已有了认证,就会丧失。就这些成绩我们能够一同切磋。
别的另有一点优化,就是在打包的时分,我这儿只讲了把一切要用的触及到平安性的包和源程序到要打到一个包中。如许假如包十分年夜的话,会十分影响下载的速率,假如可使用当地盘算机的包就行了,这一点jre也做到了,详细的要到把持面板的jre把持台上往设置。这个就留着读者本人往探索吧。

停止语
我发明网上java相干的材料十分少,中文的更少,以是但愿本人能将一些小常识和人人共享,免却很多反复的无勤奋。假如人人对这个成绩另有不分明的中央,大概就这成绩相进一步睁开会商的,请和我接洽,我的信箱是afeilb@163.net。但愿我们能配合前进!
这篇文章也采取了一些其余文章的长处,在此要多谢南京西北年夜学盘算机迷信与工程系的金胜昔、步豪杰、吉逸。



为什么外国人还要写那些框架进行代码封装,他们不就是为了别人使用时可以更简单么!如果要达到一个企业级项目的不用框架是很难的。小一些的项目还行,大的光是MVC模式的设计的编码量就够大的了。还有性能方面,单轮windows,这个工具是微软写的,。

分手快乐 发表于 2015-1-20 05:54:19

所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。

不帅 发表于 2015-1-25 18:47:51

学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。

只想知道 发表于 2015-1-29 06:14:45

另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。

因胸联盟 发表于 2015-1-29 10:19:43

Sun公司看见Oak在互联网上应用的前景,于是改造了Oak,于1995年5月以Java的名称正式发布。Java伴随着互联网的迅猛发展而发展,逐渐成为重要的网络编程语言。

老尸 发表于 2015-1-30 10:33:46

http://www.jdon.com/去下载,或到同济技术论坛的服务器ftp://nro.shtdu.edu.cn去下,安装上有什么问题,可以到论坛上去提问。

飘灵儿 发表于 2015-2-3 22:54:05

Java 编程语言的风格十分接近C、C++语言。

谁可相欹 发表于 2015-2-4 08:53:55

Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台

精灵巫婆 发表于 2015-2-4 20:43:02

学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。

柔情似水 发表于 2015-2-10 08:26:15

是一种语言,用以产生「小应用程序(Applet(s))

若相依 发表于 2015-2-18 15:51:52

科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

莫相离 发表于 2015-3-1 14:09:36

你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。

变相怪杰 发表于 2015-3-10 18:26:34

是一种语言,用以产生「小应用程序(Applet(s))

金色的骷髅 发表于 2015-3-14 15:19:44

Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。

小魔女 发表于 2015-3-15 07:47:17

Java是一种计算机编程语言,拥有跨平台、面向对java

愤怒的大鸟 发表于 2015-3-18 22:34:08

一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从

小妖女 发表于 2015-3-19 16:36:20

你就该学一学Servlet了。Servlet就是服务器端小程序,他负责生成发送给客户端的HTML文件。JSP在执行时,也是先转换成Servlet再运行的。虽说JSP理论上可以完全取代Servlet,这也是SUN推出JSP的本意,可是Servlet用来控制流程跳转还是挺方便的,也令程序更清晰。接下来你应该学习一下Javabean了,可能你早就看不管JSP在HTML中嵌Java代码的混乱方式了,这种方式跟ASP又有什么区别呢?

灵魂腐蚀 发表于 2015-3-19 17:20:33

象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。

海妖 发表于 2015-3-29 07:46:30

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

简单生活 发表于 2015-4-6 21:08:52

是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
页: [1]
查看完整版本: JAVA网页编程之Java2下Applet数字署名详细完成办法