專利名稱:智能卡和應(yīng)用數(shù)據(jù)處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及智能卡技術(shù),尤其涉及一種雙操作系統(tǒng)智能卡和應(yīng)用數(shù)據(jù)處理方法。
背景技術(shù):
智能卡作為身份識別和安全認(rèn)證的重要工具已經(jīng)得到廣泛的應(yīng)用。特別是,JAVA技術(shù)與智能卡技術(shù)的結(jié)合使智能卡的應(yīng)用領(lǐng)域越來越廣,這種智能卡由于能支持JAVA虛擬機和各種運行平臺,因此常被稱為JAVA卡。傳統(tǒng)的JAVA卡只支持標(biāo)準(zhǔn)版(ClassicEdition)的JAVA卡虛擬機,主要用于安全認(rèn)證和身份識別。 隨著3. 0連接版(Connected Edition) JAVA卡虛擬機規(guī)范的推出,JAVA卡開始承載更多的業(yè)務(wù)和實現(xiàn)更多的功能。連接版與標(biāo)準(zhǔn)版完全不同,連接版主要面向于網(wǎng)絡(luò)應(yīng)用,適用于空中下載、多媒體信息管理、近距離支付等業(yè)務(wù)。連接版與標(biāo)準(zhǔn)版互不兼容,但是,為了適應(yīng)支持標(biāo)準(zhǔn)版的傳統(tǒng)JAVA卡,現(xiàn)階段的JAVA卡大都在一張卡上集成這兩種版本的虛擬機。 雖然,連接版JAVA卡虛擬機的使用解決了一部分智能卡網(wǎng)絡(luò)應(yīng)用的問題,但是在保證安全性的前提下,出于成本的考慮,這種JAVA卡仍然滿足不了處理更多復(fù)雜且高級業(yè)務(wù)的需要。于是,雙操作系統(tǒng)的JAVA卡應(yīng)運而生,這種雙操作系統(tǒng)的JAVA卡在原有JAVA卡的基礎(chǔ)上增加一個操作系統(tǒng)來單獨處理對安全性要求不高的高級應(yīng)用。具體地,參見圖1,圖1示出了傳統(tǒng)雙操作系統(tǒng)智能卡的架構(gòu)圖。如圖1所示,雙操作系統(tǒng)的JAVA卡主要包括彼此之間通信連接的兩部分一部分稱為安全域,其包括智能卡的片上操作系統(tǒng)、運行于該片上操作系統(tǒng)的3. 0連接版JAVA卡虛擬機和3. 0標(biāo)準(zhǔn)版JAVA卡虛擬機、JAVA卡運行庫和JAVA卡應(yīng)用程序,安全域主要實現(xiàn)身份識別、認(rèn)證、鑒權(quán)和加密等安全性要求較高的功能,對硬件能力要求不高;另一部分稱為應(yīng)用域,其包括Li皿x操作系統(tǒng)、運行于該Li皿x操作系統(tǒng)上的連接有限設(shè)備配置(CLDC, Connected Limited DeviceConfiguration)虛擬機、CLDC運行庫和應(yīng)用程序,應(yīng)用域主要實現(xiàn)諸如多媒體服務(wù)和網(wǎng)絡(luò)服務(wù)之類的高級應(yīng)用,對硬件的要求較高。 連接版JAVA卡虛擬機主要面向于網(wǎng)絡(luò)應(yīng)用,對安全性要求并不高,但是,由于在這種雙操作系統(tǒng)的JAVA卡中,連接版JAVA卡虛擬機位于安全域中,所以與連接版JAVA卡虛擬機的網(wǎng)絡(luò)應(yīng)用相關(guān)的應(yīng)用數(shù)據(jù)不得不在安全域中進(jìn)行處理。也就是說,應(yīng)用數(shù)據(jù)將不得不從應(yīng)用域被通信傳輸?shù)桨踩?,?jīng)過安全域的處理再回傳到應(yīng)用域,這不可避免地增加了應(yīng)用數(shù)據(jù)傳輸?shù)却臅r間。此外,安全域受限于成本因素,自身的硬件條件有限,處理這些應(yīng)用數(shù)據(jù)的速度遠(yuǎn)不及應(yīng)用域,這在很大程度上限制了雙操作系統(tǒng)JAVA卡的性能提高。
發(fā)明內(nèi)容
考慮到現(xiàn)有技術(shù)的上述問題,本發(fā)明的目的在于提供一種智能卡和應(yīng)用數(shù)據(jù)處理方法,可以在不降低智能卡系統(tǒng)安全性并且不增加額外成本的情況下,減少應(yīng)用數(shù)據(jù)的傳輸?shù)却龝r間和通信延遲,提高智能卡的應(yīng)用性能。 為了實現(xiàn)上述目的,本發(fā)明提供一種智能卡,包括 安全域,其包括片上操作系統(tǒng)、運行在該片上操作系統(tǒng)上的標(biāo)準(zhǔn)版JAVA卡虛擬機、JAVA卡運行庫和標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序;禾口 應(yīng)用域,其包括操作系統(tǒng)、運行在該操作系統(tǒng)上的虛擬機、JAVA卡運行庫和連接版JAVA卡應(yīng)用程序。 本發(fā)明還提供一種用于智能卡的應(yīng)用數(shù)據(jù)處理方法,其中,所述智能卡包括安全域,其包括片上操作系統(tǒng)、運行在該片上操作系統(tǒng)上的標(biāo)準(zhǔn)版JAVA卡虛擬機、JAVA卡運行庫和標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序;以及應(yīng)用域,其包括操作系統(tǒng)、運行在該操作系統(tǒng)上的虛擬機、JAVA卡運行庫和連接版JAVA卡應(yīng)用程序,該方法包括如下步驟 判斷所述智能卡接收到的應(yīng)用數(shù)據(jù)是否是與所述標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序相關(guān)的應(yīng)用數(shù)據(jù); 在判斷結(jié)果為否定的情況下,在所述應(yīng)用域處理所述應(yīng)用數(shù)據(jù)。
本發(fā)明的其他特征、目的和益處通過以下結(jié)合附圖的詳細(xì)描述將變得更加顯而易見。其中 圖1示出了傳統(tǒng)雙操作系統(tǒng)智能卡的架構(gòu)圖; 圖2示出了根據(jù)本發(fā)明實施例的雙操作系統(tǒng)智能卡的架構(gòu)圖; 圖3示出了根據(jù)本發(fā)明實施例的應(yīng)用數(shù)據(jù)處理方法的流程圖。
具體實施例方式
下面,將結(jié)合附圖詳細(xì)描述本發(fā)明的各個實施例。 在圖l所示的雙操作系統(tǒng)智能卡的架構(gòu)中,與連接版JAVA卡虛擬機的網(wǎng)絡(luò)應(yīng)用相
關(guān)的應(yīng)用數(shù)據(jù)不得不傳輸給安全域,在安全域的參與下進(jìn)行處理,因此,造成應(yīng)用數(shù)據(jù)的傳
輸?shù)却舆t,而且安全域由于自身條件的限制,運算能力不高,限制了整個智能卡的性能。 考慮到連接版JAVA卡虛擬機主要面向于網(wǎng)絡(luò)應(yīng)用,對諸如運算能力和存儲能力
之類的性能要求較高,而對安全性的要求不高,于是,本發(fā)明在現(xiàn)有的雙操作系統(tǒng)智能卡的
基礎(chǔ)上,對性能要求和安全性要求不同的應(yīng)用進(jìn)行分離,在不增加額外成本的基礎(chǔ)上,重用
智能卡的現(xiàn)有器件和資源,顯著提高智能卡的性能。 具體參見圖2來描述根據(jù)本發(fā)明的智能卡,圖2示出了根據(jù)本發(fā)明實施例的雙操作系統(tǒng)智能卡的架構(gòu)圖。 如圖2所示,雙操作系統(tǒng)智能卡1包括相互之間通信連接的應(yīng)用域10和安全域20。 應(yīng)用域IO可以支持諸如多媒體服務(wù)和網(wǎng)絡(luò)下載之類的高級應(yīng)用,能實現(xiàn)傳統(tǒng)上由主計算機或服務(wù)器來實現(xiàn)的部分功能。高級應(yīng)用對應(yīng)用域10的運算能力、存儲能力等性能要求較高,但是對安全性的要求不高,因此,可以在控制安全性成本的同時,在硬件上采用先進(jìn)的微處理器和大容量的存儲器來提高處理應(yīng)用的性能。 與此相適應(yīng),應(yīng)用域10的軟件平臺架構(gòu)包括Linux操作系統(tǒng)100、運行在Linux操作系統(tǒng)100上的CLDC虛擬機110、 CLDC虛擬機110所支持的CLDC運行庫120和應(yīng)用程序130以及JAVA卡運行庫140和連接版JAVA卡應(yīng)用程序150。 安全域20實現(xiàn)智能卡1最基本和最原始的功能,包括安全認(rèn)證和身份識別。安全域20不參與智能卡l上復(fù)雜應(yīng)用的處理和運算,對性能的需求不高,但由于需要實現(xiàn)安全認(rèn)證和身份識別等功能,對安全性的要求極高,所以可以控制硬件上微處理器和存儲器的成本,而將成本用于考慮安全性因素。 為此,安全域20的軟件平臺架構(gòu)包括智能卡片上操作系統(tǒng)200、運行在片上操作系統(tǒng)200上的標(biāo)準(zhǔn)版JAVA卡虛擬機210、標(biāo)準(zhǔn)版JAVA卡虛擬機210所支持的JAVA卡運行庫220和標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序230。 從上述的智能卡1的架構(gòu)可見,對安全性要求高的標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序230由標(biāo)準(zhǔn)版JAVA卡虛擬機210在安全域20中執(zhí)行,而面向網(wǎng)絡(luò)應(yīng)用的連接版JAVA卡應(yīng)用程序150在應(yīng)用域10中執(zhí)行,由于連接版JAVA卡虛擬機是CLDC虛擬機110的子集,所以連接版JAVA卡應(yīng)用程序150可以借助CLDC虛擬機110來實現(xiàn),而沒有必要單獨設(shè)置連接版JAVA卡虛擬機。在這種架構(gòu)下,與連接版JAVA卡應(yīng)用程序150相關(guān)的應(yīng)用數(shù)據(jù)不必傳送至安全域20中進(jìn)行處理,而是可以直接在應(yīng)用域10中由CLDC虛擬機IIO運行連接版JAVA卡應(yīng)用程序來處理,因此,可以減少應(yīng)用數(shù)據(jù)在安全域和應(yīng)用域之間傳輸?shù)牡却龝r間。進(jìn)一步地,對于這部分應(yīng)用數(shù)據(jù)而言,應(yīng)用域10的處理能力和處理速度都明顯好于安全域20,所以,與在安全域20中處理與連接版JAVA卡應(yīng)用程序150相關(guān)的應(yīng)用數(shù)據(jù)相比,在應(yīng)用域10中處理這些應(yīng)用數(shù)據(jù)可以顯著提高智能卡的性能。更重要的是,與傳統(tǒng)的雙操作系統(tǒng)的智能卡相比,本發(fā)明的智能卡1沒有增加額外的成本,僅在傳統(tǒng)智能卡的基礎(chǔ)上,對現(xiàn)有的部件和資源進(jìn)行重組和優(yōu)化,在不降低傳統(tǒng)智能卡安全性的情況下,使整個智能卡的功能最大化。
下面,參見圖3描述在圖2所示的智能卡1中處理應(yīng)用數(shù)據(jù)的過程。圖3示出了根據(jù)本發(fā)明實施例的應(yīng)用數(shù)據(jù)處理方法的流程圖。
如圖3所示,智能卡1接收待處理的應(yīng)用數(shù)據(jù)(步驟S300)。 智能卡1判斷待處理的應(yīng)用數(shù)據(jù)是否是與安全域20中的標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序230相關(guān)的應(yīng)用數(shù)據(jù)(步驟S310)。 在步驟S310的判斷結(jié)果為肯定時,說明該應(yīng)用數(shù)據(jù)涉及安全認(rèn)證或身份識別等安全性要求較高的功能,需要安全域20參與運算處理,于是,將待處理的應(yīng)用數(shù)據(jù)傳送給安全域20(步驟S320)。 安全域20處理應(yīng)用數(shù)據(jù),并將處理結(jié)果返回給應(yīng)用域IO(步驟S330)。 在步驟S310的判斷結(jié)果為否定時,說明該應(yīng)用數(shù)據(jù)不屬于安全性要求較高的數(shù)
據(jù),于是,在應(yīng)用域20中處理該應(yīng)用數(shù)據(jù)(步驟S340)。 從圖3所示的方法可見,對于部分應(yīng)用數(shù)據(jù),特別是與連接版JAVA卡應(yīng)用程序150的網(wǎng)絡(luò)應(yīng)用相關(guān)的應(yīng)用數(shù)據(jù),由于不再需要安全域20參與運算,因此,不必傳送至安全域20進(jìn)行處理。與傳統(tǒng)的需要兩個操作系統(tǒng)參與的處理相比,上述方法實現(xiàn)了在同一個虛擬機上的直接調(diào)用,大大降低了數(shù)據(jù)傳輸通信的時間。而且,應(yīng)用域10的處理能力也好于安全域20,在一定程度上提高了處理速度,改善了智能卡的性能。 本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,上述智能卡應(yīng)用域中所包括的操作系統(tǒng)可以不必是Li皿x操作系統(tǒng),虛擬機也不必是CLDC虛擬機,只要是支持連接版JAVA卡應(yīng)用程序的虛擬機即可,甚至該虛擬機可以是連接版JAVA卡虛擬機,這樣,應(yīng)用域包括Li皿x操作系統(tǒng)、連接版JAVA卡虛擬機、JAVA卡運行庫和連接版JAVA卡應(yīng)用程序。 本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,上述實施例所公開的方法可以利用軟件、硬件或者軟硬件結(jié)合的方式來實現(xiàn)。 本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,在本發(fā)明上述實施例的啟示下,可以得到本發(fā)明實施例的各種變形,并且在不偏離本發(fā)明的精神或范圍的情況下,本文中所定義的一般原理也可以應(yīng)用到其他實施例中。因此本發(fā)明并不局限于本文中所示的實施例,而且要求與本文中所公開的原理和新穎特征相一致的最廣的范圍。
權(quán)利要求
一種智能卡,包括安全域,其包括片上操作系統(tǒng)、運行在該片上操作系統(tǒng)上的標(biāo)準(zhǔn)版JAVA卡虛擬機、JAVA卡運行庫和標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序;和應(yīng)用域,其包括操作系統(tǒng)、運行在該操作系統(tǒng)上的虛擬機、JAVA卡運行庫和連接版JAVA卡應(yīng)用程序。
2. 如權(quán)利要求1所述的智能卡,其中,所述應(yīng)用域的操作系統(tǒng)是Linux操作系統(tǒng)。
3. 如權(quán)利要求1所述的智能卡,其中,所述應(yīng)用域的虛擬機是連接有限設(shè)備配置CLDC 虛擬機。
4. 如權(quán)利要求3所述的智能卡,還包括位于所述應(yīng)用域中的CLDC運行庫和應(yīng)用程序。
5. 如權(quán)利要求1所述的智能卡,其中,所述應(yīng)用域的虛擬機是連接版JAVA卡虛擬機。
6. —種用于智能卡的應(yīng)用數(shù)據(jù)處理方法,其中,所述智能卡包括安全域,其包括片上 操作系統(tǒng)、運行在該片上操作系統(tǒng)上的標(biāo)準(zhǔn)版JAVA卡虛擬機、JAVA卡運行庫和標(biāo)準(zhǔn)版JAVA 卡應(yīng)用程序;以及應(yīng)用域,其包括操作系統(tǒng)、運行在該操作系統(tǒng)上的虛擬機、JAVA卡運行庫 和連接版JAVA卡應(yīng)用程序,該應(yīng)用數(shù)據(jù)處理方法包括如下步驟判斷所述智能卡接收到的應(yīng)用數(shù)據(jù)是否是與所述標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序相關(guān)的應(yīng)用 數(shù)據(jù);在判斷結(jié)果為否定的情況下,在所述應(yīng)用域處理所述應(yīng)用數(shù)據(jù)。
7. 如權(quán)利要求6所述的應(yīng)用數(shù)據(jù)處理方法,進(jìn)一步包括在判斷結(jié)果為肯定的情況下,將所述應(yīng)用數(shù)據(jù)傳送給所述安全域,并在所述安全域處 理完成之后,將處理結(jié)果傳送給所述應(yīng)用域。
全文摘要
本發(fā)明涉及智能卡和應(yīng)用數(shù)據(jù)處理方法。其中,智能卡包括安全域,其包括片上操作系統(tǒng)、運行在該片上操作系統(tǒng)上的標(biāo)準(zhǔn)版JAVA卡虛擬機、JAVA卡運行庫和標(biāo)準(zhǔn)版JAVA卡應(yīng)用程序;和應(yīng)用域,其包括操作系統(tǒng)、運行在該操作系統(tǒng)上的虛擬機、JAVA卡運行庫和連接版JAVA卡應(yīng)用程序。利用本發(fā)明提供的智能卡和應(yīng)用數(shù)據(jù)處理方法,可以在不降低智能卡系統(tǒng)安全性并且不增加額外成本的情況下,減少應(yīng)用數(shù)據(jù)的傳輸?shù)却龝r間和通信延遲,提高智能卡的應(yīng)用性能。
文檔編號G06F9/44GK101739246SQ200810177909
公開日2010年6月16日 申請日期2008年11月21日 優(yōu)先權(quán)日2008年11月21日
發(fā)明者劉子瑛, 李丞倍, 李相研, 羅棟元, 金亨一 申請人:愛思開電訊投資(中國)有限公司