專利名稱:一種便攜式讀卡器及其讀卡方法
技術領域:
本發(fā)明涉及一種用于讀寫智能卡的便攜式讀卡器及其讀卡方法。
背景技術:
近年來,對安全的電子個人交易和諸如網上購物或銀行自動柜員機等交易系統(tǒng)的需求日益劇增。其中,安全交易的一個首要問題是系統(tǒng)對用戶的認證,也就是說如何讓系統(tǒng)識別用戶的身份(如怎樣識別使用自動柜員機或網上銀行取款的用戶是該帳戶的所有人)。
現有系統(tǒng)中對用戶認證的一個普遍做法就是向用戶提供一張普通磁卡,在這張磁卡上存儲有用戶及其帳戶的信息。發(fā)卡單位(如銀行)再與用戶約定一個密碼,用戶每次用卡時都可以通過輸入密碼解除卡的鎖定狀態(tài),使系統(tǒng)可以獲知用戶的身份。
但是,這種方法的缺點是系統(tǒng)識別用戶時每次都使用一個相同的密碼,這就增加了用戶丟失卡后被他人非法使用的風險?,F有的其他身份識別方法如采用公開密鑰體系(PKI)為基礎的數字證書管理機制來認證用戶或服務器身份,或者利用唯一性特征,如用指紋、視網膜、臉型等生物科技辨識技術進行身份識別的辦法,或者用IC卡、U盤等載體存儲密鑰和必要的個人信息等作為身份認證標識的電子鑰匙的方法,都依賴某種特定網絡或設備,或者需要配備安裝在線式讀卡器,操作比較復雜,建置費用昂貴,應用范圍有限。
因此,人們開發(fā)出了便攜式密碼生成器,每使用一次,密碼生成器都會根據用戶的個人信息(例如個人PIN碼等)生成一個新的密碼(動態(tài)密碼)。一般來說,此類裝置有兩種第一種是專門開發(fā)的、帶有產生密碼的特定軟件的裝置(令牌系統(tǒng)),這種裝置的問題是比較復雜,生產成本高;第二種是將產生動態(tài)密碼的“秘密”放到智能卡(或IC卡等帶有芯片的卡)上,為了存取卡上的信息或數據,就需要一種讀卡器。迄今為止的讀卡器都比較貴,使用復雜而且比較大,不便于攜帶。因此需要一種真正的便攜式讀卡器,既簡單,生產成本低,又便于使用。
發(fā)明內容
本發(fā)明旨在提供一種用于讀(存)取智能卡(或IC卡、SIM卡等等帶有芯片的卡)上包括動態(tài)密碼在內的信息或數據的一種便攜式讀卡器,以及采用該讀卡器的讀卡方法。該讀卡器解決了現有讀卡器價格較貴,體積較大,不便攜帶等問題;而所提供的讀卡方法能夠隨時自動生成動態(tài)密碼,可應用在各種身份認證系統(tǒng)和過程之中。
一種便攜式讀卡器,包括卡座、處理器、存儲器、觸點、電源及其開關、顯示屏,其特征在于讀卡器上設有卡片插入卡槽,卡插入讀卡器經卡槽內的觸點觸動電源開關,由該觸點為卡供電,提供時鐘信號,并與卡進行數據交換,讀卡器讀取動態(tài)密碼數據運算后由顯示屏顯示動態(tài)密碼;卡座上還設有一個用于手工將信息輸入讀卡器并顯示在顯示屏上的輸入工具,所述輸入工具包括功能和數字選擇機構,和用來選擇上述輸入項目之一的功能和數字確認鍵。
所述功能和數字選擇機構為用于卷動通過處理器預設的顯示在顯示屏上的輸入項目的滾輪開關或數字選擇鍵。
所述讀卡器預設的數字集包含文字字符和數字字符,讀卡器預設的輸入項目集包括至少一個控制字符。
讀卡器首選至少有兩組輸入項目集的配備,第二組輸入項目中的操作由第一組輸入項目集的至少一個輸入項目確定,第一組集合包含了讀卡器用法的不同選擇的菜單,第二組輸入項目集被作為個性化信息的入口;讀卡器中的處理器或智能卡提供預設輸入項目集。
用智能卡和讀卡器產生動態(tài)密碼是一個獨立的過程,不需要與通訊網絡連接。實際上,發(fā)卡時在認證系統(tǒng)和智能卡設定了同樣的初始隨機計數,當智能卡插入讀卡器時就觸動了讀卡器上的電源開關,這時讀卡器和智能卡的電路與電池接通。這樣每一次上電復位就觸發(fā)智能卡的一次計數。智能卡的動態(tài)密碼算法根據這個事件計數和個人密鑰就產生一個動態(tài)密碼。
一種采用上述便攜式讀卡器在帶芯片的卡上存取信息的讀卡方法,它包括如下步驟a、將卡插入讀卡器卡槽與讀卡器內的閱讀器聯(lián)接;b、通過讀卡器輸入信息,滾動選擇預設輸入項目,這個項目同時顯示在讀卡器的顯示屏上,并接收選定的輸入項目信息;所述讀卡器預設的輸入數字集包含了文字字符和數字字符,讀卡器預設的輸入項目集可以包括至少一個控制字符。
所述讀卡器首選至少有兩組輸入項目集的配備,其中通過第一組輸入項目集的至少一個輸入項目,第二組輸入項目中的輸入項目才能操作;第一組集合包含了讀卡器用法的不同選擇的菜單,當一種用法被選定,下一組輸入項目集就被作為個性化信息的入口,讀卡器中的處理器和/或智能卡提供預設的輸入項目集。
所述智能卡與一認證系統(tǒng)設定了同樣的初始隨機計數,當智能卡插入讀卡器觸動讀卡器上的電源開關時,讀卡器和智能卡的電路接通,每一次上電復位就觸發(fā)智能卡的一次計數,智能卡的動態(tài)密碼算法根據該事件計數和個人密鑰便產生一個動態(tài)密碼。
所述智能卡內設有加密私鑰,若加密信息較長,可選擇用一個信息摘要即散列值來替代這個信息,計算過程采用有一個公開的散列算法,接收者通過使用相應的公鑰對收到的散列信息進行解密,若該兩個散列值相匹配,當私鑰發(fā)送信息并完成原始識別后,則認定為唯一合法用戶。
所述密碼算法通過智能卡來實現,這個算法根據智能卡標識碼、用戶ID和事件序列號計算出十進制的動態(tài)密碼,這個動態(tài)密碼是由參數設置決定的一組4-12位的數,每一個動態(tài)密碼生成的事件序列號都會在智能卡中被增加和更新。
本發(fā)明也可以應用于數據完整性檢驗。這種安全性服務可以使數據接收者確定原發(fā)送者發(fā)送的數據是否被修改。這種服務依據一種公開算法和機制,通過報文和密鑰計算一個文件的驗證值(FVV)。報文接收執(zhí)行相同的處理并且根據接收的數據和協(xié)議密鑰計算一個第二驗證值。如果通過接收數據計算的FVV與接收的FVV是一致的,則報文沒有被修改過。使用本發(fā)明提供的卡系統(tǒng),密鑰管理可以大大簡化。
進而,本發(fā)明還可應用于數據加密。這種數據加密的機制就是編制密碼。報文的產生者用事先獲得的加密方法制作報文。加密算法是通過一個密鑰從明文輸入產生密文輸出。報文接收者通過用解密密鑰在解譯模式中的同樣算法解譯出明文。當報文產生/發(fā)送者與接收者具有相同的密鑰就被稱為對稱加密。當報文產生者與接收者具有不同的密鑰時,則這種加密方法就是非對稱的。使用非對稱加密方法時,接收者密鑰被稱作私鑰,報文產生者密鑰稱為公鑰。這兩種密鑰都是通過被稱為公私密鑰對的特殊方法產生的。其中私鑰存儲在智能卡中,它只能由本發(fā)明的讀卡器產生,輸入正確的PIN后才能被讀取。
上述的讀卡器和讀卡方法,其特征在于存儲有產生動態(tài)密碼算法程序和信息的智能卡與產生和顯示動態(tài)密碼的讀卡器是獨立的,也可以是一體化的裝置。
本發(fā)明的讀卡器及方法對于存取卡信息提供了便利和根據性能價格比考慮的解決方案。讀卡器小巧,是便攜式獨立裝置,不會遭受病毒攻擊;讀卡器簡單,生產成本低廉,基本上可以用于所有類型帶芯片的卡。這種讀卡器可以在一般的商店、書報攤和加油站等地方銷售。而且,這種讀卡器可以應用在很多不同的地方,例如產生密碼獲得銀行服務,管理現金卡,電子錢包等等。這些服務可以被設置在不同的卡上,也可以將若干服務組合在同一張卡上。由于大量的功能通過卡上的芯片控制,所以同一讀卡器可以用于不同卡的交易。這就大大增加了讀卡器的適用性,例如,呈現用戶的信息,可以選擇的選項等等。
出于例證的目的,下面將通過附圖中的實例來更加詳細地描述本發(fā)明。所附圖包括圖1a讀卡器俯視圖;圖1b讀卡器仰視圖;圖2讀卡器結構示意框圖;圖3讀卡器應用系統(tǒng)概要圖;圖4讀卡器應用流程框圖。
具體實施例方式
圖1中,讀卡器1包含了一個接收被讀卡的卡槽(11)形式的卡座。這里的卡可以是任何一種帶硬件處理器的卡,例如一個存儲卡。這些卡被稱為智能卡或集成電路卡(ICC)。
讀卡器包含了顯示屏(12)和輸入工具。這個輸入工具包含了一個用于卷動被顯示在顯示屏(12)上的預設輸入項目的滾輪(13),以及用于選定所述的輸入項目的功能鍵(14)。
圖2是一個示意框圖,讀卡器包含了一個處理器(17),和一個使讀卡器能源自給的電池(16),處理器可以是一個常規(guī)的,例如一個商業(yè)上用的CPU。處理器(17)從輸入工具(13,14)和通過卡槽(11)連接的卡(2)接收輸入信息。來自處理器的輸出被送到顯示屏(12)或卡(2)。來自電源(16)的電被傳送到處理器(17),并且被分配到用于其他操作并需要電的部件上,例如顯示屏和卡上的芯片。
為節(jié)約用電,在電池和處理器之間設置了一個開關。這個開關可以手工操作,但最實用的設計還是當卡插入卡座時,電源自動接通。
在使用的時候,卡插入讀卡器卡槽中,顯示屏向用戶顯示信息。用戶首先看到的是第一個預設輸入項目集中的一個或者若干個輸入項目。例如,這些輸入項目可以是標明讀卡器所能提供的若干應用功能之一的字符串,如“密碼”,“現金”,和“銀行”。而且,也可以進行進一步的選擇,例如“網上銀行”,“柜員機”,“電話銀行”,“認證”,“簽名”,等等。
下面討論一些可能的更詳細的應用。預設的輸入項目集放在讀卡器或者卡上,當用戶轉動滾輪時,輸入項目被卷動并同時將當前選擇的輸入項目顯示在顯示屏上。但是,若干輸入項目也可能需要同時顯示,那么當前選擇的項目就要用高亮度,下劃線或類似方式顯示。通過壓按紐或按鍵(14),當前選中的項目被送回處理器,這個信息也被傳送到卡上。
此后,第二個預設輸入項目集被使用,根據應用需要,輸入文字字符或數字字符密碼,例如個人識別碼或者類似的信息。
在輸入一個文字字符或數字字符密碼的情況下,所有可能的輸入值都被呈現在顯示屏的一行上,因此,不同的項目要通過轉動滾輪繼續(xù)以高亮度或標記的方式顯示。
可能作為密碼輸入的字符串是“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”和“0”。當項目被選定時,所選擇的項目被顯示在顯示屏的一個獨立部分,例如在可能輸入項目的上邊一行,并且按照它們被選定的順序出現。
進一步,這個輸入的字符串可以包含控制項,如“回退”,”刪除”,”回主菜單”,”進入下一步/完成”以及類似的項目。
讀卡器有一種延伸的形式,其長度不超過被讀卡卡寬的50%。一個信用卡大小的讀卡器,典型的尺寸是67mm×28mm×11mm。重量小于50g,一般為25-30g。
通過卡要能夠識別正確輸入的個人識別碼等信息,而且能夠產生一次性密碼。某些應用將一個密鑰或類似的密碼傳到讀卡器。這種密鑰或者密碼一般是四位數形式,但也可以用其他數據或字符。
在需要產生一個銀行存取密碼時,首先卷動滾輪并按OK鍵輸入PIN碼,這可以在字符串“back 1 2 3 4 5 6 7 8 9 0 ok”中間來選擇。PIN碼用于解開卡的鎖定。如果選擇了一個錯誤的數,用戶只要卷動到“回退”然后按鍵清除即可。輸入一個正確的PIN以后,顯示屏顯示新產生的一次性密碼。
在需要產生數字簽名時,用戶輸入一個簽名數字,這個數字可以通過PC或電話由服務提供者提供,于是用卡就可以產生一個簽名密鑰并顯示在顯示屏上。
當卡具有現金卡功能時,所謂的電子錢包(e-purse),個人識別碼(pin-code)等就被用于存取卡上的信息。此后,卷動滾輪可以從閱讀器顯示屏上得到下述信息·卡上的余額;·最近一次發(fā)生額;為了產生密碼和密鑰等,若干種算法已經被了解和使用,如DES、3DES、IDEA、AES和RSA。而本發(fā)明可以支持所有適當的算法。
本發(fā)明提供的讀卡器可以在網絡上使用,圖3是讀卡器應用系統(tǒng)概要圖,圖4是讀卡器應用流程框圖。用戶使用卡(2)和讀卡器(1)存取動態(tài)密碼(OTC)等等,將密碼輸入終端設備(3),如一臺個人電腦、手機、固定電話、個人數字終端等,終端設備與網絡(4)連接,如一個公用電話網、無線網或計算機網絡(局域網LAN或廣域網WAN)、INTERNET等。實際上,若干種其他類型的網絡和終端也可以應用。密碼通過網絡傳輸,并且用于一個或若干個應用(5,6)。
上述的應用實例還可以采用很多不同的方式,例如輸入信息和選擇功能的方式比用滾輪進行的方式多。在理解本發(fā)明時,專業(yè)技術人員可以根據上述描述進行不同的應用。
權利要求
1.一種便攜式讀卡器,包括卡座、處理器、存儲器、觸點、電源及其開關、顯示屏,其特征在于讀卡器上設有卡片插入卡槽,卡插入讀卡器經卡槽內的觸點觸動電源開關,由該觸點為卡供電,提供時鐘信號,并與卡進行數據交換,讀卡器讀取動態(tài)密碼數據運算后由顯示屏顯示動態(tài)密碼;卡座上還設有一個用于手工將信息輸入讀卡器并顯示在顯示屏上的輸入工具,所述輸入工具包括功能和數字選擇機構,和用來選擇上述輸入項目之一的功能和數字確認鍵。
2.根據權利要求1所述的一種便攜式讀卡器,其特征在于所述功能和數字選擇機構為用于卷動通過處理器預設的顯示在顯示屏上的輸入項目的滾輪開關或數字選擇鍵。
3.根據權利要求1所述的一種便攜式讀卡器,其特征在于所述讀卡器預設的數字集包含文字字符和數字字符,讀卡器預設的輸入項目集包括至少一個控制字符;讀卡器首選至少有兩組輸入項目集的配備,第二組輸入項目中的操作由第一組輸入項目集的至少一個輸入項目確定,第一組集合包含了讀卡器用法的不同選擇的菜單,第二組輸入項目集被作為個性化信息的入口;讀卡器中的處理器或智能卡提供預設輸入項目集。
4.一種權利要求1所述便攜式讀卡器的讀卡方法,它包括如下步驟a、將卡插入讀卡器卡槽與讀卡器內的閱讀器聯(lián)接,并經讀卡器上的觸點觸動電源開關,使讀卡器與卡進入工作狀態(tài);b、通過讀卡器上的功能和數字選擇機構、數字確認鍵,根據顯示屏上的顯示的提示符和使用用途選擇預設輸入項目,這個項目同時顯示在讀卡器的顯示屏上;c、讀卡器接收選定的輸入項目信息,并將相關數據與卡進行交換;卡將讀卡器的相關數據讀出,調用相對應的密碼產生程序,通過運算,將密碼數據傳給讀卡器;d、讀卡器將傳來的數據進行運算后在顯示屏上顯示。
5.根據權利要求4所述的讀卡方法,其特征在于所述讀卡器預設的輸入數字集包含了文字字符和數字字符,讀卡器預設的輸入項目集可以包括至少一個控制字符,控制字符為“刪除”、“回退”、“輸入/完成”或“回主菜單”。
6.根據權利要求4或5所述的讀卡方法,其特征在于所述讀卡器首選至少有兩組輸入項目集的配備,其中通過第一組輸入項目集的至少一個輸入項目,第二組輸入項目中的輸入項目才能操作;第一組集合包含了讀卡器用法的不同選擇的菜單,當一種用法被選定,下一組輸入項目集就被作為個性化信息的入口,讀卡器中的處理器和/或智能卡提供預設的輸入項目集。
7.根據權利要求6所述的讀卡方法,其特征在于所述卡與一認證系統(tǒng)設定了同樣的初始隨機計數,當智能卡插入讀卡器觸動讀卡器上的電源開關時,讀卡器和智能卡的電路接通,每一次上電復位就觸發(fā)智能卡的一次計數,卡的動態(tài)密碼算法根據該事件計數和個人密鑰便產生一個動態(tài)密碼。
8.根據權利要求4所述的讀卡方法,其特征在于所述卡內設有加密私鑰,若加密信息較長,可選擇用一個信息摘要即散列值來替代這個信息,計算過程采用有一個公開的散列算法,接收者通過使用相應的公鑰對收到的散列信息進行解密,若該兩個散列值相匹配,當私鑰發(fā)送信息并完成原始識別后,則認定為唯一合法用戶。
9.根據權利要求7或8所述的讀卡方法,其特征在于所述密碼算法通過卡來實現,這個算法根據智能卡標識碼、用戶ID和事件序列號計算出十進制的動態(tài)密碼,這個動態(tài)密碼是由參數設置決定的一組4-12位的數,每一個動態(tài)密碼生成的事件序列號都會在智能卡中被增加和更新。
10.根據權利要求5、8或9所述的讀卡方法,其特征在于智能卡是經過發(fā)卡系統(tǒng)個性化的智能卡,包括任何Java-based或是Multos-based的SMART卡、EMV卡或SIM卡;智能卡與產生和顯示動態(tài)密碼的讀卡器是相互獨立的,或是呈一體化的。
全文摘要
本發(fā)明公開了一種便攜式讀卡器及其讀卡方法。該讀卡器是用于讀(存)取智能卡或IC卡、SIM卡等等帶有芯片的卡上包括動態(tài)密碼在內的信息或數據的一種便攜式讀卡器,包括卡座、處理器、存儲器、觸點、電源及其開關、顯示屏,讀卡器上設有卡片插入卡槽,卡插入讀卡器經卡槽內的觸點觸動電源開關,由該觸點為卡供電,并與卡進行數據交換,讀卡器讀取動態(tài)密碼數據運算后由顯示屏顯示動態(tài)密碼;卡座上還設有一個用于手工將信息輸入讀卡器并顯示在顯示屏上的功能和數字確認鍵。讀卡方法是將卡插入讀卡器卡槽與讀卡器內的閱讀器聯(lián)接;通過讀卡器輸入信息,滾動選擇預設輸入項目,這個項目同時顯示在讀卡器的顯示屏上,并接收選定的輸入項目信息。
文檔編號G06K7/00GK1614620SQ20041008133
公開日2005年5月11日 申請日期2004年11月26日 優(yōu)先權日2004年11月26日
發(fā)明者孫國華, 馬立河, 覃曉春, 楊源, 王小礦, 揚帆 申請人:王小礦