快速业务通道

J2EE概述 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-22

J2EE概述

时间:2010-12-19

一、前言

Java的技术,因为 computing resource的不同,而区分为不同性质的Java平台,如 Enterprise Java、 Embedded Java与 Java Card等。若是以Embedded Java来说,因为功能上的要求有限,并且受限於硬体资源大小(如呼叫器),所以在硬体与Java执行环境上必须有所妥协。Java Card也是基於硬体与应用的 求所开发的技术,目的是使得 Java的技术能够在如同smart card晶片般大小的有限资源下执行。所以,目前Java Card可以说是最小的Java平台。

二、简介

Java Card是Java 平台中最小的 subset,其设定的执行环境为smart card上的晶片或是有严格硬体限制的环境。Java Card的问世,一方面是为了推展Java的应用层次,一方面也是为了将Java平台的特性以及Java Card 的好处带到smart card上,这些好处主要有: Platform-Indep endent:使得 Java Card applets (在Java Card上执行的程式)能够在不同卡片的JCAE( Java Card Application Environment)上执行,即透过Java VM 的机制来达到跨平台的能力。 Multi-Applicat ion Capable:在同一个Java Card 中能够存放多个 Java Card applets ,并且也能够透过 download的方式来下载必要的applets 而达到一卡多用途的好处,使得卡的使用能够更有弹性。 Compatible with Existing Smart Card Standards: Java Card能与国№ 标准ISO 7816( Smart Card标准)以及工业界标准如 Europay/Master Card/Visa (EMV)相容。

所以,在未来Java Card不但能够取代今日Smart Card的功能,更能够发展出多样化的应用,如身份识别、医疗资讯记录、电子钱包、门禁管控等,甚至能将许多不同的应用程式集合於一张卡上,使得这些随身的软体能够更小更实用。

JavaCard现行的版本有2.0与2.1版,其中2.0版是在1997 年底所释出,而2.1 版则是在今年刚释出。

三、运作逻辑

如图1所示Java Card实№运作的模式,主要分为二个部分。

J2EE概述 - 编程入门网

图1、 JavaCard运作模式图

第一个部分就是 Java Card这一端,配合CAD(Card Acceptance Device ),也就是图1中的Card Reader来传输、读取Card中的资料,并且供给 Card所 的电源。而JavaCard本身则可以执行applet程式,使得一些敏感的资料与行为能够安全执行而不受外部程式影响。第二部分则是图1右方的 Terminal端,负责提供服务程式及操作介面,并透过CAD 与JavaCard沟通。

另外,在图1中所表示的 APDU(Application Protocol Data Units)即双箭头的部分,则是 terminal与Java Card沟通的格式与协定。由terminal 端传送给Java Card 的APDU称为Command APDU,主要适用来下达指令以及传输资料给Java Card。图2即Command APDU的格式。

J2EE概述 - 编程入门网

图2、 Command APDU格式

J2EE概述(2)

时间:2010-12-19

其栏位所表示的意义分别为:

CLA - Class Byte,用於识别applet INS - Instruction Byte ,下达给applet之指令 P1 - 第一个指令参数 P2 - 第二个指令参数 Lc - Data Field之长度 Data Field - 资料栏位 Le - 回传资料之长度

例如,terminal要下达两个byte相加的加法指令(INS= 0x01)给applet( CLA=0x80)时, Command APDU的写法可能为:

J2EE概述 - 编程入门网

而当Java Card applet接收到此一指令时则会先判断 CLA byte是否为 0x80,接著再根据 terminal端所下达的指令来执行,并将Data Field依指令性质取出两个独立的byte来相加。

而由Java Card端回传给terminal端的 APDU则称为 Response APDU,图3则为此APDU之格式。

J2EE概述 - 编程入门网

图4

其栏位所表示的意义分别为:

Data Field - return之资料栏位 SW1 - 执行状态参数1 SW2 - 执行状态参数2

所以,利用上述的加法为例,Java Card applet执行後所return的值若为 short value(16-bit integer),则 Response APDU的表

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号