您的位置 首页 分销

Java智能卡中移动通信中RMI技能及其使用

1.引言Java智能卡(JavaCard)技术在第三代移动通信中有着极其广泛的应用。Jaya智能卡的出现.使多个应用程序可共存于一张智能卡中.这些应用可以来自同一个卡供应商。也可以来自不同的卡供应商.

1.导言

Java智能卡(Java Card)技能在第三代移动通讯中有着极端广泛的运用。Jaya智能卡的呈现.使多个运用程序可共存于一张智能卡中.这些运用能够来自同一个卡供货商。也能够来自不同的卡供货商.用户只需改写智能卡上的程序。就能够得到不同的运用.运营商及开发商摆脱了对卡商的依靠。大大下降了本钱。在移动通讯的SIM卡中,Java智能卡的运用越来越广泛,景极端看好。因为SIM卡运用Java智能卡的量越来越多,运用频率越来越高。为了更好地发挥网络及其散布在网络中的核算机的处理才能。移动通讯中Java智能卡RMI技能在开发运用中变得越来越重要。

2.移动通讯中Java智能卡的首要特色

移动通讯中,Java智能卡是指运转Java小运用程序的智能卡。卡上有必要存在相应的Java虚拟机。契合Java Card技能规范的小运用程序能够运转在该虚拟机上 SUN公司提出了有关Java Card技能规范.包含有关在智能卡上创立Java Card虚拟机和运用编程接1:3(API)的详细信息。与传统的智能卡体系比较,Java智能卡渠道首要有以下特色:

1.跨渠道性

移动通讯中现在大部分SIM 卡现已支撑了Java卡的技能规范.凡契合Java卡API技能规范的Java卡Applets都能够运转在Java卡运转环境(JCRE:Java Card Runtime Environment).答应开发人员运用相同的Java卡Applets在不同厂商的智能卡上运转,完结了一次程序编写处处运转的功用 即经过JVM 的机制到达跨渠道的意图。

2.运用开发快捷性

关于移动通讯中Java智能卡上的运用,开发人员无需了解杂乱的智能卡硬件和智能卡专用的技能,就能够进行智能卡运用的开发,然后大大削减开发时刻,下降开发难度和本钱。并且能够使本来的Java程序开发人员来编写智能卡程序。人力资源得到充沛的运用,更好地满意了运用程序成倍增长的需求.一起也是年代开展的需求。

3.安全性

在移动通讯中,Java智能卡最要害的问题之一。安全性牵涉到多个方面。Java智能卡体系的安全性形式在许多方面作了改善,它的安全策略由Java卡虚拟机fJCVM)和Java卡运转环境一起完结。考虑到智能卡的运用规模和运用场合的特殊性,Java卡支撑维护数据的完整性,避免关于敏感数据没有认证的拜访。

4.多运用性

在一个Jaya卡运转环境中能够运转多种功用差异很大的不同的运用(Applets),比如手机上网,移动证券交易,手机玩游戏等等.这些运用既能够来自同一个卡供货商也能够来自不同的卡供货商,这是新一代手机的很重要特色。

3.RMI技能与移动通讯中智能卡的RMI技能及其运用

3.1 RMI技能

J2SE中的RMI(Remote Method Invocation,长途办法调用)技能是开发Java散布式网络运用的中心技能与传统的RPC(Remote Procedure Call,长途进程调用)调用长途进程不同,RMI用于调用长途目标中的办法.支撑存储于不同地址空间的目标之间的互相通讯。让坐落不同JVM 空间中的目标在外观行为上都像是本地的目标相同运用。是朴实面向目标的Java程序中开发网络散布式运用体系的中心解决方案。

用RMI开发的运用程序由服务器端程序和客户端程序二部分组成。服务器端程序在运转时会创立多个目标实例f称为长途目标).这些目标实例用于向客户供给某种服务。一起服务器端翻开监听端口等候客户端程序调用。客户端程序在运转时经过RMI机制从服务器中得到长途目标的引证。调用其间的方

RMI的体系结构能够用图1表明:

从图1中可见,RMI体系结构是由多层组成的。stub/skeleton层中运用了存(stub) 结构(ske1eton) 的办法来躲藏底层通讯的完结细节。stub代表长途目标的客户端目标。具有和长途目标相同的接口或办法列表。当客户端程序调用长途目标的办法时.实践上调用的是stub目标中的办法.stub将恳求转发到长途目标。服务器端的skeleton目标担任将stub传来的信息解码。并将解码后的信息交给实践的长途目标进行处理.长途目标处理完毕后将成果传给skeleton目标。再由skeleton目标传给客户端的stub目标,最终stub目标将这些信息传给客户端程序。

3.2 移动通讯中Java智能卡的RMI技能及其运用

除了与J2SE中的RMI技能十分类似外, 因为智能卡资源的限制,Java智能卡中的RMI技能与J2SE中的RMI技能是有所差异的。在Java智能卡中,JavaCard小运用程序是服务器.主运用程序是客户端。Java智能卡RMI与J2SE中的RMI的首要差异体现在如下几点:

1)J2SE中的RMI协议通讯是经过长途接口完结的存根与长途接口完结的结构完结的,而在Java智能卡中的RMI运用中。客户端运用程序与服务器端运用程序的通讯进程是先获取一个RMIService服务,然后由该服务程序再与服务器的运用进行通讯。

2)在Java智能卡的RMI模型中。APDU(Applicafion PintocolData Unit,运用协议数据单元)通讯的进程被抽象化。不是直接经过APDU指令完结,而是经过处理目标的办法完结的。

3)Java智能卡RMI模型中的软件包与J2SE中RMI的软件也有不同,分别是jave. rmi与javacard.framework.service。其间java.rmi包中界说了Remote接口与RemoteExcepfion类,而javacard.framework.service软件包中界说了JavaCard小运用程序服务类, 包含CardRemoteObject和RMISenrice类。CardRemoteObject类中界说了发动和制止卡外目标长途拜访的办法。而RMIServiee用于处理RMI恳求并转化输入的APDU指令为长途办法调用。

编写一个Jaya智能卡的运用程序一般要包含以下几步(下面给出的是典型的电子钱包的比如):

1)界说一个长途服务的接口

该接口担任界说Jaya智能卡小运用程序所能供给的服务,相同该接口有必要扩展java.rmi.Remote。
import java.rmi.*;
importjavaeard.framework.*;
public interface EPInterfaee extends Remote {
public short getBalance0 throw RemoteExeeption;
//有关电子钱包运用中的办法声明

2)编写长途类的服务器完结和相应的支撑类

在Java智能卡中,小运用程序是RMI服务器端,一个典型的小运用程序如图2所示n1:
图中MyRemoteC1ass是长途服务器类.能够完结长途接口MyRemote来完结Remote。也能够经过扩展一个相应的智能卡长途目标类f图中(CardRemoteObject)来完结Remote。总归一切长途运用的完结类都有必要完结Remote接口 RMIService担任将APDU调用转换为RMI调用.Dispatcher担任将收到的APDU指令分发给RMIService 从图中可知,服务器的完结首要包含Jaya智能卡小运用程序、长途服务接口的完结类及与运用程序相关的类。下面是小运用程序的结构:

3)写运用长途服务类的客户机端程序

客户端程序一般包含初始化OpenCard结构、等候新卡刺进、获取OCFCardAccessor实例、创立JavaCardRMIConnect实例及挑选智能卡Applet和调用长途目标的办法。(限于篇幅,程序略)

3.3移动通讯中Java智能卡的RMI程序的流程Java智能卡的RMI程序的流程可用下图[l]表明。
图中HostAppheafion是客户端运用程序。经过传送APDUs到卡上的JCRE进行RMI调用。顺次传送到智能卡上的小运用程序f图中的(MyApplet)。 小运用程序经过Dis.Datcher将收到的APDUs指令分发给RMIService。RMIService逐一处理APDU并将这些指令转化为长途办法调用。

4.小结

移动通讯中Java智能卡的运用越来越广,在现在的软件设计中。散布式程序设计越来越被软件开发人员注重。在移动通讯中跟着运用规模的不断扩展。程序和需求处理的数据流量将会有一个十分大的胀大。而这些程序和处理的数据以及实践的核算都会广泛地散布在网络上。根据RMI的运用既能够同享网络及网络中核算机等软硬件的资源。也能够平衡各个核算机的处理才能。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/fenxiao/224864.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部