基于藍(lán)牙技術(shù)的智能卡應(yīng)用系統(tǒng)
由于智能卡具有良好的人機(jī)界面、強(qiáng)大的讀寫能力、足夠的安全技術(shù)、大容量的存儲能力和方便的便攜能力,因此智能卡已經(jīng)在金融領(lǐng)域和非金融領(lǐng)域(醫(yī)療、交通、安全等)作為數(shù)據(jù)載體、交易媒介和安全工具得到了廣泛的應(yīng)用。智能卡的應(yīng)用領(lǐng)域正在不斷擴(kuò)大,一些大容量、高數(shù)據(jù)傳輸速率、內(nèi)嵌電源和使用接口、內(nèi)嵌生物特征識別傳感器、實時、應(yīng)用可下載的智能卡成為人們研究和關(guān)注的熱點(diǎn)。但是,智能卡資源有限、設(shè)計的初衷是作為一個被動的認(rèn)證設(shè)備,數(shù)據(jù)只能是單向流動,小額消費(fèi)時不能實現(xiàn)雙向支付,智能卡只能是在有專用讀寫設(shè)備的場合使用,這些限制了智能卡的應(yīng)用和發(fā)展。
美國 Rainbow 公司的集讀寫器和卡于一身的Ikey,卡間支付的Mondex 系統(tǒng),把讀寫器集成在卡中,但它們不能脫離計算機(jī)和專用設(shè)備。文獻(xiàn)中研究了現(xiàn)有的智能卡應(yīng)用系統(tǒng),初步給出了一種新型的智能卡系統(tǒng)的設(shè)想,但是沒有考慮設(shè)備接入網(wǎng)絡(luò)的問題。文獻(xiàn)中研究并給出了一個以卡為中心的新型智能卡原型,智能卡處于控制地位,交易由卡發(fā)起,終端進(jìn)行響應(yīng)。但是,交易雙方仍然處于不平等地位,未能實現(xiàn)數(shù)據(jù)的雙向自由地流動。
1 現(xiàn)有的智能卡應(yīng)用系統(tǒng)分析
現(xiàn)有的智能卡應(yīng)用系統(tǒng)是一個分布式計算機(jī)系統(tǒng),它由智能卡、終端(如PINpads、PC 讀卡機(jī)、讀寫器IFD、電 子POS 機(jī)EPOS、銷售點(diǎn)終端EFT—POS、ATM 等)、網(wǎng)絡(luò)和主機(jī)系統(tǒng)組成,通??煞譃橐韵? 層:
(1)管理層:通常由服務(wù)器、PC 機(jī)等組成的主機(jī)系統(tǒng)構(gòu)成。在后臺管理系統(tǒng)的控制下,負(fù)責(zé)對整個系統(tǒng)實施監(jiān)視、控制和系統(tǒng)維護(hù)(如發(fā)卡、身份認(rèn)證、充值、數(shù)據(jù)處理和掛失/失效登錄等);
(2)接口層:由讀寫設(shè)備(接口設(shè)備、應(yīng)用設(shè)備)和通信網(wǎng)絡(luò)構(gòu)成,負(fù)責(zé)智能卡和主機(jī)系統(tǒng)之間的信息傳輸,包括卡的讀寫、電源供給和與主機(jī)系統(tǒng)的通信,是智能卡和主機(jī)系統(tǒng)之間交互的界面。
(3)應(yīng)用層:由智能卡構(gòu)成,便于用戶使用。在這種應(yīng)用體系結(jié)構(gòu)下,智能卡通過接口層與主機(jī)系統(tǒng)進(jìn)行通信。實體之間的信任關(guān)系是通過以下途徑建立的:
(1)制造發(fā)行商是可信任的,讀寫設(shè)備信任卡制造發(fā)行商,讀寫設(shè)備對卡和卡制造發(fā)行商都是可信的,因此,智能卡對讀寫設(shè)備的所有人的信任是通過對讀寫設(shè)備的外部鑒別來實現(xiàn)的,卡制造發(fā)行商對卡的數(shù)據(jù)的信任是通過信任讀寫設(shè)備來實現(xiàn)的,卡的數(shù)據(jù)所有者對卡制造發(fā)行商的信任是通過信任讀寫設(shè)備來實現(xiàn)的。
(2)通信過程是安全的。包括卡與讀寫設(shè)備的通信、讀寫設(shè)備和主機(jī)系統(tǒng)(卡制造發(fā)行者)的通信、讀寫設(shè)備的在卡制造發(fā)行商或商家授權(quán)下的寫卡操作是安全的。卡數(shù)據(jù)所有者信任讀寫設(shè)備寫入卡中的數(shù)據(jù)是正確的,卡中的數(shù)據(jù)對非參與者是保密的。
(3)整個交易過程中卡是不變的。特別是讀寫設(shè)備寫卡操作后,卡返回的結(jié)果是可信任的,這個信任是建立在讀寫設(shè)備對卡的外部鑒別上。由于接口層中讀寫設(shè)備的存在,使智能卡應(yīng)用系統(tǒng)的各功能要素之間的關(guān)系變得更加復(fù)雜,智能卡系統(tǒng)的安全無法得到有效的保證。特別是持卡人只能通過讀寫設(shè)備所有者提供的設(shè)備來驗證卡中的數(shù)據(jù)的正確性,在支付服務(wù)中,資金只能是由卡流出,帶來了安全的隱患和交易的不方便。產(chǎn)生的原因主要在于讀寫設(shè)備和卡的絕對分離,卡的數(shù)據(jù)只能是流向讀寫設(shè)備,讀寫設(shè)備的數(shù)據(jù)一般不能流向卡。
2 基于藍(lán)牙技術(shù)的智能卡應(yīng)用系統(tǒng)
基于藍(lán)牙技術(shù)的智能卡應(yīng)用系統(tǒng)由藍(lán)牙智能卡(BSC)、藍(lán)牙無線接入點(diǎn)(BLAP)、網(wǎng)絡(luò)和主機(jī)系統(tǒng)組成。其組成結(jié)構(gòu)如圖1 所示。
圖1 基于藍(lán)牙技術(shù)的智能卡系統(tǒng)結(jié)構(gòu)BSC 可以相互通信,進(jìn)行離線交易
BSC 也可以直接接入網(wǎng)絡(luò),進(jìn)行在線的交易處理;也可以通過BLAP 接入網(wǎng)絡(luò)進(jìn)行在線的交易處理。其中,藍(lán)牙無線接入點(diǎn)是基于藍(lán)牙的LAN訪問協(xié)議,是一些集中和大量交易場合的交易接入設(shè)備,用于連接BSC 和公共網(wǎng)絡(luò)。BSC 通過BLAP 和主機(jī)系統(tǒng)相聯(lián),完成集中、在線的交易。BLAP 一端通過網(wǎng)口(RJ45)與公共網(wǎng)絡(luò)相聯(lián),另一端通過藍(lán)牙與BSC 相聯(lián),實現(xiàn)二者之間的信息流通和共享。
藍(lán)牙智能卡(Bluetooth Smart Card)將藍(lán)牙技術(shù)和現(xiàn)有的智能卡技術(shù)相結(jié)合,它的硬件結(jié)構(gòu)如圖2 所示,主要包括藍(lán)牙部分(Bluetooth Module、天線、放大模塊)、MCU、加密協(xié)處理器、存儲器、接口電路和其他輔助電路(液晶顯示、軟鍵盤和電源)等。
圖 2 藍(lán)牙智能卡體系結(jié)構(gòu)
其中,加密協(xié)處理器、存儲器和 MCU 等完成普通智能卡、讀寫器的功能,藍(lán)牙部分將已經(jīng)按照藍(lán)牙協(xié)議規(guī)定的數(shù)據(jù)格式轉(zhuǎn)換好的R-APDU 或C-APDU 發(fā)送出去,接口便于和主干網(wǎng)絡(luò)相聯(lián)或接入其他設(shè)備,交易和將備份交易數(shù)據(jù)送主機(jī)系統(tǒng)進(jìn)行核對。持卡人通過PIN 鑒別或生物鑒別技術(shù)確認(rèn)對卡的使用權(quán),交易雙方利用卡的唯一編號或卡交易可以由任何一方藍(lán)牙智能卡啟動,此時啟動交易的一方充當(dāng)讀寫器的功能,另一方充當(dāng)卡的功能,交易的認(rèn)證過程和交易的結(jié)果可以直接顯示出來,便于持卡人控制整個交易過程,交易的結(jié)果在雙方智能卡中備份。
BLAP 的結(jié)構(gòu)和藍(lán)牙智能卡的體系結(jié)構(gòu)是類似的,只是在接口和軟件上功能更強(qiáng)大。其接口包括與公共電話網(wǎng)的接口和Internet 的接口、外部LAN 的接口,系統(tǒng)接口還可包括R232、USB、UART 和I2C 等。通過這些接口,BLAP 可以和外界公共服務(wù)網(wǎng)絡(luò)進(jìn)行連接,進(jìn)行數(shù)據(jù)通信;同時通過藍(lán)牙部分可以和BSCt 建立無線連接,完成交易、并管理和控制網(wǎng)絡(luò)中的BSC。
3 交易模式
基于藍(lán)牙技術(shù)的智能卡應(yīng)用系統(tǒng)中 BSC 和BLAP 的應(yīng)用模式主要有3 種:點(diǎn)對點(diǎn)的交易模式,集線器交易模式和無線接入點(diǎn)交易模式。按是否和主機(jī)系統(tǒng)進(jìn)行實時信息交換可以分為離線交易模式和在線交易模式。
(1)點(diǎn)對點(diǎn)交易模式
點(diǎn)對點(diǎn)的交易模式是兩個藍(lán)牙智能卡持卡人在認(rèn)證的基礎(chǔ)上進(jìn)行交易,這種交易方式下不和主干網(wǎng)絡(luò)直接相聯(lián),交易結(jié)束兩個智能卡存儲交易數(shù)據(jù)并進(jìn)行預(yù)增減,然后定期和主干網(wǎng)相聯(lián)與卡制造發(fā)行商進(jìn)行核對,完成交易金額的增減。這種模式適宜于臨時的、隨機(jī)的、離線的小額交易。
(2)集線器交易模式
集線器應(yīng)用模式是藍(lán)牙智能卡持卡人和集中交易方(如商家)通過各自的智能卡進(jìn)行交易,這種交易方式下集中交易方的智能卡可以是聯(lián)機(jī)的,也可是脫機(jī)的。商家的智能卡可以是BLAP。在傳輸數(shù)據(jù)時,藍(lán)牙技術(shù)支持433.9kb/s 對稱全雙工或723.2/57.6kb/s 的非對稱雙工通信,可以滿足這種要 求。在這種模式下,交易可以是離線的,也可以是在線的。
(3)無線接入點(diǎn)交易模式
當(dāng)持卡人的藍(lán)牙智能卡通過一個藍(lán)牙接入點(diǎn)接入外部網(wǎng)絡(luò)進(jìn)行信息交換、用戶通過外部網(wǎng)絡(luò)和銀行或商家的主機(jī)系統(tǒng)進(jìn)行信息交換時使用這種模式。
4 交易流程
在敘述具體的交易流程之前,先做如下約定:交易流程中用非對稱加密算法和Hash 算法進(jìn)行BSC 之間的鑒別,Px 和Sx 表示X 的公鑰和私鑰,EK(Data)和Dk(Data) 表示對數(shù)據(jù)的加密和解密,Hash(Data)表示求Data 的Hash 值;
認(rèn)證中心(CA)使用SCA 簽發(fā)卡制造發(fā)行商證書I_C (PM、PCA、( ( )) S M E Hash P CA ),卡制造發(fā)行商使用SM 簽發(fā)BSC證書BSC_C(PM、PB、( ( )) S B E Hash P M ); BSC 和卡制造發(fā)行商、BSC 之間通信時使用3—DES 算法,D 為生成的隨機(jī)數(shù),T 為時戳。
(1)在線交易流程
在線交易時,卡制造發(fā)行商可以聯(lián)機(jī)實現(xiàn)對持卡人的智能卡和集中交易方的智能卡進(jìn)行鑒別,實時實現(xiàn)金額的增減,整個交易流程由認(rèn)證階段、授權(quán)交易階段組成,包括卡對持卡人的認(rèn)證、卡之間的相互鑒別、金額增減、數(shù)字簽名等。此時出售的一方處于賣方模式,購買的一方處于買方模式。
1)認(rèn)證階段
認(rèn)證階段由智能卡對持卡人和操作員的認(rèn)證、卡制造發(fā)行者對持卡人和集中交易方的鑒別、持卡人對集中交易方的鑒別組成。藍(lán)牙智能卡對持卡人的認(rèn)證,是通過PIN 認(rèn)證來完成的;藍(lán)牙智能卡之間的相互認(rèn)證、卡制造發(fā)行商對BSC的認(rèn)證都是通過驗證證書中的發(fā)證機(jī)關(guān)的簽名來實現(xiàn)的。如
圖 3 在線交易認(rèn)證階段
2)授權(quán)交易階段
授權(quán)交易階段由持卡者授權(quán)智能卡交易金額輸入、余額校驗、金額增減、智能卡數(shù)字簽名、卡制造發(fā)行商保存簽名和結(jié)果組成。如圖4 所示。
圖 4 在線交易授權(quán)交易階段
(2)離線交易流程
離現(xiàn)交易模式 BSC 不和主干網(wǎng)絡(luò)直接相聯(lián),交易結(jié)束兩個智能卡存儲交易數(shù)據(jù),并進(jìn)行預(yù)增減,然后,定期和主干網(wǎng)相聯(lián)與卡制造發(fā)行商進(jìn)行核對,完成交易金額的增減。由認(rèn)證階段和授權(quán)交易階段組成。具體的流程和在線交易時是類似的。
1)認(rèn)證階段
認(rèn)證階段由智能卡對持卡人和操作員的認(rèn)證、卡制造發(fā)行者對持卡人和集中交易方的鑒別、持卡人對集中交易方的鑒別組成。
2)授權(quán)交易階段
授權(quán)交易階段由持卡者授權(quán)智能卡交易金額輸入、余額校驗、金額增減、智能卡數(shù)字簽名、卡制造發(fā)行商保存簽名組成。
5 結(jié)束語
采用藍(lán)牙技術(shù)實現(xiàn)新型的智能卡應(yīng)用系統(tǒng),和現(xiàn)有的智能卡應(yīng)用系統(tǒng)相比,具有以下優(yōu)點(diǎn):
(1)將應(yīng)用層和接口層適當(dāng)結(jié)合,減少了應(yīng)用系統(tǒng)的功能要素,有利于提高系統(tǒng)的安全性;
(2)智能卡的計算環(huán)境得到改變,有限資源不再是制約智能卡安全和應(yīng)用的主要因素;
(3)交易的各方在交易中所處的交易地位和交易方式是相同的,交易行為是主動的、雙向的,因而可以實現(xiàn)隨時隨地交易,實現(xiàn)交易的電子現(xiàn)金化,從根本上改變?nèi)藗兊南M(fèi)模式,這將是智能卡發(fā)展歷史上和貨幣史上的又一次革命;
(4)智能卡的應(yīng)用不再受到專有設(shè)備的限制,有利于拓展 智能卡的應(yīng)用領(lǐng)域。在實驗室利用 XINDCConnect Blue SDK 實現(xiàn)的原型系 統(tǒng)初步證明了這種方案的可行性。