當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]1.引言Java智能卡(Java Card)技術(shù)在第三代移動通信(3G1中有著極其廣泛的應(yīng)用。Jaya智能卡的出現(xiàn).使多個應(yīng)用程序可共存于一張智能卡中.這些應(yīng)用可以來自同一個卡供應(yīng)商。也可以來自不同的卡供應(yīng)商.用戶只需刷新智

1.引言

Java智能卡(Java Card)技術(shù)在第三代移動通信(3G1中有著極其廣泛的應(yīng)用。Jaya智能卡的出現(xiàn).使多個應(yīng)用程序可共存于一張智能卡中.這些應(yīng)用可以來自同一個卡供應(yīng)商。也可以來自不同的卡供應(yīng)商.用戶只需刷新智能卡上的程序。就可以得到不同的應(yīng)用.運(yùn)營商及開發(fā)商擺脫了對卡商的依賴。大大降低了成本。在移動通信的SIM卡中,Java智能卡的應(yīng)用越來越廣泛,景極其看好。由于SIM卡使用Java智能卡的量越來越多,使用頻率越來越高。為了更好地發(fā)揮網(wǎng)絡(luò)及其分布在網(wǎng)絡(luò)中的計算機(jī)的處理能力。移動通信中Java智能卡RMI技術(shù)在開發(fā)應(yīng)用中變得越來越重要。

2.移動通信中Java智能卡的主要特點(diǎn)

移動通信中,Java智能卡是指運(yùn)行Java小應(yīng)用程序的智能卡。卡上必須存在相應(yīng)的Java虛擬機(jī)。符合Java Card技術(shù)規(guī)范的小應(yīng)用程序可以運(yùn)行在該虛擬機(jī)上 SUN公司提出了有關(guān)Java Card技術(shù)規(guī)范.包括有關(guān)在智能卡上創(chuàng)建Java Card虛擬機(jī)和應(yīng)用編程接1:3(API)的詳細(xì)信息。與傳統(tǒng)的智能卡系統(tǒng)相比,Java智能卡平臺主要有以下特點(diǎn):

1.跨平臺性

移動通信中目前大部分SIM 卡已經(jīng)支持了Java卡的技術(shù)規(guī)范.凡符合Java卡API技術(shù)規(guī)范的Java卡Applets都可以運(yùn)行在Java卡運(yùn)行環(huán)境(JCRE:Java Card Runtime Environment).允許開發(fā)人員使用相同的Java卡Applets在不同廠商的智能卡上運(yùn)行,實(shí)現(xiàn)了一次程序編寫到處運(yùn)行的功能 即通過JVM 的機(jī)制達(dá)到跨平臺的目的。

2.應(yīng)用開發(fā)便捷性

對于移動通信中Java智能卡上的應(yīng)用,開發(fā)人員無需了解復(fù)雜的智能卡硬件和智能卡專用的技術(shù),就可以進(jìn)行智能卡應(yīng)用的開發(fā),從而大大減少開發(fā)時間,降低開發(fā)難度和成本。而且可以使原來的Java程序開發(fā)人員來編寫智能卡程序。人力資源得到充分的利用,更好地滿足了應(yīng)用程序成倍增長的需要.同時也是時代發(fā)展的需要。

3.安全性

在移動通信中,Java智能卡最關(guān)鍵的問題之一。安全性牽涉到多個方面。Java智能卡系統(tǒng)的安全性模式在很多方面作了改進(jìn),它的安全策略由Java卡虛擬機(jī)fJCVM)和Java卡運(yùn)行環(huán)境共同實(shí)現(xiàn)??紤]到智能卡的應(yīng)用范圍和應(yīng)用場合的特殊性,Java卡支持保護(hù)數(shù)據(jù)的完整性,防止對于敏感數(shù)據(jù)沒有認(rèn)證的訪問。

4.多應(yīng)用性

在一個Jaya卡運(yùn)行環(huán)境中可以運(yùn)行多種功能差異很大的不同的應(yīng)用(Applets),譬如手機(jī)上網(wǎng),移動證券交易,手機(jī)玩游戲等等.這些應(yīng)用既可以來自同一個卡供應(yīng)商也可以來自不同的卡供應(yīng)商,這是新一代手機(jī)的很重要特點(diǎn)。

3.RMI技術(shù)與移動通信中智能卡的RMI技術(shù)及其應(yīng)用

3.1 RMI技術(shù)

J2SE中的RMI(Remote Method Invocation,遠(yuǎn)程方法調(diào)用)技術(shù)是開發(fā)Java分布式網(wǎng)絡(luò)應(yīng)用的核心技術(shù)與傳統(tǒng)的RPC(Remote Procedure Call,遠(yuǎn)程過程調(diào)用)調(diào)用遠(yuǎn)程過程不同,RMI用于調(diào)用遠(yuǎn)程對象中的方法.支持存儲于不同地址空間的對象之間的彼此通信。讓位于不同JVM 空間中的對象在外觀行為上都像是本地的對象一樣使用。是純粹面向?qū)ο蟮腏ava程序中開發(fā)網(wǎng)絡(luò)分布式應(yīng)用系統(tǒng)的核心解決方案。

用RMI開發(fā)的應(yīng)用程序由服務(wù)器端程序和客戶端程序二部分組成。服務(wù)器端程序在運(yùn)行時會創(chuàng)建多個對象實(shí)例f稱為遠(yuǎn)程對象).這些對象實(shí)例用于向客戶提供某種服務(wù)。同時服務(wù)器端打開監(jiān)聽端口等待客戶端程序調(diào)用。客戶端程序在運(yùn)行時通過RMI機(jī)制從服務(wù)器中得到遠(yuǎn)程對象的引用。調(diào)用其中的方

RMI的體系結(jié)構(gòu)可以用圖1表示:

從圖1中可見,RMI體系結(jié)構(gòu)是由多層組成的。stub/skeleton層中使用了存(stub) 框架(ske1eton) 的方法來隱藏底層通訊的實(shí)現(xiàn)細(xì)節(jié)。stub代表遠(yuǎn)程對象的客戶端對象。具有和遠(yuǎn)程對象相同的接口或方法列表。當(dāng)客戶端程序調(diào)用遠(yuǎn)程對象的方法時.實(shí)際上調(diào)用的是stub對象中的方法.stub將請求轉(zhuǎn)發(fā)到遠(yuǎn)程對象。服務(wù)器端的skeleton對象負(fù)責(zé)將stub傳來的信息解碼。并將解碼后的信息交給實(shí)際的遠(yuǎn)程對象進(jìn)行處理.遠(yuǎn)程對象處理完畢后將結(jié)果傳給skeleton對象。再由skeleton對象傳給客戶端的stub對象,最后stub對象將這些信息傳給客戶端程序。
3.2 移動通信中Java智能卡的RMI技術(shù)及其應(yīng)用

除了與J2SE中的RMI技術(shù)非常相似外, 由于智能卡資源的局限,Java智能卡中的RMI技術(shù)與J2SE中的RMI技術(shù)是有所區(qū)別的。在Java智能卡中,JavaCard小應(yīng)用程序是服務(wù)器.主應(yīng)用程序是客戶端。Java智能卡RMI與J2SE中的RMI的主要區(qū)別體現(xiàn)在如下幾點(diǎn):

1)J2SE中的RMI協(xié)議通信是通過遠(yuǎn)程接口實(shí)現(xiàn)的存根與遠(yuǎn)程接口實(shí)現(xiàn)的框架完成的,而在Java智能卡中的RMI應(yīng)用中??蛻舳藨?yīng)用程序與服務(wù)器端應(yīng)用程序的通信過程是先獲取一個RMIService服務(wù),然后由該服務(wù)程序再與服務(wù)器的應(yīng)用進(jìn)行通信。

2)在Java智能卡的RMI模型中。APDU(Applicafion PintocolData Unit,應(yīng)用協(xié)議數(shù)據(jù)單元)通信的過程被抽象化。不是直接通過APDU命令完成,而是通過處理對象的方式完成的。

3)Java智能卡RMI模型中的軟件包與J2SE中RMI的軟件也有不同,分別是jave. rmi與javacard.framework.service。其中java.rmi包中定義了Remote接口與RemoteExcepfion類,而javacard.framework.service軟件包中定義了JavaCard小應(yīng)用程序服務(wù)類, 包括CardRemoteObject和RMISenrice類。CardRemoteObject類中定義了啟動和禁止卡外對象遠(yuǎn)程訪問的方法。而RMIServiee用于處理RMI請求并轉(zhuǎn)化輸入的APDU命令為遠(yuǎn)程方法調(diào)用。

編寫一個Jaya智能卡的應(yīng)用程序一般要包含以下幾步(下面給出的是典型的電子錢包的例子):

1)定義一個遠(yuǎn)程服務(wù)的接口

該接口負(fù)責(zé)定義Jaya智能卡小應(yīng)用程序所能提供的服務(wù),同樣該接口必須擴(kuò)展java.rmi.Remote。
    import java.rmi.*;
    importjavaeard.framework.*;
    public interface EPInterfaee extends Remote {
    public short getBalance0 throw RemoteExeeption;
    //有關(guān)電子錢包應(yīng)用中的方法聲明
    ...
    }

2)編寫遠(yuǎn)程類的服務(wù)器實(shí)現(xiàn)和相應(yīng)的支持類

在Java智能卡中,小應(yīng)用程序是RMI服務(wù)器端,一個典型的小應(yīng)用程序如圖2所示n1:
圖中MyRemoteC1ass是遠(yuǎn)程服務(wù)器類.可以實(shí)現(xiàn)遠(yuǎn)程接口MyRemote來實(shí)現(xiàn)Remote。也可以通過擴(kuò)展一個相應(yīng)的智能卡遠(yuǎn)程對象類f圖中(CardRemoteObject)來實(shí)現(xiàn)Remote??傊羞h(yuǎn)程應(yīng)用的實(shí)現(xiàn)類都必須實(shí)現(xiàn)Remote接口 RMIService負(fù)責(zé)將APDU調(diào)用轉(zhuǎn)換為RMI調(diào)用.Dispatcher負(fù)責(zé)將收到的APDU命令分發(fā)給RMIService 從圖中可知,服務(wù)器的實(shí)現(xiàn)主要包括Jaya智能卡小應(yīng)用程序、遠(yuǎn)程服務(wù)接口的實(shí)現(xiàn)類及與應(yīng)用程序相關(guān)的類。下面是小應(yīng)用程序的結(jié)構(gòu):

3)寫使用遠(yuǎn)程服務(wù)類的客戶機(jī)端程序

客戶端程序通常包括初始化OpenCard框架、等待新卡插入、獲取OCFCardAccessor實(shí)例、創(chuàng)建JavaCardRMIConnect實(shí)例及選擇智能卡Applet和調(diào)用遠(yuǎn)程對象的方法。(限于篇幅,程序略)

3.3移動通信中Java智能卡的RMI程序的流程Java智能卡的RMI程序的流程可用下圖[l]表示。
    圖中HostAppheafion是客戶端應(yīng)用程序。通過傳送APDUs到卡上的JCRE進(jìn)行RMI調(diào)用。依次傳送到智能卡上的小應(yīng)用程序f圖中的(MyApplet)。 小應(yīng)用程序通過Dis.Datcher將收到的APDUs命令分發(fā)給RMIService。RMIService逐個處理APDU并將這些命令轉(zhuǎn)化為遠(yuǎn)程方法調(diào)用。

4.小結(jié)

移動通信中Java智能卡的應(yīng)用越來越廣,在目前的軟件設(shè)計中。分布式程序設(shè)計越來越被軟件開發(fā)人員重視。在移動通信中隨著應(yīng)用范圍的不斷擴(kuò)展。程序和需要處理的數(shù)據(jù)流量將會有一個非常大的膨脹。而這些程序和處理的數(shù)據(jù)以及實(shí)際的計算都會廣泛地分布在網(wǎng)絡(luò)上。基于RMI的應(yīng)用既可以共享網(wǎng)絡(luò)及網(wǎng)絡(luò)中計算機(jī)等軟硬件的資源。也可以平衡各個計算機(jī)的處理能力。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉