專利名稱::智能卡及提供一致性Web服務的方法和系統的制作方法
技術領域:
:本發明涉及智能卡,特別是涉及具有web服務器功能的智能卡。
背景技術:
:為了適應大容量智能卡的發展,歐洲電信標準化協會(ETSI)發布了ETSITS102600規范,定義了智能卡和終端之間通信的USB接口,解決智能卡和終端之間通信速率問題。開放移動聯盟(OpenMobileAlliance,OMA)也制定了實現智能卡Web服務器(SmartCardWebserver)的規范。由此在USB接口基礎上實現HTTP超文本傳輸協議就可以在智能卡上建立Web服務器和安裝Web應用程序,以供移動終端上的瀏覽器訪問。在智能卡上實現獨立于智能卡操作系統的Web服務器和放置增值服務的Web應用程序已經成為電信網絡運營商們十分關注的技術和未來的趨勢。圖1示出了建立WEB服務器的智能卡的結構。如圖1所示,該智能卡設置有HTTP處理器、TCP/IP處理器以及WEB應用,通過USB接口向用戶提供WEB應用服務。該智能卡還設置有STK(SMToolKit)處理器、APDU處理器以及相應的普通STK應用(標記為"CSA"),以便通過IS07816接口向移動終端提供普通STK應用CSA以及使移動終端注冊到移動通信網絡進行通話等通信功能。然而,現在市場上的大多數移動終端都不支持終端和智能卡間USB接口通信,當把這種智能卡放置到不支持USB接口的移動終端時,傳統的基于APDU的傳輸協議的IS07816通信接口由于受到傳輸速度和傳輸容量的限制,實現對HTTP超文本傳輸協議的支持時具有很大的難度,這將導致智能卡上的Web服務器和Web應用程序在這種移動終端上無法正常工作,因而導致電信網絡運營商的增值業務無法推廣,而用戶也訪問不到Web應用程序帶來的服務。對用戶來講,因為移動終端缺乏支持的原因而不能使用智能卡上多樣化的WEB服務,會大大降低用戶的體驗。因而,需要一種快速有效的方法,使得在智能卡上的WEB應用程序無法正常運行的時候,用戶仍然能夠順利地訪問到一致性的WEB應用服務。
發明內容本發明的一個目的是提供一種新型設備和方法,其可以根據外部應用環境的不同而提供不同的應用,這種設備例如可以是智能卡。根據本發明的另一個目的,提供一種設備和方法,可以提供一致性的WEB應用訪問,從而擴展應用范圍,增加用戶的體驗度。根據本發明一個方面,提供一種在智能卡實現的方法,其中該智能卡附接到終端并通過第一接口與所述終端通信,該智能卡設置有第一應用、第二應用以及允許訪問該第一應用的第二接口,該方法包括(a)根據通過第一接口從終端接收的信號,檢測終端是否具有所述第二接口;(b)根據所述檢測結果,選擇性地提供第一應用與第二應用給所述終端。優選地,其中第一應用是WEB應用,而第二應用是與第一應用關聯的特定應用,其中所述步驟(b)進一步包括(bl)如果終端具有所述第二接口,則智能卡向終端提供所述WEB應用以便終端通過該第二接口本地訪問所述WEB應用;(b2)如果第二設備終端不具有所述第二接口,則智能卡向終端提供所述特定應用,以便終端通過該特定應用遠程訪問服務器上的與所述WEB應用相同的WEB應用。優選地,其中所述步驟(b2)包括當終端觸發該特定應用時,所述智能卡向終端發送啟動終端上的瀏覽器的命令,以便終端通過網絡訪問所述WEB服務器上的WEB應用,其中該命令包含所述服務器的WEB應用的URL地址。根據本發明的另一方面,提供一種智能卡,設置有第一應用與第二應用,包括與終端通信的第一接口,允許訪問該第一應用的第二接口,其特征在于還包括一個STK處理器,包括檢測器,根據通過所述第一接口從終端接收的信號,檢測該終端是否具有所述第二接口;控制器,根據所述檢測結果,選擇性地提供第一與第二應用給所述終端。根據本發明的再一個方面,提供一種提供一致性WEB應用的系統,包括WEB服務器,其上設置有WEB應用。終端,通過通信網絡與所述WEB服務器連接;智能卡,可附接到所述終端,設置有所述WEB應用以及與該WEB應用關聯的特定應用,包括與所述終端通信的第一接口,允許訪問其上web應用的第二接口,處理器,包括檢測器,根據通過所述第一接口從終端接收的信號,檢測該終端是否具有所述第二接口;控制器,配置成如果終端具有所述第二接口,則向終端提供智能卡上的WEB應用以便終端通過該第二接口本地訪問所述WEB應用;如果終端不具有所述第二接口,則向終端提供所述特定應用,以便終端通過該特定應用通過所述通信網絡遠程訪問所述WEB服務器上的WEB應用。本發明的上述特征及優點,可通過參照附圖詳細描述的具體實施例得到進一步理解。圖1是根據現有技術的智能卡的方框圖;圖2是根據本發明的智能卡方框圖;圖3是根據本發明的智能卡的方法流程圖;圖4是圖3所示方法的進一步處理流程圖。具體實施例方式在本發明的實施例中,是以智能卡以及使用該智能卡的移動終端為例進行說明的,但是本發明并不限于此。本實施例提供了一種一致性WEB應用程序的訪問方法,根據本發明的智能卡能夠提供具有一致性的Web應用服務。如圖2所示,根據本實施例的智能卡l,包括與移動終端2進行通信的第一接口IF1,例如IS07816接口,通過該接口,該終端2根據智能卡1中提供的信息注冊到移動網絡,從而可以實現通話、數據傳輸功能。此外,智能卡1作為WEB服務器還提供有一個或多個WEB應用,這些WEB應用通過接口IF2由終端2訪問,接口IF2例如是USB接口,其數據通信速率大于IS07816,從而使具有同樣接口的終端2可以非常流暢地本地訪問智能卡上的WEB應用。當然,與現有技術中的智能卡一樣,本實施例的智能卡同樣包括其他應用和硬件,例如STK普通應用CSA,供終端2可以通過接口IS07816訪問,以及APDU處理器,HTTP處理器等,為簡便起見,圖中只示出一部分。與原有的智能卡相比,本實施例的智能卡1還包括一種特殊類型的STK應用(表示為"SSA"),以及支持SSA應用的STK處理器10,當然該新型STK處理器10同樣可以運行普通的CSA應用。SSA應用與智能卡上的WEB應用程序正好一一對應地關聯,且與CSA—樣具有自己的應用名稱。為了與CSA區分并且與所述WEB應用關聯,在本例中,通過為所有STK應用設置標志FLAG來實現。例如當FLAG為零時,則表示該STK應用為普通類型,即為CSA應用;而當FLAG非零時,則表示這是一個特殊類型的STK應用,即SSA應用。在本實施例中,優選地,所述SSA應用根據FLAG值大小與對應的WEB應用關聯。根據本發明的STK處理器10包括一個檢測器IOI,可用于在智能卡啟動時通過接口IS07816返回的信息,檢測與其相連的終端2是否具有USB接口的功能,并將相應的檢測結果給返回給STK處理器10的控制器102。控制器102根據所述檢測結果決定是否支持終端2通過USB接口訪問本地WEB應用。下面結合附圖3的流程圖來描述智能卡的操作。在智能卡上電后,STK處理器10需要執行向移動終端2發送"建立菜單"(SETUPMENU)的主動式命令,其具體過程如下。在步驟SIO,控制器102檢查STK應用標志,根據應用標志FLAG(例如為零時)在SETUPMENU的ItemDataObject項中先放入對應于CSA的菜單項。在步驟S20,STK控制器102提取移動終端2在收到智能卡1的ATR消息后返回給智能卡1的PPS(ProtocolandParameterSelect)中關于是否支持USB接口的信息,該信息使用一個標志位表示。關于智能卡與移動終端的會話建立過程屬于現有技術,在此不再贅述。在步驟S30,控制器根據該標志位判斷移動終端2是否支持USB接口。在步驟S40,如果判斷移動終端2不支持USB接口,就在SETUPMENU的ItemDataObject項中繼續放入對應于標志FLAG不為零的所有SSA應用的菜單項;在步驟S50,把SETUPMENU主動式命令發送給移動終端2,從而在移動終端上建立智能卡的應用程序菜單以供用戶使用。根據本發明的實施例,在一遠程服務器3上設置有與所述智能卡1上的WEB應用相同的一個或多個WEB應用。其中終端2通過網絡例如GSM網絡與所述遠程服務器3通信。在檢測到移動終端1具有USB接口的情況下,所述智能卡1允許移動終端2通過USB接口本地訪問其上的WEB應用。例如,當用戶啟動瀏覽器時,會通過提供IP地址的方式通過USB接口訪問智能卡上提供的WEB應用。當檢測到移動終端1不具有USB接口,智能卡1通過IS07816接口發送SETUPMENU主動式命令向移動終端2提供的特殊STK應用SSA,可以使移動終端2實現對同樣WEB應用的訪問,其具體過程如下。如前所述,移動終端2會處理智能卡1通過IS07816接口發送的SETUPMENU主動式命令,并建立起智能卡應用程序菜單以供用戶選擇,其中包含特殊類型STK應用SSA。此后,如圖4所示,在步驟SIO,如果用戶通過移動終端2建立的應用程序菜單項選擇并觸發對應于特殊類型的STK應用例如SSA1的菜單項,此SSA1應用會被控制器102激活并運行。在步驟S20,在SSA1運行中,控制器102會通過IS07816接口向移動終端2發送一條"啟動瀏覽器"(LAUNCHBROWSER)主動式命令(參見〈附件2>),此主動式命令中的URL項中包含的目的地址指向遠程服務器3上的一個WEB應用程序,遠程服務器上的這個Web應用程序與智能卡1上與SSA1應用對應的WEB應用程序完全一致。在步驟S30,移動終端2在接收到"啟動瀏覽器"主動式命令后,提取URL項中包含的該目的址并啟動瀏覽器訪問由該目的地址標識的這個遠程服務器上的Web應用程序,從而實現移動終端對感興趣的WEB應用的訪問。根據本實施例,即使當移動終端不支持終端和智能卡間USB接口時,智能卡可引導移動終端2的瀏覽器來訪問遠程服務器上的WEB上,從而仍能夠提供具有一致性的Web應用服務。本發明所述的SSA應用可以是在智能卡以及遠程服務器上建立WEB應用時自動產生的,其過程如下在創建一個WEB應用時生成一個唯一指針值,隨后創建一個SSA,并且使其標志FLAG值等于指針值,從而將二者關聯起來。這個指針值例如可以是WEB服務器上該WEB應用的URL地址。因此當激活該SSA時,就可以相應地訪問具有該URL地址的WEB應用了。本發明的一些實施例可以按照硬件、固件和軟件的一種或者組合的方式實現。而且這里提供的實施例并不旨在詳盡地說明或者將本發明的范圍限制為所公開的確切形式。可以按照以上教導做出修改和改變,或可以從本發明的各種實現的實踐獲得修改和改變。在實質上不脫離本發明的精神和原則的前提下,可以改變以及修改本發明的上文所述的實現。本文中,所有這些修改和改變旨在包括在本公開的范圍之內并受到附屬權利要求的保護。附件ETSITS102223SmartCards;CardApplicationToolkit(CAT)(1)SETUPMENU主動式命令<table>tableseeoriginaldocumentpage8</column></row><table>DescriptionClauseM/0MinLengthURL8.48MYDBearer8.490NEProvisioningFileReference18.500NFlProvisioningFileReference28.500NF28.500NFxProvisioningFileReferenceN8.500NFNTextString(Gateway/ProxyIdentity)8.150NGAlphaidentifier(userconfirmationphase)8.20NHIconidentifier(userconfirmationphase)8.310NITextAttribute8.72CN了Frameldentifier8.800NK9權利要求一種在智能卡上實現的方法,其中該智能卡附接到終端并通過第一接口與所述終端通信,該智能卡設置有第一應用、第二應用以及支持訪問該第一應用的第二接口,該方法包括(a)根據通過第一接口從終端接收的信號,檢測終端是否具有所述第二接口;(b)根據所述檢測結果,選擇性地提供第一應用與第二應用給所述終端。2.如權利要求1所述的方法,其中第一應用是WEB應用,而第二應用是與第一應用關聯的特定應用,其中所述步驟(b)進一步包括(bl)如果該終端具有所述第二接口,則智能卡向終端提供所述WEB應用以便終端通過該第二接口本地訪問所述WEB應用;(b2)如果終端不具有所述第二接口,則智能卡向終端提供所述特定應用,以便終端通過該特定應用遠程訪問服務器上的與所述WEB應用相同的WEB應用。3.如權利要求2的方法,其中所述步驟(b2)包括當通過終端觸發該特定應用時,所述智能卡向終端發送啟動終端上的瀏覽器的命令,以便終端通過網絡訪問所述服務器上的WEB應用,其中該命令包含所述服務器的WEB應用的URL地址。4.如權利要求3所述的方法,其中所述特定應用通過設置標志位與所述WEB應用關聯并與其它普通應用區分。5.如權利要求l-4之一所述的方法,其中所述終端是移動終端。6.—種智能卡,設置有第一應用與第二應用,包括與終端通信的第一接口,支持訪問該第一應用的第二接口,其特征在于還包括一個STK處理器,包括檢測器,根據通過所述第一接口從終端接收的信號,檢測該終端是否具有所述第二接□;控制器,根據所述檢測結果,選擇性地提供第一與第二應用給所述終端。7.如權利要求6所述智能卡,其中第一應用是WEB應用,而第二應用是與第一應用關聯的特定應用,所述控制器配置成如果終端具有所述第二接口,則所述智能卡向終端提供所述WEB應用以便終端通過該第二接口本地訪問所述WEB應用;如果終端不具有所述第二接口,則所述智能卡向終端提供所述特定應用,以便終端通過該特定應用遠程訪問服務器上與所述WEB應用相同的WEB應用。8.如權利要求7所述的智能卡,其中所述控制器響應所述終端對所述特定應用的操作,提供啟動所述終端上的WEB瀏覽器的命令給所述終端,以便該終端通過網絡訪問位于所述服務器上的WEB應用,其中該命令包含所述服務器上的WEB應用的URL地址。9.如權利要求8所述的智能卡,其中所述特定應用通過設置標志位與所述WEB應用關聯并與其他普通應用區分。10.如權利要求6-9之一所述的智能卡,其中所述部終端是移動終端。11.一種提供一致性WEB應用的系統,包括WEB服務器,其上設置有WEB應用。終端,通過通信網絡與所述WEB服務器連接;智能卡,可附接到所述終端,設置有所述WEB應用以及與該WEB應用關聯的特定應用,包括與所述終端通信的第一接口,支持訪問其上WEB應用的第二接口,處理器,包括檢測器,根據通過所述第一接口從終端接收的信號,檢測該終端是否具有所述第二接□;控制器,配置成如果終端具有所述第二接口,則向終端提供智能卡上的WEB應用以便終端通過該第二接口本地訪問所述WEB應用;如果終端不具有所述第二接口,則向終端提供所述特定應用,以便終端通過該特定應用通過所述通信網絡遠程訪問所述WEB服務器上的WEB應用。12.如權利要求11所述系統,其中所述控制器響應所述終端對所述特定應用的操作,提供啟動所述終端上的瀏覽器的命令給所述終端,以便該終端通過所述通信網絡訪問位于所述服務器上的WEB應用,其中該命令包含所述服務器上的WEB應用的URL地址。13.如權利要求12所述的系統,其中所述特定應用通過設置標志位與所述WEB應用關聯并與智能卡上的其他普通應用區分。14.如權利要求13所述的系統,其中所述終端是移動終端。全文摘要本發明提供一種新型智能卡及在智能卡實現的方法,其中該智能卡附接到終端并通過第一接口與所述終端通信,該智能卡設置有第一應用、第二應用以及允許訪問該第一應用的第二接口,根據通過第一接口從終端接收的信號,檢測終端是否具有所述第二接口;根據所述檢測結果,選擇性地提供第一應用與第二應用給所述終端。根據本發明實現的智能卡可為用戶提供一致性WEB應用訪問服務。文檔編號H04W88/02GK101754442SQ20081017832公開日2010年6月23日申請日期2008年11月28日優先權日2008年11月28日發明者曲雨水,李丞倍,李相研,羅棟元,金亨一申請人:愛思開電訊投資(中國)有限公司