專利名稱:在芯片卡通信范圍內(nèi)的優(yōu)化的指令處理的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于芯片卡技術(shù)領(lǐng)域、特別是移動(dòng)無(wú)線電技術(shù)領(lǐng)域,并且涉及在芯片卡 (SIM卡)和讀卡裝置(終端,諸如移動(dòng)站等)之間交換的指令的處理。本發(fā)明特別地涉及 用于處理通過(guò)標(biāo)準(zhǔn)化的協(xié)議、特別是按照IS0/IEC7816標(biāo)準(zhǔn)從讀卡器被傳輸?shù)揭苿?dòng)數(shù)據(jù)載 體的指令的一種方法、一種移動(dòng)數(shù)據(jù)載體、一種系統(tǒng)、一種計(jì)算機(jī)可讀介質(zhì)、和一種計(jì)算機(jī)
程序產(chǎn)品。
背景技術(shù):
對(duì)于在芯片卡和讀卡裝置之間的數(shù)據(jù)交換使用固定的通信方案。該通信方案基于 所謂的主從模型,在該主從模型中終端是主機(jī)并且被確定為用于下達(dá)指令,而在該主從模 型中卡作為從機(jī)并且用于處理指令和用于反饋對(duì)該指令的應(yīng)答。在此,原則上所有的動(dòng)作 都從終端出發(fā)???作為從機(jī))僅對(duì)終端的指令作出響應(yīng)并處理該指令。對(duì)于在芯片卡和讀卡器之間的通信存在多個(gè)標(biāo)準(zhǔn)。特別是標(biāo)準(zhǔn)ISO 7816-3用于 接觸的電特性以及通信協(xié)議,而標(biāo)準(zhǔn)ISO 7816-4用于規(guī)定通信內(nèi)容、芯片卡的數(shù)據(jù)結(jié)構(gòu)、 安全性結(jié)構(gòu)、訪問(wèn)機(jī)制等。此外還采用不同的數(shù)據(jù)傳輸協(xié)議。在此最通常的協(xié)議是T = 0協(xié) 議、T= 1協(xié)議(以及特別在德國(guó)使用的T= 14協(xié)議),其中T = O和T= 1協(xié)議在ISO標(biāo) 準(zhǔn)7816-3中被規(guī)定。其中,T = 0協(xié)議是面向字節(jié)的異步協(xié)議,而T = 1協(xié)議是面向塊的。 特別地對(duì)于移動(dòng)無(wú)線電技術(shù)領(lǐng)域和對(duì)于在SIM卡和移動(dòng)設(shè)備(ME,移動(dòng)設(shè)備)之間的數(shù)據(jù)交 換適用標(biāo)準(zhǔn)GSM11. 11 (該標(biāo)準(zhǔn)按照更新的命名法相應(yīng)于ETS300608)以及3GPP-TS51. 011 標(biāo)準(zhǔn),該標(biāo)準(zhǔn)規(guī)定接口和邏輯結(jié)構(gòu)。在芯片卡和終端之間的通信通過(guò)指令單元和應(yīng)答單元進(jìn)行。這些單元是按照預(yù) 先定義的格式被結(jié)構(gòu)化的數(shù)據(jù)分組。視涉及0SI/IS0層模型的哪個(gè)層而定,這些單元是 APDU(應(yīng)用協(xié)議數(shù)據(jù)單元)或當(dāng)涉及了導(dǎo)引層(Leitimgsschicht)時(shí),是TPDU(傳輸協(xié)議數(shù) 據(jù)單元)。所述格式和用于APDU的標(biāo)準(zhǔn)在IS0(國(guó)際標(biāo)準(zhǔn)化組織)標(biāo)準(zhǔn)7816-4中被定義。在芯片卡和終端之間的數(shù)據(jù)交換包括指令以及對(duì)這些指令的應(yīng)答,其中總是從終 端通過(guò)輸出指令消息來(lái)啟動(dòng)指令。該指令以所謂的APDU指令(Command APDU,C-APDU)從 終端被傳輸?shù)叫酒āP酒ㄌ幚碓撝噶畈⑶覍凑誂PDU應(yīng)答(Response APDU,R_APDU) 格式的應(yīng)答發(fā)送到終端。也就是說(shuō),特定的APDU應(yīng)答總是關(guān)于特定的APDU指令。該關(guān)系 也稱為指令應(yīng)答對(duì)。在這樣的指令應(yīng)答對(duì)中指令信息和應(yīng)答消息可以包括數(shù)據(jù)。視作為基礎(chǔ)的標(biāo)準(zhǔn)或傳輸協(xié)議而定,設(shè)置了一類指令,該類指令包括這樣的指令, 在這些指令中終端將(具有或沒(méi)有數(shù)據(jù)的)指令發(fā)送到卡,以便允許在卡上處理所述指令, 并且由此在卡上提供應(yīng)答數(shù)據(jù),該應(yīng)答數(shù)據(jù)是在稍后的時(shí)刻在終端方面可以明確的并且是 借助單獨(dú)的請(qǐng)求指令可以請(qǐng)求的。在該類指令中這些指令總是分別與對(duì)應(yīng)的(用于提取對(duì) 各個(gè)指令的應(yīng)答數(shù)據(jù)的)請(qǐng)求指令耦合。也就是在該類指令中通過(guò)指令、例如借助SELECT指令,可以觸發(fā)在卡上的數(shù)據(jù)處 理。通過(guò)特殊的請(qǐng)求指令、例如借助GET RESPONSE指令,可以提取應(yīng)答數(shù)據(jù)。
然而存在這樣的應(yīng)用,該應(yīng)用僅要求下達(dá)各個(gè)指令,而不要求提取應(yīng)答數(shù)據(jù)。在這 樣的應(yīng)用中不發(fā)出請(qǐng)求指令。在現(xiàn)有技術(shù)中在T = 0協(xié)議的情況下的主要缺陷是,終端不能通知,對(duì)特定的 指令不期望應(yīng)答數(shù)據(jù),或者說(shuō)不下達(dá)任何請(qǐng)求指令。也就是,卡在任何情況下都提供應(yīng) 答數(shù)據(jù),盡管這點(diǎn)對(duì)特殊的應(yīng)用來(lái)說(shuō)是不必要的。除了本身的指令動(dòng)作之外為了準(zhǔn)備 (aufbereiten)應(yīng)答數(shù)據(jù)所需的處理時(shí)間,換言之被認(rèn)為是“損失的時(shí)間”并且導(dǎo)致明顯的 性能損失。
發(fā)明內(nèi)容
為了克服前面提到的性能缺陷并且為了優(yōu)化和可變地設(shè)計(jì)在芯片卡上的指令處 理,本發(fā)明要解決的技術(shù)問(wèn)題是,對(duì)于終端不調(diào)用或請(qǐng)求應(yīng)答數(shù)據(jù)的這些情況也能(關(guān)于 處理時(shí)間和計(jì)算能力)改進(jìn)或者優(yōu)化指令處理。上述技術(shù)問(wèn)題是通過(guò)所附的獨(dú)立權(quán)利要求解決的,特別地,是通過(guò)用于處理在移 動(dòng)數(shù)據(jù)載體和讀卡器之間的通信范圍內(nèi)被傳輸?shù)闹噶畹姆椒?、移?dòng)數(shù)據(jù)載體、系統(tǒng)和計(jì)算 機(jī)程序產(chǎn)品解決的。所述技術(shù)問(wèn)題特別地通過(guò)一種用于處理對(duì)于移動(dòng)數(shù)據(jù)載體、特別是對(duì)于芯片卡所 觸發(fā)的指令的方法來(lái)解決,并且其中,所述指令通過(guò)優(yōu)選按照IS07816標(biāo)準(zhǔn)標(biāo)準(zhǔn)化的協(xié)議 從讀卡器被傳輸?shù)揭苿?dòng)數(shù)據(jù)載體,并且其中,所述指令在移動(dòng)數(shù)據(jù)載體方面使得產(chǎn)生應(yīng)答 數(shù)據(jù)和/或發(fā)送應(yīng)答數(shù)據(jù)到讀卡器,其中所述應(yīng)答數(shù)據(jù)是通過(guò)在稍后的時(shí)刻輸出的請(qǐng)求指 令由讀卡器所請(qǐng)求的,所述方法具有以下方法步驟-在移動(dòng)數(shù)據(jù)載體方面采集指令;-產(chǎn)生并發(fā)送應(yīng)答到讀卡器,其中所述應(yīng)答僅由確認(rèn)碼組成,該確認(rèn)碼顯示,在移 動(dòng)數(shù)據(jù)載體上應(yīng)答數(shù)據(jù)是可被調(diào)用的;-確定讀卡器是否利用請(qǐng)求指令請(qǐng)求可調(diào)用的應(yīng)答數(shù)據(jù),并且如果是-則在移動(dòng)數(shù)據(jù)載體上產(chǎn)生對(duì)指令的應(yīng)答數(shù)據(jù)并且將應(yīng)答數(shù)據(jù)發(fā)送到讀卡器,其 中在讀卡器方面下達(dá)請(qǐng)求指令之后或者在移動(dòng)數(shù)據(jù)載體方面獲得請(qǐng)求指令之后才開(kāi)始或 進(jìn)行應(yīng)答數(shù)據(jù)的產(chǎn)生。為了清楚起見(jiàn),應(yīng)答數(shù)據(jù)的產(chǎn)生也理解為在數(shù)據(jù)載體方面采集的指令的此外所必 須的執(zhí)行。以下詳細(xì)解釋按照本發(fā)明的解決方案的特征的概念。移動(dòng)數(shù)據(jù)載體通常是芯片卡。芯片卡可以被構(gòu)造為智能卡、用于GSM應(yīng)用的SIM 卡,但也可以構(gòu)造為用于非移動(dòng)無(wú)線電相關(guān)的應(yīng)用的卡。通常芯片卡包括集成的電路 (Integrated Circuit, IC)和存儲(chǔ)器組件。其還可以被構(gòu)造為多應(yīng)用卡。讀卡器或讀卡裝置涉及被構(gòu)造為用于與芯片卡通信的電子設(shè)備。同樣的,終端也 可以歸入“讀卡器”的概念,其中,按照本發(fā)明的解決方案不限于特定種類的終端并且包括 移動(dòng)站(MS,特別是手機(jī))、移動(dòng)設(shè)備(ME)、IFD(Interface Device,接口設(shè)備)、CAD (Chip Accepting Device,芯片接受設(shè)備)、CCR(Chip Card Reader,芯片卡讀卡器)、智能卡讀卡 器和智能卡適配器。此外,本發(fā)明還可以應(yīng)用于便攜式和靜止終端。在優(yōu)選實(shí)施方式中協(xié)議是按照ISO標(biāo)準(zhǔn)7816的T = 0協(xié)議。本發(fā)明的替換實(shí)施方式是同樣按照其它標(biāo)準(zhǔn)設(shè)計(jì)的其它的協(xié)議,例如T= 1協(xié)議、T = 14協(xié)議等。指令屬于可以在移動(dòng)數(shù)據(jù)載體上觸發(fā)數(shù)據(jù)處理的一類指令。在移動(dòng)數(shù)據(jù)載體上處 理指令時(shí)關(guān)于各個(gè)指令產(chǎn)生應(yīng)答數(shù)據(jù),該應(yīng)答數(shù)據(jù)必須利用單獨(dú)的隨后的請(qǐng)求指令由終端 調(diào)用。該類指令的特征在于如下的指令,這些指令使得如果終端需要應(yīng)答數(shù)據(jù)時(shí),必須利 用單獨(dú)的(用于請(qǐng)求應(yīng)答數(shù)據(jù)的)請(qǐng)求指令在稍后的時(shí)刻請(qǐng)求與該指令對(duì)應(yīng)的應(yīng)答數(shù)據(jù)。 在優(yōu)選實(shí)施方式中,所述指令是對(duì)于文件的選擇指令,特別是SELECT指令,并且請(qǐng)求指令 是GET RESPONSE指令。然而還可以有指令-請(qǐng)求指令的其它對(duì),例如查詢和/或讀取指令 (例如SEEK,SEARCH)或者用于提取應(yīng)答數(shù)據(jù)的其它請(qǐng)求指令。其它指令和/或請(qǐng)求指令 取決于各個(gè)應(yīng)用并且從標(biāo)準(zhǔn)IS0/IEC7816-4中得到。重要的是,雖然指令能夠觸發(fā)在芯片 卡上的應(yīng)答數(shù)據(jù)的準(zhǔn)備,但是這些應(yīng)答數(shù)據(jù)總是必須利用單獨(dú)的請(qǐng)求指令由終端提取或者 請(qǐng)求。不能在獲得指令之后就將應(yīng)答數(shù)據(jù)發(fā)送到終端。在優(yōu)選實(shí)施方式中按照本發(fā)明的基于計(jì)算機(jī)的方法基于以下的方法步驟的時(shí)間 上的順序-采集指令;-產(chǎn)生并發(fā)送應(yīng)答到讀卡器,而不在卡上產(chǎn)生或者準(zhǔn)備應(yīng)答數(shù)據(jù);-確定是否對(duì)于采集的指令給出了請(qǐng)求指令并且僅在是的情況下-產(chǎn)生、準(zhǔn)備和/或發(fā)送應(yīng)答數(shù)據(jù)到讀卡器。否則的話,即如果沒(méi)有給出請(qǐng)求指令(并且因此不需要應(yīng)答數(shù)據(jù)),則不在芯片卡 上準(zhǔn)備、編輯或產(chǎn)生應(yīng)答數(shù)據(jù)。為了說(shuō)明清楚,應(yīng)答的產(chǎn)生也理解為在數(shù)據(jù)載體方面采集的指令的此外所必須的 執(zhí)行。通過(guò)只有當(dāng)必要時(shí)(即當(dāng)終端請(qǐng)求應(yīng)答數(shù)據(jù)時(shí))才進(jìn)行應(yīng)答數(shù)據(jù)的費(fèi)時(shí)的準(zhǔn)備, 由此按照本發(fā)明可以實(shí)現(xiàn)明顯的時(shí)間節(jié)省。通過(guò)在移動(dòng)數(shù)據(jù)載體上各個(gè)APDU指令單元的處理進(jìn)行指令的采集。應(yīng)答的產(chǎn)生 和發(fā)送在卡上進(jìn)行,其中應(yīng)答僅僅是按照預(yù)先定義的APDU應(yīng)答(Response APDU)格式的確 定信號(hào),并且除了必要的“尾記錄(Trailer)”(包括狀態(tài)字1和2;SW1,SW2)還附加地包括 預(yù)計(jì)的應(yīng)答數(shù)據(jù)的長(zhǎng)度。應(yīng)答不包含應(yīng)答數(shù)據(jù),因?yàn)榘凑毡景l(fā)明取決于結(jié)果地(即取決于 請(qǐng)求指令的存在)在稍后的時(shí)刻才準(zhǔn)備或者說(shuō)產(chǎn)生該應(yīng)答數(shù)據(jù)。為了確定讀卡器是否請(qǐng)求了可調(diào)用的應(yīng)答數(shù)據(jù),按照本發(fā)明直接或間接在各個(gè)指 令之后分析其它指令并且分析,該其它指令是否是對(duì)該指令的請(qǐng)求指令。在優(yōu)選替換實(shí)施方式中分析多個(gè)相繼的其它指令,其是否包含關(guān)于各個(gè)指令的 請(qǐng)求指令。由此在指令和請(qǐng)求指令之間可以交換其它數(shù)據(jù)。由此所述確定基于情況區(qū)別 (Fallunterscheidung)。原則上,應(yīng)答數(shù)據(jù)的產(chǎn)生包括所有種類的數(shù)據(jù)處理并且可以涉及二進(jìn)制信號(hào)(JA 或NEIN,是或否)。同樣可以準(zhǔn)備或編輯應(yīng)答數(shù)據(jù)。準(zhǔn)備的形式取決于各個(gè)指令。按照本發(fā)明的另一個(gè)方面,當(dāng)在移動(dòng)數(shù)據(jù)載體方面獲得或者說(shuō)接收了請(qǐng)求指令 時(shí),才進(jìn)行應(yīng)答數(shù)據(jù)的產(chǎn)生。然而還可以使得應(yīng)答數(shù)據(jù)的產(chǎn)生取決于在終端方面請(qǐng)求指令 的下達(dá)。在第一種情況下,通過(guò)分析請(qǐng)求指令的接收,在數(shù)據(jù)載體的一側(cè)進(jìn)行所述確定(讀 卡器是否請(qǐng)求了應(yīng)答數(shù)據(jù))。在第二種情況下,通過(guò)分析終端是否發(fā)送或者說(shuō)下達(dá)了請(qǐng)求指令,在終端一側(cè)進(jìn)行所述確定。在一種優(yōu)選實(shí)施方式中,當(dāng)所述確定的方法步驟成功地結(jié)束時(shí),才進(jìn)行應(yīng)答數(shù)據(jù) 的產(chǎn)生。在一種替換實(shí)施方式中還可以,當(dāng)成功地進(jìn)行了所述確定時(shí),才開(kāi)始應(yīng)答數(shù)據(jù)的產(chǎn) 生。也就是,第二種情況涉及嚴(yán)格的順序過(guò)程,而第一種情況還可以在芯片卡上并行進(jìn)行數(shù) 據(jù)處理(應(yīng)答數(shù)據(jù)的產(chǎn)生)以下結(jié)合按照方法的解決方案來(lái)描述本發(fā)明。在此提到的特征、替換實(shí)施方式和/ 或優(yōu)點(diǎn)也可以用應(yīng)用于上述技術(shù)問(wèn)題的其它解決方案,特別是移動(dòng)數(shù)據(jù)載體、產(chǎn)品、介質(zhì)和 /或系統(tǒng),反之亦然。換言之,移動(dòng)數(shù)據(jù)載體、產(chǎn)品、介質(zhì)和/或系統(tǒng)同樣被構(gòu)造為具有結(jié)合 方法所描述或者請(qǐng)求保護(hù)的特征。在此,方法的各個(gè)功能性特征通過(guò)用于執(zhí)行各個(gè)功能的 相應(yīng)的硬件和/或軟件模塊來(lái)構(gòu)造。按照一種優(yōu)選實(shí)施方式,通過(guò)各個(gè)單獨(dú)封裝的通信單元來(lái)傳輸指令、請(qǐng)求指令、應(yīng) 答和應(yīng)答數(shù)據(jù)。在IS0/0SI層模型的應(yīng)用層,這包括APDU通信單元、APDU指令和APDU應(yīng) 答。在IS0/0SI層模型的導(dǎo)引層上這是TPDU通信單元。從芯片卡被發(fā)送到終端的確認(rèn)碼(作為對(duì)指令的應(yīng)答)顯示,應(yīng)答數(shù)據(jù)在移動(dòng)數(shù) 據(jù)載體上是可調(diào)用的。確認(rèn)碼不包括應(yīng)答數(shù)據(jù),而是具有二進(jìn)制信息的信號(hào)(存在或不存 在)。在優(yōu)選實(shí)施方式中,確認(rèn)碼包括給出預(yù)計(jì)的應(yīng)答數(shù)據(jù)的長(zhǎng)度的返回碼。關(guān)于T = O協(xié) 議為此使用特殊的狀態(tài)碼SW1SW2(例如9FXX,其中XX表示可調(diào)用的數(shù)據(jù)的長(zhǎng)度)。按照本發(fā)明的方法的一種優(yōu)選擴(kuò)展在于,還揭示錯(cuò)誤情況并且將該錯(cuò)誤情況通知 終端。錯(cuò)誤情況例如可以是,對(duì)指令的應(yīng)答數(shù)據(jù)是不可調(diào)用的或者在讀卡器和芯片卡之間 發(fā)生了其它通信干擾,使得數(shù)據(jù)和/或指令沒(méi)有或者沒(méi)有完整地被傳輸。在此,如果應(yīng)答數(shù) 據(jù)是不可調(diào)用的或者如果前面的指令不能或者沒(méi)有能夠被執(zhí)行,則應(yīng)答可以包括錯(cuò)誤碼, 該錯(cuò)誤碼通知終端該錯(cuò)誤情況。按照本發(fā)明的方法的一種主要應(yīng)用領(lǐng)域是指令“SELECT”和請(qǐng)求指令“GET RESPONSE”。然而此處還可以考慮其它指令-應(yīng)答指令對(duì),在這些指令-應(yīng)答指令對(duì)中指令 需要用于提取指令的數(shù)據(jù)的請(qǐng)求指令。按照一種優(yōu)選實(shí)施方式,對(duì)于在移動(dòng)終端設(shè)備中的SIM卡使用該方法,特別是在 啟動(dòng)(Hochfahren)移動(dòng)終端設(shè)備時(shí),因?yàn)樵诖税凑毡景l(fā)明通過(guò)避免在卡上不需要的指令 處理可以實(shí)現(xiàn)最大的時(shí)間節(jié)省。另一種解決方案是具有處理器單元和具有程序代碼的移動(dòng)數(shù)據(jù)載體,該程序代碼 用于在移動(dòng)數(shù)據(jù)載體中和/或在讀卡器中執(zhí)行并且在其中執(zhí)行如前所述的方法。另一個(gè)解決方案是用于處理指令的系統(tǒng),具有-至少一個(gè)移動(dòng)數(shù)據(jù)載體,-至少一個(gè)讀卡器,其發(fā)送指令到移動(dòng)數(shù)據(jù)載體,其中指令通過(guò)標(biāo)準(zhǔn)化的協(xié)議被傳 輸,并且應(yīng)答數(shù)據(jù)的產(chǎn)生在移動(dòng)數(shù)據(jù)載體方面進(jìn)行,其中所述應(yīng)答數(shù)據(jù)是通過(guò)單獨(dú)的請(qǐng)求 指令由讀卡器所請(qǐng)求的;-至少一個(gè)用于在移動(dòng)數(shù)據(jù)載體和讀卡器之間通信的接口,其構(gòu)造為用于從讀卡 器向移動(dòng)數(shù)據(jù)載體發(fā)送指令和必要時(shí)的單獨(dú)的應(yīng)答指令,并且構(gòu)造為用于從移動(dòng)數(shù)據(jù)載體 向讀卡器發(fā)送應(yīng)答和必要時(shí)的應(yīng)答數(shù)據(jù);其中移動(dòng)數(shù)據(jù)載體包括以下-至少一個(gè)采集模塊,其用于在移動(dòng)數(shù)據(jù)載體方面采集指令;
-至少一個(gè)應(yīng)答產(chǎn)生器,其用于產(chǎn)生和發(fā)送應(yīng)答到讀卡器,其中應(yīng)答僅由確認(rèn)碼組 成,其表示,所述應(yīng)答數(shù)據(jù)在移動(dòng)數(shù)據(jù)載體上是可調(diào)用的;-至少一個(gè)確定模塊,其構(gòu)造為用于確定讀卡器是否利用隨后的請(qǐng)求指令請(qǐng)求了 可調(diào)用的應(yīng)答數(shù)據(jù);-至少一個(gè)應(yīng)答數(shù)據(jù)產(chǎn)生器,其用于在移動(dòng)數(shù)據(jù)載體上產(chǎn)生對(duì)指令的應(yīng)答數(shù)據(jù)并 且將應(yīng)答數(shù)據(jù)發(fā)送到讀卡器,其中在確定模塊已經(jīng)確定了請(qǐng)求指令的存在之后,應(yīng)答數(shù)據(jù) 產(chǎn)生器才產(chǎn)生應(yīng)答數(shù)據(jù)。該方法的前面描述的按照本發(fā)明的實(shí)施方式還可以構(gòu)造為計(jì)算機(jī)程序產(chǎn)品,其中 計(jì)算機(jī)或可編程的設(shè)備用于執(zhí)行上面描述的按照本發(fā)明的方法,并且當(dāng)其程序代碼在計(jì)算 機(jī)或在可編程設(shè)備中被加載時(shí),通過(guò)處理器執(zhí)行該程序代碼。一種替換的解決方案是存儲(chǔ)器介質(zhì),其用于存儲(chǔ)前面描述的計(jì)算機(jī)執(zhí)行的方法并 且是計(jì)算機(jī)或可編程設(shè)備、特別是讀卡器或移動(dòng)數(shù)據(jù)載體可讀的。其它優(yōu)選實(shí)施方式在從屬權(quán)利要求中給出。
在以下詳細(xì)的
中結(jié)合附圖解釋非限制性地理解的具有其特征和其它優(yōu) 點(diǎn)的實(shí)施例。其中,圖Ia示出了在芯片卡和讀卡器之間傳輸?shù)耐ㄐ艈卧母庞[圖,圖Ib示出了在讀卡器方面沒(méi)有請(qǐng)求應(yīng)答數(shù)據(jù)的情況下,在芯片卡和讀卡器之間 傳輸?shù)耐ㄐ艈卧母庞[圖,并且圖2示出了具有所屬的模塊的在芯片卡和讀卡器之間傳輸?shù)耐ㄐ艈卧疽鈭D。
具體實(shí)施例方式如在圖Ia上面部分所示,按照本發(fā)明的解決方案涉及在芯片卡C上的指令處理, 其中指令B從讀卡器或從終端T被發(fā)送到芯片卡C。在此使用標(biāo)準(zhǔn)化的協(xié)議,特別是按照 IS07816標(biāo)準(zhǔn)。原則上指令B總是從終端T被發(fā)送到芯片卡,并且必要時(shí)在芯片卡C上被處 理。芯片卡C由此作為所謂的從機(jī)工作,而終端T作為主機(jī)工作并且發(fā)起每個(gè)通信。在圖Ia的下部示出了用于處理指令B的本發(fā)明方法的時(shí)間上的變化。在此,指令B (在這種情況下是指令“SELECT”)從終端T被傳輸?shù)叫酒–。按照 本發(fā)明,此時(shí)除了實(shí)際的選擇文件之外還進(jìn)行應(yīng)答A,即,產(chǎn)生無(wú)應(yīng)答數(shù)據(jù)的狀態(tài)字和向終 端T發(fā)送(這點(diǎn)用附圖標(biāo)記1表示)。在一種優(yōu)選實(shí)施方式中,在該步驟僅確定應(yīng)答數(shù)據(jù)(XX)的長(zhǎng)度。優(yōu)選地,然而在 該時(shí)刻不準(zhǔn)備應(yīng)答數(shù)據(jù)AD。也就是僅從芯片卡C向終端T發(fā)送應(yīng)答A,該應(yīng)答A說(shuō)明,存在 應(yīng)答數(shù)據(jù)AD。這點(diǎn)優(yōu)選通過(guò)發(fā)送以下?tīng)顟B(tài)字“SW1SW2 = 9FXX”來(lái)進(jìn)行。本發(fā)明方法的其它變化此時(shí)取決于在終端T方面觸發(fā)的結(jié)果,或者取決于從終端 T向芯片卡C發(fā)送的其它指令。在圖Ia中示出了如下情況,在該情況下終端T還請(qǐng)求對(duì)指 令B的應(yīng)答數(shù)據(jù)AD。在圖Ib中相反示出了如下情況,在該情況下終端T在發(fā)送指令B之后 不下達(dá)其它請(qǐng)求指令A(yù)B并且由此不需要應(yīng)答數(shù)據(jù)。如從圖Ib可以看出,在該時(shí)刻本發(fā)明 方法停止,而不在芯片卡C方面產(chǎn)生明確的應(yīng)答數(shù)據(jù)AD。如圖Ib所示,在步驟1中僅產(chǎn)生應(yīng)答A并且發(fā)送回終端T。否則,也就是如果終端T還請(qǐng)求應(yīng)答數(shù)據(jù)AD,則終端T向芯片卡C發(fā)送請(qǐng)求指令 AB。通常該請(qǐng)求指令是指令“GET RESPONSE”。在此也可以是其它請(qǐng)求指令。只有在該結(jié) 果的基礎(chǔ)上,也就是在終端T向芯片卡C下達(dá)請(qǐng)求指令“GETRESPONSE”AB之后,才在步驟2 產(chǎn)生應(yīng)答數(shù)據(jù)AD并且發(fā)送回終端T。與此不同的是,如果終端T不要求這樣的應(yīng)答數(shù)據(jù)的話,則不進(jìn)行應(yīng)答數(shù)據(jù)AD的 產(chǎn)生。如前面提到的,在圖Ib中示出了這種情況。在此可以看出,在這種情況下可以明顯 降低在芯片卡C上的處理時(shí)間。本發(fā)明的解決方案的主要應(yīng)用領(lǐng)域涉及移動(dòng)無(wú)線電技術(shù)領(lǐng)域,從而終端T是移動(dòng) 終端設(shè)備(例如手機(jī),以下稱為移動(dòng)電話),該終端設(shè)備利用SIM卡C通信并且(特別是在 啟動(dòng)終端時(shí))向SIM卡C發(fā)送“SELECT”指令B(XX XX FID),例如按照按照以下形式:移動(dòng)電話一AOA4 00 00 02 XX XX —卡。根據(jù)指令B選擇各個(gè)文件。在該時(shí)刻不計(jì)算對(duì)于SELECT指令B的應(yīng)答數(shù)據(jù)AD。 僅確定可用的應(yīng)答數(shù)據(jù)AD的長(zhǎng)度并且作為狀態(tài)字返回(可用的應(yīng)答數(shù)據(jù)的長(zhǎng)度YY)移動(dòng)電話一9FYY—卡。如上已經(jīng)提到的那樣,此時(shí)隨后的過(guò)程根據(jù)在移動(dòng)電話方面的其它請(qǐng)求指令A(yù)B 而不同。如果隨后的指令是“GET RESPONSE”請(qǐng)求指令,則計(jì)算應(yīng)答數(shù)據(jù)AD并且發(fā)送回移動(dòng)電話一AOCO 00 00 YY —卡。移動(dòng)電話一[YY字節(jié)]90 00 —卡。當(dāng)跟隨在SELECT指令之后的指令不是GET RESPONSE請(qǐng)求指令A(yù)B時(shí),則舍棄調(diào)用 應(yīng)答數(shù)據(jù)的可能性。也就是,該過(guò)程與現(xiàn)有技術(shù)中的基本的過(guò)程一致;僅在計(jì)算應(yīng)答數(shù)據(jù)的時(shí)刻上不 同。迄今為止總是在接收指令B (例如SELECT)時(shí)就計(jì)算該應(yīng)答數(shù)據(jù)。如果然后不發(fā)送GET RESPONSE,該計(jì)算就是多余的。按照本發(fā)明此時(shí)可以完全節(jié)省該不需要的計(jì)算時(shí)間。為了區(qū)分,是否可以根據(jù)請(qǐng)求指令A(yù)B從卡發(fā)送應(yīng)答數(shù)據(jù),按照本發(fā)明,在卡的內(nèi) 部存儲(chǔ)一個(gè)狀態(tài),其顯示,應(yīng)答數(shù)據(jù)AD是可調(diào)用的(“XX字節(jié)應(yīng)答數(shù)據(jù)可調(diào)用”)。該狀態(tài)顯示,應(yīng)答數(shù)據(jù)AD是可調(diào)用的。換言之,不必直接在發(fā)送指令B之后給出 請(qǐng)求指令A(yù)B。還可以在稍后的時(shí)刻在其它指令B之后才發(fā)送請(qǐng)求指令A(yù)B,只要存在分別涉 及特殊的指令B的狀態(tài)“應(yīng)答數(shù)據(jù)是可調(diào)用的”。當(dāng)終端T在進(jìn)一步的過(guò)程中借助請(qǐng)求指令 GET RESPONSE請(qǐng)求應(yīng)答數(shù)據(jù)AD時(shí),該應(yīng)答數(shù)據(jù)(只要卡C處于相應(yīng)的特殊的狀態(tài))“Just in Time”被準(zhǔn)備并且被發(fā)送到終端Τ。由此不進(jìn)行應(yīng)答數(shù)據(jù)AD的不需要的準(zhǔn)備。如果本發(fā)明的解決方案具體地應(yīng)用于在開(kāi)啟手機(jī)的情況下SIM卡的啟動(dòng)階段,則 手機(jī)通常對(duì)由SIM卡C按照現(xiàn)有技術(shù)提供的FCI數(shù)據(jù)(文件控制信息數(shù)據(jù))沒(méi)有興趣。按 照本發(fā)明,因此在這種情況下不下達(dá)隨后的GET RESPONSE請(qǐng)求指令。由此可以節(jié)省用于準(zhǔn) 備FCI數(shù)據(jù)的時(shí)間。這典型地是每個(gè)文件10至80ms。特別的實(shí)施方式涉及SELECT指令。SELECT指令是caSe4指令并且除了輸入數(shù)據(jù) 之外還包括輸出數(shù)據(jù)。本發(fā)明解決方案的其它應(yīng)用還可以涉及其它CaSe4指令。另一個(gè)解決方案是用于根據(jù)前面所述的方法處理指令B的系統(tǒng)。該系統(tǒng)包括讀卡 器T、用于在芯片卡C和讀卡器T之間通信的接口和采集模塊10、應(yīng)答產(chǎn)生器12、確定模塊14和應(yīng)答數(shù)據(jù)產(chǎn)生器16,其中,所有的模塊和產(chǎn)生器被構(gòu)造在芯片卡C內(nèi)部。在圖2中示 出具有按照本發(fā)明的數(shù)據(jù)交換的該系統(tǒng)。本發(fā)明的技術(shù)問(wèn)題的另一個(gè)解決方案是計(jì)算機(jī)程序產(chǎn)品,其用于執(zhí)行上面描述的 本發(fā)明方法。在此可以構(gòu)造為產(chǎn)品的單個(gè)的軟件和/或硬件模塊,作為單獨(dú)的模塊和/或 集成在操作系統(tǒng)中。最后要指出的是,本發(fā)明的描述和實(shí)施例理解為原則上不限于本發(fā)明的特定的物 理實(shí)現(xiàn)。對(duì)于本領(lǐng)域相關(guān)技術(shù)人員來(lái)說(shuō),尤其明顯的是,可以部分地或者完整地按照軟件和 /或硬件和/或在多個(gè)物理產(chǎn)品(在此特別地還可以在計(jì)算機(jī)程序產(chǎn)品)上分布地實(shí)現(xiàn)本 發(fā)明。
權(quán)利要求
一種用于處理對(duì)于移動(dòng)數(shù)據(jù)載體(C)的指令(B)的方法,其中,所述指令通過(guò)標(biāo)準(zhǔn)化的協(xié)議從讀卡器(T)被傳輸?shù)剿鲆苿?dòng)數(shù)據(jù)載體(C),并且在移動(dòng)數(shù)據(jù)載體(C)方面產(chǎn)生應(yīng)答數(shù)據(jù)(AD),其中,由讀卡器(T)通過(guò)單獨(dú)的請(qǐng)求指令(AB)請(qǐng)求所述應(yīng)答數(shù)據(jù)(AD),所述方法具有以下方法步驟 在移動(dòng)數(shù)據(jù)載體(C)方面采集所述指令; 產(chǎn)生并發(fā)送應(yīng)答(A)到讀卡器(T),其中所述應(yīng)答(A)包括確認(rèn)碼,該確認(rèn)碼顯示,在移動(dòng)數(shù)據(jù)載體(C)上所述應(yīng)答數(shù)據(jù)(AD)是可調(diào)用的; 確定所述讀卡器(T)是否利用請(qǐng)求指令(AB)請(qǐng)求可調(diào)用的應(yīng)答數(shù)據(jù)(AD),并且如果是 則在所述移動(dòng)數(shù)據(jù)載體(C)上產(chǎn)生對(duì)所采集的指令(B)的應(yīng)答數(shù)據(jù)(AD)并且將所述應(yīng)答數(shù)據(jù)(AD)發(fā)送到所述讀卡器,其中,在所述移動(dòng)數(shù)據(jù)載體方面獲得所述請(qǐng)求指令(AB)之后才進(jìn)行所述應(yīng)答數(shù)據(jù)(AD)的產(chǎn)生。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述應(yīng)答(A)不包含應(yīng)答數(shù)據(jù)(AD)。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述指令(B)要求一個(gè)單獨(dú)的隨后的 請(qǐng)求指令(AB)并且與該請(qǐng)求指令耦合,以便從所述移動(dòng)數(shù)據(jù)載體(C)請(qǐng)求對(duì)于該指令的應(yīng) 答數(shù)據(jù)(AD)。
4.根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法,其特征在于,所述指令(B)是對(duì)于文件的 選擇指令,特別是SELECT指令,查找指令或讀指令。
5.根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法,其特征在于,所述移動(dòng)數(shù)據(jù)載體(C)在所 述讀卡器(T)下達(dá)了所述請(qǐng)求指令(AB)之后或者在所述移動(dòng)數(shù)據(jù)載體(C)已經(jīng)采集了所 述讀卡器⑴的請(qǐng)求指令(AB)之后的時(shí)刻才產(chǎn)生所述應(yīng)答數(shù)據(jù)(AD)。
6.根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法,其特征在于,所述指令(B)、請(qǐng)求指令 (AB)、應(yīng)答(A)和/或應(yīng)答數(shù)據(jù)(AD)通過(guò)封裝的通信單元在讀卡器(T)和移動(dòng)數(shù)據(jù)載體 (C)之間被傳輸。
7.根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法,其特征在于,所述協(xié)議是T= O協(xié)議。
8.根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法,其特征在于,所述確認(rèn)碼包括返回碼,該返 回碼給出預(yù)計(jì)的應(yīng)答數(shù)據(jù)(AD)的長(zhǎng)度。
9.根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法,其特征在于,如果所述應(yīng)答數(shù)據(jù)(AD)是不 可調(diào)用的或者如果所述指令(B)不能被執(zhí)行,則所述應(yīng)答(A)包括錯(cuò)誤碼。
10.根據(jù)上述權(quán)利要求中任一項(xiàng)所述的方法,其特征在于,采集調(diào)用狀態(tài),該調(diào)用狀態(tài) 提示,在移動(dòng)數(shù)據(jù)載體(C)上對(duì)于指令(B)的應(yīng)答數(shù)據(jù)(AD)是可調(diào)用的,并且在發(fā)送所述 指令⑶之后直到該應(yīng)答數(shù)據(jù)(AD)已經(jīng)被發(fā)送到所述讀卡器⑴或者直到另一個(gè)指令(B) 被發(fā)送到所述移動(dòng)數(shù)據(jù)載體(C),所述移動(dòng)數(shù)據(jù)載體(C) 一直處于該調(diào)用狀態(tài)。
11.一種移動(dòng)數(shù)據(jù)載體(C),具有處理器單元和用于存儲(chǔ)程序代碼的存儲(chǔ)器,該程序代 碼用于在所述移動(dòng)數(shù)據(jù)載體(C)和/或在讀卡器(T)中執(zhí)行權(quán)利要求1至10中任一項(xiàng)所 述的方法。
12.一種用于處理指令的系統(tǒng),具有-至少一個(gè)移動(dòng)數(shù)據(jù)載體(C),-至少一個(gè)讀卡器(T),其發(fā)送指令到移動(dòng)數(shù)據(jù)載體(C),其中所述指令通過(guò)標(biāo)準(zhǔn)化的協(xié)議被傳輸,并且在移動(dòng)數(shù)據(jù)載體(C)方面進(jìn)行應(yīng)答數(shù)據(jù)(AD)的產(chǎn)生,其中,所述應(yīng)答數(shù)據(jù) (AD)是通過(guò)單獨(dú)的請(qǐng)求指令(AB)由讀卡器(T)所請(qǐng)求的;-至少一個(gè)用于在移動(dòng)數(shù)據(jù)載體(C)和讀卡器(T)之間通信的接口,其構(gòu)造為用于從讀 卡器(T)向移動(dòng)數(shù)據(jù)載體(C)發(fā)送指令(B)和必要時(shí)的單獨(dú)的應(yīng)答指令(AB),并且構(gòu)造為 用于從移動(dòng)數(shù)據(jù)載體(C)向讀卡器(T)發(fā)送應(yīng)答(A)和必要時(shí)的應(yīng)答數(shù)據(jù)(AD);其中,所 述移動(dòng)數(shù)據(jù)載體(C)包括以下-至少一個(gè)采集模塊(10),其用于在移動(dòng)數(shù)據(jù)載體(C)方面采集指令; -至少一個(gè)應(yīng)答產(chǎn)生器(12),其用于產(chǎn)生和發(fā)送應(yīng)答(A)到讀卡器(T),其中,所述應(yīng)答 (A)包括確認(rèn)碼,該確認(rèn)碼表示,在移動(dòng)數(shù)據(jù)載體上所述應(yīng)答數(shù)據(jù)(AD)是可調(diào)用的;-至少一個(gè)確定模塊(14),其構(gòu)造為用于確定讀卡器(T)是否利用隨后的請(qǐng)求指令 (AB)請(qǐng)求了可調(diào)用的應(yīng)答數(shù)據(jù)(AD);-至少一個(gè)應(yīng)答數(shù)據(jù)產(chǎn)生器(16),其用于在移動(dòng)數(shù)據(jù)載體(C)上產(chǎn)生對(duì)指令的應(yīng)答數(shù) 據(jù)(AD)并且將所述應(yīng)答數(shù)據(jù)(AD)發(fā)送到讀卡器(T),其中,在確定模塊(14)已經(jīng)確定了存 在請(qǐng)求指令(AB)之后,應(yīng)答數(shù)據(jù)產(chǎn)生器(16)才產(chǎn)生所述應(yīng)答數(shù)據(jù)(AD)。
13. 一種計(jì)算機(jī)程序產(chǎn)品,其能夠被加載到可編程設(shè)備(T,C)的存儲(chǔ)器中并且包括計(jì)算機(jī)程序代碼段,當(dāng)所述計(jì)算機(jī)程序產(chǎn)品被加載到該可編程設(shè)備(T,C)中時(shí),所述計(jì)算機(jī) 程序代碼段用于執(zhí)行按照權(quán)利要求1至10中任一項(xiàng)所述方法的步驟。
全文摘要
本發(fā)明涉及用于處理指令(B)的一種方法、一種移動(dòng)數(shù)據(jù)載體(C)、一種系統(tǒng)、一種計(jì)算機(jī)可讀介質(zhì)和一種計(jì)算機(jī)程序產(chǎn)品,其中,所述指令通過(guò)標(biāo)準(zhǔn)化的協(xié)議從讀卡器(T)被傳輸?shù)叫酒?C),并且在芯片卡(C)方面產(chǎn)生應(yīng)答數(shù)據(jù)(AD),其中,所述應(yīng)答數(shù)據(jù)(AD)是由讀卡器(T)通過(guò)單獨(dú)的請(qǐng)求指令(AB)所請(qǐng)求的,其中對(duì)所述指令(B)僅向終端(T)反饋一個(gè)應(yīng)答(A),并且其中如果在終端(T)方面輸出了請(qǐng)求指令(AB),則在芯片卡(C)上才產(chǎn)生并發(fā)送對(duì)各個(gè)指令(B)的本身的應(yīng)答數(shù)據(jù)(AD)。
文檔編號(hào)G06K19/073GK101971193SQ200980108988
公開(kāi)日2011年2月9日 申請(qǐng)日期2009年3月13日 優(yōu)先權(quán)日2008年3月14日
發(fā)明者凱特林·盧茨, 拉爾夫·霍利 申請(qǐng)人:德國(guó)捷德有限公司