新四季網

讀卡器及其執行方法

2023-06-01 03:59:36 2

專利名稱:讀卡器及其執行方法
技術領域:
本發明涉及IC卡領域,尤其涉及對IC卡進行信息讀取或交互的讀卡器、
以及讀卡器的執行方法。
背景技術:
IC卡(集成電路卡)通常可分為存儲卡、加密卡和智慧卡三類,目前已廣 泛應用於銀行、門禁、公交、計算機系統、通訊、安全等領域,並且IC卡與人 們社會生活的聯繫也日益緊密,使得人們對IC卡的需求和要求越來越高。
用戶在使用IC卡時,將IC卡插入相應讀卡器的插槽內,讀卡器讀取IC卡 中的信息或者與所述IC卡進行交互,並將讀取到的或交互後的信息發送給與該
讀卡器相連的計算機設備。
對於IC卡中的智慧卡,與讀卡器相連的計算機設備(智慧卡操作機)可以 通過讀卡器向智慧卡發送指令,以提取智慧卡中的特定信息;或者智慧卡操作 機通過讀卡器向智慧卡發送指令,以要求智慧卡按照該指令執行相應的操作, 並將操作結果通過讀卡器返回給智慧卡操作機。
在IC卡的運用過程中,發明人發現現有技術中至少存在如下問題 在現有技術中的讀卡器的都是只有固定的基本功能,有的情況下,IC卡的 用戶可能需要增加一些讀卡器的特殊功能,以便讀卡器能夠對相應的IC卡進行 除基本的信息讀取或交互以外的操作。例如 一般的購電卡的讀卡器只需要實 現將電量輸入到購電卡中,但是為了能夠糾正因失誤造成的電量輸入錯誤,需 要增加讀卡器的修改購電卡中電量的功能,或者增加讀卡器的刪除購電卡中電 量的功能。現有技術中的讀卡器要增加特殊功能只能對讀卡器進行重新設計,在重新 設計的讀卡器中添加相應的特殊功能,這種方式需要較長的設計周期,不方便 讀卡器的用戶使用。

發明內容
本發明的提供一種讀卡器及其執行方法,不需要重新設計讀卡器就可以較 方便地為讀卡器增加特殊功能。
為達到上述目的,本發明採用如下技術方案
一種讀卡器的執行方法,該讀卡器中存儲有服務函數,該方法包括
接收操作指令;
分析所述操作指令的類型;
若所述操作指令為調用服務函數的操作指令,則調用所述操作指令對應的 服務函數。
一種讀卡器,包括 存儲模塊,用於存儲服務函數; 接收模塊,用於接收操作指令; 分析模塊,用於分析所述操作指令的類型;
調用模塊,用於在所述操作指令為調用服務函數的操作指令時,調用所述 操作指令對應的服務函數。
本發明提供的讀卡器及其執行方法,由於讀卡器中存儲了服務函數,讀卡 器在接收到操作指令後,能夠根據操作指令類型的不同來調用對應的服務函數, 而所述的服務函數能夠完成一些除了讀卡器基本功能以外的特殊功能。故而, 在為讀卡器增加特殊功能的時候,本發明提供的讀卡器及其執行方法不需要重 新設計讀卡器,只需要調用讀卡器內部的服務函數即可完成。一般情況下,需要增加的特殊功能可能較為複雜,並不是一個服務函數就 可以完成的,這時,可以編寫一個程序,而這個程序只需要按照一定的規則調 用該讀卡器中的不同服務函數,來組合完成這個較為複雜的特殊功能。
所以,使用本發明提供的讀卡器及其執行方法,在為讀卡器增加特殊功能 時,省去了對讀卡器重新設計的過程,節約了重新設計讀卡器的設計周期,方 便了讀卡器用戶的使用讀卡器以及對讀卡器的二次開發。


為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施 例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述 中的附圖僅僅是本發明的一些實施例,對於本領域普通技術人員來講,在不付 出創造性勞動性的前提下,還可以根據這些附圖獲得其他的附圖。
圖1為本發明實施例1中讀卡器的執行方法的流程圖; 圖2為本發明實施例2中讀卡器的執行方法的流程圖; 圖3為本發明實施例3中讀卡器的執行方法的流程圖; 圖4為本發明實施例4中讀卡器的原理圖。
具體實施例方式
本發明實施例提供一種讀卡器及其執行方法,在該讀卡器中存儲有服務函 數,讀卡器根據接收到的指令進行相應的操作,該執行方法的具體過程為在 接收到操作指令之後,分析操作指令的類型;如果操作指令為調用服務函數的 操作指令,則調用該操作指令對應的服務函數。
該讀卡器通過如下模塊實現上述的執行方法存儲模塊、接收模塊、分析 模塊和調用模塊。其中,存儲模塊用於存儲服務函數;接收模塊用於接收操作
指令;分析模塊用於分析操作指令的類型;調用模塊用於在該操作指令為調用服務函數的操作指令時,調用該操作指令對應的服務函數。
上述的服務函數用來完成出讀卡器基本功能以外的特殊功能,若讀卡器的 用戶需要增加一些特殊功能,只需要調用讀卡器中相應的服務函數,或者按照 移動規則調用該讀卡器中的不同服務函數,來組合完成特殊功能。
上述的操作指令一般是通過操作該讀卡器的上位機軟體發送的,本實施例 中上位機軟體安裝在智慧卡操作機(與讀卡器相連的計算機設備)中,或者上 位機軟體直接安裝在讀卡器中。
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清 楚、完整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是 全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造 性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
實施例1:
本實施例中以操作指令為調用密鑰下載服務函數的指令為例,對本發明實 施例中讀卡器的執行方法進行說明;並且,本實施例中的讀卡器通過USB接口 與計算機(智慧卡操作機)連接。
其中,本實施例中讀卡器的USB接口是基於CCID ( Integrated Circuit (s) Card Interface Devices,集成電路卡接口設備)協議設計的,CCID定義了實 現USB smard Card的標準,並且現有的計算機作業系統已經對該標準進行了支 持,說所以,基於CCID協議設計的USB接口的讀卡器不需要重新設計驅動,只 需要調用計算機作業系統中相應的驅動即可。
在設計本發明實施例中的讀卡器時,將各種函數寫入讀卡器內部的Hash (快閃記憶體)晶片中;寫入讀卡器內部flash晶片中的函數可以分為兩類 一類是 完成讀卡器基本功能(如讀卡器的自身運行、讀卡器與IC卡進行交互操作)所需的功能函數,另一類是讀卡器的開發者在開發讀卡器的固件程序時額外編寫 的服務函數,該服務函數能夠完成除讀卡器基本功能以外的特殊功能,本實施 例中所用的密鑰下載服務函數就是其中之一。
在對讀卡器進行操作之前,需要將讀卡器與計算機通過USB接口連接好,
以便讀卡器和計算機進行數據或指令的傳輸。如圖1所示,對讀卡器進行操作
時,讀卡器具體的執行方法如下
101、 用戶通過計算機中的上位機軟體調用作業系統提供的API (應用程式 才妄口 )函悽tPC—to—RDR—XfrBlock;
102、 用戶利用計算機中的上位機軟體將操作指令發送給接口函數 PC-to_RDR_XfrBlock,並且該操作指令是一個APDU (應用協議數據單元)指令, 其格式為人?011指令頭+APDU指令參數+APDU指令數據。在本實施例中,密鑰 下載服務函數的APDU指令頭為cfcaOOOO+LENGTH, APDU指令參數為1001, APDU 指令數據為密鑰,該密鑰下載服務函數的APDU指令表示如下
Cfca00001210011a2b3c4d5e6f778888776f5e4d3c2bla;
其中,APDU指令的前5個字節cf ca000012為APDU指令頭,表示該指令為 調用服務函數的特殊APDU指令,並且,第5位元組0x12是用於指定數據長度, 即指令類別的長度和指令數據的長度的總和,第6和第7位元組0x10、 0x01用 來指明該指令是密鑰下載服務函數,後面的指令數據即為欲下載到讀卡器的密 鑰;
103、 由於計算機和讀卡器之間的USB接口是按照CCID協議設計的,所以, 本實施例中上位機軟體向讀卡器發送的操作指令是一個按照CCID協議封裝後的 操作指令。所以,本步驟中,接口函數PC-to_RDR_XfrBlock將該APDU指令按 照CCID協議進行封裝,具體封裝後的APDU指令表示如下4d3c2blal0;
104、 通過接口函數PC—to-腿一XfrBlock將封裝成CCID格式的APDU指令 發送給讀卡器;
105、 讀卡器接收封裝成CCID格式的APDU指令,並且讀卡器可以根據CCID 協議將接收到的指令進行解封裝,得到其中的APDU指令,即
Cfca00001210011a2b3c4d5e6f778888776f5e4d3c2bla;
106、 讀卡器根據解析得到的APDU指令的指令頭進行分析,以分析出該APDU 指令的類型,如果上述APDU指令為調用功能函數的操作指令,則執行步驟107; 如果上述APDU指令為調用服務函數的操作指令,則按照調用服務函數的流程執 行,具體對於本實施例而言,由於APDU指令頭可以分析出該APDU指令為調用 服務函數的操作指令,並且是調用密鑰下載服務函數的特殊APDU指令,故而執 行步驟108;
107、 讀卡器調用功能函數,以完成讀卡器自身的運行、以及讀卡器和IC 卡進行交互操作,並由功能函數返回操作後得到信息,並執行步驟lll;
108、 讀卡器調用並執行密鑰下載服務函數。密鑰下載服務函數執行時,首 先判斷密鑰數據長度是否是16位元組,若密鑰數據長度不是16位元組,則執行步 驟109,若密鑰數據長度是16位元組,則執行步驟110;
本實施例中的密鑰數據長度就是APDU指令中的APDU指令數據,相當於本 實施例中的下載密鑰服務函數需要用到APDU指令中的數據參數。
所以,如果操作指令中包括數據參數,在本實施例中操作指令為調用服務 函數的操作指令時,需要將上述操作指令中的數據參數對應賦給調用的服務函 數,以便服務函數能夠完成相應的操作。109、 密鑰下載服務函數返回6700,退出對密鑰下載服務函數,並執行步驟
111;
110、 密鑰下載服務函數將密鑰存儲在讀卡器的存儲器中,同時密鑰下載服 務函數返回9000,退出對密鑰下載服務函數,並執行步驟lll;
111、 上述過程107、 109和110中相應函數均返回有信息,本過程中讀卡 器將功能函數或密鑰下載服務函數返回的信息按照CCID協議進行封裝,並將封 裝後的信息發送給計算機,以便計算機中的上位機軟體能夠進行相應處理。
本實施例提供的讀卡器及其執行方法,由於讀卡器中存儲了服務函數,讀 卡器在接收到操作指令後,能夠根據操作指令類型的不同來調用對應的服務函 數,而本實施例中的服務函數能夠完成一些除了讀卡器基本功能以外的特殊功 能。故而,在為讀卡器增加特殊功能的時候,本發明提供的讀卡器及其執行方 法不需要重新設計讀卡器,只需要調用讀卡器內部的服務函數即可完成;對於 較為複雜的特殊功能,可以編寫一個按照一定的規則調用該讀卡器中不同服務 函數的程序,來組合完成這個較為複雜的特殊功能。
所以,本實施例提供的讀卡器及其執行方法要為讀卡器增加特殊功能時, 省去了對讀卡器重新設計的過程,節約了重新設計讀卡器的設計周期,方便了 讀卡器用戶的使用讀卡器以及對讀卡器的二次開發。
實施例2:
本實施例中以操作指令為調用3DES (數據加密標準)加密服務函數的指令 為例,對本發明實施例中讀卡器的執行方法進行說明;並且,本實施例中的讀 卡器通過USB接口與計算機(智慧卡操作機)連接。
其中,本實施例中讀卡器的USB接口是基於CCID ( Integrated Circuit (s) Card Interface Devices,集成電路卡接口設備)協議設計的,CCID定義了實現USB smard Card的標準,並且現有的計算積4喿作系統已經對該標準進4亍了支 持,說所以,基於CCID協議設計的USB接口的讀卡器不需要重新設計驅動,只 需要調用計算機作業系統中相應的驅動即可。
在設計本發明實施例中的讀卡器時,將各種函數寫入讀卡器內部的flash (快閃記憶體)晶片中;寫入讀卡器內部flash晶片中的函數可以分為兩類 一類是 完成讀卡器基本功能(如讀卡器的自身運行、讀卡器與IC卡進行交互操作)所 需的功能函數,另一類是讀卡器的開發者在開發讀卡器的固件程序時額外編寫 的服務函數,該服務函數能夠完成除讀卡器基本功能以外的特殊功能,本實施 例中所用的3DES加密服務函數就是其中之一。
在對讀卡器進行操作之前,需要將讀卡器與計算機通過USB接口連接好, 以便讀卡器和計算機進行數據或指令的傳輸。如圖2所示,對讀卡器進行操作 時,讀卡器具體的執行方法如下
201、用戶通過計算機中的上位機軟體調用作業系統提供的API (應用程式 才妄口 )函悽tPC—to—RDR—XfrBlock;
202 、用戶利用計算機中的上位機軟體將操作指令發送給接口函數 PC—to-RDR—XfrBlock,並且該操作指令是一個APDU (應用協議數據單元)指令, 其格式為APD^;指令頭+ APDU指令參數+ APDU指令數據;
在本實施例中,3DES加密服務函數的APDU指令頭為cfcaOOOO+LENGTH,APDU 指令參數為2003,APDU指令數據為3DES加密數據,該3DES加密服務函數的APDU 指令表示為Cfca00000a20031a2b3c4d5e6f7081。
其中,前5個字節cfca00000a為APDU指令頭,表示該指令為調用服務函 數的特殊APDU指令,其中第5位元組OxOa是用於指定數據長度,即指令類別 的長度和指令數據的長度的總和,第6和第7位元組0x20、 0x03用來指明該指令是3DES加密服務函數,後面的指令數據la2b3c4d5e6f7081為3DES加密數據。
203、 由於計算機和讀卡器之間的USB接口是按照CCID協議設計的,所以, 本實施例中上位機軟體向讀卡器發送的操作指令是一個按照CCID協議封裝後的 操作指令。所以,本步驟中,接口函數PC-to_RDR_XfrBlock將上述APDU指令 按照CCID協議進行封裝,具體封裝後的APDU指令表示如下
6n3000000002600000000000fcfca00000a20031a2b3c4d5e6n081a3;
204、 通過接口函數PC—to一隨—XfrBlock將封裝成CCID格式的APDU指令 發送給讀卡器;
205、 讀卡器接收封裝成CCID格式的APDU指令,並且讀卡器可以根據CCID 協議將接收到的指令進行解封裝,得到其中的APDU指令,即
Cfca00000a20031a2b3c4d5e6f7081;
206、 讀卡器根據解析得到的APDU指令的指令頭進行分析,以分析出該APDU 指令的類型,如果上述APDU指令為調用功能函數的操作指令,則執行步驟207; 如果上述APDU指令為調用服務函數的操作指令,則按照調用服務函數的流程執 行,具體對於本實施例而言,由於APDU指令頭可以分析出該APDU指令為調用 服務函數的操作指令,並且是調用3DES加密服務函數的特殊APDU指令,故而 執行步驟208;
207、 讀卡器調用功能函數,以完成讀卡器自身的運行、以及讀卡器和IC 卡進行交互操作,並由功能函數返回操作後得到信息,並執行步驟211;
208、 讀卡器調用並執行3DES加密服務函數,3DES加密服務函數執行時, 首先判斷加密數據長度是否是8的倍數,若加密數據長度不是8的倍數,則執 行步驟209,若加密數據長度是8的倍數,則執行步驟210;
在本實施例中的加密數據長度就是APDU指令中的APDU指令數據,相當於本實施例中的3DES加密服務函數需要用到APDU指令中的數據參數。
所以,如果操作指令中包括數據參數,在本實施例中操作指令為調用服務 函數的操作指令時,需要將操作指令中的數據參數對應賦給所調用的服務函數, 以便服務函數能夠完成相應的操作。
209、 3DES加密服務函數返回6700,退出3DES加密服務函數,並執行步驟
211;
210、 3DES加密服務函數返回經加密後的數據4aded7265b6672f 5,退出3DES 加密服務函數,並執行步驟211;
211、 上述過程207、 209和210中相應函數均返回有信息,本過程中讀卡 器將功能函數密鑰下載服務函數返回的信息按照CCID協議進行封裝,並將封裝 後的信息發送給計算機,以便計算機中的上位機軟體能夠進行相應處理;
本實施例提供的讀卡器及其執行方法,由於讀卡器中存儲了服務函數,讀 卡器在接收到操作指令後,能夠根據操作指令類型的不同來調用對應的服務函 數,故而,在為讀卡器增加特殊功能的時候,本發明提供的讀卡器及其執行方 法不需要重新設計讀卡器,只需要調用讀卡器內部的服務函數即可完成;對於 較為複雜的特殊功能,可以編寫 一個按照一定的規則調用該讀卡器中不同服務 函數的程序,來組合完成這個較為複雜的特殊功能。
所以,本發明提供的讀卡器及其執行方法要為讀卡器增加特殊功能時,省 去了對讀卡器重新設計的過程,節約了重新設計讀卡器的設計周期,方便了讀
卡器用戶的使用讀卡器以及對讀卡器的二次開發。 實施例3:
本實施例中以操作指令為調用3DES (數據加密標準)解密服務函數的指令 為例,對本發明實施例中讀卡器的執行方法進行說明;並且,本實施例中的讀卡器通過USB接口與計算機(智慧卡操作機)連接。
其中,本實施例中讀卡器的USB接口是基於CCID ( Integrated Circuit (s) Card Interface Devices,集成電路卡接口設備)協議設計的,CCID定義了實 現USB smard Card的標準,並且現有的計算枳4喿作系統已經對該標準進行了支 持,說所以,基於CCID協議設計的USB接口的讀卡器不需要重新設計驅動,只 需要調用計算機作業系統中相應的驅動即可。
在設計本發明實施例中的讀卡器時,將各種函數寫入讀卡器內部的flash (快閃記憶體)晶片中;寫入讀卡器內部flash晶片中的函數可以分為兩類 一類是 完成讀卡器基本功能(如讀卡器的自身運行、讀卡器與IC卡進行交互操作)所 需的功能函數,另一類是讀卡器的開發者在開發讀卡器的固件程序時額外編寫 的服務函數,該服務函數能夠完成除讀卡器基本功能以外的特殊功能,本實施 例中所用的3DES解密服務函數就是其中之一。
同時,由於在執行3DES解密服務函數時,需要執行與3DES解密服務函數 相關的腳本數據,所以,本實施例中的讀卡器的flash晶片中還存儲有腳本數 據,在本實施例中,腳本數據是一系列APDU指令的集合。
在對讀卡器進行操作之前,需要將讀卡器與計算機通過USB接口連接好, 以便讀卡器和計算機進行數據或指令的傳輸。如圖3所示,對讀卡器進行操作 時,讀卡器具體的執行方法如下
301、用戶通過計算機中的上位機軟體調用作業系統提供的API (應用程式 才妄口 )函悽tPC-to-RDR-XfrBlock;
302 、用戶利用計算機中的上位機軟體將操作指令發送給接口函數 PC—to—RDR_Xf rBlock,並且該操作指令是一個APDU (應用協議數據單元)指令, 其格式為人?01]指令頭+ APDU指令參數+ APDU指令數據;在本實施例中,3DES解密服務函數的APDU指令頭為cfca0000+ LENGTH, APDU指令參數為2004, APDU指令數據為3DES欲解密數據。
303、 由於計算機和讀卡器之間的USB接口是按照CCID協議設計的,所以, 本實施例中上位機軟體向讀卡器發送的操作指令是一個按照CCID協議封裝後的 操作指令。所以,本步驟中,接口函數PC—to-RDR—XfrBlock將上述APDU指令 按照CCID協-漢進行封裝;
304、 通過接口函數PC_to_RDR_XfrBlock將封裝成CCID格式的APDU指令 發送給讀卡器;
305、 讀卡器接收封裝成CCID格式的APDU指令,並且讀卡器可以根據CCID 協議將接收到的指令進行解封裝,得到其中的APDU指令,即cfca0000+LENGTH +2004+30£3欲解密數據;
306、 讀卡器根據解析得到的APDU指令的指令頭進行分析,以分析出該APDU 指令的類型,如果上述APDU指令為調用功能函數的操作指令,則執行步驟307; 如果上述APDU指令為調用服務函數的操作指令,則按照調用服務函數的流程執 行,具體對於本實施例而言,由於APDU指令頭可以分析出該APDU指令為調用 服務函數的操作指令,並且是調用3DES解密服務函數的特殊APDU指令,故而 執行步驟308;
307、 讀卡器調用功能函數,以完成讀卡器自身的運行、以及讀卡器和IC 卡進行交互操作,並由功能函數返回操作後得到信息,並執行步驟315;
308、 讀卡器調用並執行3DES解密服務函數,在執行3DES解密服務函數時, 調用並選擇讀卡器內部存儲的腳本數據中的操作指令,並將所選腳本數據中的 操作指令發送給IC卡。本過程中的操作指令包括很多種例如選擇 app (application,應用)指令、選擇MF (主文件,master file)指令、創建DF(專用文件,dedicated file)指令、選擇DF指令、創建DES文件指令和DES 加密指令;在具體應用時,3DES解密服務函數是依次將上述操作指令發送給IC
卡;
309、 IC卡執行上述腳本數據的操作指令,並將執行完操作指令後的數據返 回給3DES解密服務函數;
310、 3DES解密服務函數判斷返回的數據是否正確,若不正確,則執行步驟 311;若正確,則執-f亍步驟312;
311、 3DES解密服務函數返回出錯提示的信息,退出本實施例中的犯ES解 密服務函數,並執行315;
312、 判斷本次返回的數據是否為解密後的數據,如果是解密後的數據,則 執行314;否則執行313;
313、 3DES解密服務函數依次將腳本數據中的選擇MF指令、創建DF指令、 選擇DF指令、創建DES文件指令和3DES解密的操作指令發送給IC卡,並且每 次發送一個操作指令後返回執行步驟309;
314、 3DES解密服務函數返回解密後的數據,退出本實施例中的3DES解密 服務函數,並執行315;
315、 上述過程307、 311和314中相應函數均返回有信息,本過程中讀卡 器將功能函數密鑰下載服務函數返回的信息按照CCID協議進行封裝,並將封裝 後的信息發送給計算機,以便計算機中的上位機軟體能夠進行相應處理。
本實施例提供的讀卡器及其執行方法,由於讀卡器中存儲了服務函數,讀 卡器在接收到操作指令後,能夠根據操作指令類型的不同來調用對應的服務函 數,故而,在為讀卡器增加特殊功能的時候,本發明提供的讀卡器及其執行方 法不需要重新設計讀卡器,只需要調用讀卡器內部的服務函數即可完成;對於較為複雜的特殊功能,可以編寫 一個按照一定的規則調用該讀卡器中不同服務 函數的程序,來組合完成這個較為複雜的特殊功能,從而節約了重新設計讀卡 器的設計周期,方便了讀卡器用戶的使用讀卡器以及對讀卡器的二次開發。
本發明實施例中在讀卡器中存儲有腳本數據,以便為需要執行腳本數據的 操作提供方便。當然,本實施例中也可以不在讀卡器中存儲腳本數據,而是在 需要執行腳本數據時,通過計算機將腳本數據發送到該讀卡器,並由讀卡器對
接收到的腳本數據進行解封裝,例如計算機的上位機軟體將腳本數據和APDU 指令一起發送到讀卡器,或者計算機的上位機軟體將腳本數據和APDU指令分別 發送到讀卡器。
若下次執行服務函數時需要調用相同腳本數據,為了便於該情況下調用相 同腳本數據,本實施例讀卡器在接收到腳本數據後,還可以將所接收到的腳本 數據存儲在讀卡器中。
實施例4:
本實施例提供一種讀卡器,如圖4所示,該讀卡器包括存儲模塊41、接 收模塊42、解封裝模塊43、分析模塊44和調用模塊45。
其中,儲模塊41用於存儲服務函數,為了能夠完成讀卡器的基本功能,本 實施例中的存儲模塊存41還用於存儲完成讀卡器基本功能的功能函數;接收模 塊42用於接收操作指令, 一般而言,操作指令為應用協議數據單元指令;對於 調用的服務函數需要用到參數的情況,本實施例中的接收模塊42接收的操作指 令中包括數據參數。
如果該讀卡器是與計算機相連的,那麼計算機中的上位機軟體需要將應用 協議數據單元指令UPDU指令)按照集成電路卡接口設備協議封裝;所以,本 實施例中的解封裝才莫塊43用於按照集成電路卡接口設備協議對接收到的操作指令進行解封裝,以獲取其中的APDU指令。
本實施例中的分析模塊44用於分析操作指令的類型, 一般而言,本實施例 中的分析模塊44是根據應用協議數據單元指令中的指令頭分析操作指令的類型。
調用模塊45用於在上述操作指令為調用服務函數的操作指令時,調用上述 操作指令對應的服務函數,並且將上述操作指令中的數據參數對應賦給所調用 的服務函數。本實施例中的調用模塊45還用於在操作指令為調用功能函數的操 作指令時,按照完成讀卡器基本功能的方式調用讀卡器中的功能函數。
為了能夠將功能函數或服務函數返回的數據發送到計算機,以便計算機中 的上位機軟體進行處理,本實施例中的讀卡器還包括封裝it塊46和發送模塊47 。 其中,封裝模塊46用於將調用服務函數或調用功能函數得到的數據按照集成電 路卡接口設備協議封裝;發送模塊47用於將調用服務函數或調用功能函數得到 的數據發送給上位機軟體,並且,發送模塊47是將封裝後的數據發送上位機軟 件。
在有的情況下,調用的服務函數可能需要用到腳本數據,例如通過腳本 數據中的操作指令對IC進行操作,所以,本實施例中的讀卡器需要能夠得到相 應的腳本數據,具體可以採用如下兩種實現方式
第一、接收模塊42還用於接收腳本數據,在才喿作指令為調用服務函數的操 作指令並執行服務函數時,本實施例中的調用模塊45還用於調用接收模塊42
接收到的與服務函數相關的腳本數據。
若下次執行服務函數時需要調用相同腳本數據,為了便於該情況下調用腳 本數據,本實施例中的存儲模塊41還可以用於存儲該接收到的腳本數據。
第二、將與服務函數相關的腳本數據預先存儲在讀卡器中,則本實施例中的存儲模塊41還用於存儲腳本數據;在操作指令為調用服務函數的搡作指令並 執行服務函數時,本實施例中的調用模塊45還用於調用存儲模塊41中服務函 數相關的腳本數據。
本實施例提供的讀卡器,由於讀卡器的存儲模塊中存儲了服務函數,讀卡 器的接收模塊在接收到操作指令後,可以通過調用模塊能夠根據操作指令類型 的不同來調用對應的服務函數,故而,在為讀卡器增加特殊功能的時候,本發 明提供的讀卡器及其執行方法不需要重新設計讀卡器,只需要調用讀卡器內部 的服務函數即可完成;對於較為複雜的特殊功能,可以編寫一個按照一定的規 則調用該讀卡器中不同服務函數的程序,來組合完成這個較為複雜的特殊功能, 從而節約了重新設計讀卡器的設計周期,方便了讀卡器用戶的使用讀卡器以及 對讀卡器的二次開發。
本發明實施例中在讀卡器中存儲有腳本數據,以便為需要執行腳本數據的 操作提供方便。當然,本實施例中也可以不再讀卡器中存儲腳本數據,而是在 需要執行腳本數據時,通過計算機將腳本數據發送到該讀卡器,並由讀卡器對 接收到的腳本數據進行解封裝,例如計算機的上位機軟體將腳本數據和APDU 指令一起發送到讀卡器,或者計算機的上位機軟體將腳本數據和APDU指令分別
發送到讀卡器。
在具體實現本發明實施例時,讀卡器也可以不用連接到計算機,而是將能 夠對讀卡器進行操作的上位機軟體直接安裝在讀卡器中,並通過該上位機軟體 對讀卡器進行相應的操作。當需要增加讀卡器的特殊功能或者修改讀卡器的特 殊功能時,通過修改上位機軟體中調用的服務函數,或者修改調用服務函數的 規則,即可完成讀卡器特殊功能的設計。
本發明實施例主要用在各種IC卡的讀卡器中,例如銀行、門禁、公交、計算機系統、通訊、安全等領域的讀卡器。
通過以上的實施方式的描述,所屬領域的技術人員可以清楚地了解到本發 明可藉助軟體加必需的通用硬體的方式來實現,當然也可以通過硬體,但很多 情況下前者是更佳的實施方式。基於這樣的理解,本發明的技術方案本質上或 者說對現有技術做出貢獻的部分可以以軟體產品的形式體現出來,該計算機軟 件產品存儲在可讀取的存儲介質中,如計算機的軟盤,硬碟或光碟等,包括若 幹指令用以使得一 臺讀卡器執行本發明各個實施例的方法。
以上所述,僅為本發明的具體實施方式
,但本發明的保護範圍並不局限於 此,任何熟悉本技術領域的技術人員在本發明揭露的技術範圍內,可輕易想到 的變化或替換,都應涵蓋在本發明的保護範圍之內。因此,本發明的保護範圍 應以權利要求的保護範圍為準。
權利要求
1、一種讀卡器的執行方法,其特徵在於,該讀卡器中存儲有服務函數,該方法包括接收操作指令;分析所述操作指令的類型;若所述操作指令為調用服務函數的操作指令,則調用所述操作指令對應的服務函數。
2、 根據權利要求1所述的讀卡器的執行方法,其特徵在於,該讀卡器中還 存儲有完成讀卡器基本功能的功能函數,該方法還包括若所述操作指令為調用功能函數的操作指令,則按照完成讀卡器基本功能 的方式調用讀卡器中的功能函數。
3、 根據權利要求1所述的讀卡器的執行方法,其特徵在於,所述操作指令 中包括數據參數,在所述操作指令為調用服務函數的操作指令時,將所述操作 指令中的數據參數對應賦給所述調用的服務函數。
4、 根據權利要求1或3所述的讀卡器的執行方法,其特徵在於,該方法還 包括接收腳本數據;在所述操作指令為調用服務函數的操作指令時,調用所述服務函數相關的 腳本數據。
5、 根據權利要求4所述的讀卡器的執行方法,其特徵在於,該方法還包括 將接收到的腳本數據存儲到所述讀卡器中。
6、 根據權利要求1或3所述的讀卡器的執行方法,其特徵在於,所述讀卡 器中存儲有腳本數據,該方法還包括在所述操作指令為調用服務函數的操作指令時,調用所述服務函數相關的腳本數據。
7、 根據權利要求l所述的讀卡器的執行方法,其特徵在於,所述操作指令為應用協議數據單元指令;所述分析所述操作指令的類型為根據所述應用協 議數據單元指令中的指令頭分析所述操作指令的類型。
8、 根據權利要求7所述的讀卡器的執行方法,其特徵在於,所述操作指令 為按照集成電路卡接口設備協議封裝後的應用協議數據單元指令;在接收上位 機軟體發送的操作指令後,該方法還包括按照集成電路卡接口設備協議對接收到的操作指令進行解封裝。
9、 根據權利要求1、 2或3所述的讀卡器的執行方法,其特徵在於,該方 法還包括將調用服務函數或調用功能函數得到的數據發送給上位機軟體。
10、 根據權利要求9所述的讀卡器的執行方法,其特徵在於,在將調用服 務函數或調用功能函數得到的數據發送給上位機軟體之前,該方法還包括將調用服務函數或調用功能函數得到的數據按照集成電路卡接口設備協議 封裝。
11、 一種讀卡器,其特徵在於,包括 存儲模塊,用於存儲服務函數; 接收模塊,用於接收操作指令; 分析模塊,用於分析所述操作指令的類型;調用模塊,用於在所述操作指令為調用服務函數的操作指令時,調用所述 操作指令對應的服務函數。
12、 根據權利要求ll所述的讀卡器,其特徵在於,所述存儲模塊還用於存 儲完成讀卡器基本功能的功能函數,所述調用模塊在所述操作指令為調用功能函數的操作指令時,按照完成讀卡器基本功能的方式調用讀卡器中的功能函數。
13、 根據權利要求ll所述的讀卡器,其特徵在於,所述接收模塊接收的操 作指令中包括數據參數;所述調用模塊還用於在所述操作指令為調用服務函數 的操作指令時,將所述操作指令中的數據參數對應賦給所述調用的服務函數。
14、 根據權利要求11或13所述的讀卡器,其特徵在於,所述接收模塊還 用於接收腳本數據;所述調用模塊還用於在所述操作指令為調用服務函數的操 作指令時,調用所述服務函數相關的腳本數據。
15、 根據權利要求14所述的讀卡器,其特徵在於,所述存儲模塊還用於存儲所接收到的腳本數據。
16、 根據權利要求11或13所述的讀卡器,其特徵在於,所述存儲模塊還 用於存儲腳本數據;所述調用模塊還用於在所述操作指令為調用服務函數的操作指令時,調用所述服務函數相關的腳本數據。
17、 根據權利要求11所述的讀卡器,其特徵在於,所述接收模塊接收的操 作指令為應用協議數據單元指令;所述分析模塊根據所述應用協議數據單元指 令中的指令頭分析所述操作指令的類型。
18、 根據權利要求17所迷的讀卡器,其特徵在於,所述接收模塊接收的操 作指令為按照集成電路卡接口設備協議封裝後的應用協議數據單元指令;該讀 卡器還包括解封裝模塊,用於按照集成電路卡接口設備協議對接收到的操作指令進行 解封裝。
19、 根據權利要求11、 12或13所述的讀卡器,其特徵在於,該讀卡器還 包括發送模塊,用於將調用服務函數或調用功能函數得到的數據發送給上位機軟體。
20、根據權利要求19所述的讀卡器,其特徵在於,該讀卡器還包括 封裝模塊,用於將調用服務函數或調用功能函數得到的數據按照集成電路 卡接口設備協議封裝;所述發送模塊將封裝後的數據發送上位機軟體。
全文摘要
本發明實施例公開了一種讀卡器及其執行方法,涉及IC卡領域,解決了現有技術中不方便為讀卡器增加特殊功能的問題。本發明讀卡器中存儲有服務函數,其執行方法包括接收操作指令;分析所述操作指令的類型;若所述操作指令為調用服務函數的操作指令,則調用所述操作指令對應的服務函數。本發明讀卡器包括存儲模塊,用於存儲服務函數;接收模塊,用於接收操作指令;分析模塊,用於分析所述操作指令的類型;調用模塊,用於在所述操作指令為調用服務函數的操作指令時,調用所述操作指令對應的服務函數。本發明實施例主要用在各種IC卡的讀卡器中。
文檔編號G06K17/00GK101425120SQ20081022699
公開日2009年5月6日 申請日期2008年11月28日 優先權日2008年11月28日
發明者於華章, 舟 陸 申請人:北京飛天誠信科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀