《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 微波|射頻 > 設(shè)計(jì)應(yīng)用 > 基于JavaCard的NFC移動(dòng)智能應(yīng)用系統(tǒng)研究與安全設(shè)計(jì)
基于JavaCard的NFC移動(dòng)智能應(yīng)用系統(tǒng)研究與安全設(shè)計(jì)
2014年微型機(jī)與應(yīng)用第19期
黃 健,黃健文,,劉兆元,梁 棟,,李俊磊
廣州電信研究院,廣東 廣州 510630
摘要: 為了進(jìn)一步提高移動(dòng)智能終端在移動(dòng)電子支付通信服務(wù)方面的高效性,、應(yīng)用性與安全性,,以JavaCard智能卡技術(shù)原理與NFC移動(dòng)智能技術(shù)理論知識(shí)為前提,首先提出了一種基于JavaCard和NFC技術(shù)的移動(dòng)智能支付應(yīng)用系統(tǒng)的模型框架,,在該模型中設(shè)計(jì)了移動(dòng)智能終端支付銀行選擇模塊,,其次針對(duì)多標(biāo)簽情況下的應(yīng)用支付碰撞問題設(shè)計(jì)了一種改進(jìn)的動(dòng)態(tài)二進(jìn)制防碰撞算法。研究表明,,應(yīng)用支付模型框架與防碰撞安全算法在移動(dòng)電子支付通信服務(wù)方面均達(dá)到了次優(yōu)化的應(yīng)用與安全效果,。
Abstract:
Key words :

  摘 要: 為了進(jìn)一步提高移動(dòng)智能終端在移動(dòng)電子支付通信服務(wù)方面的高效性、應(yīng)用性與安全性,,以JavaCard智能卡技術(shù)原理與NFC移動(dòng)智能技術(shù)理論知識(shí)為前提,,首先提出了一種基于JavaCard和NFC技術(shù)的移動(dòng)智能支付應(yīng)用系統(tǒng)的模型框架,在該模型中設(shè)計(jì)了移動(dòng)智能終端支付銀行選擇模塊,,其次針對(duì)多標(biāo)簽情況下的應(yīng)用支付碰撞問題設(shè)計(jì)了一種改進(jìn)的動(dòng)態(tài)二進(jìn)制防碰撞算法,。研究表明,應(yīng)用支付模型框架與防碰撞安全算法在移動(dòng)電子支付通信服務(wù)方面均達(dá)到了次優(yōu)化的應(yīng)用與安全效果,。

  關(guān)鍵詞: 移動(dòng)智能,;JavaCard;NFC,;安全模型,;防碰撞

0 引言

  近幾年來,隨著移動(dòng)智能科學(xué)技術(shù)的不斷發(fā)展,,移動(dòng)智能終端具有廣泛應(yīng)用于各大行業(yè)領(lǐng)域的潛力,,移動(dòng)電子支付通信服務(wù)領(lǐng)域也不例外[1]。移動(dòng)智能電子支付市場(chǎng)沒有被完全開拓,,主要包括以下幾個(gè)方面的原因[2]:(1)移動(dòng)智能電子支付應(yīng)用效率低,,支付流程復(fù)雜;(2)電子支付安全性無法保證,,其核心技術(shù)不成熟,;(3)遠(yuǎn)程移動(dòng)電子支付服務(wù)單一、支付內(nèi)容不豐富,;(4)移動(dòng)智能電子支付的利益機(jī)制尚不完善等,。這些都對(duì)移動(dòng)智能電子支付的市場(chǎng)推廣產(chǎn)生一定影響,因此,,移動(dòng)智能電子支付在中國(guó)的推行受到了諸多限制[3],。

  針對(duì)上述存在的各種問題,為了進(jìn)一步改善與提高移動(dòng)智能終端在移動(dòng)電子支付通信服務(wù)方面的高效性,、應(yīng)用性與安全性,,本文在深入分析JavaCard和NFC技術(shù)的理論基礎(chǔ)上[4],,從移動(dòng)智能電子支付核心技術(shù)機(jī)制出發(fā),提出了一種以JavaCard智能卡技術(shù)原理與NFC移動(dòng)智能技術(shù)的理論知識(shí)為前提的移動(dòng)智能支付應(yīng)用系統(tǒng)模型框架,,提高了移動(dòng)智能電子支付過程的便攜性,、應(yīng)用性;并且針對(duì)多標(biāo)簽情況下的碰撞問題設(shè)計(jì)了一種基于動(dòng)態(tài)二進(jìn)制防碰撞算法的應(yīng)用支付安全方案,,確保了移動(dòng)智能電子支付過程中的安全性[5],。

1 JavaCard智能卡技術(shù)

  JavaCard是Java平臺(tái)中最小的 subset開發(fā)平臺(tái),其設(shè)定的執(zhí)行環(huán)境為SmartCard上的晶片或是有嚴(yán)格硬體限制的環(huán)境[6],。JavaCard的問世,,一方面是為了推展Java的應(yīng)用層次,另一方面是為了將Java平臺(tái)的特性以及JavaCard的優(yōu)勢(shì)帶到SmartCard上,,這些優(yōu)勢(shì)主要有:

 ?。?)Platform-Indep endent:使得JavaCard applets (在JavaCard上執(zhí)行的程式)能夠在不同卡片的JCAE(JavaCard Application Environment)上執(zhí)行,即通過JavaVM機(jī)制來達(dá)到跨平臺(tái)的能力,;

 ?。?)Multi-Application Capable:在同一個(gè)Java- Card中能夠存放多個(gè)JavaCard applets,并且也能夠通過下載方式來獲取必要的applets 而達(dá)到一卡多用的目的,,使得卡的使用能夠更有彈性,;

  (3)Compatible with Existing Smart Card Standar- ds:JavaCard智能卡能與國(guó)際標(biāo)準(zhǔn)ISO7816(SmartCard標(biāo)準(zhǔn))以及工業(yè)界標(biāo)準(zhǔn)如 Europay/Master Card/Visa (EMV)相容,。所以,,在未來JavaCard不但能夠取代SmartCard的功能,更能夠發(fā)展出多樣化的應(yīng)用,,其中移動(dòng)智能電子支付就是其中之一,,甚至能將許多不同的應(yīng)用程序集合于一張卡上,使得這些隨身的軟件能夠更小更實(shí)用,。

2 基于JavaCard的NFC移動(dòng)智能應(yīng)用系統(tǒng)

  2.1 NFC移動(dòng)智能生態(tài)模型的構(gòu)建

  NFC移動(dòng)智能生態(tài)系統(tǒng)是基于RFID技術(shù)發(fā)展的一種非接觸式的移動(dòng)智能電子應(yīng)用系統(tǒng)原型,,其主要包括移動(dòng)智能終端用戶群體、移動(dòng)運(yùn)營(yíng)機(jī)構(gòu),、銀行金融機(jī)構(gòu),、相關(guān)服務(wù)提供廠商、NFC移動(dòng)智能終端制造廠商等,,如圖1所示,。

001.jpg

  2.2 移動(dòng)智能應(yīng)用系統(tǒng)模型

  (1)模型框架描述

  基于JavaCard的NFC移動(dòng)智能應(yīng)用系統(tǒng)模型主要包含兩大部分:電子支付應(yīng)用與非電子支付應(yīng)用,。如圖2所示,。

002.jpg

  從模型設(shè)計(jì)中可知,非電子支付應(yīng)用環(huán)節(jié)一般由娛樂、防偽,、私人門禁等方面組成,,移動(dòng)智能終端用戶需通過計(jì)算機(jī)網(wǎng)絡(luò)與備份數(shù)據(jù)信息庫對(duì)電子產(chǎn)品做進(jìn)一步防偽認(rèn)證,。其電子支付應(yīng)用環(huán)節(jié)一般由移動(dòng)智能終端用戶,、制造廠商/產(chǎn)品提供廠商、移動(dòng)網(wǎng)絡(luò)運(yùn)營(yíng)機(jī)構(gòu)和金融機(jī)構(gòu)等組成,。

 ?。?)移動(dòng)智能終端支付銀行選擇模塊

  現(xiàn)有的移動(dòng)智能電子支付應(yīng)用系統(tǒng)中在銀行卡的選取方面較為固定,不能動(dòng)態(tài)地對(duì)其綁定的銀行電子支付手段與方式進(jìn)行選擇,,因此,,本文在基于JavaCard的NFC移動(dòng)智能應(yīng)用系統(tǒng)模型的設(shè)計(jì)中特別添加了移動(dòng)智能終端支付銀行選擇模塊,實(shí)現(xiàn)電子支付過程中的動(dòng)態(tài)與便捷,。如圖3所示,。

003.jpg

  具體選擇流程如下:⑴選取多戶銀行并進(jìn)行開戶業(yè)務(wù),包括移動(dòng)電子支付業(yè)務(wù),;⑵通過移動(dòng)智能終端獲取其應(yīng)用系統(tǒng)APP,;⑶第一次使用時(shí)進(jìn)行設(shè)置,包括默認(rèn)設(shè)置,,如設(shè)置默認(rèn)銀行卡號(hào),、綁定默認(rèn)聯(lián)系方式等,或者依據(jù)添加時(shí)間的先后對(duì)銀行卡的選取進(jìn)行管理,,默認(rèn)銀行卡是第一支付選擇的卡號(hào),,余下銀行卡添加到備選銀行卡清單之中;⑷若默認(rèn)或當(dāng)前選取的銀行卡無法進(jìn)行支付操作,,將自動(dòng)提示選取下一個(gè)鄰近時(shí)間點(diǎn)的銀行卡作為支付銀行卡,,依次類推,直到支付成功為止,。

3 改進(jìn)的動(dòng)態(tài)二進(jìn)制防碰撞算法設(shè)計(jì)

  為了滿足移動(dòng)智能電子支付應(yīng)用系統(tǒng)的安全需求,,本文對(duì)傳統(tǒng)二進(jìn)制搜索算法進(jìn)行改進(jìn)。接下來將對(duì)改進(jìn)的動(dòng)態(tài)二進(jìn)制防碰撞算法進(jìn)行詳細(xì)分析,。

 ?。?)基本指令描述

  為了描述這個(gè)算法,假設(shè)標(biāo)簽標(biāo)識(shí)號(hào)NFCID的位數(shù)為n,,即從高位到低位分別為Dn-1Dn-2...D1D0,,出現(xiàn)多標(biāo)簽沖突的位數(shù)為m(0≤m<n),還引入一組命令:

 ?、賁EL_REQ(x, Dm):讀卡器傳輸一個(gè)數(shù)值x(x屬于1或者0)給相關(guān)范圍內(nèi)的標(biāo)簽申請(qǐng)回復(fù),,若標(biāo)簽號(hào)出現(xiàn)沖突的最后一位到第一位這m個(gè)數(shù)值中有一個(gè)或多個(gè)數(shù)值位與滿足要求的標(biāo)簽回復(fù)相一致(以便于降低初始化標(biāo)簽區(qū)域面積大小,做出相應(yīng)優(yōu)化)。說明:第1次詢問時(shí),,x=n,,使用NULL表示標(biāo)簽號(hào)無數(shù)值,即空值,,所以申請(qǐng)回復(fù)指令是:SEL_REQ(NULL, Dn-1),。

  ②SEL RES(m):獲取到余下沖突位置的數(shù)據(jù)(第m-1至第1位),,記錄未出現(xiàn)沖突位置的數(shù)據(jù),。

  ③SR_DATA:選取滿足條件的標(biāo)簽,,且獲取其數(shù)值信息:對(duì)符合條件的標(biāo)簽,,將其存儲(chǔ)的相關(guān)數(shù)值信息傳輸給讀卡器等相關(guān)設(shè)備。

 ?、躑nsel:將多個(gè)預(yù)定選取中的一個(gè)標(biāo)簽進(jìn)行取消操作,,此標(biāo)簽轉(zhuǎn)換到“無聲”狀態(tài)。此時(shí)這個(gè)標(biāo)簽處于未被激活狀態(tài),,對(duì)其步驟③中的申請(qǐng)指令SEL_REQ不作出任何答復(fù),。當(dāng)遠(yuǎn)離讀卡器感應(yīng)操作區(qū)域之外時(shí),才能進(jìn)行標(biāo)簽復(fù)位操作,,這樣使得標(biāo)簽?zāi)軌蛑匦卤患せ睢?/p>

  (2)改進(jìn)算法原理

  若NFCID為8 bit,,則讀卡器作用區(qū)域內(nèi)有多個(gè)標(biāo)簽,這里以5個(gè)為實(shí)例,,標(biāo)簽分別為:11100101,、10100110、11010100,、1000011,、10101110。讀卡器將利用該算法來識(shí)別它們,。初始化階段,,讀卡器對(duì)區(qū)域內(nèi)標(biāo)簽處于未知狀態(tài),所以發(fā)送SEL_REQ(NULL, 8)命令,,要求作用范圍內(nèi)任何一個(gè)標(biāo)簽做出應(yīng)答信息,。詳細(xì)執(zhí)行過程如圖4所示。

004.jpg

4 結(jié)束語

  本文以JavaCard智能卡技術(shù)原理與NFC移動(dòng)智能技術(shù)的理論知識(shí)為前提,,首先提出了一種基于JavaCard和NFC技術(shù)的移動(dòng)智能支付應(yīng)用系統(tǒng)的模型框架,,并在該模型中設(shè)計(jì)了移動(dòng)智能終端支付銀行選擇模塊;其次針對(duì)多標(biāo)簽情況下的應(yīng)用支付碰撞問題設(shè)計(jì)了一種改進(jìn)的動(dòng)態(tài)二進(jìn)制防碰撞算法,。研究分析表明,,應(yīng)用支付模型框架與防碰撞安全算法在移動(dòng)電子支付通信服務(wù)方面均達(dá)到了次優(yōu)化的應(yīng)用與安全效果,。

參考文獻(xiàn)

  [1] Naoya S, Masakazu U, Yasuhiro T. Design technigues to reduce power consumption for ARM946E-S core[J]. Oki Tekunikaru Rebyu, 2005, 72(3): 52-55.

  [2] 張德學(xué), 郭立, 傅忠謙. 面積優(yōu)化與低功耗設(shè)計(jì)的JavaCard處理器[J]. 中國(guó)科學(xué)技術(shù)大學(xué)學(xué)報(bào), 2008, (38)3: 289-292.

  [3] 李翅. 基于JavaCard和NFC技術(shù)的手機(jī)錢包關(guān)鍵技術(shù)研究[D]. 長(zhǎng)沙:湖南師范大學(xué),2009.

  [4] 林龍, 張果, 王劍平,,等.基于NFC技術(shù)的標(biāo)簽?zāi)J皆O(shè)計(jì)[J]. 微處理機(jī), 2013, 3(3): 31-36.

  [5] ETSI. TS 102 622 v7.6.0, 2010.04, Smart Cards, UICC- Contactless Front-end (CLF) Interface; Host Controller Interface (HCI) (Release 7) [S]. Prepared by the European Telecommunications Standards Institute, 2010.

  [6] 宋海燕. 基于Android的NFC文件傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D]. 北京: 北京郵電大學(xué), 2012.


此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載。