JavaCardApplet开发讲义
- 格式:pdf
- 大小:364.67 KB
- 文档页数:22
JCOP开发调试JavaCard程序及测试脚本的编写执行一.JCOP插件的安装第一步在eclipse里安装JCOP的插件,安装过程简述:Help->Software Updates->Find and Install调出安装窗口如下图第二步选择:Search for new features to install,出现如下图的窗口第三步点击new Local Site按钮,打开JCOP插件所在目录,并选中,如下图所示,确定然后一直点下一步下一步就可以了,安装完了二.创建工程通过创建工程向导创建一个JavaCard工程(如,TestApp)。
创建过程如下图Project name填写工程的名字点next选择Java Card API的版本,选择GP版本,点next勾选Create a Java Card application using one of the templates(使用模板创建一个JAVACARD的应用) 选择模板的类型,比如Basic Java Card applet 点next输入Package(包名)和Applet class name(Applet的类名),点next输入Package AID和Applet AID,前5个字节要保持一致。
点Finish,一个JAVACARD的工程就创建完成了代码模板包括一个install方法和process方法,install方法是用来安装applet的,process方法是用来处理apdu指令的下面在模板代码的基础上我们来实现一个取随即数的功能ISO7816规定取随机数的apdu命令是:00 84 00 00 08(04)最后一个字节表示要取的随机数的长度三.写代码实现功能四.编译运行测试程序如下图,选择工程,右键,Run As->Run 打开run对话框如下面两个图所示双击左测的Java Card Application,创建一个与工程同名的运行项目,选中上面的Java Card simulation可以在虚拟仿真环境下运行程序,如果选择下面的Card reader,然后再选读卡器,插入Java卡片,就可以直接把程序下载并安装到java 卡上,并执行,点run,程序开始执行如下图所示, 就可以看到程序下载到仿真环境过程中的字节码,还有applet安装成功后的信息在cmd>命令框里输入/send 00A4040006111111111122 选择applet返回9000再输入/send 0084000008 取随机数返回8个字节的随机数01 F5 B4 11 5B 88 C3 B2 后跟9000表示命令执行成功如下图所示五.DeBug调试程序DeBug调试需要在要调试的程序段下断点,如图所示,双击33行左侧的空位置,就会设上断点,如下图蓝色的小圆点,如果取消断点,只需在小圆点上再次双击一下。
第七讲Java Applet基础1Java Applet示例Java能迅速热门起来的原因,归功于它的“让Internet动起来”的能力。
具体地说,就是我们能创建一种特殊类型的Java程序,叫做小应用程序或者Java Applet。
它运行在支持Java 的Web浏览器内。
我们来看几个例子(演示)2Applet的优缺点2.1Java Applet的优点可以看到,Java Applet有着得天独厚的优势,包括:无需安装—只要装载了Web页面,页面内的Java 小程序也就同时被装载了,其来源或是服务器或是浏览器的缓冲。
所以Java 小程序是从来不会象一般程序那样进行安装操作的——比方说,ActiveX控件就必须进行安装。
这样就避免了建立/安装客户软件新版本所会遇到的麻烦。
安全性— Java小程序非常安全。
Java小程序很难破坏运行它的系统。
Java Applet采用一种叫做砂箱的机制,措施包括:Java Applet不能运行任何一个本地可执行程序;Java Applet不能读取或者编写本地计算机的文件系统Java Applet找不到与本地计算机有关的任何信息,比如用户明、电子邮件地址等。
还可以签名,允许不同情况下的安全级别。
2.2Java Applet的缺点小程序最大的缺点就是启动速度。
Java小程序的执行速度一直是个大问题。
小程序就像是坦克:活力强大、行动迟缓而笨拙不堪。
页面装载和执行小程序之间存在严重的时间迟滞。
你肯定遇到过这种情况,在你打开一个嵌入了小程序代码的Web页面的时候,有长达5到10秒(甚至还有更长的呢!)的时间迟滞。
这种时间迟滞发生的原因有二:JVM 装载时间—在客户端浏览器运行小程序之前,它首先必须装载Java虚拟机(就是执行Java小程序字节码的解释器)。
取决于客户机的性能和配置,这一过程可能要花费好几秒钟的时间。
幸而,一旦装载了JVM ,它即可在浏览器会话期间一直存在。
下载时间—因为Java小程序不会把自身安装在客户机上,所以他们需要在每次用户访问所在页面的时候被下载(除非它们已经被临时存储在浏览器的缓冲内了)。
JavaCard应用开发(一)之前在CSDN博客上看到一个人写的Java Card应用开发的教程,感觉很好,网址如下:/gszhy/article/details/40779949#comments。
有兴趣的可以参考。
这里是我根据自己开发过程中遇到的问题重新整理的,和前面这位同学的内容大体相同,只是个别选项有所区别,这个可能是和自己的编译器有关系吧。
开发环境的搭建有兴趣的可以参考/menghnhhuan/article/details/7616690,这里就不多说啦。
下面来介绍一下如何在搭建好的环境中建立一个正常的工程。
1. 新建一个JavaCard项目。
点击“下一步”。
2. 输入项目名称,一般用小写,点击“下一步”3. 勾选以下两项,点击“下一步”。
4. 在“Create a Jave Card application using one of the templates”前打勾,并选择“Basic Java Card applet”,点击“下一步”。
5. 输入Package的名称和Applet class的名称,点击“下一步”。
注意包的名称小写,类的名称第一个字母一般大写。
6. 设置Package和Applet的AID,设置完成后点击“完成”。
7. 此时包资源管理器中出现了刚刚新建的工程“jcproj”。
9. 左键选中新建的工程,在“项目”中单击“属性”,出现下面的对话框,在对话框中选择“Java 构建路径”那一项,在“Java Card [Custom]”前打勾。
最后点击右下角“确定”。
10. 下面进行调试设置。
点击“debug”(绿色小虫子)右边的倒三角,在下拉菜单中选择“调试配置”。
在调试配置对话框中找到“Java Card Application”选项,在该项上右键单击,选择“新建”,就会发现这个菜单下面多出了一个你刚刚建立的工程名字哦。
然后单击“调试”。
这里需要注意的是,如果一个工程中有不止一个Applet ,那么在此处的“Package Upload选项卡中”需要安装全部的Applet。